Difference between revisions of "AI War 2:Pre-And-Post Launch Polish"

From Arcen Wiki
Jump to navigation Jump to search
 
(122 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== Known Issues ==
+
== Next Release Notes ==
  
* Any bugs or requests should go to mantis: https://bugtracker.arcengames.com/view_all_bug_page.php
+
[[AI War 2: The Grand New AI]]
  
* '''Multiplayer is disabled until post-1.0''' while we focus on tightening up the single-player loop ([https://forums.arcengames.com/ai-war-ii/from-the-dev-notes-on-where-i'm-at-regarding-multiplayer-right-now-(729)/ more info here]).
+
== What was this phase all about? ==
  
== What's this phase all about? ==
+
The game was solid at this point and something we were really proud of and that players were having fun with.  But inevitably, the more people we had playing it, the more things get brought to our attention to refine and make as smooth and fun as possible.  This was basically a period we set aside for doing that sort of thing, rather than focusing on any major new content drops or other major new features.
  
The game is solid at this point and something we're really proud of and that players are having fun with. But inevitably, the more people we have playing it, the more things get brought to our attention to refine and make as smooth and fun as possible.  This is basically a period we've set aside for doing that sort of thing, rather than focusing on any major new content drops or other major new features.
+
== Version 1.025 Hotfix ==
 +
(Released December 24th, 2019)
  
There may still be the odd major new thing, who knows -- sometimes the volunteers or modders wind up creating something and we're certainly not going to turn that down! But by the start of this phase the game was mature and really huge already, so focusing on polish seems like the way to best serve the largest group of people.
+
* Fixed two (harmless) error messages that would show up on ship tooltips on the galaxy map view since the prior build. This was just some of our debugging code for detecting wrong ship info, but it only applies in planetary view.
 +
** Thanks to Chthon, GrimerX, NoMoreBlender, and Admiral for reporting.
  
== Version 1.024 ==
+
* Fixed a bug where DoOnDestructionLogic() was being called when just part of a stack died, which led to some strange things happening.  It could cause HasDoneOnDeathSinceLastClaimed to be true when it should not have been, and somehow or other it seemed to be causing hydra heads to reanimate themselves.  Or at least it was contributing to that.
(Not yet released -- we're still working on it!)
+
** Thanks to Chthonic_One for reporting.
  
* Outguard Tertiary response wave removed.
+
* If a stack is self-attritioning by some rate (say, 2%), it now multiplies that amount by the number of ships in the stack, maximum 20 (so 2% would lead to 40% in a stack of 20 or more).
* Outguard response wave strength stops scaling up after 75 seconds.
+
** This does mean that stacks of 21 and up still attrition slower than their non-stacked peers, but in general stacks are no longer so resistant to attrition.
* Outguard final response buffed by 50%.
+
** Thanks to Chthonic_One and Puffin for figuring out that hydra heads and various types of drones were problematic in the extreme without this.
** Done in response to just how painful the hack felt on higher difficulties and higher AIP, they will now stop scaling up halfway through their base duration.
+
 
** Tertiary waves were removed as well due to them being a problematic burst of units that, if allowed to trigger again due to extended timers, vastly messed with the hack's difficulty.
+
== Version 1.024 After Death ==
** To make up for this, the number of units spit out at the end of the hack has been buffed.
+
(Released December 23rd, 2019)
*** Huge thanks to DEMOCRACY? DEMOCRACY! for his save that allowed in-depth testing.
+
 
 +
* On any of the debug menu things that mark the game as being in "cheat" mode, it now shows a "cheat: whatever the cheat was" message.  This way you know if you activated cheat mode, which disables achievements later in that same campaign.
 +
** Thanks to DEMOCRACY? DEMOCRACY! for reporting a mysterious case where he seemed to have cheated but never opened the debug menu.  If some other function is using one of the cheat methods (we didn't find any in a code review), then this would also reveal that for us.
 +
 
 +
=== Balance ===
 +
 
 +
* Majorly reworked how the ondeath logic triggers for ships that die off the top of a stack without killing the entire stack.  This has the following implications:
 +
** For each thing in a stack that dies that would spawn something, it now will spawn something.  Previously it would only spawn it when the whole stack dies.
 +
*** So this will be a major buff to hydras, for instance, as they will create vastly more hydra heads than before if they are stacked.
 +
** For each thing in a stack that would be zombified, it now creates zombies.
 +
*** So this is a major buff to the botnet golem and nanocaust, as if they kill something like 20 ships out of a stack of 80, they'll now get a stack of 20 zombies rather than nothing.  Previously they only got something when the whole stack died.
 +
*** On the OTHER hand, it now makes sure that you have inflicted enough "zombification or nanocaustation damage" to afford each stacked item.  So before if you killed a full stack of 15 ships with zombification and had enough zombification damage to afford 1, you got all 15.  Now you would just get 1.  The reality is that you've probably dealt 15 worth of damage if you killed 15 ships, but it's possible that you only dealt, say, 12 ships' worth.  In that case you'd get 12 ships out of the stack of 15 you killed, not 15, and that's not a bug.
 +
** Metabolism works the same as zombification and nanocaustation now do, also, with all the above caveats and notes.
 +
** The game now properly tracks the number of total ships killed with the stacked ships counting as any other ship would (since they could be separate or in a stack, they are the same).
 +
*** This does mean that counterattacks are going to count up much faster now, probably, because all of that would previously only count however many ships were in the final death of a ship.  For instance, if the AI had a stack of 80 ships, and you killed 20, 20, 20, and then 20 ships in bursts like that... you'd get 0, 0, 0, and then 20 worth of counterattack points applied.  Now it will give you the proper 20, 20, 20, 20.  So depending on the size of stacks at AI planets and how much damage your ships were inflicting to entire stacks this might be a big difference or no difference at all.  The inconsistency was in past versions, not this one, though.
 +
*** This also all applies to EXP gains for your ships, which means that things like your botnet golem or other golems will level up way faster for what that's worth.  Fleets in general will.
 +
** Thanks to Chthon for reporting.
 +
 
 +
* Doubled the EXP amount required for each level, due to the above.
 +
** This definitely needs more data.
 +
 
 +
* Also decreased the AIs counter-attack multiplier a bit for each Difficulty due to the above.
 +
** This also needs more data.
 +
 
 +
* Reduced the warning time of waves...a lot.
 +
** From old notes the default was apparently meant to be somewhat like Classics warning of around 3 minutes, but was instead notably higher.
 +
** This drastically reduces the time you have to respond to an incoming wave. This feels a little extreme, but in testing it was still fairly easy to rally Fleets in time. One time even a Citadel managed to move 5 hops and arrive just before the wave hit.
 +
 
 +
* Removed the temporary speed boost Transports got when entering a planet.
 +
** Meant you could seriously zip around everywhere extremely quickly, responding to any threat in your territory with the majority of your force before it could really do anything.
 +
** Combined with the much lower wave warnings, the ability to go all in on offense yet defend with your mobile fleets should be notably reduced.
 +
 
 +
* If the Warden Fleet is at maximum capacity, the excess budget is given to Reinforcements, rather than Waves.
 +
** This was probably the cause of numerous complaints of "out of nowhere enormous waves".
 +
** It was also the cause of the amusing scenario where the Special Forces Master would donate so much to Waves that it would out-wave Tsunami (the wave focused AI type).
 +
** Reinforcements was chosen as the destination budget, as it makes some sense for a defensive budget to be donated to another one, rather than dumped into offense.
 +
** You could suppose it be given to something like CPA or Hunter, but that can feel like a penalty for avoiding the Warden rather than trying to blow it up all the time.
 +
 
 +
* Increased effect of Instigators on higher difficulties.
 +
 
 +
* Doubled the damage of Fortified Tesla Turrets.
 +
 
 +
==== Outguard Balance ====
 +
 
 +
* Outguard hacking response adjusted to be notably easier, but should still require a full fleet and a large investment of metal for rebuilding to succeed.
 +
** Due to its existing AIP cost, this should be fine? Moderate payment and large military investment should be enough.
 +
** Difficult to balance for multiple difficulties, but this change made it pretty simple on 5, somewhat difficult on 7 (50, 110, 360 AIP tested), and juuuust possible on Democracy's save of 500aip, difficulty 9.
 +
** Outguard Tertiary response wave removed.
 +
** Outguard response wave strength stops scaling up after 75 seconds.
 +
** Outguard final response buffed by 50%.
 +
*** Done in response to just how painful the hack felt on higher difficulties and higher AIP, they will now stop scaling up halfway through their base duration.
 +
*** Tertiary waves were removed as well due to them being a problematic burst of units that, if allowed to trigger again due to extended timers, vastly messed with the hack's difficulty.
 +
*** To make up for this, the number of units spit out at the end of the hack has been buffed.
 +
** Huge thanks to DEMOCRACY? DEMOCRACY! for his save that allowed in-depth testing.
 +
 
 +
* Outguard Group Buffs
 +
** Prufrock's Partisans now spawns Decoy Drones, and comes with Decoy Drone spawning carriers.
 +
** Spire Archivist Beam and Shield base count increased by 100%. (AIP Scaling unchanged.)
 +
** Hydran Hobbyist now spawns with a few of its lesser parts which increase in count with AIP.
 +
** Democratic Demolitionists turret strength increased by ~33%.
 +
** Groups that previous lacked any sort of scaling should feel somewhat better over the course of the game, Spire Archivist now feels as impactful as its reduced duration implies, and Demo Demo should be  more potent to make up for its pitiful range.
 +
 
 +
* Also included is a small change to Outguard code that has it ignore drones for the purpose of unit processing. Drones die seconds after their carrier does, so there is no reason to keep track of them.
 +
 
 +
* War Harvesters and War Siegers now have a 10 minute cooldown between uses, and always give you a static count of 5 ships.
 +
 
 +
=== Bugfixes ===
  
 
* Fixes a few Ghost Wormhole Sentinels appearing in the normal group.
 
* Fixes a few Ghost Wormhole Sentinels appearing in the normal group.
Line 29: Line 97:
 
** The most likely thing with the drones having a problem is what we fixed in this build, which is that we were incrementing their value AFTER despawning them, and that may have been causing some problems.  If that's not it (this is hard enough to reproduce that we can't be sure), then we'll take more extreme measures.
 
** The most likely thing with the drones having a problem is what we fixed in this build, which is that we were incrementing their value AFTER despawning them, and that may have been causing some problems.  If that's not it (this is hard enough to reproduce that we can't be sure), then we'll take more extreme measures.
 
** Thanks to Chthon for reporting.
 
** Thanks to Chthon for reporting.
 +
 +
* One other change has been made to drones being put back into their parent.  Essentially it was checking the number of stored drones against the effective squad cap... which you would think would be okay, but might have been missing some multipliers, we're not sure.  At any rate, making a change to that we now just go ahead and increment the number means that for a frame or two there is a slight chance (somehow?) that there are too many drones stored in a drone carrier, but the game already checks for that and fixes drone overages, so it's probably safer to trust to that for the moment.
 +
** Thanks to Chthon for the report.
 +
 +
* When hovering over a ship, it now shows an error if the entity doesn't actually properly belong to the fleet membership it thinks it is in.
 +
** This is a cheap check for just the ship that we're actually hovering over, and should help us to find those "phantom ships" that are showing up at times.  Or at least some info about them.
 +
 +
* If you're hovering over an entity that considers itself dead for some reason but it is still there (invisibly or not) for you to hover over, it now will show that in the tooltip for that entity when hover over it.  This should give us a lot of insight into the "phantom ships" or "stuck ships" problem that people were running into in long games or at 10x speed.
 +
 +
* If you're hovering over an entity that is on a different planet than the one you are viewing -- which should be impossible to do -- then it now shows as an error in the tooltip.  This actually does happen with stuck ships, at least.
 +
 +
* If there are visual lines emanating from a ship and you have debugging turned on for the tooltips, it now says how many lines are coming out of the entity.
 +
 +
* Lots of debugging has verified that in some cases it was possible to have a stale gimbal for an entity that was no longer related to the entity at all.
 +
** This is something that was more likely at 10x speed, but potentially could happen at slower speeds as well.
 +
 +
* Our in-game time-based pools now use realtime only, and never are based around the speed of the game simulation.  This keeps things from churning a bunch in an inappropriate way when the simulation is running at something like 10x speed.
 +
** This in turn prevents things like ships being reallocated out of the pool buffers before it has a proper amount of time for teardown.  It doesn't fully solve the "phantom ships and lines" problem, but it certainly cleans it up a bit and makes it able to self-correct if needed (a 15-second window is an eternity for error-correction in computer terms; we really only need a few hundred ms at most).
 +
 +
* In the end, the solution to the "stuck ships" and the "phantom lines" was a self-repair situation, paired with the time-based pools creating enough of a window for self-repair to happen.
 +
** If we had the game running a bit slower (based on heavy debug logging, for instance), then this problem would disappear in the first place.  It's some sort of crazy order of operations situation that is probably related to ships visually exploding even when the entire stack is not yet dead.  Though it may predate that; honestly it's super hard to tell.
 +
** At any rate, these ships all wind up in a consistent style of state that we can detect very cheaply on the CPU within a few ms of them being "dead and invisible," and the lines were associated with that.  So we now just detect those states and have those objects clean themselves up.  It's a safety valve we'd want to have anyway, just in case mistakes are in place elsewhere in the code.
 +
** Probably most people didn't run into this, except with a few rare cases where their processor was very very fast, or where they were running at something like 10x speed.  Those sorts of circumstances brought it out, but on 1x speed on a normal processor it was likely to almost never -- if never at all -- happen.  Given fast-forwarding is a pretty key part of the game (Chris spends most of his time on 4x speed anyway), this was important to get resolved.
 +
** Thanks to Phenomphear, BadgerBadger, Chthon, donblas, ArnaudB, Ranakastrasz, Astilious, and Daniexpert for reporting.
 +
 +
* Fixed a bug that was causing all xml mods to throw a "does not have data for the following rows, which were referenced somewhere" error when trying to load them.  This is new in the last few versions since we reworked how mod loading worked.
 +
** As part of this, then added a new ExampleMod2 mod that adds a useless galaxy map options setting under a category called My Mod.  It is disabled at present, but removing the ModIsDisabled.txt folder from its location will fix that.
 +
** Thanks to NRSirLimbo for reporting.
 +
 +
* Put in a code change to make absolutely sure that sound clips never loop when they play back.  This probably won't really fix the issue, but it's worth a shot.  Apparently astro train and instigator base warnings play multiple times in succession, sometimes delayed.  This may be due to multiple of them showing up at once, or some other esoteric issue.  A cruise through the code doesn't reveal anything obviously wrong, so we'll ideally need a savegame or some other mechanism to let us trigger the effect after we load it and thus chase it down.
 +
** Thanks to GrimerX for reporting.
 +
 +
* Fixed an exception that could occur during tooltip generation when the number of factories on a planet changed at just the wrong time and you were hovering over them.
 +
** Thanks to bluthru for reporting.
  
 
== Version 1.023 Cloaking Variagation ==
 
== Version 1.023 Cloaking Variagation ==

Latest revision as of 23:28, 1 January 2020

Contents

Next Release Notes

AI War 2: The Grand New AI

What was this phase all about?

The game was solid at this point and something we were really proud of and that players were having fun with. But inevitably, the more people we had playing it, the more things get brought to our attention to refine and make as smooth and fun as possible. This was basically a period we set aside for doing that sort of thing, rather than focusing on any major new content drops or other major new features.

Version 1.025 Hotfix

(Released December 24th, 2019)

  • Fixed two (harmless) error messages that would show up on ship tooltips on the galaxy map view since the prior build. This was just some of our debugging code for detecting wrong ship info, but it only applies in planetary view.
    • Thanks to Chthon, GrimerX, NoMoreBlender, and Admiral for reporting.
  • Fixed a bug where DoOnDestructionLogic() was being called when just part of a stack died, which led to some strange things happening. It could cause HasDoneOnDeathSinceLastClaimed to be true when it should not have been, and somehow or other it seemed to be causing hydra heads to reanimate themselves. Or at least it was contributing to that.
    • Thanks to Chthonic_One for reporting.
  • If a stack is self-attritioning by some rate (say, 2%), it now multiplies that amount by the number of ships in the stack, maximum 20 (so 2% would lead to 40% in a stack of 20 or more).
    • This does mean that stacks of 21 and up still attrition slower than their non-stacked peers, but in general stacks are no longer so resistant to attrition.
    • Thanks to Chthonic_One and Puffin for figuring out that hydra heads and various types of drones were problematic in the extreme without this.

Version 1.024 After Death

(Released December 23rd, 2019)

  • On any of the debug menu things that mark the game as being in "cheat" mode, it now shows a "cheat: whatever the cheat was" message. This way you know if you activated cheat mode, which disables achievements later in that same campaign.
    • Thanks to DEMOCRACY? DEMOCRACY! for reporting a mysterious case where he seemed to have cheated but never opened the debug menu. If some other function is using one of the cheat methods (we didn't find any in a code review), then this would also reveal that for us.

Balance

  • Majorly reworked how the ondeath logic triggers for ships that die off the top of a stack without killing the entire stack. This has the following implications:
    • For each thing in a stack that dies that would spawn something, it now will spawn something. Previously it would only spawn it when the whole stack dies.
      • So this will be a major buff to hydras, for instance, as they will create vastly more hydra heads than before if they are stacked.
    • For each thing in a stack that would be zombified, it now creates zombies.
      • So this is a major buff to the botnet golem and nanocaust, as if they kill something like 20 ships out of a stack of 80, they'll now get a stack of 20 zombies rather than nothing. Previously they only got something when the whole stack died.
      • On the OTHER hand, it now makes sure that you have inflicted enough "zombification or nanocaustation damage" to afford each stacked item. So before if you killed a full stack of 15 ships with zombification and had enough zombification damage to afford 1, you got all 15. Now you would just get 1. The reality is that you've probably dealt 15 worth of damage if you killed 15 ships, but it's possible that you only dealt, say, 12 ships' worth. In that case you'd get 12 ships out of the stack of 15 you killed, not 15, and that's not a bug.
    • Metabolism works the same as zombification and nanocaustation now do, also, with all the above caveats and notes.
    • The game now properly tracks the number of total ships killed with the stacked ships counting as any other ship would (since they could be separate or in a stack, they are the same).
      • This does mean that counterattacks are going to count up much faster now, probably, because all of that would previously only count however many ships were in the final death of a ship. For instance, if the AI had a stack of 80 ships, and you killed 20, 20, 20, and then 20 ships in bursts like that... you'd get 0, 0, 0, and then 20 worth of counterattack points applied. Now it will give you the proper 20, 20, 20, 20. So depending on the size of stacks at AI planets and how much damage your ships were inflicting to entire stacks this might be a big difference or no difference at all. The inconsistency was in past versions, not this one, though.
      • This also all applies to EXP gains for your ships, which means that things like your botnet golem or other golems will level up way faster for what that's worth. Fleets in general will.
    • Thanks to Chthon for reporting.
  • Doubled the EXP amount required for each level, due to the above.
    • This definitely needs more data.
  • Also decreased the AIs counter-attack multiplier a bit for each Difficulty due to the above.
    • This also needs more data.
  • Reduced the warning time of waves...a lot.
    • From old notes the default was apparently meant to be somewhat like Classics warning of around 3 minutes, but was instead notably higher.
    • This drastically reduces the time you have to respond to an incoming wave. This feels a little extreme, but in testing it was still fairly easy to rally Fleets in time. One time even a Citadel managed to move 5 hops and arrive just before the wave hit.
  • Removed the temporary speed boost Transports got when entering a planet.
    • Meant you could seriously zip around everywhere extremely quickly, responding to any threat in your territory with the majority of your force before it could really do anything.
    • Combined with the much lower wave warnings, the ability to go all in on offense yet defend with your mobile fleets should be notably reduced.
  • If the Warden Fleet is at maximum capacity, the excess budget is given to Reinforcements, rather than Waves.
    • This was probably the cause of numerous complaints of "out of nowhere enormous waves".
    • It was also the cause of the amusing scenario where the Special Forces Master would donate so much to Waves that it would out-wave Tsunami (the wave focused AI type).
    • Reinforcements was chosen as the destination budget, as it makes some sense for a defensive budget to be donated to another one, rather than dumped into offense.
    • You could suppose it be given to something like CPA or Hunter, but that can feel like a penalty for avoiding the Warden rather than trying to blow it up all the time.
  • Increased effect of Instigators on higher difficulties.
  • Doubled the damage of Fortified Tesla Turrets.

Outguard Balance

  • Outguard hacking response adjusted to be notably easier, but should still require a full fleet and a large investment of metal for rebuilding to succeed.
    • Due to its existing AIP cost, this should be fine? Moderate payment and large military investment should be enough.
    • Difficult to balance for multiple difficulties, but this change made it pretty simple on 5, somewhat difficult on 7 (50, 110, 360 AIP tested), and juuuust possible on Democracy's save of 500aip, difficulty 9.
    • Outguard Tertiary response wave removed.
    • Outguard response wave strength stops scaling up after 75 seconds.
    • Outguard final response buffed by 50%.
      • Done in response to just how painful the hack felt on higher difficulties and higher AIP, they will now stop scaling up halfway through their base duration.
      • Tertiary waves were removed as well due to them being a problematic burst of units that, if allowed to trigger again due to extended timers, vastly messed with the hack's difficulty.
      • To make up for this, the number of units spit out at the end of the hack has been buffed.
    • Huge thanks to DEMOCRACY? DEMOCRACY! for his save that allowed in-depth testing.
  • Outguard Group Buffs
    • Prufrock's Partisans now spawns Decoy Drones, and comes with Decoy Drone spawning carriers.
    • Spire Archivist Beam and Shield base count increased by 100%. (AIP Scaling unchanged.)
    • Hydran Hobbyist now spawns with a few of its lesser parts which increase in count with AIP.
    • Democratic Demolitionists turret strength increased by ~33%.
    • Groups that previous lacked any sort of scaling should feel somewhat better over the course of the game, Spire Archivist now feels as impactful as its reduced duration implies, and Demo Demo should be more potent to make up for its pitiful range.
  • Also included is a small change to Outguard code that has it ignore drones for the purpose of unit processing. Drones die seconds after their carrier does, so there is no reason to keep track of them.
  • War Harvesters and War Siegers now have a 10 minute cooldown between uses, and always give you a static count of 5 ships.

Bugfixes

  • Fixes a few Ghost Wormhole Sentinels appearing in the normal group.
  • Possible fix to a problem with getting drones back into their source.
    • It was suspected that this might be a race condition, but from code analysis it seems that the only things that increment this are on the same thread. We've renamed some methods to be clear what thread they need to happen on or what thread they do happen on, and made sure that nothing is calling something from a thread that can be a race condition.
    • If this doesn't work, then there are a couple of other things we can do, such as using a lock on the counter or changing it to a list structure or similar. The fact that this never happens with transported units but only drone units makes some sense given that they are completely different code paths and data structure types, but it's not clear why the drones were having a problem.
    • The most likely thing with the drones having a problem is what we fixed in this build, which is that we were incrementing their value AFTER despawning them, and that may have been causing some problems. If that's not it (this is hard enough to reproduce that we can't be sure), then we'll take more extreme measures.
    • Thanks to Chthon for reporting.
  • One other change has been made to drones being put back into their parent. Essentially it was checking the number of stored drones against the effective squad cap... which you would think would be okay, but might have been missing some multipliers, we're not sure. At any rate, making a change to that we now just go ahead and increment the number means that for a frame or two there is a slight chance (somehow?) that there are too many drones stored in a drone carrier, but the game already checks for that and fixes drone overages, so it's probably safer to trust to that for the moment.
    • Thanks to Chthon for the report.
  • When hovering over a ship, it now shows an error if the entity doesn't actually properly belong to the fleet membership it thinks it is in.
    • This is a cheap check for just the ship that we're actually hovering over, and should help us to find those "phantom ships" that are showing up at times. Or at least some info about them.
  • If you're hovering over an entity that considers itself dead for some reason but it is still there (invisibly or not) for you to hover over, it now will show that in the tooltip for that entity when hover over it. This should give us a lot of insight into the "phantom ships" or "stuck ships" problem that people were running into in long games or at 10x speed.
  • If you're hovering over an entity that is on a different planet than the one you are viewing -- which should be impossible to do -- then it now shows as an error in the tooltip. This actually does happen with stuck ships, at least.
  • If there are visual lines emanating from a ship and you have debugging turned on for the tooltips, it now says how many lines are coming out of the entity.
  • Lots of debugging has verified that in some cases it was possible to have a stale gimbal for an entity that was no longer related to the entity at all.
    • This is something that was more likely at 10x speed, but potentially could happen at slower speeds as well.
  • Our in-game time-based pools now use realtime only, and never are based around the speed of the game simulation. This keeps things from churning a bunch in an inappropriate way when the simulation is running at something like 10x speed.
    • This in turn prevents things like ships being reallocated out of the pool buffers before it has a proper amount of time for teardown. It doesn't fully solve the "phantom ships and lines" problem, but it certainly cleans it up a bit and makes it able to self-correct if needed (a 15-second window is an eternity for error-correction in computer terms; we really only need a few hundred ms at most).
  • In the end, the solution to the "stuck ships" and the "phantom lines" was a self-repair situation, paired with the time-based pools creating enough of a window for self-repair to happen.
    • If we had the game running a bit slower (based on heavy debug logging, for instance), then this problem would disappear in the first place. It's some sort of crazy order of operations situation that is probably related to ships visually exploding even when the entire stack is not yet dead. Though it may predate that; honestly it's super hard to tell.
    • At any rate, these ships all wind up in a consistent style of state that we can detect very cheaply on the CPU within a few ms of them being "dead and invisible," and the lines were associated with that. So we now just detect those states and have those objects clean themselves up. It's a safety valve we'd want to have anyway, just in case mistakes are in place elsewhere in the code.
    • Probably most people didn't run into this, except with a few rare cases where their processor was very very fast, or where they were running at something like 10x speed. Those sorts of circumstances brought it out, but on 1x speed on a normal processor it was likely to almost never -- if never at all -- happen. Given fast-forwarding is a pretty key part of the game (Chris spends most of his time on 4x speed anyway), this was important to get resolved.
    • Thanks to Phenomphear, BadgerBadger, Chthon, donblas, ArnaudB, Ranakastrasz, Astilious, and Daniexpert for reporting.
  • Fixed a bug that was causing all xml mods to throw a "does not have data for the following rows, which were referenced somewhere" error when trying to load them. This is new in the last few versions since we reworked how mod loading worked.
    • As part of this, then added a new ExampleMod2 mod that adds a useless galaxy map options setting under a category called My Mod. It is disabled at present, but removing the ModIsDisabled.txt folder from its location will fix that.
    • Thanks to NRSirLimbo for reporting.
  • Put in a code change to make absolutely sure that sound clips never loop when they play back. This probably won't really fix the issue, but it's worth a shot. Apparently astro train and instigator base warnings play multiple times in succession, sometimes delayed. This may be due to multiple of them showing up at once, or some other esoteric issue. A cruise through the code doesn't reveal anything obviously wrong, so we'll ideally need a savegame or some other mechanism to let us trigger the effect after we load it and thus chase it down.
    • Thanks to GrimerX for reporting.
  • Fixed an exception that could occur during tooltip generation when the number of factories on a planet changed at just the wrong time and you were hovering over them.
    • Thanks to bluthru for reporting.

Version 1.023 Cloaking Variagation

(Released December 20th, 2019)

  • Fix a bug where hovering over an AI unit would still tell you the AI type even if you requested a random ai type
    • Thanks to Ryulong for reporting
  • Continued improvements to the FRD/overkill detection code
    • Thanks to Democracy for the bug report
  • Fix a bug where save games were still showing the name of the AI type even if the player had picked "Random". Save games will now correctly show "random"
  • Fix a bug where shortly after game load macrophages might spontaneously Enrage and attack you

Further Cloaking Adjustments

  • Cloaked units now recover all their cloaking points once they have been out of combat for a while
    • A number of people have complained about this over the years, most recently Mayheim on steam
  • balance_current_cloaking_percent_loss_from_firing, which was previously 0.2 (so allowing 5 shots from every ship) has been removed from being a global variable.
    • cloaking_percent_loss_from_firing is now a field on entity systems, and it defaults to 1 on every ship weapon unless they define it to be something else.
    • This prevents some exploits that we found in our own internal testing in the new version with decloaking-regen being possible while still cloaked, but also lets us make allowances for extra-stealthy units that can fire while cloaked like before, or even more than before.
  • All of the cloaking ships now lose their cloaking in one shot (as opposed to the 5 it used to take) except for the following ones:
    • Penumbra Echo Drone take 10 shots now.
    • Eyebots take 2 shots now.
    • Stealth Guardians still take 5 shots.
    • All of the guard posts now take 10 shots (mainly this means if they are the Ghost versions of themselves, for the Ghost AI).
      • Ditto for the dire guard posts, except those now take 20 shots, holy cow.
    • Mugger Frigate takes 2 shots.
    • Raid Frigate now takes 10 shots, wow. Maybe overpowered.
    • Warbird Frigates still take 5 shots.
    • All of the turrets now take 10 shots (mainly this means if they are the Ghost versions of themselves, for the Ghost AI).
      • The one exception is the Ambush Turret, which is always cloaked for everyone and is now much better at firing off shots before it reveals itself.
    • All of the minefields now take 20 before they are revealed, which means that to reveal them you really need to have decloaking along. This feels sooo much more appropriate for the mines.
    • This will probably need more balance over time -- in fact it almost defintiely will -- but this provides us with a starting point where the obviously OP strategies aren't going to work with the new cloaking changes, and yet some cloaked units are now even more powerful than before.

Achievements Adjustments

  • GOG Galaxy Client SDK 1.139.2 (October 29, 2019 11:58) has been integrated.
    • This does not support linux, it's worth noting. This is what we'll be using for networking on the GOG side, and for achievements on the GOG side.
    • The lack of linux support is why we still will have to use Forge Networking for people who want to have LAN play on non-Steam copies of the game that are running linux.
  • When there is an error in finding an achievement on Steam, it now shows that in the log and in the chat messages to the side, rather than having a big scary game-interrupting error popup.
  • Adjusted the formatting of all the "API Keys" that we use on Steam, so that they will not be ambiguous between unicode encodings and also so that they can be imported to GOG validly. Turns out their restrictions on formatting were a lot more severe.
    • For purposes of anyone creating achievements in our xml, the rules we're going by are: all caps, no diacritic marks or accents, no punctuation, no spaces, underscores where spaces would be, keep it to maybe 15 characters or less -- that last one is more tricky to know for sure.
  • Fixed a bug where the "kill a specific unit" achievements were granting when you killed ANY unit.
  • Fixed a nullref exception in the code for "how many of a specific unit have I killed" if the answer was zero.
  • Improved the performance of the per-second achievement checks for players, to not bother re-checking stuff that is already completed.

Version 1.022 Slaying The Asymptote

(Released December 19th, 2019)

  • Fix a null reference exception when hovering a command station when it finished building
    • Thanks to Sigma7 for the bug report

After-Victory Adjustments

  • If the player has won the game, all AI ships stop doing much. The AI will no longer get any income, send waves, etc... If you attack AI planets they will fight back, but they won't be able to do much of anything else.
    • From a discussion on steam with Error, but something like this has been requested for a while in aiw2 (and also AIWC)

Achievements Fully Up

  • The following AI types are considered "Hard" category, and so we now have their achievements as silver/gold/platinum rather than bronze/silver/gold:
    • Zombifyier
    • Vicious Raider
    • Tsunami
    • Special Forces Master
  • The following AI types are considered "Brutal" category, and so we now have their achievements as gold/gold/platinum rather than bronze/silver/gold:
    • Swarmer
    • Royal
    • Golemite

Fleet Building Speed Revisions

  • First off, the prior version was very busted in the logic where we had it building slower at higher marks. Yes it built slower, but it was WAY slower -- on the order of 7x slower at mark 7, we think. Basically we had some math that was causing it to become slower and slower the closer a ship came to completion. So it would vary the slowdown based on how much the ship cost and how much was assisting it. At any rate, it caused asymptotic style delays in building ships far beyond what we ever intended.
    • This was met with much dislike, which we totally get. The debugging info was telling us the numbers were right, but the reality on testing more thoroughly just with a stopwatch was far different.
    • This bug has been fixed, but also more changes have been made to make this even more tame, as detailed below. Hopefully this is something that folks find to their liking now.
  • Fleets now build at Full Speed if their units are all on Friendly Planets
  • Marks 1-3 for fleets not on friendly planets build at full speed. Slowdown is 1.25x at mark 4, 1.5 at mark 5, 1.75 at mark 6 and 2.0 at mark 7. On the previous patch it was something like a 7x slowdown.

Version 1.018-1.021 Methodical Achievement

(Released December 18th, 2019)

  • If your allies are off fighting without you, you don't get galaxy map information about their battles unless you are Watching the planet
  • Units deprioritize targets they dramatically overkill
    • Hopefully a slight buff to Artillery Golems and the like. Thanks to AnnoyingOrange for a bug report
  • Very firmly prevent exogalactic wormholes from wormhole invasions from being used to send regular waves
    • This isn't a great solution, but it will work for now. Thanks to Peter Ebbesen for reminding me
  • Both the campaign-world itself, and all of the factions within it, can now store "historical data" in the form of arbitrary strings, integers, and booleans that have getters/setters that take a string parameter to find them.
    • This lets us elegantly and simply and centrally track... whatever needs tracking. This can be used by mods, DLC stuff, the core game, achievements, and everything in between. It can be working data for the UI that needs to be serialized for whatever reason (so NumARSsHacked_ForUI could have been used in this if this had existed, for example), and so on.
    • The nice thing is that all of the code that can use this can absolutely be ignorant of each other, but it also allows for cross-mod reading of data if need be, without any sort of serialization problems that we might normally run into.
    • This also neatly solves the problem of "we need to store some data for a new achievement or whatever other purpose, but to do so would require incrementing the game version number and messing with serialization in a potentially dangerous way when there are many cooks in the kitchen." Now no version number incrementing is required, and the serialization of this sort of thing will "just work."
    • A word to the wise: absolutely filling this with huge amounts of data or with really long string descriptors will have an adverse effect on savegame size, so please use responsibly. ;)
  • All of the cheat-style helper things in the debug menu should now block achievements from being logged, although this is not tested.
  • Add a Tip explaining that selecting units and right-clicking on an enemy unit will make your selected units prefer to kill the unit type you clicked on
    • Thanks to overzot for a bug report
  • The game now has capabilities of noticing the steam overlay is open (though we don't do anything with that yet -- do we need to with the way focus is handled, can anyone confirm?).

Bugfixes

  • Fix a bug where 'Random Any' AI Difficulty could return the Tutorial difficulty
    • Reported by Ampersand on Steam
  • Fix a crash with Marauders
    • Thanks to NRSirLimbo, Endovior, and Rigellian for reporting
  • Fixed a bug where if code tried to look for a setting by name, and that setting did not exist, it would look instead to a "null setting" value that would be of an indeterminate value.
    • For instance, in some cases it could set a bool null setting to true during some set operation, and then other times it would try to read that back out and get true as the response for something that should be defaulting to false because the setting only existed in (for example) DLC files that are not present.
    • It's possible that for missing settings that code checks for we should be more aggressive and outright throw an error, but for now it just is always doing nothing on sets or returns the system-default values per type on gets (bool=false, int/float/fint=0).
    • Thanks to a Badger for helping us accidentally discover this with players and a DLC-only fireteam setting.
  • Put in some debug logging for when it's trying to log achievements on game victory.
  • Fix a bug where some Objective Importance flags weren't being cleared when the objective was completed, leading to galaxy map clutter
    • Thanks for alocritani for the bug report
  • The number of seconds played (in game time) is now properly logged to the statistic sets.

Methodical Pursuit Mode

  • The default targeting mode for Pursuit Mode (FRD) now does a better job of choosing targets that aren't being overkilled (so each shot can be more effective), and also de-prioritizes units that can't shoot it.
  • The practical upshot of this is that your units will prefer to Methodically take out a planet piece by piece, instead of spreading out and trying to hit a lot of targets simultaneously. This is particularly valuable when attacking AI planets with lots of Guard Posts with ranges that don't support each other.
    • This new approach will make your forces win some close battles they were losing before when attacking the AI, but also will make them win a fight more slowly if you have a significant advantage. I think the "winning close battles" should be the default
    • The player, minor factions and AI difficulty >= 7 have access to this.
  • Methodical Pursuit Mode can be disabled (for all factions) via a Galaxy Setting

Balance Tweaks

  • Player units start to take longer to build as their Mark increases. Not an increase in cost, just in production time.
    • Currently this is linked directly to their health multiplier. Mark 2 is 1.25x, so it takes 125% of normal time to build. Mark 7 is 4x, so it's 400% of normal time.
    • Why? Well, thanks to units not increasing their cost as they Mark up, your units get more efficient in terms of "how long it takes to build" and "how much health it has". Essentially, the "health per second" you can input into a fight increases a lot as you improve your ships.
    • Eventually this could lead to things like a single Military world worth of Factories, plus a Combat Factory building Mark 7 units fast enough that the "health per second" was notably greater than the Overlord Phase 2 could DPS!
      • Some numbers. A single Factory would produce a Vanguard every 2 seconds. Said Vanguard at Mark 1 has 24k health, so this Factory is inputting 12k health per second into a battle.
      • If that Vanguard was Mark 7, that factory would be outputting 48k health per second. Then add in the other Factories on your planets, the Combat Factories, and the Engineers in the above example with the Overlord, and you would have 384k health-per-second. This is not including shield regeneration, repairs, drones, zombification, etc.
        • This is fairly experimental, but is also a large nerf to the players ability to "throw wads of cash" to solve every problem, so will be keeping an eye on it, particularly in case it brings back the "Netflix Time" problem of Classic, although the build times here are already far shorter, and the increase less, plus the metal costs don't change.
  • Increased most Frigate durability 50%.

Cloaking

  • It now takes 10 seconds for cloaking to return after being depleted.
    • This is so it plays nicer with the below changes, else some units will constantly recloak while attacking, due to their reload time being longer than the recloak time.
    • As the below changes make it so cloaked units do far more damage before the cloak wears off, hopefully the micro requirement will be drastically reduced so that this added delay isn't a problem.
  • Increased the damage and reload time of most cloaked units by a fair bit.
    • This means they do much more damage before the cloak wears off, generally making them better at assassination and opening volleys.
  • Revealer Battlestation tachyon range now covers the entire planet.
    • A benefit to it over other decloaking sources.
    • From a mention sometime ago in Discord, forget who.
  • Tachyon Array range increased 25%, now decloaks twice as fast.
    • Gives a reason to use these over Sentry Frigates (beyond just cost), which have enormous range and in general were just superior.
  • Doubled the cloaking points at Mark 1, and amount gained per Mark for most units.
    • This means there is a notable delay before something is revealed, meaning there's some benefit to having higher Mark decloakers.
    • This also makes it easier for the player to do stealth ops, even if there's a bit of detection around.
  • All 5 starting Battlestation designs have 5 Tachyon Arrays.
    • So early on you have some extra decloakers to hand around, particularly for any early economic worlds and against the Ghost AI type.
    • Thanks to Donblas for suggesting sometime recently.
  • Increased the cost for the AI to purchase most cloaked units.
    • With the above changes these will probably have an enormous jump in power (which is seemingly needed, based on comments on cloaking in general). So, there will be less of them. If you can reveal them in time, great, less to kill! If you can't...

Achievements!

TLDR: These are presently Steam-only, and we're still entering the data for them. But you can earn them even before they can be logged to Steam or GOG and it will log them later. We'll have the data for these up shortly, but it's a manual data-entry process to do these. You'll be able to see the list of achievements as they are added, and later on can see them in a list in-game (but cannot yet). Next build, probably.

  • The game now properly logs achievements to Steam, and also locally. It's possible to use the debug menu to clear your local achievements to redo them if you want to, but that won't clear them on Steam.
  • If you have achievements locally-earned but not on Steam for some reason, then starting up the game program while logged into Steam will sync those achievements onto there. So you don't lose an achievement that you got while in offline mode or similar.
  • There are a bunch of achievements (uh... 139 of them??), but the data for those haven't been fully put into Steam yet. Anything you earn prior to it being on Steam or GOG will sync up with those platforms when they have the data in question.
  • Note that GOG achievements are coming soon. The data from them gets imported from Steam, which is handy, so we want to get the data in first. But we also need some code updates to integrate with their things prior to that.
  • Achievements now immediately log themselves to disk after you achieve them, so that if you don't get to a saving point or exit gracefully you don't lose that having been logged. This applies whether or not it logs to Steam or GOG or what have you, for your own personal records. This does so in an intelligent way with minimal disk calls even if you have a bunch of achievements all tripping at once and getting logged.

Cheating Is Perfectly Ok But Doesn't Give Achievements

Bear in mind, though, that tons of this game is open source and easy to compile. If someone wants to make a button that literally just gives them an achievement, the code is right there to do it. Kind of a spoilsport thing to do, but people have ways of granting themselves achievements directly via the Steam API anyway, when it comes to that. So even if we encrypted our game and did no open source work, Steam is already vulnerable to anything that supports client-side achievements. Some people will cheat, that's unfortunate, but without using an external Steam-targeted tool or recompiling parts of the game you can't do it with ease. So there's that.

  • If you use the cheat-style debug menu items, then it will skip granting you achievements in the campaign in which you did that. It will note that you would have gotten an achievement but that that was skipped at the time-of, because otherwise we'd have confused bug reports.
    • The non-cheaty debug menu options (or ones that make it harder for YOU, like increasing AIP) don't cause achievements to not work in the campaign in question.
  • If you use the debug menu to change the AI difficulty up or down after 60 seconds of gametime have elapsed, then that counts as a cheat for achievement purposes. If you do it in the first 60 seconds (plenty of time if you're paused, and have just loaded a quick start, for instance), then it will not consider it a cheat and let you go about your tweaking.

Version 1.017 Random AI Types

(Released December 16th, 2019)

  • Fix a bug where cancelling a wave when fighting AIs in Civil War Mode could softlock the game
    • In Civil War Mode, the AI is allowed to send waves at other AIs planets that are neutral but still have turrets. This was done to prevent the case where the AIs were just sniping eachothers command stations but not actually destroying all the defenses with waves. This was not playing nicely with the code that was trying to silently reroute waves to new targets if the old target had died. So the game was queueing a Civil-War style wave, then immediately trying to re-route it each time.
    • Thanks to Sigma7 for the bug report
  • Improve the Notification for Raid Engines to remove some weirdly long text
    • Thanks to a save game from Sigma7 for making me notice this
  • Fix a bug where Dyson ships were getting stuck on cloaked units, or units inside guard posts
  • Fix a bug where Dyson ships were killing warp gates, increasing AIP
    • Thanks to Starkelp for reporting
  • Added a new "Various Weapons" fleet name styling to the game.
    • Description: Weapons from other games. Can you recognize the references? (Created by DEMOCRACY_DEMOCRACY)
    • Thanks to DEMOCRACY_DEMOCRACY for providing these!
  • Fix a bug where Wormhole Invasions weren't actually sending any ships
    • Thanks to Flypaste and Peter Ebbessen for reporting

Random AI Types And Nicer AI Type Lobby Display

  • Add Random AI Types to the game. There is a "Totally Random", and also Random based on how hard the AI Type is, so "Random Easy", "Random Hard", "Random Brutal", etc...
    • When hitting "Esc" to bring up that menu in game, a randomly chosen AI Type, just will say "Random". There's a setting to actually reveal the random AI type if you'd like
    • This has been requested by a lot of people across mantis, discord and steam. This basically matches AIWC behaviour, which I think people liked.
  • The dropdown in the lobby for the AI difficulties now shows what difficulty category each one belongs to, nicely-colorized.
    • It also sorts by difficulty category and then by name of the difficulty (with the default showing up first in its respective category as the one difference there), and with the random option for each difficulty type preceding it.
    • Big thanks to Badger for suggesting that we implement in such a much nicer way like the first game had it.

Balance Tweaks

  • Outguard hacking response nerfed by ~25%, and final response by 50%.
  • Outguard tertiary wave now fires every 75 seconds instead of every 50 seconds.
  • Some AI Reserves units will now join the Hunter Fleet instead of warping out. Higher AI Difficulties mean more units join the hunter.
    • Thanks to VengefulWight for suggesting
  • Reduced Impactor Citadel range to levels similar to the other Citadels (excluding Interceptor).
    • Thanks to StarKelp for reporting a case of this thing wiping an entire AI planet of Posts almost immediately.
  • Reduced target priority of Citadels.
    • Hopefully this'll help reduce the potential for them to be the top priority of the AI over everything else.
  • Reduced the counterattack multipliers of Golems/Arks and Lone Wolves.
    • Thanks to donblas for reporting an ow case.
  • Spire Frigates, Arks and Golems (excluding Rorqual Hegira) now use a 2/1 hull/shield ratio.
  • Buffed the Dyson a little.
  • Astro Train projects that are only enabled at > Intensity 5 no longer require their Trains to go near the player.
    • Led to Trains never really completing projects and being infinite resources instead.
  • AI Homeworlds should now always have 8 Posts, instead of ranging from 5 to 8.
    • This could cause wide swings in how difficult they were, across all difficulties. This allows some standardisation, while keeping most of the variance in the AI difficulty values.
  • The wormholes on AI homeworlds are all on the edge, similar to the player ones.
  • Replaced the NastyPick set up that was used to seed things like Ion Cannons, Eyes, so on.
    • Instead, now there are 4 different things that work similarly:
    • BigGunNastyPick (Mass Drivers, Ion Cannons)
    • EyeNastyPick
    • SupportStructureNastyPick (Magnifiers, Troop Accelerators, etc)
    • WildCardNastyPick (Mass Drivers, Ion Cannons, Fortresses)
    • This means there can be more variance in what a planet has, plus some potential nasty combinations.
    • It also means certain things can be flat out turned off for certain difficulties (like Eyes at low ones), and per-difficulty tuning of each thing.

Version 1.016 Back From Beta

(Released December 13th, 2019)

There were a number of fixes that we also pushed directly into the 1.015 build without updating the version number, while that was in beta. So some of the things that would have been part of this build already went out and were tested because they were game-breaking in some fashion. All is well now, that we can tell from our testing and player feedback so far. Knock on wood!

  • Fix a bug where units pulled through a wormhole by a tractor beam could wind up outside the gravwell.
    • Reported by zeusalmighty and chthon
  • Add voice lines for Dark Spire Vengeance Strikes, and when a Dark Spire Locus spawns
  • Add a tip giving a very brief explanation of wave compositions
    • Thanks to Peter Ebbessen for suggesting
  • Status debuffs like paralysis, engine stunning and weapon reload time increases will decay faster on stacked squads
    • Intuitively this makes sense, since the effect is in theory split across multiple units)

BETA Version 1.015 Testing The Outguard Waters

(Released December 12th, 2019)

To play this version, you need to go into Steam's properties for the game, and then the betas tab, and enable the 'current_beta' branch. If you're not worried about potential bugs or broken balance, then please do so -- we could use lots of eyes on the new Outguard changes, but we don't want to inflict those on everyone without more testing first. If we can get enough people testing this out, we can promote this out of beta tomorrow, which would be ideal since there are some important bugfixes in here in other areas of the game.

  • You can prevent your ships from pathing through specific planets by right-clicking the planet name in the resource bar (at the top left of the screen)
    • This is intended for cases like "I don't want my fleets to travel through that scary Eye planet by mistake"
    • The primary UI feedback for this is to hover a given planet and it will tell you if you've asked to not path through it. It would be nice to have a planet icon flair or something someday?
      • This is a longstanding request from many people, including Astilious and Democracy. As a piece of trivia, this is actually the second time badger has done the UI portion of this feature.
  • Removed the limit of 1 Non-Turret Defense per Guard Post, and replaced it with a limit for each individual unit type it could pick (i.e only 2 Forcefields, but can have 3 Gravity Generators) for the entire planet.
  • Added a new way of writing timespans that writes minutes and seconds if it's less than 1 hour, and hours and minutes if above that. This keeps them a consistent length, and is particularly useful for the journal listing so that really old things just show the hours and minutes ago they were, rather than bothering you with being down to the second.
  • Hacking response decreased for AI difficulty 8-10
    • Thanks to zeusalmighty for suggestion

Bugfixes

  • Make Anti-AI Zombies less likely to get stuck by small groups of cloaked enemy units
    • Thanks to Dunno for reporting
  • Fixed a concerning and nonsensical bug where the same ship was attempting to be added to a fleet more than once on creation, but then not winding up in the fleet at all from its own point of view, thus spewing errors.
    • This may ultimately be part of some much larger issue with pooling of units -- potentially one that happens specifically when the simulation is running agonizingly slowly for whatever reason.
    • Thanks to razgrizh for the report.
  • It is possible to get ships trying to set a pursuit target for a higher weapon system index than they actually have, mainly if the ship somehow changes type while maintaining its ID between the autotargeting and the finalized logic. This again shouldn't be possible, but seems to happen now in the same savegame where the other concerning bug just was. Now it won't complain about these, but will just ignore the bad data.
  • Put in some new counts in the escape menu's performance section that show the number of drones deployed and recalled, and the number of ships added into fleets and taken back out of them, as well as the number of failures of each.
    • As it turns out, in the strange savegame with bad performance of marauders, there are TONs of ships that are failing to be re-added properly, and drones popping in and out constantly. So this gives us something to work with on why it's so slow.* Put in some new counts in the escape menu's performance section that show the number of drones deployed and recalled, and the number of ships added into fleets and taken back out of them, as well as the number of failures of each.
    • As it turns out, in the strange savegame with bad performance of marauders, there are TONs of ships that are failing to be re-added properly, and drones popping in and out constantly. So this gives us something to work with on why it's so slow.
  • Removed the always_deploy_drones tag, since there is logic that causes drones to auto-recall if there are no enemies nearby. This was causing drones of marauder outposts to go in and out of the outposts constantly and rapidly, tanking performance previously. Anyone else who used the same logic was going to run into the same thing.
    • The savegame that previously ran SUPER slowly, aka about 2% of normal, now runs at 70-80% of normal instead.
    • This fixes a number of reported "Very Slow" saves, including reports from razgrizh,deo and NRSirLimbo
    • Thanks to Badger for finding and fixing this.
  • Fixed the AI never building Non-Turret Defenses.
  • AI types such as the One Way Doormaster and Turtle, which spawn more of certain structures, will no longer spawn the Trader versions of them.
  • Fix a bug where most of the planets in the galaxy could be named Murdoch
    • Thanks to Orelius for reporting
  • Make sure the AI taunt for "wave arrived" only plays when the wave is hitting a player planet
    • Thanks to deo for the bug report

Voice Line Work Continued

  • Instigator Bases now play a voice line when they spawn
  • "Homeworld Under Attack" now has its own line. This fixes a bug report from DevoutHaruhiist
    • There's now a line that plays when a bubble shield protecting your Home Command Station is under attack. If the AI actually takes down the shields and hits your Command Station itself then it plays a Taunt at you.
  • "Critical Planet under attack" is played if a planet with some Critical Infrastructure (like a GCA) is attacked
  • There's now a line for "Regular Player Planet Is Under Attack"
  • "Combat on Border World" now plays if you are in combat on a planet owned by an allied faction (allied human? allied faction?)
  • When a notification for "Wave targeting home planet" appears, you now get a voice line to make sure you don't miss it
  • When a notification for "Wave targeting planet with Critical Infrastructure" appears, you now get a voice line to make sure you don't miss it
  • Add voice lines for Macrophages Enraging and new Telia spawning

Outguard Rework

  • Outguard Rework - Reworked to be cooldown based, more customization options in xml, and added in 3 more groups.
    • Huge thanks to StarKelp for designing and implementing this whole piece!
  • Gameplay Changes
    • Each Outguard now comes with a number of summons.
    • These summons scale with the total amount of earnt AIP.
    • After use, you must wait a period of time before summoning the same one again.
    • In addition, as long as it is under capacity, it will slowly rebuild its used fleets, giving you further uses in the future.
    • Base values are as follows;
      • Offensive/Utility: 5 minute cooldown, 15 minute recharge, 10 minute duration
      • Defense/Stationary: 5 minute cooldown, 20 minute recharge, 10 minute duration
      • Donated To Player: 5 minute cooldown, 30 minute recharge, infinite duration
    • Outguard units now inherit techs properly.
    • Turret spawning mercs are now spawned between your command station and a hostile wormhole on a friendly planet.
    • Turret spawning mercs are now spawned near the center of the planet on a hostile planet.
    • Turrets will now spawn around each other instead of on each other.
    • Hacking the Beacon must again be done by a Fleet on the same planet. It also lasts 150 seconds, and costs 10 Hacking Points and 10 AIP (upon completion). These hacks will result in brutal AI response, far higher than most other hacks, so be prepared.
  • Code Changes
    • Unit tags will now attempt to search by tag first, and internal name second as a backup.
    • A multitude of new xml tags to configure nearly all of the changes.
    • (Many older Outguard units retain some older, no longer used values, for compatibility's sake.)

New Outguard

  • Spire Archivist, potent forcefields and beams
  • Democratic Demolitionists, grenade launcher turrets and ships
  • Hydran Hobbyist, an extremely redundant hydra starship with low damage and high disabling capabilities

Version 1.014 High AIP Playstyle Viability

(Released December 10th, 2019)

  • Continued work on voice lines:
    • Human Resistance Fighters warping in and out has voice lines, and the Log Message now includes faction colour
    • Marauders attacking have voice lines, and the Log Message now includes faction colour
    • Risk Analyzers firing have voice lines, and the Log Message now includes faction colour
    • Astro Train depot spawn/train spawn have voice lines, and the Log Message now includes faction colour
    • Low on Metal, Metal Exhausted, Low on Power, Brownout (no power) are in
  • Improve readability of unit hovertext by suppressing the Exp section unless the player wants detailed tooltips
    • I for one almost never care about this information. Suggested by Dekar on discord
  • Tweak the prompt when exiting the game to make it harder to confuse the Exit to Desktop button with the Quit to Main Screen.
    • Thanks to Ovalcircle for the suggestion
  • Tweak the "Delete or Keep Campaign" prompt so it doesn't run off the edge of the button
    • Thanks to Ovalcircle for the suggestion
  • Hopefully fix a bug where waves were still spawning after being disabled
    • Thanks to Ovalcircle for the bug report
  • Fix a bug where the AI Reserves would never spawn on difficulty 10
    • Thanks to Ryulong for reporting
  • Hovering a planet in verbose mode will tell you whether the AI Reserves can respond to a deepstrike there
  • Fix a potential null reference in fleets code
    • Thanks to donblas for reporting
  • Fix a bug where the having multiple AIs meant that the game wasn't properly sending anti-MDC exo waves
    • Thanks to Peter Ebbesen for the report
  • Waves sent against minor factions now make an effort to become threat against that minor faction, instead of just going for you after spawning
    • I think this has been reported by several people but I don't know who (if you'd like credit for bug reports, putting them on Mantis is the best way to make sure you are attributed)
  • Add the ability to hold down a button to suppress the 'Are you sure?' tech upgrade prompt. Having the prompt on in case of mistakes, but an easily done override is a nice little QoL improvement.
    • Suggested by ParadoxSong on mantis.
  • Fixed a bug where Beam Cannons could fail to hit fast moving ships.
  • Improve the beginner science/engineering objectives.
    • Thanks to Peter Ebbesen for contributing the text
  • Allow the player and minor factions to target AI defensive structures build from the Zenith Trader
    • Thanks to Peter Ebbesen for the bug report
  • If the AI has planned to send a wave against a target, but between the wave planning and the time you are alerted something happens to the target, the AI will silently reroute the wave to a new target
    • The practical upshot of this is that when a wave notification appears, it will always be for a reasonable target
    • Thanks to zoutzakje

Balance Tweaks

  • Altered the AI Mark Level AIP Requirements.
    • For Difficulty 7, it was: 100, 220, 340, 470, 580, 700.
    • For Difficulty 7, is now: 100, 275, 450, 650, 880, 1,100.
    • For Difficulty 8, remove 10 from each level, Difficulty 9 remove 20, and Difficulty 10 remove 30.
    • For each Difficulty below 7, add an extra 10 as you go down.
      • Response to some conversations with Peter Ebbesen about high AIP styles in this game in general.
      • Still keeps some values low for lower AIP play, while freeing up the middle and higher ones, for people who prefer and can manage that type of gameplay.
  • Spire Frigate beam range 15,000 -> 12,000. Triple Beam variant damage 7,500 -> 4,000. Other variant beam damage 7,500 -> 6,000. Reduced shields of all slightly.

Player Defenses

  • Grenade Launcher Turret reload time 12s -> 8s.
  • Doubled Focused Gravity Generator durability, and increased the range of the effect from 6,000 to 7,100.
  • Doubled Tractor Array durability.
  • Minefields are no longer one use, and are back to firing 5 times before being destroyed.
    • However, this is a cleaner version, where there are no weird effects from how many targets are being hit, how much damage it did, is there a Military Command, Mark level, etc.
    • Instead they take 20% of their maximum health in damage with every attack, regardless of anything else.
    • Mine effects and damage have been reduced to 25% of old values, but as they detonate 5 times, it's in the end a boost to their maximum potential, and of course no more Mines being wasted on a single unit.
    • As a last note, normal Minefields are probably actually viable now!
  • Increased minimum count of normal Turrets in Global Command Augmenters by 1 (so from min 2 to min 3).
    • This puts the spread of min and max to the same as most Strikecraft in Fleets (i.e the max is 1.6x the min).
  • Military Command Station Tech Cost changed.
    • Was: 4,000, 5,500, 7,000, 8,500
    • Now: 2,000, 3,750, 3,750, 4,250
      • The scaling here uses only the Stations damage, and ignores everything else for now, as the cap doesn't increase for these.
      • The damage bonus is pretty much considered "free", as you have already paid some costs for even having a Military Station (no nearby vision, no economy, so on).
      • In-case someone wonders why two costs are the same, that's due to the damage gained for each of those Marks being identical. This doesn't appear in things that take cap into account.
      • That's actually the same reason the Hull Techs cost the same - they're priced for a unit going from MK5 to MK6, then to MK7. Just so happens the benefit is identical for each step.
  • Citadel Tech Cost changed.
    • Was: 2,000, 3,000, 4,000
    • Now: 1,500, 2,625, 2,625, 3,000
      • Same thing for above, just uses the damage.
  • Deprecated the Tractor Beams Tech. Tractor Arrays are now included in Sentries.
    • These are both a bit...too niche. Sentries was just detection and Gravity Generators, Tractors was...well, Tractors. It makes some sense to just combine the two, as they both fill defensive utility roles, and neither were really bought.
  • Sentries Tech Cost changed.
    • Was: 500 ,750, 1000, 1250
    • Now: 750, 1500, 3250, 3500
      • Note that since Tractor Beams are included in this now, the cost is up from the previous one, but is cheaper than the Tractor Beam Tech was originally anyhow, which just followed the same scaling that Weapon Techs do, so now you get both for cheaper than the old price of Tractors.
      • Changed the scaling to be one based on health and cap, rather than damage and cap, because naturally nothing here actually attacks.
  • Minefield Tech Cost changed.
    • Was: 1,500, 2,750, 5,000, 6,750
    • Now: 1,000, 1,850, 3,250, 4,500
  • Forcefield Tech Cost changed.
    • Was: 3,000, 5,500, 10,000, 13,500
    • Now: 2,500, 4,750, 10,500, 11,500
      • Mostly bringing it in line with the same scaling used for Sentries. Was surprisingly close.
  • Military Command Station shots per salvo 8 -> 12, now gains 4 extra shots per Mark. Damage increased 50%.
    • The extra shots is an experimental thing, and newly added with this Station primarily in mind.
    • Like the damage bonus, the Tech Cost for these completely ignores it - the cost is paid already in choosing to use a Military.
  • Beam Cannon damage and reload time halved.
    • Suggested by Peter Ebbesen.
    • It appears the changes from StarKelp to beams have greatly improved their performance, but there's still some consistency issues. Doing this should, like the Spire Frigates, help to counteract some of the bad shots.
    • When it's decided they're in a more reliable place, can then investigate their power.
  • Doubled durability of Battlestations. They now also have guns.
  • Citadels damage consoldiated into fewer shots per salvo, now gain 25% more shots per salvo per Mark.

Economy

  • Metal Harvester Techs cost the same amount (4,000) for each Mark.
    • The benefit of these is purely linear, so the cost should probably be linear too, else an odd case results in which there just becomes a point it's not worth ever getting, so why have that level?
  • Economic Command Stations now increase energy by 100k per Mark, instead of 50k.
    • 50k is kind of pitiful if you only have a few. 100k should hopefully make it worth the investment, combined with below.
  • Economic Command Station Techs cost the same amount (4,000) for each Mark.
    • Same reasoning as the Metal Harvesters. They gain some durability, but it's so little it's not included.
  • Logistical Command Stations now increase energy by 50k per Mark, instead of 25k.
    • Yep, a buff to Logisticals! Mainly to provide some benefit to upgrading these. Economicals are still the top producer, and are more efficient to upgrade for Energy, out of the two.
  • Logistical Command Station Techs cost the same amount (3,000) for each Mark.
    • Same as above.

Version 1.013 Menacing Messages From The Machine

(Released December 6th, 2019)

  • Make Major Data Center exos a bit less frequent
    • Thanks to Peter Ebbesen for the suggestion.
  • When you have marked intel entries as high priority or low priority, it now shows H1, H2, etc, on the left for however many high priority objectives are at a planet on the galaxy map. For all the low-priority ones, it shows L1, L2, etc.
    • Potentially the formatting could use some work in the future, but for now this really seems to get the job done in terms of making the importance of the intel items translate onto the galaxy map and not just on the intel sidebar.
    • Thanks to donblas for suggesting.
  • A new "skip_adding_to_seed_lists" tag has been added to fleet designs, which lets us keep them around for existing savegames but prevent them from showing up in the lobby or in seeding in new galaxies.
    • This has now been applied to the "Bomber Fleet" starting fleet for players, as that was supremely overpowered and let some players cheese things on the highest difficulty levels.
    • Thanks to Ryulong for inspiring this change, and Badger and Puffin for figuring out the actual conundrum here.

Bugfixes

  • The planet Murdoch will still appear in all games as an Easter Egg, but it is no longer your default starting planet
    • Badger prefers some variety, and a number of people have been making muttered complaints about this for a while
  • Fix a bug where we were showing the wrong colour for tech level upgrades.
    • Thanks to KDR_11k for reporting
  • Exiting and reopening the load game menu will now abort any selecting game to delete state, to prevent accidental deletes.
    • Thanks to StarKeep for reporting and donblas for fixing.
  • On battlestation fleet leaders, it had a duplicated-feeling "battlestation" bit of text in the tooltip, which just felt off. That's been removed.
  • Setting the border colors for sub-factions of the AI (warden, hunter, and praetorian guard) now actually works properly.
    • Thanks to Badger for figuring out what the problem was. Thanks to Zoreiss, Ryulong, and NB_FlankStrike for reporting.
  • Fixed a super-longstanding bug where if you were hovering over an item in a dropdown list and getting a tooltip for it, then closing the dropdown would sometimes leave that item "stuck" on. Now it detects this case and auto-fixes itself before you can really notice it.
    • Thanks to lots of people reporting the stuck tooltips that could happen in the factions tab in particular. Including but not limited to Ovalcircle (most recent repro), AnnoyingOrange, ParadoxSong, vinco, and donblas.
  • Showing the debug info for ship types now shows the fleet category on them of what fleet they're in.
  • On load of a savegame, the game now detects player ships that are in the "loose" fleet (which is bad), and tries to correct them.
    • At the moment it can only correct ships that should be part of the planetary fleet.
  • Fixed metal harvesters to properly have a fleet membership of planetary so that they can take advantage of this auto-correction.
  • Added a new is_scrapping_by_player_to_turn_unclaimed xml tag that, when turned to true, lets you override something that is non-scrappable and have it be killed.
    • At the moment this lets us scrap metal harvesters but keeps them from just disappearing completely, and thus lets us test for them going into the unconnected fleet improperly.
  • When ships are claimed, if they are not a flagship they are now properly added to the planetary command fleet at the local planet.
    • This lets things like metal harvesters properly be added back into the planet's fleet (and thus get related upgrades, if any) after being destroyed.
    • There's a mild chance that this might have some strange secondary consequences on some ship that SHOULD have been in the "loose player fleet," but I can't think of any specific examples. All those sorts of things are typically flagships with their own fleet and use a different code path. Worst case is that they'll appear as a member of that planet's fleet and get bonuses from it if there are science upgrades at that planet.
    • Thanks to Flypaste for reporting.
  • When the onload process can't fix whatever ships that are in PlayerLoose for some reason, it now also gives a list of which ships those are.
  • Any ships that did not have fleet_membership="Planetary", but ARE immobile now automatically get set to be a membership of planetary unless they are also a fleet leader (aka things like the AI Overlord Phase 1).
    • This makes it so that capturing such buildings puts them into the fleet of the planet and not the "player loose fleet," and also allows for them to be properly re-linked if need be from the onload fixing process.
    • This is affecting things like IGCs, MDCs, and so on. It remains to be seen if things of this sort will still properly come back to the planet fleet without a savegame load if they die to remains and then get recaptured (for anything of this sort where that's even a possibility), but fingers crossed.
    • Thanks to deo for the report that let us find this one.
  • Also with some of these changes, it's possible that things that were turrets for a specific battlestation or citadel might incorrectly go to the planet fleet after they get shot up and rebuild. Please let us know with a savegame repro if you find that happening.

Audio And Journal Work

  • The audio setting "Music: Play Tracks from AI War Classic" now defaults to on instead of off.
    • While it's nice to hear the new music from the sequel, there's four and a half hours of music that was gated-off in here that made things repetitive at times without it on.
    • A lot of people weren't even aware this setting existed, so thought there was far less music than there was (1 hour rather than 5.5 hours, roughly).
  • Added a new audio setting: "Allow Funny Voice Clips" (defaults to off)
    • Humor is subjective, and for some folks can even be a mood-killer in a game like this about galactic stakes. Some of the AI voice taunts err on the possibly-mood-breaking side, and those are disabled by default. If you're in a lighter mood and would like to have those included, feel free to turn this on.
  • When AI taunts play, they now also drop a chat-style message for you to see them.
    • If you have voices turned off, then these won't show up at all. If you have just turned the volume way down on the voice channel or AI taunts channel, then you WILL still see these.
    • It is colorized and identifies itself as either being from the overlord, hunter, or warden as the case requires.
    • We had been planning on this, but thanks to a lot of people for requesting it, including Apthorpe, Asteroid, Thotimx, and Orelius.
  • Added a new JournalMessages object on the world, which lets us store a history of messages from chat, AI taunts, and other sources. It can also be used to store story-specific things in campaigns.
    • To save space, it will only save the 50 most recent entries in the journal when you save your game. BUT it first discards normal-priority stuff, then keep-longer stuff if it has to, and then there's always-keep stuff that it will never remove no matter what and so can make it store more than 50. That last category is good for campaign-specific instructions, hopefully of which we won't be having too many things.
    • These are temporarily just shown at the bottom of the escape menu, but later will be in their own interface that you can get to via the bottom left corner of the screen.
  • Fixed an issue where a variety of AI taunts were imported as ambisonic, and thus threw a harmless warning when we tried to play them back in a standard fashion.
  • 171 new Chief of Staff voice lines (51 categories) have been integrated into the game files, although they're not being triggered yet.
    • This is in addition to the 89 lines (14 categories) that were previously in the game from this actress, Alicia Harris.
    • A lot of these have to do with alerts for situations relating to the various factions, or other specialized situations that had no voice prompt previously.
  • New voice lines that are actually wired up to trigger:
    • Brownouts.

Fleet Naming

  • You now select name lists for fleets just like planets (Added by donblas)
  • You can add custom name lists of your own as well!
  * Create a new folder in GameData\Configuration\FleetNames in the AI War directory
  * Add a file with preferrably at least 50 entries, one on each line.
  * Edit AIWar2\GameData\Configuration\FleetNameType\CMP_FleetNameTypes.xml and add an entry for your new pack
  * Consider opening a bug (http://www.arcengames.com/mantisbt/) with your list if you want to share

Version 1.012 Hotfix

(Released December 4th, 2019)

  • If the game fails to load the InstancedRenderer for some reason, it will now tell you which ship it's failing on and what the error was.
  • Fix a bug where units trying to split stacks was causing lots of nasty errors and game slowdown
    • Reported by Everyone
  • Fix a bug where some flagships could have no units in them
  • Fix a bug where AIs in civil war mode were sending waves against undefended planets
    • Thanks to ovalcircle for reporting
  • Fixed up some of the resource icon alignment and sizing in the top bar of the game.
    • Thanks to donblas for suggesting.

Version 1.011 SuperCat Swats Back

(Released December 3rd, 2019)

Polish and Gameplay Improvements

  • Improve the readability of the "List of remote ships you might destroy" list in the Fleets popup
    • Thanks to Peter Ebbesen for suggesting
  • Allow citadels with engineers to autobuild those engineers
    • Requested by deo
  • All new code for group-move thanks to new volunteer Eagleheart. His notes:
    • Reworked the speed group / group move system.
    • Rather than all units in the group just moving at the speed of the slowest unit in the group, each unit now has its own individual speed limit based on its starting location and the target location of a move command.
    • The speed limit will be set to make that unit arrive as close as it can to the arrival time of the unit that will arrive at the destination last. This means that if a unit is far away from the other units in the group while those units are near the destination, the far-away unit will now move at its max speed to catch up.
    • Speed groups are now recreated on move orders in addition to when the button is clicked in order to adjust these distance calculations / speeds. This has the added benefit of behavior more closely matching what you would expect. If issuing individual unit or subgroup orders to units of a larger group, they will now be broken out into their own speed group and won't move slowly just because of the previous group limit.
    • Similarly, original groups will now move faster if all the slower units of the group have been given a new move command. As an additional side-effect, you can now no longer issue move commands to an overall selection of units that contains units not in a group and have them not have any speed limit enforced. That behavior was a bit confusing.
    • For now, units will still not move any slower than the speed of the slowest unit so that they never move imperceptibly slow. This is also necessary at the moment to not make group/pursuit combo mode any worse since ships can only move faster.
    • Units will also be removed from their speed group if tractored or stunned so they don't slow the rest of the group down.
    • This resolves part of this bug: https://bugtracker.arcengames.com/view.php?id=20658
    • I hope to implement the second part of group target calculations, so that units move and fight as a group when both group and pursuit mode is enabled. But that will be a bit more tricky.
    • Thanks to Eagleheart for coming up with the idea as well as implementing it!
  • Re-order the Intel Menu a bit (including putting Beginner objectives near the top). Note that you can hide/unhide the beginner objectives through the UI.
    • Add new Beginner objectives to remind the player to capture their first Flagship, GCA and ARS
      • From some comments on one of the podcasts Chris appeared on (I think the SGJ podcast)
  • Add a setting to disable repairing allied units
    • Note that this will need to be revisited for multiplayer for a proper implementation
    • Thanks to zeusalmighty (and others) for requesting
  • Attempt to make crippled flagships more desirable repair targets. I'm not sure if it's enough, so if people continue to see problems then a save game to help me reproduce the issue is needed.
    • Thanks to deo for suggesting
  • When choosing an Instigator Base planet, make a good faith effort to choose an explored planet. Instigators will only use an unexplored planet if they can't find a good explored planet.
    • Thanks to a discussion on Steam started by KDR_11k
  • When a bunch of drones have been produced for combat, they are reabsorbed into their flagship when all the enemies are dead.
    • Thanks to NRSirLimbo for requesting this originally, and thanks to ArnaudB for pointing out the performance issues that were happening without a feature like this
  • Things such as Coordinators and Augmenters are now considered critical infrastructure for the purposes of the "planet under attack" notifications.
    • Thanks to Sigma7 for pointing out.
  • Eyes now show up on the galaxy map.
    • Puffin was reluctant to add things like this in, because it could kind of be a bit crowded already and it was purely a local thing to him, while galaxy icons should be for things with strategic impact.
    • Then the realisation occurred that they impact deepstriking choices, and so they now fit strategic impact.
    • Things like Mass Drivers will remain as is however, because of how many of these things can be on a single planet potentially (Peacemaker AI), even though they do kind of affect deepstriking.

Bugfixes

  • Zenith Power Generators and Matter Converters now properly die if Perma-Death is enabled for them.
    • Thanks to Ryulong and Venger for reporting.
  • Stored Hive Golem Wasps now persist across save/reload
    • Thanks to Ovalcircle for reporting
  • The player can no longer murder the antagonized dyson sphere
    • Reported by Ovalcircle
  • Fix several bugs with potentially capturable units not being shown in the tech menu
  • Fix a null reference in debug-mode entity display code
  • Fix a bug where killing a reconquest command station might incorrectly charge you AIP
    • Thanks to deo for reporting
  • Non-Allied Marauders no longer announce they have conquered planets that you can't see. Allied Marauders are more chatty.
  • You will no longer rebuild remains if they would put you into brownout
    • Thanks to Ranakastrasz for suggesting
  • Alarm Posts now correctly alert nearby AI ships. They also print a message saying "Alarm Post has been triggered"
    • Thanks to GreatYng for reporting
  • Fix a bug where the Planet text boxes weren't being appropriately suppressed even when the "suppress text" button was held
    • Thanks to Astilious for finding the bug and also for coding the fix!
  • Fixed a bug in the Linked Rings generator that was causing the math to essentially infinite-loop until the game ran out of planet names (or similar) and generate *thousands* of planets instead of the desired number.
    • Also fixed the "moon" rings from disappearing on larger map sizes.
    • Thanks to RocketAssistedPuffin for finding a repro case.
  • Tweaked Swirl and Bubbles maps to have a bit more spacing between planets.
    • Primarily done by placing fewer planets on each orbit/loop/ring (radius * Pi * 2 / desired_space_between_planets). Swirl is always going to be tight, though. More space just makes the map larger, which then gets scaled down due to zooming, resulting in no appreciable difference.
    • Swirl's generator rewritten to operate outside-in instead of inside-out. So the central area is less likely to be cramped and the total number of planets ends up being more accurate (the number is always going to be more of a suggestion, than exact, simply due to how each ellipse is generated and how much room is left).
      • Before if you asked for 150 planets and it got up to 149, it would add another ellipse around the outside, adding 20, 30, or 60 more planets. Now it will be adding a ring of only 5 or 7. If there isn't room, but is currently under the desired amount, it will generate a single planet in the exact center.
    • Boosted Swirl's connectivity slightly
    • Added a random call that changes the Swirl direction
    • Added a random call to slightly adjust the number of planets in each ellipse to prevent same-y-ness (and it also helps prevent near-collisions between planets in separate ellipses).
    • Thanks to OzoneGrif for the report.
  • Fix battlestation/planet confirmation dialog showing the wrong science cost (was correctly charged however).
    • Thanks to donblas for his first fix.
  • Fix multiple locations showing wrong turret counts (showing 5x too many).
    • Thanks Volatar for the report
  • Fix multi-beam description typo
    • Thanks donblas for the report and fix.
  • Fix to the bug where hitting the escape key while in certain windows (like the fleet management window, hack choices, fleet ship line swapping, etc) was not just closing the window, but was also opening the escape menu.
    • Thanks to donblas for reporting, for finding the fix, and for fixing it.

Balance Tweaks

  • Give the higher-difficulty AIs some stronger defenses and a bit more income
  • Increase the strength of the AI anti-marauder and anti-nanocaust waves
    • Suggested by zeusalmighty
  • Tripper now has an engine_gx bonus similar to the Agravic Pod. This replaces the secondary speed related bonus it had.
    • Said bonus was meant to replace the original, but apparently isn't now, leading to stupidly high damage values as they multiplied each other.
  • Raid Frigates (and their variants) are now found in higher numbers whenever they appear. Also increased cloaking points (starting and amount gained) by 50%.
    • The basic one also shows up in ARS' now, and there are 3 in the Raid Starting Fleet instead of 2.
      • Prompted by an unfavourable mention on Steam, and some discussion with zeusalmighty.
  • Added "Greater Metabolism" and applied it to Bounty Hunters.
    • This lets them be the specialist in getting large amounts of metal (max 50% or 50,000) off single targets, while things like Gangsaws and Yellow Jackets are good at swarms.
  • Pulsar Tanks "Bunker Buster" bonus is applicable for 12 seconds, rather than 5.
    • This hopefully lets you shuttle them in a Transport to something, unload, wait for the firing delay to elapse then still get the bonus.
    • Preferable to having them ignore the unload firing delay, as that would somewhat bring back the problem the delay was meant to solve (unload, fire, and load at every single Guard Post, avoiding all damage).
    • The cost of these for the AI is increased slightly, to offset the fact they're much more likely to get the bonus against you in a wave, though thankfully you can stop these being sent.
    • Prompted by a few unfavourable mentions on Steam.
  • Added a Turret Hull Tech.
    • Using the old cost of the other Hull Techs (7,500) for now. This lets you get Turrets to MK6 and 7 without needing the local Command Station upgrades, and is a way to just upgrade most of your defenses everywhere, rather than doing it purely through Weapon Techs (some of which don't have Turrets in them).
  • Battlestations/citadels can now be upgraded by spending science, like planetary fleets can.
    • Thanks to Puffin and a variety of other players for suggesting.
  • Replaced Eyebots damage bonus. They now gain more damage based on how much energy the target uses. The higher the energy consumption, the more damage.
  • Rorqual Hegira Ark range 5,600 -> 8,000.
    • Apparently the bubble on this thing would get so large it couldn't attack something without pushing it away.
    • Thanks to Hyde on Discord for reporting.
  • Halved Marauder Drone Frigate drone count and build rate.
  • AI Grenade Launcher Turret and Fortified Tesla Turret range is now 75% and 100% of normal player Turrets respectively.
    • Thanks to Democracy for bugging Puffin repeatedly.
  • Stalker durability increased 50%.
  • Assault Frigate shield bypass no longer increases with Mark.
  • Added the "Suppressor" Frigate to help shore up Disruptive Tech.
  • Medic Gunboats repair rate now increases with Mark.
  • Increased Ion Disruptor durability by 30%.
  • Strikecraft, Frigates and normal Guardians have had their hull/shield ratios standardised, to a 2/1 ratio. There are occasional exceptions where it's desirable for a unit to be very shield heavy, such as the Vanguards, which are 1/2.
    • This is part of a change to fixing the problem with Fusion Bombers basically being really good against everything by skipping most of their durability, rather than mostly structures and things specified to be weak to them.
    • There aren't any changes to Bombers yet - anything will be done slow and this is a notable change in some areas. However, as noted above, Assault Frigates (and Muggers by extension) no longer gain improved bypass per Mark, as they would result in having the same problem inspiring this change.
    • This'll likely be extended to other areas, such as Dire Guardians and faction units, but for now the majority of the player/AI units are done.
  • Combed through all the Fleet Design stuff, and made some fairly wide changes.
    • Added several new Designs, such as the SniperMix and DisruptiveMix.
    • Everything *should* be in ARS' now, rather than a few being totally missed for whatever reason.
    • The rare/odd units, such as Daggers or Medic Gunboats, are now set to a lower chance in ARS than normal units, because over time a lot of the rare finds were creeping up to be too common in ARS'. A good number of them show up in the new designs, and of course the ones that weren't in ARS at all now show up, so this shouldn't be too bad.
    • Altered the general distribution and chances of all the unit types to make each Tech far more equal (Fusion was notably far above the others). This was something Puffin hadn't thought about until recently, and oof, there was a problem. They're still not perfect, but at this point the options available of what to tune are really running low without making some very strange changes.
    • Fixed some random values being out of place as well, particularly with the FrigatesWithSupport Strikecraft options.
    • Lastly, fixed some units being in strange Designs, such as the new Eyebots being in AntiSmaller, despite their new bonus not being relevant at all versus that type of target.
      • Prompted by some grumbling in Discord.
  • Implemented some code changes from StarKelp that improve performance of the lance weapons be 12-15% in heavy usage based on his tests, and they now hit all targets in a line. This may have some balance implications based on a code review, so please let us know what folks think about this change. It's a small enough change that it's easy to revert or alter if need be, and the performance boost is certainly welcome when it's a big battle of these sorts of ships.
    • Thanks to StarKelp for investigating and implementing this.

Major Data Center Balance

  • Since AIP reduction is now so strong with the Major Data Centers, the AI will now generate Exogalactic Strikeforces against players who own Major Data Centers
    • Only happens if there are AIs at difficulty >= 7
    • This can be disabled via an in-game Setting, so players who are mid-game can disable it if it's too much of a balance swing.
    • Thanks to everyone who is still beating the game at difficulty 10, in particular Astilious

Wormhole Invasion Nerfs

  • Wormhole invasions get less budget
  • You will have more warning before they start sending troops through
  • Exogalactic Wormholes can no longer be used to send regular waves
    • From a discussion on discord led by Peter Ebbesen
  • If the AI would send a wormhole invasion but it has no valid targets, it will continue to retry every few minutes, instead of only checking again in another couple hours.
    • This should reduce the number of times when players have giant wormhole invasions "Out of nowhere"
    • Thanks to Ovalcircle for the bug report and save game to test the fix

Version 1.010 Extracting Those Archives

(Released November 18th, 2019)

Modding Support

  • If someone were to mod nanocausting guns onto the Devourer, the nanocausted ships will now wander the galaxy if their current planet has no real threats, instead of always staying on the same planet

Visual Polish

  • Add a Notification for brownouts
    • Thanks to Peter Ebbesen for suggesting
  • The Metal Flow Planning popup window now consolidates essentially identical flows. So if there are 3 engineers doing something it will now show as a single line saying '3 engineers are doing ....' instead of 3 separate lines.
    • The list is now sorted by planet from "Most metal spent on a planet" to "Least", and gives a nice header line with the total spent per planet before the details
    • Thanks to Peter Ebbesen for the excellent suggestion and ongoing critique
  • Allow for the energy consumed screen to show data sorted by 'overall usage' or by Planetary Fleets and Mobile fleets sorted separately
    • Suggested by Peter Ebbesen
  • The tooltip for a hacking notification now reminds the player that the hack can be cancelled by clicking
    • Suggested by Peter Ebbesen
  • Hacking information from the top bar when hovered over now explains only hacking structures owned by that AI count.
    • Suggested by VengefulWight.
  • Fix a whitespace problem with the planet hovertext
    • Reported by alocritani
  • Fixed typo in the Devourer beacon, and one with some Astro Train text.
    • Reported by Ryulong and VengefulWight respectively.
  • Improve some tooltips
    • Reported by Histidine

Bugfixes

  • Hopefully this actually fixes the "AI Reserves spawning outside of gravwell" problem
    • Thanks to Chthon for reporting
  • Fix a bug where the base-oriented Warden Fleet wasn't properly constrained to camping at bases
  • Fix a couple hacks that weren't correctly setting the Hacking History
    • Thanks to alocritani for the bug report

Balance Tweaks

  • Spire Archive Extraction hack now only takes 5 minutes at base, rather than 15.
    • With higher difficulties getting longer durations, this could lead to...well, on Diff 10, an hour long hack. Yeah.
    • Thanks to zeusalmighty and donblas for reporting.
  • Units under construction take bonus damage from being shot. This should alleviate the frustrating case where the AI is distracted trying to kill Under Construction Frigates/Turrets instead of things that are actually shooting back
    • Note that this makes long-build-time things from the zenith trader very fragile before they are finished.
    • Mentioned by ussdefiant60 on discord
  • Stealth Guardian damage 1,500 -> 500, reload time 6s -> 4s, swapped outdated damage bonus to match the Fusion Bombers.
    • The 6s reload time was allowing these to recloak while still firing. The outdated bonus had weird Mark interactions and was missed.
    • Damage in general was a bit high for a unit that bypassed 90% of shields, so a large drop, both for that and to account for the new bonus.
  • Shifted some of the Black Widow Golem Ark hull into shields.
  • Shifted some Guardian costs.

Version 1.009 Hotfix

(Released November 14th, 2019)

  • Fixed a bug in the last patch where sometimes threat wasn't being correctly counted.
    • Thanks to listsandlists and others for reporting.

Version 1.008 Golems And Arks Come Marching In

(Released November 14th, 2019)

  • Add a new quickstart from Nuc Temeron
  • Clicking on the Science icon in the resource bar now shows the history of the Techs you have unlocked. Note that this only applies to techs unlocked after this patch is applied.
    • This is mostly to have behariour that matches with the AIP and Hacking histories, but also allows for a new player to look at a save from an experienced player and learn from what they did with science.
  • Add a debug option to increase or decrease the difficulty of all the AIs in the game
    • It occurs to me that people sometimes start games and think "Man, this isn't challenging enough" or "I'm getting crushed". Well, now you can adjust the AI difficulty on the fly! Yet another feature for improved sandboxing.
    • This code includes a framework to allow other settings on other factions to be changed.
  • Add a tip explaining that unit stats have no inherent mechanical impact, they only matter insofar as their numbers relate to weapons systems
    • This caused some confusion

Bugfixes

  • Fix a typo in the metal popup
    • Thanks to alocritani for reporting
  • Allow the AI Reserves to spawn a bit further from the gravwell edge; they were getting stuck sometimes
    • Thanks to Chthon for reporting
  • Fix a bug where sometimes minor factions would incorrectly cause AIP increases when killing warp gates.
    • Thanks to MasterGeese for reporting
  • Fix a bug with Global Command Augmenters where they used the Turret type count for how many OtherDefense types they had.
    • Normally, a GCA has 1 Turret type, with 25% chance for a second. It then has a 33% chance for a single "OtherDefense" type (things like Minefields). If it has only 1 unit type after this, it gets a second Turret type, so in general they're pretty likely to get 2 Turret types.
    • Because of the OtherDefense logic actually using the Turret count, it meant since it always has at least 1 Turret, it would also always have 1 OtherDefense, regardless of the 33% chance.
    • This meant the "add a second Turret type so we have at least 2 types total" logic never occurred, making it so most GCAs had just 1 Turret type, when in fact the majority were meant to have 2.
    • It seems like this has changed it from around 25% of GCAs having 2 Turret types, to 75% (!) of GCAs having 2 Turret types.
  • Fix a typo in the Dark Spire Ward description
    • Thanks to Flypaste on discord for reporting
  • Fix a bug where the Strikecraft and Turret Coordinators were both increasing Strikecraft and Turret caps once you had both effects.
    • If you had only one, it would work completely fine. Once you had two, it would combine the effects, leading to a 1.7x cap multiplier for both, instead of 1.3x.
    • This probably leads to some late game nerfs as a consequence.
      • Thanks to Chthonic_One for reporting an oddity with some MLRS Turrets, leading to this discovery.
  • Fix a bug where the Devourer was causing all the ships to rush out of the AI Guard Posts and get eaten
    • I hope this also alleviates a bug where some minor factions could still stir up AI units to attack you
  • The Tech Menu now shows ships in ARSs under the set of things that you can upgrade, not just the things in Fleets on the map that you haven't captured yet
    • I think a number of people have wanted this but I don't remember who
  • The Tech menu now shows entries for techs that you could unlock from ARSs but don't have in a fleet (either owned or capturable)
    • I think this confused some people on Steam who could see something in an ARS but couldn't see the Tech for it
  • Fixed several possible but rare index out of range exceptions that could happen in the vis layer simulation due to cross-threading.
    • Thanks to OzoneGrif, KazeSasso, and Norfeder for reporting.
  • Fixed an issue in the ReevaluateUnitOrders code that would sometimes have background-coarse planets not run the logic for their ships at all. Now those ships only use the secondary "SimCycleGroup_Slow" logic if this is on a "tier 1" planet that gets processed every frame.
    • The intent of the sim frame processing was to split it out across multiple frames, which works great on those tier 1 planets, but for planets that are already being split across multiple frames it could mean that their ships might not get new orders ever until the player visited the planet. This could greatly nerf engineers, for example.
    • Thanks to WeaponMaster for finding this!
  • The forcefield protection planning was being run only intermittently on tier 2 planets, which include player forces that are not being monitored right now. Now it ONLY runs those intermittently on tier 3 planets (no players), and runs them continuously otherwise, so as to never run into cases where enemies could get off a few shots at something of a player that was being protected by a forcefield.
    • Thanks to WeaponMaster for finding this, and Chthon and folks on discord for reporting it.
  • Silenced some harmless errors about trying to render a ship when its RelatedEntity became null during the process, via cross-threading.
    • Thanks to Norfeder for reporting.
  • Fixed another rare nullref exception that could happen in the target list planning because of cross-threading stuff.
    • Thanks to vinco for reporting.
  • Tentatively prevent the Devourer from shooting force field generators (the ones you can build at your planets)
    • A number of people have complained about it. I'm not sure if I caught all the cases, so please let me know if there are any issues.

Minor Hacking Difficulty Rebalance

  • The goal of this is to make hacking easier early and harder late.
  • Increase up the Hacking Points Spent required to trigger new hacking difficulty levels.
    • Some larger hacks could move you up 2 levels of difficulty under the wrong circumstances, which was quite excessive
  • Add some new tiers of hacking difficulty to allow us to make late game hacking scarier. The hacking difficulty now goes
    • Very Easy
    • Easy
    • Indifferent (old Moderate)
    • Slothful (old Hard)
    • Moderate (old Extreme)
    • Hard (old Terrifying)
    • Extreme (new, and harder)
    • Terrifying (new, and harder)
      • From a conversation on discord where people wanted higher difficulty tiers
  • Fix a bug where the Hacking difficulty levels used were one tier harder than they should have been
    • A number of people noted this

Other Balance Tweaks

  • Increased count of Tractor Arrays in Global Command Augmenters a bit.
  • Added Raiders and Daggers to ARS'.
  • AI Sentry Frigate now decloaks much slower (from 2s for MK1 vs MK1 cloaked units, to 8s), damage 600 -> 400.
  • Added an AI Ship Group consisting of the Classic Trio Strikecraft (V-Wing, Fusion Bomber, Concussion Corvette).
  • Added the V-Wing into a few groups.
  • Weaken Turret and Weaken Guard Post hacks are slightly cheaper. Can also be done remotely (i.e without a Flagship present).
    • The remote hack is an experiment.
  • The logic for officer fleets (those with Arks and Golems) used to be that they couldn't be more than a certain number of hops away from an AI homeworld. Now it doesn't care how far away they are, except that they must ideally be at least 3 from the AI homeworld and (same as before) 6 from player homeworlds. This makes it a lot more likely for you to actually see officer fleets in the mid-game (or at all, depending on how far you're getting).

Strikecraft

  • Inhibiting Tesla Corvette damage 340 -> 280, stack damage multiplier 3x - > 2x.
  • Pulsar Tank augmented weapon range 8,000 -> 10,100, base damage multiplier 2x -> 3x, visual changed to a red laser pulse.
  • Removed Fusion Bombers damage bonus improving with Mark.
    • The bonus was only meant for them to automatically target anything with enough shields to be worth bypassing.
  • Concussion Corvette damage 96 -> 130.
  • Kite now uses the same damage as the Concussion Corvette.
  • Agravic Pod damage 100 -> 125.

Frigates

  • Ripper reload time 3s -> 2s.
  • Siege Frigate damage 20,000 -> 24,000.

Outguard

  • Removed Hacking cost of hiring Outguard.
  • Greatly increased base values of Outguard strength.
  • Those Outguard groups that did not have a Flagship now do.
  • Some Outguard groups can be hired twice rather than once.

Spire Frigates

  • Spire Frigate beams max targets 30 -> 10, damage 5,000 -> 7,500, reload time 2s -> 1s.
    • Same DPS as before, but more likely to hit enough targets to get all of it. Fire rate offsets the occasional beam that mostly misses.
    • This appears to be a somewhat decent improvement.
  • Spire Frigate speed 600 -> 1,000, AIP cost 20 -> 15, hull 750,000 -> 1,250,000.
  • Laser Pulse weapon damage 2,500 -> 4,500.
  • Railcannon weapon damage 3,000 -> 5,000.

Golems

  • Note: AI Golems are currently untouched. There is very little data on them currently - most feedback is about the player ones, which the below concern.
  • AIP cost (for non Lone Wolves) 20 -> 15.
  • Golem Speed 600 -> 1,000, Black Widow Golem speed 1,000 -> 1,200.
  • Armored Golem main weapon damage 2,000 -> 5,000, Sabot damage 3,000 -> 8,000, total durability 2,500,000 -> 4,000,000.
  • Artillery Golem reload time 9s -> 4s.
  • Regenerator Golem shots per salvo 1 -> 5.
  • Cursed Golem shots per salvo 20 -> 60.
  • Botnet Golem damage 2,000 -> 3,000, hull 1,000,000 -> 1,500,000.
  • Black Widow Golem hull 1,800,000 -> 2,800,000, damage 350 -> 800, range of both weapon and tractor beams 8,000 -> 10,100.
  • Hive Golem has 300 Yellow Jackets, up from 250.

Arks

  • AIP cost 15 -> 10.
  • Thanatos range 5,600 -> 9,000, Parasite Bolt damage 900 -> 2,000.
  • Rorqual Hegira forcefield size increased 25%, damage 7,000 -> 15,000, shields 1,250,000 -> 1,500,000.
  • Ark One shots per salvo 20 -> 30.
  • Gryn now launches Saboteur, Decoy and Scrap drones. Also produces some energy.

Expansion and Mod Loading Work

  • XMLLoadingOrder.txt, which lets you specify the loading order of mods that you choose to install, has been updated with some notes on exactly how that's intended to work.
    • They read:
      • //note that this is for determining the order that mods are loaded.
      • //any mods not specified in here will be loaded in alphabetical order according to the OS.
      • //the base game content, and then the expansions in numerical order, are ALWAYS loaded first.
      • //to add an mod to your mod order list, just place them each on a single line here.
      • //unless a mod depends on another mod, you don't even need to do that, though. Usually mods don't touch each other.
  • The game now handles mod loading slightly differently, in that it makes a central table of all the mods that it finds in the XmlMods folder and allows for other parts of the game to reference them as-needed later.
    • Overall we're not doing TOO much with this yet, but it does make things faster.
    • As part of this, the actual xml mod loading order is now handled far better, and doesn't require loading the same file over and over again dozens of times.
  • Added a new DoPostInitializationAndSortingLogic method onto ArcenDynamicTable, which allows us to do things like export the list of installed mods.
  • As part of the boot sequence for the game, it now logs which mods are installed, and in what order. This is pretty useful for any debugging that anyone might need to do.
    • It also lists all of the expansions that it's aware of, and if they are installed or not.
  • Under the hood since the start of the project, we've had the ability to have expansions that are enabled or disabled in worlds. This has now been fleshed out with our modern requirements for it, though.
  • Some various old parts of the code under the hood were still assuming that we could sometimes reload some of the xml after initial game load (that's never been true in this game, what a mess that always was when we tried it).
    • Some also assumed that we would use the old-style Language localization files, which gave false hope for localization to anyone poring through the code and also had a mild waste of time in there.
    • All of this has been cleaned out.
  • When there are exceptions in processing in the xml from the base game, an expansion, or a mod, it's now a lot clearer what the file is and some other bits of data about it.
  • In the folder for any expansion, there is an "ExpansionInstallation.txt" file. Removing that will cause the game to act as if the expansion isn't there, which is useful for testing.
    • In past games, we called that Version.txt, but this is a less confusing name.
  • Mods are now automatically loaded -- in whatever order -- simply by existing in the XmlMods folder. You can override their order by using the XmlLoadingOrder.txt file as noted above, but they'll automatically load in alpha order without that requirement.
    • However, there is also now a new file called "ModIsDisabled.txt" that can be placed in the folder of each mod. If it is there, then the mod will not load EVEN IF it is in the XmlLoadingOrder.txt file. This is basically a way to make really super sure that the example mods don't load without someone wanting them to.
    • The fact that mods are auto-loaded makes them a lot easier to install just by dragging and dropping them.
  • Several example mods had really outdated bits that made them unable to load. Those have now been cleaned up a bit.
  • A lot of subtle changes have been made in the code to how expansions and mods are loaded, which gives them more capabilities than before in things like overwriting core constants or adding to them, etc.

Version 1.007 The Player/AI Arms Race Intensifies

(Released November 8th, 2019)

  • You can now see the number of empty slots in your fleet in the fleet management screen, and you can swap other things IN to the empty slot of a fleet, rather than having to go to the other location and swap them OUT only.
    • This is the more natural workflow in a lot of cases, and now both workflows are possible at any rate.
    • Thanks to donblas for suggesting.

Balance Tweaks

AI Reserves: Anti-Deepstriking

  • Add new AI Reserves, basically an HRF for the AI against deepstriking players. The response strength is greater at higher difficulties and the further away from one of your planets you are. Will not trigger unless you are more than 3 hops from your planets.
    • Once arrived, AI Reserves are limited to that planet and will hang out for a few minutes, then vanish again.
    • It shouldn't trigger easily on Flagships in transport mode, only once you deploy the units.
      • As with all new code, there will probably be a need for some QoL improvements once people have figured out what's fun/frustrating about them
  • Added a new "auto_add_one_of_faction_if_missing_on_save_load" xml tag on factions that allows us to automatically add the AI Reserve into existing quick starts if they weren't already there.
    • We definitely don't want to be in a position for constantly recreating the quick starts every time we add a new under-the-hood-always-there faction.

Hacking Balance

  • Tweak the logic that calculates the hacking cost increase for a number of hacking types to make the increase less aggressive
    • This had already been done for the science extraction hacking, but I hadn't also updated the generic cost increase function because we weren't using it until very recently
    • Thanks to Vinco for reporting.
  • The following hacks no longer get more expensive (in hacking points) based on repeated attempts:
    • Neutral Planet Science Extraction
    • Grant Technology
    • Convert Tech Vault to Science
    • Grant Ship Line
    • Convert ARS to Science
    • Double Ship Line Cap
    • At this point, most of the things that increase with repeat usages are things that are hackinng something that you can also get the benefit of via capturing, or covert science extraction, etc.
    • It's useful to have some things increase with repeat usages, but for a lot of the main goodies that are on the map that you can ONLY get via hacking, having them increase that way felt punitive.
  • Most of the very common hacks have had their durations reduced from 120-300 seconds to more like 30-120 seconds instead.
    • Given things happen once-per-second as hacking progresses, this was a bit on the punishing side for sure.
    • Thanks to a variety of players on Steam for pointing out how much harder this had made things, not in a fun way.
  • There is now an increase in hacking times required based on the highest difficulty of any AI faction in the game you're playing (living or dead).
    • This only applies to hacks that take more than 5 seconds to begin with.
    • On difficulty 5 and down, it's the same as it always has been (with the new nerfs in placing making it far less than it used to be, actually).
    • On diff 6, it's now multiplied by 1.25x.
    • Diff 7 is 1.5x (so an ARS hack is 45 seconds here instead of the new 30, still better than the older 120 of the last two builds).
    • Diff 8 is 2x, diff 9 is 3x, diff 10 is 4x.
    • This should help put in some nice gradation for people who feel like hacking should be on the harder side with people on other difficulties not getting absolutely stomped by them.
    • Thanks to various discussions on the steam forums making it clear that different people expected/wanted a different amount of hassle out of these, and this led to us feeling like it needed to vary by AI difficulty. A harder-to-hack higher-difficulty AI is super thematically appropriate, anyway.

Economy

  • Cheapened the metal cost of Transport Flagships to around 27% of previous.
    • An unwelcome penalty for constructing empty Flagships for unit groups, as well as repairing them.
  • 25% increase in Engineer repair rate.

Bugfixes

  • Fixed a couple of rare exceptions that could happen based on copying orders from one entity to another after it had already been returned to the pool or otherwise been made invalid. Was something that could happen during stack splits, evidently.
    • Thanks to NRSirLimbo for reporting; it seems he has ridiculously bad luck in getting more exceptions than anyone.
  • The save and load menus now have better sized and spaced text, so long names no longer overlap the stats about them.
  • Fixed a couple of cross-threading exceptions that could be hit if the waves composition changed while you were iterating over them.
    • Thanks to NRSirLimbo for reporting.
  • The "Danger! CurrentFrameNumber changed" error message has been removed from the game and won't bother people anymore.
    • This was exceedingly rare for most people, but common for a few specific people. The best theory on this is that these people had exceedingly fast CPU cores, because on inspection of this code it was actually able to detect an "improper" state change that was really just "unlikely but fine." All of the improper cases would have been a lot more common to see, and seen across many clients. In this case it seems to have been a race condition between "work's done" and "make sure the frame didn't change," which were happening on a nanosecond scale.
    • The worst case with someone having this change in an actual problematic way would be a multiplayer desync of some varying severity, but given that we already have network desync repair planned as a core key feature this isn't exactly a big deal. Originally this was also code that was defensively checking to see about single-player cross-threading issues, but those are all long-since fixed (2+ years ago).
    • Basically this was a case of some false positive popping up in interrupting you for no good reason if your processor was fast enough.
    • Thanks to NRSirLimbo for reporting.
  • Fixed an exceptionally rare error that could happen with multiple ships pulling the same order out of the pool if your machine is just really too excellent at multithreading for some reason. Now instead of complaining at you, it just fixes itself. Originally the complain-at-you code was in case we made some code mistakes that would cause this, but the rarity of this error pretty much shows we don't have any such errors. But man, cross-threading stuff on a few particular machines really is popping out some interesting cases.
    • Thanks to NRSirLimbo for reporting.
  • Fix a bug where astro train depots weren't tracking the number of trains that arrived between save/reload. Whoops.
    • Thanks to Democracy for reporting
  • When you load a quick start, it now sets the first player name to be whatever your local profile's name is, and then the ones after that (if any) become "Player 2," "Player 3," etc.
    • This solves a lot of the underlying names still being "Puffin" or various people who contributed quick starts.

Version 1.006 Freedom Of Fleet Line Combination

(Released November 7th, 2019)

The Ability To Have Duplicate Ship Lines In One Fleet

  • The game now allows for duplicate ship lines in a single fleet. This was something that people REALLY wanted, and we get why, but it was a tricky technical thing. Our first idea for this today wasn't valid for multiplayer it turned out, but thankfully we came up with something that is.
    • This also includes the ability for initial fleet designs to add more than one copy of a fleet line to itself, whereas before it would just combine them. So you could have two bomber lines in a single fleet design now, for example.
    • Note that this will NOT work for drones in fleets at the moment. Those can't be swapped around by players anyway, and there didn't seem to be any reason to make this part work. It could be extended later if we really need to, but it seemed pointless.
    • Only the player mobile fleets have this new ability. Command stations, NPC fleets, battlestations/citadels, and so forth all still combine their fleet lines if the type matches. Those can't be swapped around, and it makes much more sense for them to work like they always have.
    • It's possible there may be some bugs with this (mainly of the sort of something not building when it's a secondary ship line in a fleet, or things not being able to swap properly when there are duplicate lines), but if so please do report those to us and bear with us.
    • Thanks to nas1m, Asteroid, and many others for requesting this -- rather forcefully at times in the case of some steam reviewers or folks on discord, but we got the message. This was tricky as heck to implement, and may cause a few bugs for a bit, but it's clear how important this is to people.
  • When hacking for dark spire ships, it now always puts each new ship you get in its own ship line rather than ever adding to an existing line.
    • Additionally, it checks to make sure you have enough empty slots before it will work.
  • Dyson hacks seem to have been assuming that you'll increase the ship cap on existing lines, so for now we've left that working as it always has.
  • ARSes now CAN grant duplicate ship lines to a fleet, and instead of merging they now stay as separate ship lines.
  • Doing a hack to double the cap of a ship line SHOULD work properly in cases where you have multiple ship lines inside a single fleet, only doubling one of them and then allowing the other one to be doubled later if you want.
    • This needs testing, though, as it was kind of complicated.

New Bomber Starting Fleet

  • Added a new Bomber Fleet as a starting option, which includes two different identical lines of Fusion Bombers, plus also Parasitic Bombers. This helps to highlight the fact that you can have very-thematic fleets for anyone just perusing these things from the lobby, so that hopefully this is a teaching moment.

Bugfixes

  • Fix a bug where the tooltip showing the number of ships an ARS granted didn't factor in Mark Level increases. Note it still doesn't factor in any additional multipliers like ICGs
  • Fixed some more Frigates being seeded as Strike options in ARS.
    • Thanks to zeus for reporting.
  • Fixed an ArgumentOutOfRangeException that could happen in HandleLODsAndShipPartAnimations P2 because of a race condition. It's harmless and no longer puts up an error message in your face.
    • Thanks to Rob from eXplorminate for reporting.
  • Fixed a pretty nasty memory leak that could happen around planned metal flows, particularly given that they were being used from a single pool but for two different threading areas.
    • This was something that would affect things even when the metal flows UI wasn't open, because of race conditions between two threads. It was also causing some errors and other race conditions in general, all of which are now fixed.
    • It was a very unusual sort of situation with a very special-case data structure (the time-based pool), and that was just... really an edge case thing. It also was not really causing errors or a memory leak in all cases, even though it was in some. Why it would be particularly severe for the one player who reported it, while nobody else had crashes related to this, is mildly baffling. But that's the nature of race conditions for you, honestly.
    • Thanks to NRSirLimbo for reporting.
  • Fixed a couple of memory leaks and other things that caused excessive memory churn while actively viewing the metal flows interface. These were things that would be given back to the player and thus not truly a memory leak in general; it was leaking on the heap and then coming back later.
    • Thanks to NRSirLimbo for reporting.
  • The last of the memory-leaky-type things related to metal flows is now fixed. This one was introduced possibly as far back as September 2018 by Chris, or possibly more recently when changing another bit of code to make a copy per list instead of having a reference in another list. At any rate, we were creating a metric ton of extra metal flow data that was then getting churned out of the memory pool by the garbage collector, and generally wasting some CPU time and efficiency. Now things properly get returned to the pool.
    • On the metal flows screen, there is still some climbing RAM that you see for a while, but then it stabilizes and eventually drops. That seems to be mostly related to temporarily cached sprite quads being used by TextMeshPro, and with such large amounts of text that changes frequently that's probably unavoidable. It's not a true memory leak anymore, and doesn't spike more than something like 60mb at peak in our current tests, where it was hundreds of mb in the same tests previously.
    • Thanks to NRSirLimbo for reporting.
  • Clarify the Threat tooltip to say that the Visible Threat reported is only from Watched planets
    • Thanks to Thotimx of reporting
  • Put in a couple of changes that may fix custom flagships being placed at a higher mark level than their base should be if the planet they are on is a higher mark.
  • Fixed an invisible nullref exception that could happen on quitting the game program in some rare circumstances.
  • Added a new "Show Fleet Ship Line Numbers" settings option to the Debug section that is for helping us root out problems with multiple ship lines of the same type within a fleet.
  • Fixed a rare nullref exception that could happen inside LazyLoadSquadWrapper when there were multiple threads looking at a ship at the same time that it was removed from the game.
    • Thanks to Norfeder for reporting.
  • Fixed another rare indexing exception that could happen inside GetEntityByID when there were multiple threads looking at a ship at the same time that it was removed from the game.
    • Thanks to Phenomphear for reporting.

Balance Tweaks

  • Reduced firepower and health of Instigator and Warden Fleet Bases.
    • People liked it when shown the values before the release, but it seems to have caused issues elsewhere. For deepstriking defense, probably need to be another method.
    • Also lowered the range a tad of both and removed the forcefield from the Warden Fleet Base.
  • Upped Parasite damage slightly, doubled the zombification damage amount.
    • So now they zombify in 5 shots, and 1 at MK7.
  • Bumped up starting metal storage to the maximum value.
  • Home Human Settlements gain 260 metal per mark, up from 120.
  • Reduced metal cost of Plasma Turrets and Beam Cannons by half.
  • Human Home Command metal income 900 - > 2,200, increase by 400 per mark.
  • Battlestations now benefit from the Citadel Technology.
  • Reduced cost of Citadel Tech from 3,000/4,500/6,000 to 2,000/3,000/4,000.
  • Reduced cost of Sentries Tech from 1000/1500/2000/2500 to 500/750/1000/1250.
  • Watchman Frigate energy usage 7,000 -> 3,000.

Version 1.005 Answering Your Top Requests

(Released November 5th, 2019)

  • Add some code to dump the current state of the Hunter Fleets in threat popup display window. Only enabled with the Debug_Tooltip setting.
    • Intended for debugging/internal testing.

Ship Line And Count Revisions

  • There are now a maximum of 5 ship lines (other than drones, things like hydra heads, and the fleet leaders) that any fleet can have. Previously it was 6 for some fleets, 7 for others.
    • This applies to the ARS and other ships.
    • This is defined in central xml so that we can tune it if need be.
  • ALL strike fleets are now considered to have 5x slots for strikecraft and frigates, and their "empty slots" are no longer a "physical thing" (people reporting oddness on how these custom fleets worked will know what this means).
    • This lets you take any fleet that you capture and swap stuff around so that it has a full 5 slots of stuff on it, which is really handy.
    • This also makes the interface for empty slots a lot more condensed and easy to read when you're swapping something else to them.
  • Fixed an oversight that was causing players to be able to build more than a single copy of each of the empty flagships in the game.
    • This in turn caused various issues, such as trying to move empty slots between two Stealth Alpha fleets would not work, etc. That was never supposed to let you have more than one in the first place! Go figure.

ARS Revisions

  • You are no longer allowed to hack an ARS for a ship line if that fleet already has the ship line
    • If there is any way to merge ship lines then people will want full ability to merge/split ship lines, which is not something Chris wants to allow. So for consistency's sake, this is being removed.
    • Fleet Capacity Extenders have been added as a replacement for this mechanic, and those are both clearer as well as being WAY more powerful.
  • When you find an ARS, it now works much differently. Rather than having just ONE ship type available at it, it has five. It will always have 4 strikecraft and 1 frigate type.
    • When you click the "Grant Ship Line" hack on the ARS, it no longer just does the hack -- instead, a new popout sidebar window appears, asking you which of the lines you wish to have granted to the fleet in question.
    • This shows you the fleet in question, what ships it has, and reds out any options that are invalid for that particular fleet because they happen to be invalid.
    • This gives you a TON more control over how you grow your fleets via ARS, without you having to do a bunch of expenditures of hacking points on re-rolls of the ARS.
    • This also gives us the framework for having hacks in general that let you make a sub-choice in them after choosing to do the hack itself, which is a powerful new ability for hacks. We'll be using this again super soon for upgrading specific ship line ship caps in a fleet via a new structure.
    • The fact that there are five options now is reflected in the text and will affect existing savegames.
  • If you DO choose to re-roll an ARS, it will give you five fresh ships. They may or may not have overlap with the prior batch or with your current fleet's contents.

The Arrival Of Fleet Capacity Extenders

  • Added a new structure that you can find throughout the galaxy in new savegames: Fleet Capacity Extender
    • Hacking this structure doubles the ship cap for one of the fleetship types belonging to the Fleet that did the hacking (your choice as to which type).
    • This DOES show up in existing quick starts, but won't seed in savegames you're actively playing.
    • This new structure essentially is a far-more-powerful version of the secondary function that people used to like on ARSes (that we removed in this build).
      • The fact that it was confusing to merge ship lines via the ARS was a good reason to remove that function, but this new structure is more powerful and doesn't have the strangeness of being a sometimes-thing. It always works like it works.
    • About the same number of these are seeded as ARSes, except not one on the adjacent planet to your start. The richness of what you can conquer is now a lot higher.
  • To prevent a lot of exploits that people would have started doing immediately, the upgrades from Fleet Capacity Extenders can no longer be applied to the same ship line in the same fleet more than once.

Custom Fleet Revisions

  • The custom fleets, which previously had a max cap of 7, now only have a max cap of 5 like everything else.
    • It's possible that these fleets, or other fleets that got upgrades to 6 from an ARS, are over the new cap in old savegames. That won't harm anything.
  • Rather than having 9 explicit custom fleets (three regular, three cloaked, three speedy), the game now has a single type of custom fleet (regular) that you can build 9 of.
    • This makes the menu way less overwhelming down in the custom fleets section, and it doesn't give any special fleet leaders (speedy or cloaked) that are better than what you find out in the galaxy.

EXP Revamp And Spending Science To Upgrade Specific Planets

  • The non-turret defenses, and command stations in general, no longer get mark levels based on EXP going up on their fleets.
  • Mobile player offensive fleets are still able to gain EXP like they always have been, and in the main it is still very useless for most of them (since only their flagships upgrade, for the most part; very useful for things with a powerful flagship but otherwise not much).
    • Note that this will get more useful in the future as we start adding in perks for these types of fleets that will affect other ships as you level up. That's just a TBD item.
    • The goal with these is still to have a bit of that flair of "hero stuff" that people have been asking for since the early days of AI War 1. We're proceeding somewhat cautiously with it, keeping it more on the useless end of the spectrum rather than something that takes over the game.
  • All the other kind of fleets are no longer able to gain EXP at all. This means battlestations and command stations, mainly, for you.
    • This was, by contrast, super duper useful to the point of being an absurd exploit. But it also wasn't a fun thing, requiring grinding rather than actual strategy of any sort.
    • This was one of the really big ways that people could force a victory far faster than they should have been able to, and really mess up the economy of things.
    • Existing savegames will lose all their unspent EXP, but WILL keep their existing added levels from this source, simply because a ton of games would have economies in the toilet without these levels remaining for now. But those savegames with leveled-up command stations are definitely overpowered in the player's favor, now.
    • Thanks to Apthorpe for reporting and inspiring this and many of the other related changes here.
  • When calculating how many fleets there are on a planet for EXP penalty purposes, it now ONLY counts mobile player fleets. It DOES include support fleets, but not battlestations/citadels, and not command stations.
    • So this is something that makes it so that you're penalized a lot less rapidly for having many fleets on a planet.
    • For the "max mark level" calculation that it does, it's now only based on the mark level of the mobile offensive fleets, too.
  • A new button has been added in place of the fleet EXP stuff for planetary (command station) type fleets. It's hovertext reads:
    • Planetary fleets can be upgraded (all ships within them) by directly spending science. This can be a very science-cost-effective way to get more metal income or energy production.
    • Changing the type of command station you're using, or losing the planet and recapturing it, won't cause you to lose your upgrades on this planet.
  • By clicking the above button, you can spend science in a whole new way an upgrade ALL the ships within the planetary fleet by one mark level (regardless of whether normally those would have been upgraded by EXP -- this isn't EXP, and you're paying science for it).
    • The cost is pretty cheap for the first added mark, at only 1000 science. The next is 3k, then 6k, then on to the absurd with 9k, 18k, and 36k. So you CAN upgrade one of your planets like crazy if you really want to, but it's prohibitively expensive to do so.
    • All of this gives you a lot more flexibility and allows you to do spot-upgrades for purposes of getting a better economy of having better defenses at a location.
    • This is pretty important for high level play with the removal of the EXP for command stations (and battlestations/citadels, although they aren't gaining the science unlock ability).
    • We may need to tweak the costs of these at some point to think about if we want the first upgrade to be even cheaper, to really tempt you. It's hard to say if this is tempting enough, as we want you to have strong defenses but be weighing that against the more generalized science expenditures that benefit offense AND defense. This of course also benefits your economy in a major way, so we may have to revisit how much more metal generators and the command stations generate as their mark levels go up if we reduce the science costs here. We shall see. For now, conservative steps. Anyone who isn't already a fairly advanced player may not even notice the difference here.

Minor Faction Teams

  • It is now possible for minor factions to have alliances amongst themselves to take down the Player and AI. In the game lobby, several factions can now join "Team Red", "Team Green" or "Team Blue". All factions on the same Team are allied against everyone else in the game.
    • Supported minor factions: Marauders, Nanocaust, Devourer, Macrophage
  • Add a new quickstart to "Fun With Factions" demonstrating this mechanic

Bugfixes and Polish

  • Toggling objective importance is now done with a Right Click. Left click keeps the old behaviour (usually centering you on the planet in question)
    • This was suggested by a few people on discord I think? I don't remember who
  • Fix a surprising bug where the AI wasn't correctly generating threat when attacked by a player if the respective strength ratios were within certain ranges.
    • This might have some actual balance implications
      • Thanks to zeus for the bug report
  • Death effect damage is no longer a strangely high number. Actually, this change allows for a lot more diversification in how effective units are at applying it. The start of this is done, with more tuning to follow.
    • This is most likely a somewhat large shift in the balance of it, which feels a tad necessary? Quite a few stories of mass hordes.
  • Fix a null reference when calculating energy usage
    • Reported by Edmaniac
  • Fix a bug in the experimental pursuit mode implementation that could cause issues in "normal" mode where your units would not shoot at things properly.
    • Reported by a number of people
  • Structures that are under construction shouldn't generate AIP anymore if killed
    • reported by Chthon and zeusalmighty
  • Fix some confusion about killing reconquest command stations if you haven't paid the AIP price for that planet yet. It now correctly charges you AIP and lets you scout. The tooltip for such a reconquest command station tells you what's happening
    • Thanks to zeus for reporting
  • Fix a bug where the Destablilize Exogalactice Wormhole hack wasn't correctly killing the wormhole
    • Thanks to GophTheGreat for the bug report
  • On particularly large maps (> 120 planets), increase the places that Officer Fleets are allowed to spawn
  • Fix an exciting bug where AOE shots with > 10 potential targets were doing 10% damage to each potential target. So if there were 20 targets each taking 10% damage, that's 200% of allowed damage done. 50 targets would be 500% damage.
    • This was particularly obvious for high-mark siege frigates
    • Thanks to Puffin for reporting
  • Fix a bug where AOE shots were doing too much damage when killing lots of stacked units
    • Again obvious with high-mark siege frigates
    • Reported by Puffin
  • Fix a bug with the tooltip on Alarm Posts; it had the ratios reversed
    • Thanks to Democracy for reporting
  • Allow marauders to build outposts if the significantly outnumber the enemy; this prevents a single cloaked ship from stymying them.
    • Thanks to Vault for reporting
  • Make the Cloaking hovertext a bit more obvious with colour
  • Fix a bug in the tooltip for uncaptured flagships where it was showing the Strength if all its units were at level 1, instead of reflecting your actual mark levels
    • Thanks to NB_FlankStrike for the bug report
  • In the science screen, the Ship Types You Could Capture now show the mark level for that ship line
    • Thanks to NB_FlankStrike for the suggestion
  • Your ships will now target down Eyes automatically in pursuit mode, once you've disabled their invulnerability
    • Thanks to NB_FlankStrike for the suggestion
  • The Objective tooltip for an ARS now shows the ship line in the colour of the mark level you have for it
    • Thanks to NB_FlankStrike for reporting
  • The hovertext for a notification of a wave against one of your planets now tells you your defensive strength.
    • Suggested by NB_FlankStrike
  • Improve the tooltip for hacks that increase the cost for the next hack of that type to improve clarity
    • I think someone on steam got confused about this
  • Maybe improve the spacing for the X map. No promises.
    • Thanks to gigastar and cthonic_one for suggesting
  • Slight tweaks to the AIP hovertext to improve readability
  • Fix a bug where several minor-faction specific hacks were not showing the hacking points used correctly in the hacking log
    • Thanks to Interloper for reporting.
  • Improve the readability of the distribution node hovertext
    • Suggested by Cyber-Kun
  • The tooltip for an upgrade in the Science Menu now tells you approximately how much Strength increase there would be to your fleets
    • Thanks to donblas and Phenomphear for suggesting
  • Fix a null reference related to the Spire Objective
    • Thanks to donblas for reporting
  • Add a Tip to explain about automatically building engineers and factories and so on.
    • From a comment by donblas
  • Hovering over a save game in the Load menu will tell you how many times that save game has been loaded. So if you're stuck at a particularly hard spot then you'll get some feedback as to how hard it is
  • The intel tab entries for the hacks for the tech vault and the ARS and the FCE are now three different colors, so that you can tell them apart at a glance if you have a huge galaxy completely explored. This way you can see at a glance what is what, now that it's sorting (rightfully so) by how easy or hard it is to get to each one.
  • Any sidebar build items that would be uncategorized are now invisible instead. These are assumed to be things that exist for legacy purposes but that we don't want to build.
    • It sometimes also winds up including random stuff like gravitic battlestations or whatnot that could be constructed but should not have been.
  • On the build sidebar UI, it no longer shows the ship cap for command stations (that was spurious, anyway).
  • On the build sidebar UI, for flagships that you can construct it now shows the total of that kind that you have in the galaxy as well as what the galaxy count is for them.

Instigator Polish

  • Instigators now have a permanent notification (like wave notifications)
    • Note this reuses the Wormhole Invasion icon for the notification for the moment
    • Thanks to a number of people for requesting, including Asteroid
  • Instigators no longer show a Cumulative Effect, just a description of what the effect does and how many times it has fired.
    • The units for Cumulative Effect weren't meaningful to anyone who wasn't a developer, and it just confused people
  • Fix a bug where the ship-spawning instigator base had a bunch of decimal points in the tooltip
    • Thanks to Puffin for bringing this to my attention

Balance Tweaks

  • Zombification no longer works on Dyson ships, Dire Guardians and such things. It was kindof OP.
    • The old behaviour can be enabled as a Galaxy Setting
  • Different AI Difficulties now increase the mark level at different AIP amounts. As a result of this, different AIs can be at different mark levels.
    • Suggested by Ovalcircle
  • The Hunter and Warden fleets now get decloaking ships, in the hopes of preventing permanent scouting by cloaked units
    • From a discussion on discord I think?
  • If your fleet outnumbers the AI "enough" on a planet then all the Guard Posts will release their ships so the ships can run away
  • Allow units spawned from Guard Posts to run away more quickly from an overwhelming attack
  • Buffed Astro Train durability and damage a bit, albedo 0.3 -> 0.4.
  • Increased self construction rate of Turrets.
  • Beam Cannon reload time 4s -> 6s, damage 1,810 -> 1,500.
  • Gave Forcefield Frigates the same priority as Forcefield Generators.
    • So the AI will ignore it in general if there are unprotected targets to go after.
    • Might cause a weird thing with Siphoners, but see how it goes?
  • Increased Hull Tech cost by 2,500.
  • Increased durability of things like Raid Engines, Alarm Posts, Data Centers, and Co Processors.
  • Major Data Center only reduces AIP by 60, and increases by 90 on death.
  • Increased chance of wormhole Tachyon Sentinels.
  • Doorkicker Starting Fleet now has Pulsar Tanks in place of MLRS Corvettes, and Vanguards in place of Grenade Launcher Corvettes. Also removed 1 of the starting Siege Frigates.
    • This Fleet had an issue in that it had crazy synergy, with it being mostly Splash and Heavy Tech, plus not really fitting the Doorkicker name much. Both Pulsars and Vanguards have Doorkicker like abilities, and since these units can properly attack single targets, 1 Siege Frigate can be safely removed without impacting the Fleet too much, as these were apparently their own issue.
  • AIP Floor is now increased by 35% of AIP gain, up from 20%.
  • Metabolizing Gangsaw engine_gx 14 -> 13.
  • Reduced minimum and maximum unit type counts in the more thematic Fleets (i.e the ones with mass Fusion Bombers).
    • Incredibly synergistic inherently, with far more units in general too.
  • Reduced the count of some of the "flat upgrade" units, like Heavy and Parasitic Fusion Bombers.
  • Buffed the damage output of most of the normal Guard Posts as well as a few of the Dire.

Economy And Engineering

  • Drastically reduced the assist construction and repair rate of Engineers.
    • It was possible for these to eventually end up assisting Factories to absurd amounts - actually a good bit more than the Factory.
  • Metal Harvesters income 80 -> 60, amount gained per mark 40 -> 30.
    • This might not be enough, come to think of it. Player unit costs never increase unlike Classic, which means late game costs to rebuild after a fleetwipe are pretty low compared to here, leading to the below "slapping" event.
  • Economic Command Station income gained per mark 400 -> 150.
    • While the player does have less income, the rate at which it can be spent is also much lower, so it's likely the player would start to noticeably lose a battle and retreat a good while before depleting their reserves.
    • Also, while we don't want people to be sitting around for ages waiting after a fleetwipe for it to replenish, it was also rather silly that you could do things like, to quote someone "Bleed out the praetorian guard by slapping it with wads of cash".
  • Reduced energy cost of Turrets a bit.

Eyes

  • Eyes can now be triggered by the number of fleets on a planet, not just the number of ships
    • This makes Eyes pretty useless against minor factions. Unclear what (if anything) should be done about that.
    • Thanks to a number of people for requesting, including Asteroid.
  • Eyes are now MK7.
    • Mostly important for the Ion Eye.
  • Tripled range of Plasma Eye.
    • Is now planet wide range, like the Ion Eye. No more sneaking about out of range.
  • Plasma Eye damage tripled, max targets hit before spreading damage reduced to a third.
    • Means it can focus a lot more on single targets than before.
  • Ion Eye now works on albedo of 0.4.
    • Yes, this means it can target most Frigates now. Eyes check Fleets, and not units, so this is possible. Also lets it target a few more Strikecraft.
  • Ion Eye now has splash damage on each shot. Radius of 1,000, hitting 5 targets.
    • Done this way instead of just increasing shot count, as that many shots could be a bit too bright and painful to look at. Simple enough to change.
  • Both Eyes now have tachyon systems.

Flagships

  • Greatly reduced Transport Flagship priority.
    • AI should focus more on killing the actual combat units around rather than chasing an unarmed ship and getting shot to bits during it.
    • Combined with the far weaker Engineers reducing the fleet replenishment rate to more...reasonable speeds, hopefully this prevents a lot of attritioning?
  • Reduced durability of Transport Flagships.
    • Mostly applicable during deepstrikes.
  • Differentiated the Transport Flagship types:
    • Normal ones are the same (including the above).
    • Cloaked ones are now a good bit slower.
    • Fast ones now have less health.
  • Ships unloaded from a transport now have a delay before firing.
    • Hopefully should make the "Unload units, snipe target, load again, run away" strategy less OP. Further changes may be necessary.

Hacking

  • Hacks now define if they work based on the closest hacker or not, using a new tag use_closest_hacker_for_check.
    • Before it was inferring if it should do that, which was potentially going to be confusing down the line.
  • A variety of bugfixes and improvements to the internal hacking logic.
  • Flagships now move much more slowly when hacking
    • Thanks to Lord Of Nothing for reporting that you could just run away from the nanocaust hack response
  • Increased Cost of Intra-Galactic-Coordinator Hack (120 if owe AIP, 60 without).
  • More hacks now have an escalating cost to them (1.2x what it was last time).
  • Shortened and cheapened the Ion Cannon and Mass Driver hacks.
  • Increased cost of Grant Ship Line and Grant Tech hacks.
  • Hopefully increased the difficulty of the Super Terminal.
    • This seriously'll need more feedback. There are so many variables in it that whatever test games Puffin has is probably missing something else.
  • Reduced cost of Convert ARS to Science.
  • Some minor duration changes to a few.
  • Added Exo-Waves on completion to a few hacks.
  • Increased response strength of quite a few AI hacks.

Version 1.003 Sortable Objectives

(Released October 28th, 2019)

  • Fix a bug where ARS hacks were allowing you to get 7 ship lines instead of 6
    • Thanks to Vault for reporting
  • Fix an OBOB where we were reporting inconsistent stack numbers in the hover entity info text
    • Thanks to yupyip for reporting
  • New installations of the game now save 3 autosaves instead of 1
    • Suggested by yupyip
  • Flagships in Hold Fire Mode no longer deploy drones
    • SUggested by CWW256 on discord
  • Clicking on an Objective will now tag it with an Importance. Clicking once makes an Objective High importance, putting it at the top of the displayed list. Clicking again will make it Low importance, putting that objective at the bottom. Clicking a third time makes it Normal.
    • Suggested by Greeniguana
  • Add some defensive code to hoverEntity and fix a possible null reference
    • Thanks to kerzain for reporting
  • Tutorial 4 now mentions you can hover on the AIP amount on the top bar for some more information.
    • Thanks to Potkeny in Discord for suggesting.
  • Grant Technology hack now mentions not increasing the cost of unlocking it with Science.
  • Hack Intra-Galactic Coordinator and Hack Global Command Augmenter now note exactly what the reduced cost is if you have paid the AIP cost for that planet.

Visual Polish

  • Science resource bit at the top now has the same blue colour for all the amounts, rather than being a light green, so it's consistent with every other mention.
  • Metal section of the top bar now has actual proper colouring.
  • Cost to fully extract all the science from a planet is now in green, like most hacks are.
    • Thanks to GophTheGreat for suggesting.
  • Knockback now has the correct unit in the tooltips.
    • Thanks to Chthonic_One for reporting.
  • Sabotage Hack now mentions it doesn't cause an AIP increase for destroying structures which would normally do so.
    • Thanks to Ranakastrasz for reporting.
  • Improved the Experience tooltip information to have the correct logic and perhaps read a little bit better.
  • The "Ally to AI" setting description now explicitly says that all player-allied factions are also allied.
    • From a discussion with Astra on discord
  • Knockback now has the correct unit in the tooltips.
    • Thanks to Chthonic_One for reporting.
  • Hacking resource hovertext on the top bar now has the hacking point amounts in green rather than a red.
  • AIP hovertext on the top bar has some minor colour additions, as well as an explanation of what the AIP Floor actually is, as well as stating reduction is never wasted.
    • Thanks to Nuc_Temeron, Halfshell cat, right01, amblingalong and Pexpy in Steam Discussion for prompting this.
  • Raid Engines now show on the galaxy map.
    • Suggested by gigastar in Discord.
  • Hunter Waves option is renamed to Threat Waves, and description updated to be clearer.
    • They never actually joined the Hunter Fleet immediately - they were threat, so it was rather in error.
  • Added some information about how threat is generated, and it eventually joining the Hunter Fleet to the info displayed by hovering over the top bar area.

Balance Changes

  • Decoy Drone damage halved, tripled build time, health reduced 25%.
    • Puffin was finding these were a bit absurd in extended practice. More testing required.
  • Grant Technology Hack cost increased to 20.
  • The Engineer and Factory changes from previous, as those were missed.

Version 1.002 ARSes, Instigators, and Tech Vaults, Oh My

(Released October 25th, 2019)

  • Add some new Quick Starts by community member zeusalmighty
  • Experimental Targeting Change
    • Under Galaxy Settings -> Units there's now a setting to enable/disable a new pursuit mode.
    • This mode makes ships prefer to kill all nearby units before moving on; hopefully it will make Drones less apt to go aggro guard posts everywhere.
      • Looking for player feedback on this
      • This also will affect the way AI ships will fight, so I'm loooking for feedback on that aspect as well

Balance Changes

  • Transport Flagships now cost very little energy.
    • This was originally so they would be hurt more by Nucleophilic units, but you can usually just micro them around and that's...not really fun or interesting. So just greatly reduce it, since you were otherwise being penalised for using the custom ones.
    • Thanks to Asteroid and seemingly others for bringing up.
  • The Human Resistance Fighters now help less often in battles, so it feels more rare/special when they do. They also can't go back to a planet for at least 15 minutes after their last time there.
    • I forget who asked for this (sorry). They used to attack about 60% of the time, now it's more like 30%
  • Macrophages now need more metal to do things on Hostile To Players Only mode. Also decrease base telium income when that telium has harvesters on the map; harvesting should be the primary form of income
    • Thanks to zeus for suggesting
  • Crippled flagships now have a 5 minute delay until they are eligible to be repaired. This is to make crippling a Bigger Deal in battles where you might have engineers
    • Note that taking the crippled flagship out of combat (ie to another planet where there are no enemies) will reset the repair delay
      • From a discussion about flagships on discord
  • Engineers and Combat Engineers have less health, and are also much higher target priority for the AI.
    • From discussion about support fleets on discord.
  • Combat Factories are much higher priority for the AI.
    • From discussion about support fleets on discord.

Bugfixes

  • Fix a few problems with quickstarts
    • Thanks to Arnaud for reporting
  • Fix a bug where the Dark Spire could give errors after it has killed all the players and AIs in the game.
    • Thanks to Ovalcircle for bringing about the triumph of the Dark Spire
  • Fix a strange null reference exception in some findHumanKing code in the game lobby
    • Spotted by Nuc_Temeron on stream
  • Fixed Mini Cluster Bombs being swappable. Woops.
    • Thanks to Mayheim on Steam for reporting.
  • Launching with OpenGL instead of DirectX11 can be problematic for some people, so on GOG the default launch is now DirectX11. On Steam it still shows you the option of which you want, but starts with DirectX11 as the default.
    • Thanks to Ronin Storm and Pheespud for reporting.

Polish

  • Replace a few mentions of FRD with Pursuit Mode in the Settings
    • Thanks to Volatar for reporting
  • Fix a typo in the Auto-Kite setting
    • Thanks to Thotimx
  • The button in the lower left that just said "Coming Soon" now says "Chat Menu. Coming Soon" so it's clear what it is.
  • Include mention of the shortcut for toggling between the galaxy map/planet screen in the tooltip for the planet name in the top left.
  • Improve the tooltip for the clock to mention the buttons that control game speed
  • Add more colours to the incoming wave tooltip
    • From a remarkably uncivil and poorly written screed on Steam
  • Fix a typo in the explanation for the Praetorian Guard
    • Thanks to unicurse for the bug report
  • The 'Threat Detail' window available when you click on the Threat icon in the resource bar now shows threat in traditional Strength units (with the raw value divided by 1K).
    • Thanks to Thotimx and Puffin for pointing this out
  • The 'Threat Detail' window now shows the total visible hunter/warden strength in the galaxy
  • Fix a bug where Nanocaust ships were winding up being counted as Threat incorrectly
  • Improve the colouring in the science tooltips
    • Thanks to yupyip for reporting
  • Some tutorial improvements. Includes a bunch of colour.
    • Thanks to yupyip for pointing it out.
  • Fix a typo in the AIP history display when claiming structures
  • If a wave is against a minor faction that owns a planet, the game now tries harder to show the faction name in the tooltip.
  • If a wave is not against a player planet, the icon will turn grey more consistently.
  • Alarm Posts now show up on the galaxy map.
    • Pretty neat idea.
    • Thanks to Jaridan on Steam for suggesting.
  • Add some colour to the counterattack notification hovertext to improve readability.
    • Thanks to yupyip for the suggestion
  • Fix a typo in the hacking description for local watch hacks
    • Thanks to Volatar for the bug report
  • Show better colours for zombies in tooltips
    • Thanks to yupyip, Apthorpe and darkarchon

ARS Changes

  • Improve the 'cant hack due to too many ship lines' message for the ARS hack to explicitly call out which fleet you are using, and mention that the hack is done by the closest flagship
    • Some people on Steam were finding this confusing.
  • Fix a bug where custom fleets couldn't hack ARS for more ship lines
    • Thanks to zeus and Chromatism for reporting
  • Fix a bug where Lone Wolf Fleets could hack ARS
    • Thanks to AnnoyingOrange for reporting
  • Fix a bug where things like Hydra Heads were being counted as ship lines for the purposes of an ARS hack
    • This bug has popped up in so many places, fixing it is like, well, killing the heads on a hydra
      • Thanks to yupyip for reporting this one
  • ARS Reroll hacks cost less Hacking Points but have a stronger response
  • ARS to Science conversion hack now grants more science
  • ARSs are now owned by AI factions, so hacking them will increase AI hacking response over time
    • A small nerf to ARS hacks, given that every other changes constitute a buff to the player

Instigator Changes

  • Some nerfs to Instigators; decrease their power and make the bases spawn less frequently
  • Fix a bug where Instigator Bases weren't correctly tracking their cumulative effect
    • Thanks to zeusalmighty for suggesting I look at this
  • Fix some punctuation issues with Instigator Base descriptions
  • Instigator bases now report how many times the effect has triggered

Tech Vault Changes

  • The "Turn Tech Vault into Science" hack now grants a bit more science
  • Add a "Reroll Tech granted by Tech Vault" hack
  • Hacking a Tech Vault for science no longer increases the cost of the next upgrade
    • It seems like everyone wants this
  • Tech Vaults are now owned by AI factions, so hacking them will increase AI hacking response over time
    • A small nerf to Tech Vault hacks, given that every other changes constitute a strong buff to the player

Version 1.001 Official Game Launch!

(Released October 21st, 2019)

  • Add some Tips with a brief explanation of what the AI sub-fleets (Warden, hunter etc) do.
  • The first time you click the Single Player menu (after this build), it gives you a modal prompt asking you if you'd like to do the tutorials first, or if you'd like to just play. This should help prevent people from missing that there are tutorials.
    • We did NOT add the tutorials to the Single Player menu, however, as that just gets very cluttered and makes the whole menu harder to read.
    • Thanks to Asteroid for suggesting.
  • The Tutorials button on the right side of the main menu is now colorized and flashes very subtly every half second between two almost-identical colors. This should be much more noticeable without being obnoxious, and without cluttering up something like the single-player menu.
    • Thanks to Asteroid and Badger for inspiring this change.

Bugfixes

  • Fix a bug where the hovertext for a command station in the sidebar reported the wrong number of turrets
    • Thanks to Wurfell on Steam for reporting.
  • The AIP history for games begun from Quick Starts will now show AIP change from you as from your username, not "Puffin"
  • Fixed a rare exception that can happen in EmitOnAOEParticles.
    • It will now log more info, and just do so silently, and not actually impede play like it previously did.
    • Thanks to OzoneGrif for reporting.

Polish

  • Super Terminal now mentions the Exo-Galactic Strikes.
    • Thanks to kocur4d for prompting.
  • Don't let the AI launch mini-waves after exploration/watching hacks
    • It was confusing. Thanks to Puffin for report.
  • The Metal launch option on OSX has been removed, as that was still launching under OpenGL anyway.
  • Non-Steam builds no longer try to log into Steam and complain in the log if they can't, and nor do they show "Not logged into Steam" on the main menu.
    • This gave the impression that the Steam client was required, when it definitely in no way is. These behaviors do still exist for Steam copies of the game, but just so that you can tell if you're not logged in right for whatever reason.
  • Improve the Instigator Base description to explicitly state that the base effect ends with the death of the base
    • Suggested by Apthorpe and Echthelon

Balance Tweaks

  • The Dark Spire Ward now instantly blows up any DS ships that enter the planet. The Ward's description has been updated to match
    • Thanks to Ovalcircle for the report.
  • Doubled range of Devourer Golem.
    • Thanks to Badger for bringing up the Devourer.
  • Doubled drone count of the basic Combat Factory.
    • Thanks to zeusalmighty for suggesting.
  • Repair units now repair shields at the same rate as hull.
    • Outdated change from when personal shields cost metal to repair.
  • Tweaked cost of Dire Guardians.

Golems and Arks

  • Armored Golem damage 1,000 -> 2,000, Sabot damage 2,000 -> 3,000, range 8000 -> 10,100.
  • Cursed Golem damage 700 -> 1,250, Sabot damage 1,500 -> 2,000.
  • Black Widow Golem speed 600 -> 1,000, damage 200 -> 350.
  • Artillery Golem damage 100,000 -> 200,000.
  • Botnet Golem damage 450 -> 2,000, shots per salvo 50 -> 80, can only target mobile units, can't target high mass targets, costs 50 AIP to capture instead of 20, and is a Lone Wolf like the Hive Golem.
    • AI Botnet Golem has a lower chance to spawn on AI planets as well.
    • Thanks to zeusalmighty for suggesting.
    • Note existing ones will still have their Fleet, and will kind of look a bit odd in the Intel Tab saying it's a Lone Wolf, even though it's still got a Fleet with it. New ones will be normal.
  • Standardised AI Golems to be 3x the durability and damage of a player Golem.
    • They were pretty close as is, apparently.
    • Also gave them proper costs now.
  • Rorqual Hegira damage 3,000 -> 7,000, now takes half damage for 5 seconds after using a wormhole, does bonus damage to shields and also has vampirism, similar to the Siphoner unit.
  • Thanatos single shot weapon damage 6,000 -> 12,000, Parasite Bolt damage 600 -> 900.
  • Ark One damage 350 -> 1050.
  • Orchid damage 7,000 -> 14,000, repair rate increased 50%, repair range doubled.
  • Gryn damage 6,000 -> 16,000, increased fleet unit construction rate 33%.
  • Ark AIP cost reduced from 20 to 15.
  • Reduced AI counterattack bonus for crippling some player Fleet centerpieces.

Starting Fleets

  • Mass Combat Engineer starting Support Fleet design now uses the Rejuvenator Combat Factory instead.
    • Thanks to zeusalmighty for suggesting replacing this, as it was really unappealing.

Version 0.954 Hacking Log!

(Released October 18th, 2019)

  • When you click on the Hacking icon in the resource bar you get a history of all the hacking points you've spent.
    • Nota Bene: This will only apply to hacks you do after you install this patch
  • Tweak the helping hands tooltip to mention leaving the marauders their own planets
    • From a conversation with Genrazian
  • For the hover planet info, explicitly call out if taking the planet would cause AIP, and show the AIP in Red to make it stand out. Also more explicitly call out minor faction owners
    • From a conversation with Genrazian
  • Fix a bug where the game was showing incorrect colours for enemy strength on galaxy screen if the planet was owned by a minor faction.
    • Thanks to Genrazian for reporting
  • Fix a bug where having partially claimed or hold-firing flagships could prevent building things
    • Thanks to listsandlists for the bug report
  • Fix a bunch of typos all over the place
    • Thanks to Ovalcircle for hunting!
  • Fixed a bug where the tooltip for GCAs was lying to you about how many turrets they granted
    • Reported by RockyBst, Democracy and probably others
  • Tweaks to the Helping Hands quickstart to make sure the Nanocaust is your ally
    • Thanks to Puffin for the fix and Genrazian for the impetus

Version 0.953 Hotfixes For Certain Linux + Hardware Combinations

(Released October 17th, 2019)

  • On Vulkan on Linux in certain circumstances, there was some form of shader error in the Amplify Bloom rendering. That issue should now be fixed.
    • Thanks to eldaking for reporting.
  • Just like windows has launch options allowing you to select between OpenGL and DirectX11, Linux now lets you choose between OpenGL - Preferred and Vulkan - Experimental, and macOS lets you choose between OpenGL - Preferred and Metal - Experimental.
    • This needs testing, and is a Steam client update only, not actually a change to the game.
  • Completely rebuilt the asset bundles and their projects to be based on Unity 2019.1.7, same as the main project has been for some time, and to make sure that they explicitly have Vulkan and Metal shader support built into themselves now that the game supports those new platforms.
    • This should hopefully solve the issues that we were still seeing with a few people using Vulkan on Linux, as well as potentially some "shader not compiled for this platform" issues with OpenGL on Linux for certain ships that were compiled against an older version of Unity.
    • This MAY also fix the Gyrn refractive glass not appearing in-game on any platform, although we haven't test this yet. It may be that we need to write our own shader for that, or update the one from Circonia Studios that we were using previously. Most likely it was an issue that was coming across because of different unity versions, though, we're not sure.
    • Thanks to eldaking and Badger for reporting.
  • Tutorial fix from Craig.
  • Enable strength icons with borders on the galaxy map. (I find it makes a big difference in readability when they overlap links of a similar color.)
    • Thanks to Asteroid for implementing!
  • Updated a whole bunch of our shaders that were not going to properly work with Metal or Vulkan simply because they were being compiled with exclusive platforms set to directx11 and opengl.
    • These should now work, and include things like the icons for ships, and many of the ships themselves. But it hasn't been tested yet. It certainly won't hurt anything, anyhow.
  • The Ciconia Studio glass shaders that we were using for the Gyrn bubble have been updated to their latest version, which should provide better compatibility and hopefully have those actually show up again in-game.
    • Why those were showing up in the prep projects but not the actual game is something of a mystery. If this doesn't work, we'll just have to create our own refractive shader with rim lighting, but we'd rather not waste the time if this simple update works. Please do let us know!
  • Fixed one backer name in the credits (Kevin A Munoz), which did not translate over well into pure basic-ascii characters when we ran it through a handy processor (https://pteo.paranoiaworks.mobi/diacriticsremover/) to get rid of unicode characters not supported by our fonts.
    • If other folks find that their name got a bit mangled, please do let us know! There were SO many people's names that it was impossible to go through them all manually.
  • Completely redid the shaders for the Gyrn glass bits so that it uses a refractive shader based on Amplify Shader Editor and thus should actually render in these newer unity builds.

Version 0.952 A Little Help From Scary Friends

(Released October 16th, 2019)

  • Create a tip that points to the instructions in the wiki for how to create your own planet name list. I figure people will want to do this at some point.
  • Spelling/grammar and clarification improvements to some tutorials.
    • Thanks to Craig and Badger for pointing things out.
  • We FINALLY have all of the kickstarter and backerkit backers thanked in the credits for the game. It's... um... a lot.
  • The credits screen has been split into three scrolling panels, rather than one giant one that scrolls everything. It's also now in two columns rather than three.
    • The left column is the same as it was before.
    • The center column now has just the top kickstarter backers, aka those at Mark III or higher levels of backing. That's the first 784 people, all backing at $44 or more.
    • The right column now has the Mark II and down backers, which is the remaining 2,264 people out of the 3,048 total backers.
    • These splits make it so that the scrollbars are actually sensitive enough that you can find what you're looking for. AND we alphabetized the backer names in each category, so that if you know your category you can find your name now.
    • Yeah this isn't really a top priority for the game in some ways, but it's a matter of showing respect for the people that made it possible in the first place. There are other kickstarter rewards for specific tiers, and some kickstarter stretch goals, that will happen post-1.0. But this is one of those basic "this needs to be in there for people on day 1 of launch" things.

New "Helping Hands" Quick Start

  • Added a new Quick Start to the Basics category, called Helping Hands. This really weighs the settings in the players favour, and is intended as an easy to win scenario that just lets you experience things with little stress.
    • Badger came up with this.

UI improvements

  • Some changes to the out-of-date planet info representation
    • Thanks Asteroid
  • Some changes were made to make sure a player knows which Flagship is hacking (and doesn't try to make that flagship leave the planet)
    • Put in a line between the Hacker and the Target to really remind the player visually that the hacker is bound to the target (a great suggestion from Asteroid)
    • Add some text to the Hacking Notification reminding the player that the hacking flagship can't leave the system.
      • Thanks to a bug report from kmunoz
  • Improve the hacking resource bar tooltip to show the number of hacking points spent per AI faction and the number of hacking points that will increase the hacking response level
    • This is something people have wanted for a while
  • Rather than confusingly opening a multiplayer submenu with little "coming soon" tooltips, the multiplayer button on the main menu now pops up a lengthy text note directly from Chris which explains the backstory and what is coming and a bit about the development process that led us here.
    • Big thanks to Craig for suggesting this.

Debugging improvements

  • Add a debug setting for showing an entity's world location.
  • Add a debug command to give all your fleets 1K Exp. Good for impatient people.

Bugfixes

  • Tweak the "level up" message for Planetary Fleets
    • Suggested by ArquebusX
  • Fix a nasty bug where the AI killing stacks could cause counterattack strength to increase enormously
    • Thanks to RockyBst for the bug report
  • Fix an off by one error when showing the "What Level a Fleet will level up to next" message in the Fleet tab
  • Extra defensive entities seeded for the AI (like Golems for the Golemite) now patrol their planets in an imposing fashion, instead of just sitting in one spot.
    • Only affects new games
  • Fix a null reference exception when scrapping a command station
    • Thanks to Asteroid for reporting
  • Put in some extra debug handling in HandleLODsAndShipPartAnimations for a crash that could apparently happen during one of the tutorials for some people, and also put in extra debugging logic so that if it does happen again we'll know more precisely what the problem is. It should also no longer halt gameplay in general if such an error does happen.
    • Thanks to Craig for reporting.
  • Fixed a bug that could happen in Network.OnClient_SendClientBatchToServer, related to GameCommands being null.
    • This is probably a problem with how GameCommands are being used somewhere, and might rear its head in the form of some desyncs in multiplayer when we get back to reimplementing that. Just one more reason why the desync auto-repair work we have planned is going to be so essential. It's hard to know if a bug like this comes from something a modder was doing, or a mistake on our own part, or what; but either way, the game needs to be resilient to that in both single player and multi player, and that's a good example of why our upcoming hybridized approach to lock-step versus sync-correcting the game (RTS versus action game styles, blended) is going to be well worth the wait.
    • Thanks to Craig for reporting.
  • The game will prioritize Combat Fleets over Support Fleets when choosing the hacker. It will only use support fleets when there are no combat fleets on a planet
    • Thanks to Craig for reporting.

Tutorial tweaks

  • Tutorials no longer display 'homeworld under attack' notifications, which aren't pertinent to any existing tutorials.
    • Thanks to Asteroid for suggesting
  • Autobuild settings no longer apply to tutorials; this is mostly so developers can test tutorials the way a new player would see them

Minor Faction Threat Interactions

  • Some minor factions generate Threat that winds up just annoying players, in particular Anti-AI zombies.
    • Add an XML field that can be applied to any Faction that says 'any threat provoked by this faction will just go back to sleep once the enemies are gone'
    • Current factions with that field:
      • Zombies
      • Devourer
      • Dyson Sphere
      • Macrophage
  • Note that putting this field on the Human faction would make for an entertainingly confused AI, like fighting Guy Pearce from Memento.

Balance Tweaks

  • The AI's planetary reinforcement cap can now increase as AIP increased (otherwise planets never really got stronger than they are at the beginning of the game except if Threat or subfleets wander through).
    • At difficulties <= 5, no change. At 6, the AI gets a 10% power increase per 100 AIP. At 7, 20%, difficulty 8-10 a 30% increase.
  • Cost of hacking Global Command Augmenter if you haven't paid the AIP for the planet reduced from 120 to 60.
  • Cost of Reroll ARS reduced from 80 to 20.
  • Add a setting to control AIP generation from allied factions
    • When you have allied factions like the Marauders or Nanocaust, when they kill command stations and so on it generates AIP. This is a balancing mechanism to keep these games from being too easy.
    • This can now be disabled mid-game. Disabling this makes the game much much easier, but should help in making some beginner-level quickstarts

Version 0.951 Hotfixes

(Released October 15th, 2019)

  • Fix typo in metal popup window
  • Don't let structures generate energy while you are still building them
  • Fix galaxy map possible/incoming wave animation being displayed for links between the AI and another faction than the player, even for unknown worlds and during map generation.
    • Fix from Asteroid
  • Fix null Reference when holding R on the C-view of a fleet you haven't captured yet. As a side-effect, the units highlighted in the R-view are now the ones on the currently selected planet, not necessarily the one the unit being viewed is on.
    • Fix from Asteroid
  • When attacking an AI homeworld, killing all the guard posts is enough to cancel the counterattack, you don't also have to kill the AI King
    • Reported by zeusalmight and Nuc_Temeron on Steam
  • Further differentiate the lower AI difficulties by increasing their overconfidence ratio a good amount
    • This should make them much more willing to attack and fail.
  • Internally improved some of the documentation on why the sound effects play quite like they do when there's a voice effect and a sound effect playing at near the same time. This should solve some confusion that devs and modders could have.
    • Thanks to Badger for reporting.

OS Compatibility

  • We've disabled "graphics jobs" in unity, as that may have been causing some problems on a very few machines (certain older intel cards, mainly not windows boxes).
  • We've updated linux to now default to using Vulkan rather than OpenGLCore.
    • Vulkan is only able to be triggered by directly having it be the default, and not by the command line, so this is how we had to do it.
    • On linux, you can use the command line -force-glcore to make it use OpenGL again if Vulkan is giving you trouble. But now you have a choice about it.
  • On OSX, we now support Metal, although it still uses OpenGLCore by default (and actually in this case we can't give any definite assurances that Metal will work completely correctly).
    • But if you want to give it a shot for whatever reason, you can enable that with force-gfx-metal in the command line to make it use metal instead of the default OpenGLCore. Previously that command line prompt would fail.

Audio tweaks

  • Fix a bug where the 'ai wave arrives' taunt wasn't being played for some code paths
  • warden and hunter only taunt when they think they will win.
  • Correctly play the AI killed your command station taunt (the game will 80% of the time choose a taunt and 20% will choose the old 'planet lost' audio).
  • Don't spam the game with 'player command station under attack' notifications
  • Don't play more than one 'player ship constructor killed' message per planet per attack. This taunt currently only triggers on the death of a Factory. Previously you could get 3 taunts from the 3 factories on a military command station planet, which seemed a bit excessive especially since you also usually get the taunt for the command station too.
    • Possibly these messages should be changed to be for the crippling of a combat factory instead of killing a factory.
  • Adjusted the AI taunts so that a specific taunt group can't play more frequently than every 30 seconds, as opposed to every 4.

Version 0.950 First Press Build

(Released October 14th, 2019)

  • More work on adding support for numStacksKilled when handling death effects. Should get most everything now
    • Including Dark Spire, Metabolization, Zombification, etc...
  • Slightly tweak the Dyson Antagonizer warp in time
  • The Dyson Antagonizer now prefers to spawn on lower mark planets until the AIP is reasonably high
    • This behaviour now matches Instigator Bases
  • If you have a fleet in Load Mode but some elements of that fleet are on remote planets, those elements will try to find the Flagship and load themselves, instead of just sitting there
    • Badgers are very lazy creatures and don't want to click more than necessary
  • Non-Combatants like Engineers and Transports no longer cause Guard Posts to release their ships
    • So if you have a fleet in Transport mode with all ships transported, flying through AI planets should no longer cause the AI to generate Threat. I believe this was really confusing players, since the game encourages Deep Striking, but Deep Striking was releasing tons of Threat from planets you never attacked
  • Add a quickstart from community member Nuc_Temeron.
    • His description:
      • In this scenario there are two level 7 AIs (Thief and Ensnarer) with Shark B enabled, which gives the Hunter fleets a quick surge of strength whenever you lose a base. Defend your territory well! You will have to depend on your allies, the Human Resistance Fighters (Intensity 8), to overcome these greedy swarms! The AIs are also supported by shipments from Astro Trains at Intensity 8 so you can't stay on defense for long.
      • The Macrophage has also infested this zone at Intensity 6 and is hostile to all.
      • The player starts with the Doorkicker Fleet, the Minelayer Battlestation and the Overloader Combat Factory in an 80-star Octopus zone.
  • Some Tutorial tweaks from Puffin
  • Add a new Watch planet hack; this works only with local hackers and on planets without enemies. It's much cheaper, but the vision only lasts until the AI recaptures the planet

Newly integrated AI taunts

  • 16 for AI Destroys player Command Station.
  • 13 for AI Destroys Player Golem.
  • 5 for AI Recaptures Planet.
  • 9 for AI Sends Wave.
  • 2 for Player Frees Dyson Sphere.
  • 10 for Hunter Fleet Arrives.
  • 8 for Overlord Transforms.
  • 12 for Player Claims Flagship.
  • 10 for Player Claims Golem.
  • 14 for Player Destroys AI Command Station (High Mark Planet).
  • 16 for Player Destroys AI Command Station (Low Mark Planet).
  • 5 for Player Destroys Warden Fleet Base.
  • 4 for Player Finds AI Overlord.
  • 5 for Player Fortress Destroyed.
  • 12 for Player Home Command Station Under Attack.
  • 7 for Player Stationary Constructor Destroyed.
  • 19 for AI Launches Counterattack.
  • 14 for Warden Fleet Arrives.
  • 1 for Warden Fleet Retreats (unused for now).
    • This is a total of 174 voice lines in 18 categories!
    • Thanks to Nathan Frisson for his awesome job voicing the AI in these clips; to a variety of players and staff for contributing fun lines for him to say; to Pablo Vega for processing this out so that he sounds wonderfully menacing, as well as splitting the files, removing mouth sounds and breaths and so on that would make it not sound like an AI; to Badger and Puffin for selecting the best takes and organizing them properly so that we could get them into our sound pipeline; and to Badger for actually wiring up the parts of the code that trigger these.
  • This obviously needs additional testing; if you think a line should be playing and it's not then a mantis report + save game would be appreciated!
  • There is now a dedicated audio bus to the AI taunting you, and it has its own gain settings and so on that are a bit louder than the "routine voices" that you hear elsewhere.
    • This also now will let us mix the AI voice in however we choose to do so.
    • We have a separate voice mixer for the AI voice lines now, and since those are much more complicated in terms of effects we have those coming in as a barely-compressed PCM stereo track. Downsampling, adaptive sampling, and/or mono makes it muddy fast.

Bugfixes

  • When unloading ships from a Transport, they inherit "time spent on planet" from the Transport so you can't cheese First Few Seconds On Planet bonus effects
    • Thanks to Smaug on Steam for reporting and Puffin for testing the fix
  • Remove some outdated text in the Scouting objective tooltip
    • Thanks to Telkir for reporting
  • Prevent Astro Train objectives from leaking the location of trains you shouldn't be able to see
  • Fix a bug where for non-AI homeworld planets, the AI was spawning extra Guard Posts instead of Dire Guardians
    • This should make things much more interesting. Note that dires are still limited to high mark planets
  • Fix an Off by One Error when the game was telling you what level a fleet was
    • Reported by Ozone
  • Fix a potential null reference when ships would try to join the Praetorian Guard (ie the AI overlord is being attacked)
    • Reported by Ozone
  • Fix a bug where the "metal income per planet" display was showing inaccurate information
  • Fix a problem where it was much harder than necessary to maneouver flagships in tight spaces. If you wound up clicking on an allied unit the flagship's rebuild metal flow would make it try to assist, which is ... unhelpful.
    • Thanks to Asteroid for the bug report
  • Fleets in Load Mode no longer deploy drones. This enables you to sneak combat factories past high-mark planets without the drones triggering lots of threat
    • Requested by overzot on steam
  • Fixed a bug where the visual line for ships claiming other ships was not displaying. Turns out an image that was once white that we were using as part of its material got changed to black at some point, thus making it effectively invisible because of the math of how the shader was run.
    • We took this change to go ahead and make the claim lines more attractive in general, and they now have a cyan-greenish look to them, but double-beamed, so that they look kinda like the repair lines but still distinct.
    • Thanks to WeaponMaster and BadgerBadger for finding this.
  • Added in an OnLoad from savegame fix that should prevent stationary ships from being twitchy and thinking they should pursue you. This bit is untested.
    • Thanks to Badger for reporting.
  • The game no longer gives a harmless "Could not do Shutdown for network, the engine network interface was null" message if the game is shutting down prematurely for whatever reason.
    • Thanks to eldaking for reporting.
  • Fixed a minor issue where the game was reporting that your target framerate and vysnc count were being set right before they were, rather than right after. If it was failing, you'd have had no idea.
  • The game now logs the system info about itself far earlier in the load process, to help with cases where potentially we're unable to load things for some reason; we'll still get the system info in the debug files from now on.
    • Thanks to eldaking for inspiring this change.
  • The game's bootup log now is all-inclusive about all the steps that it takes, inside ArcenDebugLog.txt, so that in the event of a problem we now find out when that happens.
    • This makes for a much longer log every time you start up the game, but it's not something that is visible to players unless they go into their debug logs for whatever. And the information from it is definitely useful.
  • The game now logs what version it is on as soon as it can, but NOT before it can (heh), which it was temporarily doing on an internal build when we started logging system data really super early.
  • Added a new DoNotShowAndAlsoDoNotSendToUnityLog verbosity level that lets us skip showing certain things in the unity log but still send it to the ArcenDebugLog.txt file. This is a big deal for us in terms of not having our unity editor logs flooded with stuff that we'd want to collect in a bug report but don't need to see every last time.
  • Fixed a variety of selection issues on the galaxy map with fleets not always deselecting properly and instead sometimes being additive, etc.
    • It's actually a number of bugs all in one, because basically there was some older per-planet logic that was still being used here (and on planets) from back when cross-planet selection was only kinda-sorta a thing. Now it all works consistently galaxy-wide, or at least should. But if you see any remaining (or new) bugs, please let us know.
    • Thanks to OzoneGrif and Asteroid for reporting.
  • Previously, hitting the escape key would just clear your selection on the current planet. Now it clears the selection on all the planets, as it should.
    • We didn't see the "when a fleet traverse a wormhole, it's selection is lost. This issue only occurs if the selection was made in the planet view. If you select the fleet on the galaxy map, it works correctly." issue, but probably what it really was was the above one. Or something fixed in the batch right before that. If it's still something anyone else sees, please let us know.
    • Thanks to OzoneGrif for reporting.
  • Fixed an issue with the planet links where their collision capsules were intersecting with the collision boxes of planets and ship icons on the galaxy map.
    • This was having the effect of making it so that quite often you couldn't select specific ships except at certain zoom levels, or couldn't click planets or ships reliably in general (zoom level and scale of icons did play a role here also).
    • Basically, the solution was to make it so that we first raycast to find ONLY the planets and ships/fleets, if there are any under the mouse cursor. These use one set of physx layers.
    • Only if we don't find anything with that first raycast do we then do a second raycast against the new physx layer that the links now use. Now it doesn't matter if the capsules for the links overlap with planets or ship icons (no way to stop that, really), because it will ALWAYS give preference to the other icons first, and only go for the links between planets if the icons fail.
    • Thanks to Smaug, I-KP, and Pat for reporting.

UI improvements

  • Clicking on the Energy Usage bar now gives detailed feedback for what is consuming your energy (broken down by fleet) and what planets are generating the most energy
    • Requested by darkarchon
  • The Tooltip for Tech Vault objectives now list which ship lines will benefit from hacking the tech vault
    • Badgers are very lazy creatures
  • For the Flagship/GCA objectives, show the count of ship lines before listing the ship lines so I don't have to count them
    • Badgers are very lazy creatures
  • Improvements to the R-Click "Strong Against" view:
    • Fixed damage bonuses listed in this view not always matching the mirror "weak against" view.
    • Show only units you discovered on the map, leading to a lot less clutter early-game.
    • Sort units that are in the same system as the friendly unit you're examining at the beginning of the list, and bold them.
    • Thanks to Asteroid for the code and kmunoz for the bug report
  • CPAs always now give 10 minutes warning; given how impactful they are, a long warning period is justified. Previously they were getting less warning time than a regular Wave by default
  • When a Fleet levels up, only say "Some ship types may level up with the fleet" if the fleet actually contains ship lines that will level up
    • This was annoying Badger, since most ship lines don't level up anymore but the game made you think they did.
  • New icons for the Tech Menu!
    • Thanks Asteroid!
  • Better alignment for hotkey indicators on standing order buttons and for the icons in the build sidebar
    • Thanks Asteroid!

Changes for lower AI difficulties (<= 5)

  • There were some complaints that there wasn't enough differentiation between high and low mark AIs, so we're making some changes to make lower mark games have an easier feel in a number of ways
  • Seed extra ARSs and Tech Vaults in the galaxy
  • Seed more low-mark planets near the player
  • Nerf AI income
  • Nerf AI defenses
  • Make the Hunter and Warden fleets dumber by allowing them to trickle into a battle piecemeal instead of waiting for reinforcements
    • Prompted by a discussion with hazxan on Steam

Version 0.900 Custom Fleets With Empty Slots

(Released October 11th, 2019)

Balance Improvements

  • Instead of spawning instantly, a Dyson Antagonizer now warps in over time, giving the player a chance to destroy it before the Sphere gets Antagonized.
    • Requested by zeus almighty. You'd think he could have just struck it with a lightning bolt or seduced it in the form of a goose...

Tutorial and Tips Work

  • Added a new "Tutorial 99", which is even in its description just a note to be sure and check out the "How to Play" section of the game and other resources.
    • Since various people seem to miss those other resources but easily see the tutorials list, having this always be the last tutorial in the list no matter how many other tutorials we add seemed like a good idea.
  • Also got rid of the "Example Tutorial" that was junking up the tutorials screen, since now there are plenty of much more involved examples that are also actually fully-functional tutorials.
  • Add a Tip under the Modding section to explain how to make your own Quick Starts

Bugfixes

  • Fix a bug where units sometimes were waiting out of range instead of closing to firing distance
    • Reported by kmunoz and Telcontar on Steam
  • Fix a bug where flagships could just wander away from where you told them to go
    • Reported by kmunoz.
  • Fixed a rare nullref exception that could happen in the wave notifications.
  • Fixed a really rare nullref that could happen in Network.OnClient_SendClientBatchToServer.
    • Thanks to Badger for reporting.
  • Put in some extra debugging to fix ships not rendering right in some rare circumstances and thus causing a cascade of all things not rendering. Now it should fail gracefully if it fails at all, and give us more information on where it failed, then let you keep playing without making everything disappear.
    • Thanks to OzoneGrif for reporting.

"Custom Fleets", Aka The Remedy For Control Groups

  • Fixed things up so that fleet flagships can be constructed from the build sidebar, or other self-constructing means. This was never possible before in the engine, turns out.
  • There are 9 possible fleets that you can create at any of your command stations, now. Each one has 7 empty ship lines in it, and they are 3x cloaked, 3x velocity (fast flagship), and 3x workhorse (normal flagship).
    • These can be constructed at any point and you can start putting some of your specialized ships into them via ship swapping. The interface makes this clear and suggests it, as well. Basically for people who wanted to pull aside just their melee ships or cloaked raiders or whatever, now you can do that; this lets you control "sub fleets" in effect, by splitting your existing ship lines among more fleets, exchanging empty slots for ship lines you find elsewhere.
    • This was something that Chris went back and forth on a lot of times in terms of how to handle control groups that were more specific than 1+ fleets at a time. Ultimately the display and automation benefits of having control groups always stay linked to just 1+ fleets outweighed the benefits of changing that; but in order to allow for players to have smaller custom fleets as they may desire, activated by control group as they may desire, here's this new feature.
    • This is, of course, in addition to the hotkeys for quickly selecting units of specific criteria a while ago (cloaked units, melee units, whatever). This is for when you want to make a permanent or semi-permanent sub-grouping of ships for whatever reason (of which there are many valid ones to have).
    • Thanks to a lot of people, including Nameless Terror, ulu, Asteroid, and others for inspiring this change.

UI Improvements

  • Standing order buttons now display their key shortcut on the button itself, provided it can be expressed in a single letter (so X and V are displayed, Delete isn't).
    • Implemented by Asteroid
  • Science bar now has icons for the various techs.
    • Implemented by Asteroid
  • Wave progress indicator on galaxy map links now animates smoothly instead of once every second. (No associated visual at the moment, Chris didn't find the proposed particle effect good enough.)
    • Implemented by Asteroid
  • For all mobile flagships and citadels (not lone flagships, though), there is a new "Flagship Movement Mode" in their fleet status window.
    • Your flagships are usually precious enough that you don't want them to roam around in pursuit mode or attack-move mode. HOWEVER, you will often want to set them into those modes in order to make any ships they construct pop out in those modes.
    • When this is set to"Stay Put Unless Direct Order", it acts as you might expect and causes the flagship to ignore things like Pursuit mode, but for ships it creates to be put in that mode (and obey it).
    • When this is set to "Roam If Instructed" mode, the flagship will pursue when in pursuit mode, attack when in attack-move mode, and so on. This can be useful for Arks and Golems in some cases, or even for things like Combat Factories (on peaceful worlds).

Prior Release Notes

AI War 2: The Refinement of Fleets