AI War 2 Standalone installer updated: [Windows, Linux, Mac]
5.701 ⇒ 5.702.
5.702 The Erenussocrates Triple
(May 7th, 2025)
• Fix zero-cost hacks for the first of a repeatable hack (ars, tss).
• Fix to error message and lack of aip-gain from things destroyed, when using Last Resort.
---• Thanks to Erenussocrates and Ecthelon for the report.
• Elderling/Templar lobby presentation
---• Fixed missing icon for Templar in the in-game list of factions.
---• Fixed missing icon for Elderlings, when auto added for a Necromancer, in the in-game list of factions.
---• Fixed Elderlings inconsistently using Strength instead of Intensity.
---• Fixed auto-added Elderlings and Templar showing "5" for Intensity rather than the real value being used, based on the Necromancer player's settings.
• Formatted tooltips.
---• Fix to bubbleshield modules not being shown for ships that aren't actually built (ie, encyclopedia, mark-up previews).
---• Fix to ion damage weapons.
------• Now has its own unique color, tells you the albedo requirement, fixed spacing.
------• Todo: Still needs a subline in high detail explaining the full mechanic.
---• Improved line for invulnerable/vulnerable and defense modifiers.
• Coarse Short-Term Planning setting's behavior has been changed.
---• Previously only some of the tasks were run each step rather than them all.
---• Now, it does try to run them all (ones still running are not), but advancing the sim-step no longer requires them to all be finished.
• Experimental Stacking is now fully-functional.
---• Fixed a great many bugs. Actually does a great job of keeping squad count under the limit.
---• Added a second setting for it, which throttles the target number of squads down all the way to 1 at its maximum.
---• Limitations: Unlike the normal stacking, we do not currently ever *unstack* giant stacks. Though that can happen normally when taking debuffs.
• Fix to resource production not considering stacks.
---• In vanilla afaik there are not any entities that produce resources (energy, metal, fuel) while also being stackable. However, in the future exp.stacking could wish to do this.
---• Edit: It has been found that entities that die to neutral capturables (ex. metal harvesters) do not work correctly if stacked so this has been disabled, even for exp.stacking.
• Fixed several mods giving exceptions by rebuilding them.
• Added missing "dire" to name of alerted plasma eye.
① Generator
• One more pass at Generator's ai home choices.
② Necro Party
Tuning a couple oddities on vanilla necro flagships and totems.
• Treacherous Totem's black hole effect now applies to <20 engine increased from <14
• All flagship forcefield modules are now Hardened and Greater.
---• They do not shrink with damage, nor reduce damage for things shielded.
• All flagships (except transcendent) reduced to engine gx 18 from 22.
---• They are now affected by black hole devices.
③ Visible CPA Bunkers
• New mod! by Erenussocrates
In the base game, it's pretty hard to keep track of the CPA Bunkers, if you've ever played with them. If they appear on the planets that you've already discovered, they don't become visible on the galaxy view, because they are an enemy structure. This mod makes them become visible in explored planets in the galaxy view at all times, so you don't forget about a bunker in some corner of the galaxy.
④ Exodian Blade
• New mod! by Erenussocrates
It bummed me that a ship that is immensely powerful, but also can be permanently lost like the Exodian Blade from the original AI War game, or something that is equivalent to it didn't exist for AI War 2.
So I wanted to set out and create it myself.
My original intention was to introduce an independent quest and subplot to the game, directly taken from the original AI War game, one to one. But unfortunately, my current expertise in modding AI War 2 wasn't good enough, so I did make do with this current iteration. If my expertise gets better, I might still vastly change the mod down the line to be more like the original quest.
On the current version, building the Exodian Blade is tied to the Fallen Spire campaign. You will get the option to build the Exodian Blade on a tier 5 Spire City, but you can only either build the Exodian Blade, or the Spire Transceiver, not the both in the same galaxy. So you will have to make a choice.
Also makes the Spire Transceiver unscrappable for this reason.
So in hindsight, this might make your Fallen Spire campaigns have more varied playstyles too.
But it also has a few new surprise mechanics, so it could also become a double edged sword if you aren't careful.
This mod obviously requires The Spire Rises DLC.
I also want to thank RocketAssistedPuffin, Lord Of Nothing and Dismiss for their role in helping me with creating this mod. Especially I thank Dismiss, as usual for making this possible or more polished with a brand new attribute.
⑤ AIP for ExoWar Units
• New mod! by Erenussocrates
Did it ever bother you that you don't incur any AIP penalty for destroying the very powerful extra galactic war front units?
Imagine saving a budget for building a special force to end your enemy, but your enemy destroys that force. Your first instinct in that case is, probably to set a bigger budget for next time, or to have necessary precautions / mental notes that will make it less likely to repeat the same failures.
This mod addresses exactly that.
Now, destroying any extra galactic war front unit beyond tier 1 incurs an AIP penalty for the player. (except Dragon or astro train units)
These penalties are; 10 AIP for tier 2 units, 25 AIP for tier 3 units, 50 AIP or tier 4 units, and 80 AIP for tier 5 units.
This mod will also work for the brand new exowar ships that are introduced with the Exowar Overhaul mod by Lord of Nothing.
⑥ Fuel Rebalance
• The naturally generating Argon, Radon and Xenon fuel stations' energy maintenance cost has been increased from 60k to 100k.
---• In the same way, the energy costs of Zenith variants of the fuel generators sold by the Zenith Trader have also been increased from 30k to 75k.
---• No change in the energy costs of the Spire fuel generators.
• Zenith and Spire fuel stations now have material skins that are relevant with their faction.
⑦ Biblical Angel Names for ExoWar Units
• Added a statement in the mod description noting the need of required DLCs, which were forgotten before.
⑧ Coders
• Changes to better support harmony style modding.
---• New codehook "PrepForCompleteReload"
---• Called at the beginning the restart process when mods/dlc have been changed.
---• You may check the current value for 'enabled' on them to determine if being disabled.
---• ExternalDllInitialLoadCalls/YourXml.xml can now specify a dll_name="" without a type_name="".
------• This can be used to load load dependencies of your mod (like 0Harmony.dll) before your mods dlls containing patches and built against harmony are loaded -- Since external assemblies loaded by aiw2 do not automatically resolve dependencies, and those dependencies cannot be expected to implement an arcen interface.
• cmd:spawn can now take a faction
---• The faction name (and entity type) are case sensitive and must be the exact internal name.
---• Also "spawnh" is now an alias for "spawnhostile" which gives it to the ai.
---• ex. "cmd:spawn, AICursedGolem, 1, AntiAIZombie"
• Easier access to the contents of a FleetDesignTemplate.
---• foreach (var c in Template.Categories()) {}
---• foreach (var i in Template.Items()) {}
• Arcen.Universal.IList<T> is now also IEnumerable<T>
• Added an assembly attribute [assembly: SkipValidityCheckAttribute] to allow referencing both base/deep types.
---• For reference, there is a validity check done when loading any external type which attempts to enforce no single external assembly implements both "base" and "deep" types--As part of the separation between "client-side" for base and "server-side" for deep. For example, ExternalFactionBaseInfo/DeepInfo, or WorldBaseInfo/WorldDeepInfo.
---• However, for someone who knows what they are doing there is no real reason a mod must be written this way, other than this validity check.
• TextVarMap support for inverted condition tests
---• Rather than having to write a unique condition term for "is" versus "not" you can now do: cond="!term".