Logo Platform
logo amplifiers simplified

[Bug] Offensive Retreat battle action ignores Sheredyn Affinity (no retreat)

Reply
Copied to clipboard!
9 years ago
Dec 6, 2015, 4:38:38 AM
Game: ES Classic (with Disharmony 1.1.58 installed)

Faction: Custom - with Sheredyn Affinity



  • Note: This bug exists in both classic and Disharmony

    since the XML used by the AI is identical







Update: This looks like an AI issue, please see "update 3" in my reply below



Bug:



The AI can successfully play Retreat or Offensive Retreat during combat, essentially allowing all factions the ability to negate the Sheredyn bonus.



Details:



  • The Sheredyn Affinity explicitly states: Prevents opponents from retreating
  • The battle actions Retreat and Offensive Retreat do not state they can bypass the Sheredyn Affinity





I took a look at the tech. in BattleCard.xml for Offensive Retreate (BattleTechAction6) which shows the following condition:



!$(ClassFleet,AffectedByBattleNet)




and if you trace AffectedByBattleNet to ShipDescriptor.xml you find the following comment:







so it appears from an XML standpoint, the game expects that Offensive Retreat will not be played by the AI if the opponent has Sheredyn affinity. In practice however it seems to fail.



Further inspection of the XML files indicate that the affinity is not applied to the player's faction:



  • ShipDescriptor.xml has a condition for AffectedByBattleNet that is supposed to be applied to AffinitySheredyn
  • AffinitySheredyn is not a valid affinity, choosing Sheredyn affinity during faction creation gives the player AffinityEmperor
  • EmpireTraitDescriptor.xml only applies BuyOutBonus to AffinityEmperor, it does NOT apply AffectedByBattleNet

0Send private message
9 years ago
Dec 6, 2015, 5:57:36 AM
Quick update:



I tried changing the battle card to check !$(..//ClassEmpire,AffinityEmperor) but that just disabled the card in my own battle card selection window even when my opponent wasn't Sheredyn.





Update 2:



I created a game and forced my AI opponent to be Sheredyn. When I entered combat, the retreat card was properly disabled and I couldn't play it. So it appears that the game at least recognizes when the AI is Sheredyn and prevents a human player from playing the card.



This leads me to believe the issue is one of two possibilities:



  • The Sheredyn affinity is not properly applied to custom factions
  • The AI is playing the battle card even though it should be disabled when I have Sheredyn affinity





Update 3:



I created a game and forced the AI to be my custom faction with Sheredyn affinity. When I entered combat, the retreat card was properly disabled and I couldn't play it.



This leads me to the conclusion:



  • The AI is playing the battle card even though it should be disabled when I have Sheredyn affinity





I looked into AIParametersBattleCard_Locales.xml but couldn't see any mechanism for testing for Sheredyn affinity in the opponent.



Update 3b:



After further examining the above XML file, the only method I could find to prevent the AI from retreating is to modify BattleTechAction0 and BattleTechAction6 changing all the values to -100 under the assumption that a high negative weight will mean the AI won't play this card.



It seems to be successful but not really the desired result since the AI can no longer retreat from other AI or when your faction is not Sheredyn.




Final thought:



I realize development on ES2 is a priority but I do hope Amplitude will release a patch for this particular issue since it really provides an unfair advantage for the AI. The player cannot retreat from them (when Sheredyn) but they can retreat from the player.
0Send private message
?

Click here to login

Reply
Comment

Characters : 0
No results
0Send private message