Difference between pages "AI War:6.000 Release" and "AI War 2:Making Alpha Fun"

From Arcen Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== Statistics For The Curious ==
+
== Starting State ==
AI War 5.0 - 6.0 spanned from Feb. 15th, 2011 through Oct. 18th, 2012 and it was full of some HUGE changes!  895 distinct changes were made as part of 97 different releases over the course of 611 days. [http://www.arcengames.com/forums/index.php/topic,11809.msg125187.html#msg125187 One does not simply stroll through AI War patch notes], indeed.
+
Okay! We've extended the alpha period beyond what we had originally intended, but we're going ahead and giving out the Early Access keys to kickstarter backers on the date we originally specified. Meanwhile, we're [https://www.kickstarter.com/projects/arcengames/ai-war-ii-0/posts/1888241 pushing the date for early access back]. That link explains a lot of the reasons.
  
Even though this was during the period that A Valley Without Wind was developed and released, we managed to keep up an average of 1 release every six days (though some periods were very light with releases and others were very dense with them, if you look at the actual dates; the average makes it sound more regular than it was). Given the length of time between 5.0 and 6.0, it's essentially the same length of time that was between 1.0 and 5.0.  So that's certainly a good reason to have such huge patch notes and so many changes!
+
If you're one of the many who struggle with playing the game such an incomplete state, check out [https://wiki.arcengames.com/index.php?title=AI_War_2:Earlier_Than_Earlier_Alpha_Play_Instructions the instructions]
  
A full 149 Players are thanked in this series.
+
We also have a blog at [https://blog.arcengames.com/ https://blog.arcengames.com] for dev diaries and other fun topics.
  
This document is the ''abbreviated'', organized version of the full release notes ([[AI War:Current Post-5.000 Beta|here]]).
+
Also, here'[https://trello.com/b/tz2k8Q15/chris-ai-war-2-todo Chris's todo list].
  
== Highlights ==
+
And [https://wiki.arcengames.com/index.php?title=AI_War_2:Earlier_Than_Early_Alpha here's what we've been doing for the last few months]
  
=== Huge ===
+
=== Known Issues ===
 +
* The interface in general is horrible, and you need to go into the PlayerData folder and edit your settings file manually if you want to make settings changes.
  
* Ancient Shadows, an entire new (paid) expansion, has been added to the game!  Briefly summarizing the additions:
+
* Various ships are implemented but don't have real graphics, so they just show a little "rock" instead where the ship graphic would be. You can still see the ship icon and whatnot just fine.
** Champions!  Optional hero units that can be added at the beginning of the game or midway through, these have the unique ability to fly through special wormholes into the new nebulae.  In those new areas, champions encounter both friendly and hostile human, zenith, neinzul, and spire splinter factions.  As your champion gains experience and recovers artifacts, you can guide its progression from a super-starship to a truly awesome powerhouse.
 
** 9 New Bonus Ship Types, including the hilarious Tackle Drone Launcher and the first-ever bonus starship.
 
** A New Minor Faction: the Dark Spire.  These only awaken when many ships die near their spawners, but once they really get going neither the AI nor player will find them easy to stop.
 
** Modular Fortresses, a long requested addition to the player's heavy defensive lineup.
 
** 2 New AI Types: The tough-as-nails Heroic AI that throws champions at you, and the modular-fortress-happy Fortress King AI.
 
** 2 New Map Types: The long-requested "Clusters" map type and a more advanced "Microcosm Clusters" variant.
 
** 3 _Nasty_ new Core Guard Post types for the AI to defend its homeworlds with.
 
** Over 90 minutes of new music from Pablo Vega.
 
  
* Hacking!  We finally found a solution to knowledge-raiding that's both balanceable and fun:
+
* Most ship shot types use the same graphics right now.
** Knowledge raiding and Superterminal hacking now both increase the same "hacking antagonism" value on the AI, and as that value gets higher the AI's response to any hacking activity gets increasingly powerful and erratic.
 
** On top of this, we added a new "Ship Design Hacking" mechanic whereby you can hack an AI-controlled Advanced Research Station so that when you later capture it you can select from one of three randomly-chosen bonus ship types to unlock, instead of just being given one of them.  This shares in the hacking-antagonism mechanic used by knowledge hacking and superterminal hacking.
 
  
* Completely redid the AI's Special Forces to make them an extremely important defensive mechanic that adapts to the player's offensive deployments and tries to thwart them where it counts.
+
* Only some of the sound effects are in, and only a couple of music tracks.
  
* Added a new AI mechanic: the Strategic Reserve.  The AI gradually adds strength to this reserve and deploys ships from it to critical defense actions, especially homeworld defenses.  It also uses the reserve to contribute to Cross Planet Attacks, taking some of the burden off local defense forces.
+
* Particle effects are also limited.
  
* Added another new AI mechanic: the Threat Fleet.  "Freed" AI ships will still do their normal stalk and attack behavior for about half an hour, but after that the AI figures that they've probably been stymied by strong human defenses and pulls them into a cohesive offensive fleet that waits for an opportunity to strike the human where it hurts.
+
* Ships currently just sit there in their squads, rather than flying around within their squads.
  
* Massively reworked the energy system to cut out the "trivial to compute, time-consuming to do" micromanagement that the previous system encouraged:
+
* Various bugs on mantis: https://bugtracker.arcengames.com/view_all_bug_page.php
** There's no such thing as an inefficient reactor anymore: you can have one free-to-run energy-collector on each planet, and as many high-but-constant-cost matter-converters as you want anywhere.
 
** Putting units in low-power-mode no longer reduces their energy cost (or ongoing m+c cost, for the energy-producers), so there's no motive to micro them up and down to pay the minimum m+c for the minimum energy necessary.
 
** The free-energy collectors scale up with the number of homeworlds so that a multi-HW player doesn't have such an energy disadvantage compared to multiple single-HW players.
 
  
* Several minor factions and AI plots now have variable intensity that allows more game variety: want to play a game with TONS of human resistance fighters?  Or where the Dyson Sphere has a dominant impact?  Want just a few human marauders?  Or hybrids on, but in much lower numbers?  Or hybrids on, and massively amplified?  It's all there.
+
* Balance needs a lot of attention, with your help.
  
* Totally revamped AI Carriers:
+
* There's no tutorial yet, and there's basically not much in the way of a lobby beyond map types and seed. You can't choose your player color yet, even.
** When there's too many AI ships on the planet for them to fully deploy (without unduly hurting game performance), they're no longer invincible but if you pop them they combine their contents into nasty mkV ships and mkV guardians.
+
** Compared to the actual gameplay mechanics, we felt like these were ancillary things, but they are coming up in importance sooner than later.
** Can no longer shoot through forcefields (but can still fly through them).
 
** Now get more shots-per-salvo based on the ships being carried, so they're not so much less a threat when not-yet-deployed (previously high-carrier waves tended to be like several waves in series, which is much easier than intended).
 
** There's now a toggle on the CTRLS window to tell your ships whether to auto-target carriers or not.
 
  
* Cross-Planet Attacks have been substantially reworked to be a much more serious threat.
+
=== What Is The Purpose Of This Phase? ===
 +
'''Short Answer:''' To make the game fun, which it is not yet. Please don't fret on that!
  
* Each AI planet now picks 3 ship types to focus its reinforcements on, making each planet feel more distinct.
+
'''Long Answer:''' There's still a lot to do on the game obviously, as stated in the last blog post. But there's a lot of good stuff here to tinker with now, and we're really looking forward to having more people bashing on it. It's not a "fun, balanced game that just needs some polish" yet, but it will be really useful for us to have more people finding the pain points both in the interface (which is currently atrocious) and the actual gameplay flow (which, from a macro standpoint, is still pretty immature).
  
=== Big ===
+
The underlying technology and components for making a fun game are here, and that'd a very critical step towards it being a fun and balanced game, but that's not where we are just yet. In a lot of respects we kind of reordered things: the underlying tech is somewhat more advanced and more polished than we had anticipated at this point, and that is pretty important because it gives us a better idea of what we CAN do in the engine. It gives us a better bounding-box for setting up things so that we can build an interface around what is possible, and have the scale of battles reflect what is possible performance-wise, and so forth. On that front, I'm super happy with where we are.
  
* Re-implemented custom galaxy layouts for each player, so you can move planets around the map to get the strategic view looking the way you want.
+
But yeah, the next step is to finish implementing the last of the "before early access" ships, and then to actually make a GUI that isn't eye-gouging as well as a game flow that doesn't have any obvious deficiencies. Right now there are some notable concerns about parts of the game flow regarding how you don't really need to keep territory as much as in the first game, and certain other bits of the feel from a strategic standpoint are "off." Some of that is just because xyz AI feature maybe isn't in place yet, but other pieces are more about the design of certain ships or mechanics. These are things we want to iron out before we go full-Early-Access, and we need the help of folks like you to do so. We're trying to streamline certain aspects of the first game, but we don't want to do that at the expense of what made the original game cool.
  
* Substantially rebalanced waves, particularly on the higher difficulties.
+
The engine for this one is so flexible that we could just recreate most of what the first game was if we felt like it, but we'd really rather not for a variety of reasons that should be apparent to anyone who tried to get into the first game and bounced off it, or who played the first game for a huge number of hours but wanted certain fundamental improvements. Now that all the basic frameworks are getting in place here, we're at a point where we can start thinking about those things.
** Notably, 10/10 used to be totally lethal... unless you somehow pulled out some massive cheese and survived the first couple waves to get a foothold. Now the early 10/10 challenge is a much better "advertisement" for the kind of challenge that lies beyond the initial period.  Accordingly, 10/10 has been massively rebalanced to be harder in those later parts of the game, as certain players have displayed the temerity to _win_ on that difficulty.
 
** Also smoothed out several "difficulty cliffs" along the 7-to-10 range where one difficulty step was massively more significant than either the one just below or just above.
 
  
* The Botnet Golem has been split off into an entirely separate minor faction with its own costs/risks because it was so powerful. We could have just nerfed it down near the other golems, but this way is much more fun.
+
== Version 0.521 ==
 +
(Not yet released -- we're still working on it!)
  
* The starfield backgrounds have been completely redone with something much more interesting.
+
* Incorporated Badger's updates to the Find Planet function, which add the ability to search for the Devourer, Dyson Sphere, Super Terminal, Zenith Trader, or Nanocaust (hub).
 +
** Thanks, Badger!
  
* Rebalanced... honestly, it might be easier to list the units that were _not_ rebalanced during the 5.0-to-6.0 run than those that were.
+
* All fuel-consuming units now consume half as much fuel.
** Thanks to all the participants who contributed nominations, discussion, and votes to our "what's the worst unit?" (and other) community polls!
+
** You're supposed to bounce back and forth between Fuel being the limiting factor on your fleet, and Science, and in some cases Metal (if you choose only metal-poor planets and/or are careless with your units), but it was mostly Fuel in the previous balance.
 +
** Thanks to BadgerBadger for inspiring this change.
  
* Added a devious super-hybrid plot to Advanced Hybrids (on high enough intensity).  That's a nice Dyson Sphere you've got there, it'd be a shame if anything happened to it.
+
* Now techs that let you build power-consuming units give a permanent boost to your power production.
 +
** Specifically, every 1000 science you spend on these techs gives you +10%, so 2500 total gives +25%, etc.
 +
** Thanks to BadgerBadger for inspiring this change.
  
* Finally found a way to detect loss-of-focus from within the Unity engine, allowing us to auto-pause the game when this happens (there's a toggle to suppress the auto-pause, if you like).
+
== Version 0.520 Formations ==
** Note: this doesn't work on the Mac in windowed mode, but it does work on the Mac in full-screen mode and on Windows in either mode.
+
(Released September 15th, 2017)
  
=== Important ===
+
* Added Group Behavior button to the commands menu when you have a control group selected.
 +
** Under that is a Formation button.
 +
*** Under that there is a "None" button (for default movement order logic) and one button for each Formation defined in the xml.
  
* AI War engine upgraded to Unity 3.3 from Unity 3.1.  
+
* Added Formation folder to the GameData directory, and the new Formations are defined here.
 +
** And implemented in C# external code.
 +
** So the formation author is handed a control group and the point clicked by the move order, and can decide where each ship in the group should actually go, or what they should do instead.
  
* The Siege Starship (formerly known as the Dreadnaught) was too effective as "park at extreme range and pick off the enemy" ship so it was nerfed into the Antimatter Starship. That couldn't really hit anything, so it was re-imagined again into the Plasma-Siege Starship, which is much shorter ranged than the old siege starship but fires special ammo that does aoe damage, engine damage, and causes extra splash damage to targets under any forcefield it hits.
+
* Currently available formations:
 +
** Blob
 +
*** Arranges the group's ships around the biggest shield-generator in the group (or just the strongest unit, if none has shields) in two wedges of concentric arcs, with the shorter-ranged stuff up "front" and the longer ranged stuff in the "back".
 +
**** This tends to keep more units under shield coverage than the default behavior allows without obsessive micro, and it can look fairly cool, but there are certainly more optimal formations that could be achieved.
 +
** Reverse Blob
 +
*** Just like Blob, but with the fore and aft wedges reversed. Useful if you are executing a Brave-Sir-Robin maneuver because it keeps your short-range stuff closer to the things shooting at you.
 +
**** Though currently this is only a marginal difference because it's packed in close to your core unit rather than at the extreme edge of the shield (it's arguable which is preferable).
  
* The MkIII Riot Control Starship was given some new exclusive module possibilities (grav tazer, etc) to better set them apart from the MkI and MkII.
+
* Fixed some longstanding issues where units with move orders would only move "close to" the target point and then stop. It was logic that worked fine in TLF and Starward Rogue, but not so well here, and lead to fast ships zipping back and forth because they never got close "enough".
  
* Added Hardened Forcefields: an alternate form of human-tech forcefield that relies on reducing incoming damage more than absorbing it.
+
* Marginal reduction in starship caps to make them less individually weak.
  
* Added the ability to switch your UI to display what another human player sees, making team control significantly more convenient and paving the way for other features.
+
* Made starship radii better fit their actual model (makes it easier to have groups of them without them decolliding across half the planet)
  
* Added the "Helper" player role which is much like the "observer" or "spectator" role from other RTS games but they can also control the units of any human player allowing team control.
+
* Now when you have a unit rally to a control group, and the unit reaches the lead unit and cancels its rally command, it now copies the lead unit's orders to itself (so it's more likely to keep up without further explicit orders).
 +
** Thanks to BadgerBadger for suggesting.
  
* Added a new Ultra-Low unit-cap-scale with 1/8th the caps of High, for folks on low-end hardware or wanting to play something crazy like a 16-homeworld game.
+
== Version 0.519 Who Thought A Settings Menu Could Cause A Platform-Specific Temporal Paradox? ==
 +
(Released September 9th, 2017)
  
* Added a scripting language for generating lobby game-setups within a set of desired parameters, and a number of default scripts that ship with the game (including a few "Beginner Game" scripts, a few scripts for randomized minor factions, and a few scripts for randomized _and undisclosed_ minor factions).
+
* Several Guardians now have their Mk 2 - 5 models:
 +
** Widow, EMP, Shield, Sniper, and Stealth Guardians have all their models
 +
*Two Starships now have their Mk 2 - 5 models:
 +
** Carrier and Siege Starships have all their models
 +
* Dyson Sphere graphics are now hooked up
  
* Added short-lived "Drones" that the player's Neinzul Enclave Starships can build. These are based on unlocked turret technology and provide more of a "carrier with fighters" feel.
+
* Hopefully fixed up OSX and Linux builds to not die/go-crazy as soon as they start.
 +
** Thanks to BadgerBadger and Sounds for repeatedly testing fixes.
  
* Made defending multiple planets much more viable (relative to the viability of defending one planet) by changes to wave interval (which impacts wave size), re-imagining the Military Command Station's weaponry, and adding the new per-planet-cap'd Minifortress.
+
* Intra-update on September 11th: we got it fixed on the OSX thing, finally.
  
* AI Eyes now have 3 varieties: Sentry Eyes (the old behavior), Ion Eyes, and Parasite Eyes.  Each is pretty lethal against no-thought-blob attacks, in a different way.
+
== Version 0.518 Active Selections and Capturing the Uncapturable ==
 +
(Released September 8th, 2017)
  
* The ramp-up from one AI tech level to the next is now much more gradual, with waves containing a percentage of the next-higher tech level that increases as you approach the threshold.
+
* Added BadgerBadger's galaxy display modes for "AIP Reducers", "AI Defenses", and "Capturables".
 +
** Thanks Badger!
  
* Reclamation damage is now much more likely to have a consistent impact because any reclamator nanites unable to reclaim their host when it dies "hop" to another nearby eligible target.
+
* Incorporated BadgerBadger's updates to the Nanocaust special faction, including the ability for the player to hack the original Nanocaust controller to convert the faction from an enemy-to-all menace to an ally against the AI.
 +
** Thanks Badger!
  
* Exogalactic strikeforces can now contain Hunter/Killers. Be afraid.  And throw the rotten fruit at chemical_art for suggesting it.
+
* Swapped the Pursue and Control Group command buttons so that Pursue is 1 again.
 +
** Thanks to BadgerBadger for suggesting.
  
* Exogalactic strikeforces are now more wily about picking targets.  Get used to defending your outlying assets if you play with any exo sources.
+
* Rebuilt all the unity bundles and executables for all platforms, with some settings rolled back to previous values, in hopes of resolving a crash-on-startup bug on OSX.
  
* Several golems have been substantially buffed, to provide an appropriate reward for the costs/risks of playing on Golems-Medium or Golems-Hard.  Enjoy your new "has tractors that paralyze!" Black Widow Golem and "that thing can kill anything, once every 8 seconds!" Artillery Golem.
+
* Fixed longstanding bug where it was generally impossible to claim or repair golems and various other things due to the large metal costs and hp counts causing an arithmetic overflow. Now the math is ordered in such a way as to not overflow.
 +
** Thanks to BadgerBadger for the reports and saves.
  
* The game's RAM usage has been substantially reduced in many cases, leading to far fewer out-of-memory errors in remotely-sane scenarios (and even some clearly-insane scenarios, we've noted).
+
* Control group selections are now "active" or "sticky", in that if you select a control group, and don't manually modify your selection, any new ships that appear on that planet as part of that control group (either through being constructed or coming in via wormhole) are automatically added to your selection.
 +
** If you change your selection manually in any way after that point, the stickyness stops.
  
* Massively reworked the way the AI determines how many ships it gets in a reinforcement, so that it properly pays attention to how much a ship should "cost" relative to others (based on relative ship cap, mainly). This makes it much less likely that the AI will pile up huge amounts of low-cap ships on a planet, and if it does create such a pile up at least the proper price (in terms of fewer other ships elsewhere) was paid.
+
* Reworked the "do I draw the selection ring for this unit?" logic to actively check each visual unit each frame for its selection status, rather than only updating the visual state whenever the interface "selection" state changes. The latter is theoretically sufficient but in practice we wind up with lots of stuff being selected but not showing it after switching planet views, and enemies winding up with selection circles around them apparently due to some kind of object recycling, etc.
  
* Fixed all remaining desync bugs; haven't had a reported desync in months.
+
== Version 0.517 External Data and Group Control ==
 +
(Released September 7th, 2017)
  
* Now when a forcefield is damaged, every other overlapping allied forcefield also takes a minimal amount of damage, preventing the old far-too-effective-to-be-balanceable tactic of having engineers repair inner forcefields while the outer ones tanked the damage. It was fun, but properly micro'd it was effectively invincible before.
+
* Added a Control Group button to the commands you see when you have a selection. Clicking it brings up a list of buttons:
 +
** One for each control group you already have.
 +
*** Clicking this adds all your selected units to that group.
 +
** And a button for creating a new one, if you have fewer than the max.
 +
*** Clicking this creates a new group in that slot, and adds all your selected units to it.
 +
** And a "None" button.
 +
*** Clicking this removes all your selected units from whatever groups they are in.
  
* AI Homeworld structure seeding now distinguishes between normal and "brutal" structures: the core raid engine, core CPA guard post, and AI Eye were far more significant than the other structures being considered, and the difference between an AI HW with none of them and an AI HW with 5 core raid engines could be the difference between "pushover" and "impossible".
+
* Build queues now default to looping.
  
* Made fortresses, forcefield generators, and command stations drop rebuildable remains when they die, greatly reducing the need for micro when rebuilding after a significant AI breakthrough.
+
* Added an "External Data" architecture which allows modders to store and retrieve arbitrary data, and to have that data persist across save/load.
 +
** On the following:
 +
*** The World object
 +
*** Each PlayerAccount object
 +
**** You probably won't need to do this, except for UI-related stuff in multiplayer games
 +
*** Each WorldSide object
 +
**** This is where you would put faction-specific stuff, including for special factions
 +
*** Each Planet object
 +
*** Each GameEntity object
 +
**** I.e. ships and shots.
 +
** For example usage, open the ExternalCode project in visual studio (or monodevelop) and search for "DoomData". There's also a small (but critical) piece in the xml file in GameData/Configuration/ExternalDataPattern/
 +
*** To actually run that stuff, change DoomData.DoDebugTestingLogic from false to true.
 +
** Thanks to BadgerBadger and Draco18s in particular for inspiring this addition.
  
* Added the first per-control-group control options so you have finer control over auto-Free-Roaming-Defender and auto-kiting behavior.
+
* Fixed a bug that was preventing games from loading properly in the previous version.
 +
** Thanks to BadgerBadger for reporting.
  
== AI Updates ==
+
== Version 0.516 UI Scaling and Rally Commands ==
 +
(Released September 5th, 2017)
  
* Previously, allied minor faction and zombie ships would just patrol around player planets endlessly, which was helpful for defense, but problematic for two reasons: first, that it could cause massive amounts of slowdown after many hours of them stacking up, and second, that it could cause massive buildups of AI stalkers, who never dare to attack the planets with so many defenders, which leads to something akin to stalemate situations.
+
* Added a UI Scale slider to the settings menu, so if you find the UI is taking up too much of your screen you can bump that down to something less than one.  
** Thus the allied minor faction and zombie logic has been adjusted as follows:
+
** Going too far tends to produce buttons where the text doesn't fit properly on it, since the engine scales text by font size and buttons by a scale multiplier. The font sizes obey UI Scale as well, but it's not exactly the same.
*** Neutral planets are now considered the same as allied planets, and the ships will patrol to them like any others.
 
*** If there are more than about 100 of AI threat ships on an adjacent planet, the ships will also patrol to that planet to clean them off.
 
*** If the human-allied team has more than a token military force (more than about 10 ships) on a planet, then these ships will patrol to there, to help aid in that attack.
 
**** This allows for small raids to still happen with raid starships or whatever without assistance from these minor factions, but it enlists their help for larger-scale engagements.
 
  
* Attack Hybrids now use a variant of the behavior the standard AI free (threat) ships use to avoid charging a human planet with insufficient firepower. Combined with other hybrid changes in this release this may result in hybrids being a lot harder (and/or a lot more annoying) than they used to be.
+
* Added BadgerBadger's "Set Defaults" button to the settings menu.
 +
** Clicking it just sets all the toggles and textboxes and sliders back to their default positions. Clicking save will then actually change your settings to those values, as normal.
 +
** Thanks Badger!
  
* Reworked the CPA formula to be more aggressive on higher difficulties, since it's been sadly anemic lately.
+
* Incorporated a small change from BadgerBadger so that starting the game with the first planet already owned also adds a Starship Constructor to your starting units.
** Also added cpa-size calculations to the wave logs, when advanced logging is enabled.
+
** Thanks Badger!
  
* Removed a "go for the command station over everything else when AI" behavior from a number of units, including:
+
* The sidebar text that used to show Squad Count and Ship Count now shows Squad Count and Total Strength, since strength is a much more useful number than ship count.
** Leech Starships.
+
** Thanks to BadgerBadger for submitting the code for this.
** Flagships.
 
** Zenith Starships.
 
** Spire Starships.
 
** Riot Starships.
 
  
* Barracks are now seeded on some AI planets at the start of the game (and retroactively into old saves):
+
* Units with internal build queues (Starship Constructor, Space Dock, Ark, etc) now have a "Rally" button on their command menu. Clicking it brings up another row of buttons, each corresponding to one of your Control Groups, and one "Clear" button.
** The higher the difficulty, the more planets get them.
+
** Clicking one of the group buttons makes all future units produced by this unit:
** The higher the difficulty, the more ships in them.
+
*** Assigned to the target control group
** None are placed closer than 3 hops from a human homeworld, to not be too cruel.
+
**** Note: this does not assign the producer to that group, though you can do that separately
** These serve two purposes:
+
*** Have orders to go find the primary (strongest) unit in that control group, wherever it is in the galaxy.
*** Making it far less likely that the AI will simply not have enough ships for a CPA, while still letting players whittle away at "the reserve" if they want to.
+
**** So if they're not on the same planet, they'll find a path to the primary unit's planet.
*** Making the AI's defensive response to the loss of a planet (with a barracks on it) something more of an event.
+
**** And if they're on the same planet, but not near the primary unit, they'll move over to it.
 +
**** If the primary unit moves to a different location or planet, these rallying units will update their orders to adjust.
 +
**** Once they get within a short distance of the primary unit, they drop this "rally" behavior and respond normally.
  
* AI planets now pick a primary, secondary, and tertiary type of ship to focus their reinforcements on. 
+
== Version 0.515 The Settings Menu Of Doom ==
** It's not purely random, sometimes it picks ships that fit certain roles.
+
(Released September 2nd, 2017)
** When picking a new reinforcement ship for the central pulse or a non-special-forces guard-post-pulse, it has a 10% chance to pick any available ship like usual, and a 90% chance to pick one of its focus types.  When picking a focus type, it has 3 times as much chance to pick the primary as the secondary, and 3 times as much chance to pick the secondary as the tertiary.  If that doesn't make sense, don't worry about it.
 
** Whenever the AIs unlock new ship types due to AI progress, all AI planets "reroll" their focus types.
 
  
* The AI now has a "strategic reserve" it can deploy to defend critical planets (the homeworld, the core worlds, and the superterminal world; though it still holds onto most of it when defending the latter two) and pulls back up (off the board) if the attack goes away.
+
(0.514 was quickly succeeded by this)
** Reserve ships are basically just normal mkV fleet ships, but they are not allowed to leave the planet so they can't be easily baited to their doom.
 
** The reserve starts at zero and increases periodically, so it can be whittled away.
 
** The max size of the reserve and its increase rate are proportional to the difficulty of the AI player in question (each AI has its own reserve) and AIP.  On Diff 7 with non-insane AIP it's pretty tame.  Higher up, it gets more intense.
 
** If you're curious about the numbers, with advanced logging on they go into the special forces log (since the concept is somewhat similar, and didn't seem to need a separate log; might change that).
 
** Thanks to Faulty Logic and others who voted on [http://www.arcengames.com/forums/index.php/topic,11578.75/viewresults.html this poll] for inspiring this change (more coming eventually in response to that, for that matter).
 
  
* AI Special Forces:
+
* Ships in squad formations now take on the rotation of the transform that is in the squad, allowing us to create formations where all the ships (usually turrets) are not facing the same way.
** Now get periodic extra spawns (in addition to the usual trickle from reinforcements) if under a "special forces population cap" determined by difficulty, AIP, etc.
 
*** The spawns are spread out among all special forces posts (and special forces guardians) in the galaxy, except those in non-AI territory.  Each post in non-AI territory instead increases the special-forces-population-cap by about 5%.  So there's a reason to kill them, in tension with the +1 AIP from killing them.
 
*** If you're curious about the math, etc, turn on Advanced Logging and check SpecialForcesLogicLog.txt in your RuntimeData directory after the game has run for a bit.  There's some minor spoilers in there about what ships each AI has, but nothing you probably won't find out looking at a few AI planets anyway.
 
** Will now rally to defend an AI planet that is under significant attack and at least mildly important (AI Homeworld, core world, or a planet with a CSG, ARS, Advanced Factory, Super Terminal, or Broken Golem on it, giving priority to HWs/core-worlds).
 
** Now keep the special-forces flag even when they have encountered the enemy, so that rallying to a planet does not just dump all the special forces there as normal threat.
 
** When not rallying to defend a planet, will select a staging planet about 3 hops deep into AI territory and rally there until an eligible AI planet is attacked.
 
** To prevent a player's first attack from running into several hundred AI ships out for blood, as entertaining as it was during testing, special forces ships are no longer seeded during the initial map seeding.
 
  
* Since "make the threatballs fish or cut bait" was #1 on the second round of the 6.0 poll:
+
* Fixed bug where the at-mouse tooltip would draw under certain other elements.
** Threat ships behave as they used to for about 30 minutes after being freed, but after that they are switched to an alternate "Threat Fleet" behavior that is somewhat similar to the new Special Forces mechanic.
 
*** Note: this only happens on Difficulty 6+, as it's not the AI getting anything extra, it's just behaving more intelligently (in theory) with what it has.
 
** If an AI homeworld or core world is under attack, the threat fleet will rally to defend it.
 
** Otherwise, if it sees an accessible non-AI planet with a significant human presence that it thinks it can take out, it goes to attack that (it will still pool up at the entry wormhole in some cases, until enough of them are there to pass the threshold, so they don't march in to the grinder one-by-one).
 
** Otherwise, it picks a planet in AI territory to hang out at until either of the two above conditions are met.
 
** If a carrier is spontaneously formed from ships that have a significant threat-fleet population, the carrier (and anything it spawns) is also considered threat-fleet.
 
** When a special forces alarm post is triggered it converts all special forces in the galaxy directly into threat-fleet, and then blows up the alarm post (not causing AIP, unless it was triggered because it was shot to death).
 
** For the curious who have advanced logging on, the target-planet selection process is logged in the special forces log file.
 
  
* Fixed a relatively longstanding bug where AIPerPlanetShipCap and AIPerGuardPostShipCap were generally not being enforced when loading a game (either just-starting or loading later).
+
* Finally added a Settings menu!
 +
** As part of this, we pulled most of the game's settings out from hardcoded fields to externally-defined data (in xml).
 +
*** So if you want to have persistent settings which apply to your mods you can do that, though you'll have to use slightly different functions to get and set the values (GetIntBySetting, SetIntBySetting, etc).
 +
** Also as part of this, we implemented a whole new way of populating a UI window with controls, entirely through C#.
 +
*** XML is still the preferred way for windows with fixed sets of simple controls like the main menu.
 +
*** Unity prefabs (in the modding-and-gui project) are still the preferred way for windows with really complex nested controls like the Ship Detail Display.
 +
*** But if you need variable numbers of controls, laid out in a simple way (like a table with columns of different types of controls; more complex than a ButtonSet), this new method is the way to go.
 +
** ALSO as part of this, we implemented support for vertical and horizontal sliders.
 +
** So the new window looks at all the externally defined settings, and for each one of those adds a row of controls to the window.
 +
** There are more settings than there is screen space, so the game's first scrollbar has been added to let you go through the collection.
 +
** The window currently supports three types of settings: boolean toggles (on/off buttons), integer textboxes (for things like windowed resolution), and floating-point horizontal sliders (for camera settings).
 +
*** Added slightly later: dropdowns, for now just one sub-type of dropdown for the fullscreen resolution setting.
 +
*** There's also support for "hidden" settings of the following types: bool, int, float, FInt (fixed-point non-whole-number for sim math, don't use float in the sim); these don't show on the settings menu but modders can use them to store and retrieve configuration, e.g. for custom map type parameters).
  
* Fixed a bug where hybrids were... basically completely broken.  Sigh.  The "don't let hybrids rebuild modules if they've recently been damaged" code was inverted in such a way that they could never build modules.  And because they could never get modules, they were never satisfied that they were ready to go attack or defend or whatever.
+
* Fixed some issues where keyboard camera movement would not work when the mouse was over certain UI elements.
  
== General Large Gameplay Additions ==
+
* Fixed a bug where band-box selection was basically broken when the Ship Detail Display was visible.
 +
** Thanks to BadgerBadger for reporting.
  
* Advanced Research Station Hacking:
+
* New squad formations added in!
** Added the "Ship-Design Hacker" (for lack of a better name, let us know if you think of one): a 4th ship to the "science lab" line, very similar to the "Knowledge Hacker".  It gathers no knowledge, but has another ability.
 
** If you keep a Ship-Design Hacker on an AI-controlled planet with an AI-controlled ARS for 10 minutes (it must remain stationary during this time; it's one of those kinds of countdowns), it will "hack" the Advanced Research Station and reprogram it such that when you capture the planet:
 
*** Instead of being immediately granted a new bonus ship type, you will be able (from the tech menu of the ARS, or of a Ship-Design Hacker) to select one of three bonus ship types.
 
*** Note the hacker does not have to survive after the hack has been completed, and the ARS does not have to survive after the planet is captured, but you will need a science lab, ARS, or SDH (anything with a tech menu that normally lets you unlock II/III versions of fleet ships, basically).
 
** However, the AI will react to Ship-Design Hackers the same way they react to Knowledge Hackers.  Also, the number of previous ship-design-hacks you've pulled off will increase AI response to future hacking (of all 3 kinds).  Each subsequent ship-design-hack makes things a lot worse than the previous one did, such that 1 isn't a big deal, 2 is a big deal, 3 is a huge deal, 4 is probably death if you hack seriously again, and 5 is really going to mess you up if you so much as look like you're hacking the rest of the game.
 
  
* Superterminal Hacking:
+
== Version 0.513 Tooltips For Your Tooltips ==
** Now the superterminal never seeds on an AI homeworld or core world (can still seed next to a core world which is mean, but not nearly so mean as having to permanently alert a homeworld, or capture one, in order to use the superterminal).
+
(Released August 25th, 2017)
** Also, the superterminal's response is now based only on the reduction achieved through the superterminal, not total AIP-reduction, so it's no longer very important to do the ST before getting reduction from other sources.
 
** Now the antagonism generated by knowledge raiding feeds into the strength of superterminal spawns, and the number of times a superterminal has "ticked" feeds into that same antagonism (thematically, they're both "hacking" and the AI dinnae like it).
 
*** Reducing AIP via superterminal hacking is significantly more "efficient" than knowledge raiding in terms of what you gain in return for making future hacking efforts more dangerous.  The disadvantage is that this requires the superterminal, and doesn't stop if you lose control of the system (unless you destroy the superterminal).
 
** Now also uses a "wild roll" system like what k-raiding uses, but it's somewhat more tame in terms of what kinds of crazy it can throw in there.  Right now all it can do is surges (10% of the time, the same effect that was added in the previous version), and the "short range warp jump" (15% of the time, spawns the units away from the superterminal itself) wild-effect that the k-raid spawns can get.
 
** If you have Advanced Logging enabled, each spawn will generate an entry in the "CounterSaboteurSpawns.txt" log file; it may not make sense to players but is very helpful to us if you submit it with your feedback.
 
** The rationale for this is trying to make both k-raiding and superterminal-hacking more interesting and more of a strategic choice (since now using one makes the other more dangerous), but also to make it harder to use the superterminal for arbitrarily-high AIP reductions (we've seen cases where players could kill 400 AIP with it without even being in much danger).
 
*** As with k-raiding: In general, the balance of all this is tentative.  It looks right in our testing, but it may be too easy or (perhaps more likely) too hard.  Please give us feedback and we will continue to refine towards better balance and more fun :)
 
  
=== Lobby Setup Scripts ===
+
* The ship detail display now uses the awesome new icons from Blue, and thus has far less text than it did.
  
* Preface: over the years we've had requests accumulate on a number of different fronts that couldn't easily be handled the way things were, like:
+
* The ship detail display now continues to show for 2 seconds after your mouse is no longer over the ship.
** Numerous new players asking "What's a good setup for my first game?"
+
** When the mouse is within the ship detail display it continues to refresh that 2-second timer.
** Variable-strength minor factions and AI plots (which could be handled just by the above changes, but read on)
 
** Randomized minor factions and AI plots, particularly combined with variable-strength.
 
** Randomized and hidden minor factions and AI plots (so you don't know what's there until you run into it in the game, with potentially hilarious results).
 
** Some kind of overall "difficulty ranking" for a particular game setup.
 
  
* So, from a small scripting language that was written for (and actually not ultimately used for) AVWW, a Lobby Setup Scripting system has been cobbled together.  The actual scripting language is likely to completely change in the next version (it's really verbose, cumbersome, etc, but it does work), but the short story is it's now possible to define external scripts which populate the settings in the lobby.
+
* The individual icons and text elements inside the Ship Detail display now have mouseover tooltips that:
** Please note, those of you with scenario-building aspirations, that this really only sets stuff in the lobby.  It cannot directly influence mapgen (placement of planets, units, etc) in any way.
+
** Float just to the right and below the mouse cursor, but don't run off the bottom or right of the screen.
** To use a script, start a new game, and in the lobby on the Map tab pick an option from the Setup Script dropdown.  It will then immediately execute the script and apply the changes to the lobby.
+
** Size to fit the text being displayed, and wrap long lines.
** The following scripts are available in this version:
+
** Disappear after about half a second of the mouse cursor not being over something that should cause a tooltip.
*** Beginner Game
+
** The above is just standard behavior that you would presumably expect. Many hours and electrons lost their lives in the war to persuade our engine of this.
**** A fairly simple, fairly easy scenario that may be a good next step for new players who have just completed the intermediate tutorial.
 
*** Beginner Game 2
 
**** A bit harder than the scenario generated by the Beginner Game script.  May be a good next step for new players who have just completed the intermediate tutorial and are feeling confident.
 
*** Random Factions 1
 
**** This script sets up some randomized minor factions and AI plots from the base game (no expansions required).
 
***** Note (this goes for the rest of these scripts, too): it's not purely random, it starts with a certain number of "points" and randomly picks factions/plots to allocate them to.  Friendly factions (in this case, human resistance fighters) actually increase the point total when chosen, rather than decreasing it.  The point is that while there's simply no way to get any kind of overall "difficulty score" of a particular scenario, it is possible (with significant effort) to make a script which produces scenarios within a particular range of difficulty.  Which, hopefully, scratches the real itch behind the "difficulty score" request.
 
*** Random Factions 2
 
**** This script sets up some randomized minor factions and AI plots from the base game and The Zenith Remnant expansion.
 
*** Random Factions 3
 
**** This script sets up some randomized minor factions and AI plots from the base game and the The Zenith Remnant and Children Of Neinzul expansions.
 
*** Random Factions 4
 
**** This script sets up some randomized minor factions and AI plots from the base game and the The Zenith Remnant, Children Of Neinzul, and Light Of The Spire expansions.
 
*** Unknown Factions 1
 
**** This script sets up some randomized minor factions and AI plots from the base game (no expansions required), and then hides them so that you cannot see what has been selected either in the lobby or in the game.  If you then pick another script (or none) the hidden status will be reset.
 
*** Unknown Factions 2
 
**** This script sets up some randomized minor factions and AI plots from the base game and The Zenith Remnant expansion.  It then hides them so that you cannot see what has been selected either in the lobby or in the game. If you then pick another script (or none) the hidden status will be reset.
 
*** Unknown Factions 3
 
**** This script sets up some randomized minor factions and AI plots from the base game and The Zenith Remnant and Children Of Neinzul expansions.  It then hides them so that you cannot see what has been selected either in the lobby or in the game.  If you then pick another script (or none) the hidden status will be reset.
 
*** Unknown Factions 4
 
**** This script sets up some randomized minor factions and AI plots from the base game and The Zenith Remnant, Children Of Neinzul, and Light Of The Spire expansions.  It then hides them so that you cannot see what has been selected either in the lobby or in the game.  If you then pick another script (or none) the hidden status will be reset.
 
  
=== Energy System Rework ===
+
* The planet tooltip no longer shows at the same time as the ship detail display when mousing over the icon of a unit that shows on the galaxy map.
 +
** The planet tooltip will be reworked into another detail display fairly soon, but for now this was necessary to avoid overlap.
  
* The motivation here:
+
* The Ship Detail display no longer shows anything in the spaces for Engine Damage Resistance and various other resistances if the unit has the "normal" value for that stat.
** The previous energy system was settled on after a series of different models were tried, and has been around for over 2 years, and has served pretty well.
+
** Perhaps the empty space is not desirable from a usability standpoint and it would be better to have grayscale versions of the icons for these resistances so you can tell what it is that they don't have. Your thoughts are welcome on the forum :)
** But there were a number of problems pointed out by players over the years, the most bothersome being:
 
*** There's significant motive to maintain as close-to-zero positive net energy balance because energy costs metal+crystal per second and a positive net energy balance provides no real benefit.
 
**** A positive balance did protect against having your forcefields shut off in case of losing a reactor, but that could be easily protected against by a big pile of low-powered reactors that you can bring up as needed; or you can go low-power a hundred spider turrets, or whatever.
 
*** And maintaining that low-wasted-energy state involved _tons_ of micro. A couple of "automated energy hamster" hotkeys were added to greatly reduce that micro (by making the "low-power least efficient 'on' reactor" and "power-on most efficient 'off' reactor" operations a single keystroke instead of minutes of scrolling and clicking), but that was really just a bandaid.
 
** Many people have requested automated energy management as a solution to all this, but whenever the game is simulating something that it then turns around and plays optimally without your involvement... that means something is wrong.  In this genre, anyhow.
 
** Thanks to Cyborg and other players for making this point, and being patient as we tried to find a better model.
 
  
* The overall result is that the energy/econ game should actually be easier, unless you were relying on low-efficiency reactors or low-powering tons of stuff to make ends meet.  In those cases it shouldn't be much harder.
+
* Numbers in the Ship Detail display now round to the nearest thousand and show "k" for numbers >=100,000, and to the nearest million and show "m" for numbers >= 100,000,000. So for example "500,000" is written "500k".
** But please let us know if the new model really messes you up in some way, or if you have other feedback.  It's not like this model can't be changed, it just seemed a definite step in the right direction from where we were.
 
** If you're curious about the comparison math, check out this post: http://www.arcengames.com/forums/index.php/topic,11031.msg110117.html#msg110117
 
** Anyway, on to the specific changes:
 
  
* Removed the Energy Reactors (all of them, MkI, MkII, MkIII).
+
* The Ship Detail display now shows a % next to the hit point total for either build-progress (for stuff like turrets under construction) or current health (for built stuff that is damaged).
 +
** When this is active the display of max health is more aggressively rounded, so at 1000 it rounds by thousands, and at 1000000 it rounds by millions.
  
* Added the "Energy Collector", which is like the energy reactors were except:
+
* Fixed missing-localization error message when claiming a golem or other unit that causes AIP on claim
** Produces 150,000 energy.
 
*** For reference, in the previous model an EnergyI+EnergyII+EnergyIII produced 125,000.
 
** No ongoing m+c cost.
 
*** For reference, in the previous model an EnergyI+EnergyII+EnergyIII cost 57m+57c per second to run.
 
** Can only build one per planet per player.
 
** Output scales up with that player's number of homeworlds (to scale up for the extra stuff multi-HW players can build, similar to how reactors used to do it but without spamming lots of them).
 
** Cannot be low-powered (there'd be no point).
 
  
* Added the "Matter Converter", which is like the energy reactors were except:
+
== Version 0.512 Hotfix ==
** Produces 50,000 energy.
+
(Released August 20th, 2017)
** Costs 100m+100c per second to run.
 
** No construction cap, and also no efficiency penalty for stacking.
 
*** Yes, this does mean that for now it's best to just pile these all up in a defensible place (much like manufactories); that will probably change in the future but probably not through an efficiency penalty.
 
** Cannot be low-powered, since the main point of this rework is to avoid "player-time-tax" micro.
 
*** This can still result in mid-battle micro if you just lost a collector or whatever and need to build another converter, but that's real in-game costs at a critical moment rather than the only difference between optimal and sloppy play being how much wall-clock-time you personally want to spend "making change for a dollar" throughout the game.
 
** In general, these are very inefficient compared to the old reactors, but more efficient than deeply-stacked low-efficiency reactors.  The idea is that the collectors replace the output you used to get from normal-efficiency reactors, and the converters fill the role of the low-efficiency reactor piles.
 
  
* Putting units in low-power mode now no longer reduces their energy use.
+
* Fixed a bug where the ship-detail tooltip would try to show for a ctrl+mouseover'd wormhole. Also fixed the inner bug where it would barf if somehow applied to an entity with null for mark level.
** Again: removing the motive to micro stuff for energy purposes is one of the driving motivations here.
+
** Thanks to BadgerBadger for reporting.
** Renamed "Low Power mode" to "Stand Down mode", since it's no longer for the purpose of reducing energy.
 
** The mechanic for reducing energy use in stand-down mode is still there, just unused.  It may be used for golems or stuff like that later, we'll see.
 
  
* Removed energy costs from Human Home Settlement and Cryogenic Pod structures, since you can't low-power the settlements anymore (and 8000e a pop isn't much fun in a tight early-game situation).
+
* Set M as the default key for "select all mobile military on this planet".
 +
** To properly apply this to existing installs, we added support for the "default_should_override_unbound_user_binding_if_older_than_version" element in the InputAction xml nodes. It will only override your setting the first time you load the game in the new version, and only override it if you had no key defined for that binding before.
 +
** Thanks to BadgerBadger for suggesting.
  
* Removed the auto-build-energy-reactors controls, and added toggles at the galaxy-level and planet-level for autobuilding collectors, and sliders at the galaxy-level and planet-level for autobuilding converters.
+
== Version 0.511 Unity 2017.1 Upgrade ==
 +
(Released August 18th, 2017)
  
* Added new slider to galaxy-wide per-player-controls screen: Energy Buffer To Maintain
+
* Upgraded our version of the unity engine to 2017.1p4, from version 5.6p3.
** If this is set above zero, the game will try to maintain that amount of "buffer" energy above zero. A few examples:
+
** We had planned to do an upgrade eventually anyhow, but our hand was forced by the security vulnerability UNITY-SEC-844.
*** Docks will not build ships that would take you below the buffer amount.
+
** Note that this security vulnerability affects developers, not customers, but we felt it was a good idea to go ahead and update as soon as we were informed about it.
*** Ships will not be reclaimed if it would take you below the buffer amount.
+
** If you're modding the game using the unity editor, you'll also need to upgrade to that new version.
*** Broken Golems will not be activated if it would take you below the buffer amount.
+
** More info: https://unity3d.com/security
** This can be restrictive, but it can also help if you're deliberately trying to keep all your defenses operational in the event of the AI destroying one or more of your energy producing units.
 
** Note that this will not stop you from scrapping energy producing units (however low that may take your net energy), so be careful.
 
*** This is because going negative energy never stopped scrapping before, so that part wasn't changed.
 
** Thanks to chemical_art for the suggestion.
 
  
* When upgrading saves from 5.039 and earlier:
+
* Fixed a bug in the prior version of the game that was preventing building the external code dll because of a couple of API changes that we made that were not properly reflected.
** For all EnergyI, EnergyII, and EnergyIII units:
+
** Thanks to BadgerBadger for reporting.
*** If that player already has an Energy Collector on that planet, the reactor is replaced by a Matter Converter.
 
*** Otherwise, the reactor is replaced by an Energy Collector.
 
** After that, while the player has > 60,000 spare energy and any remaining Matter Converters:
 
*** Scrap a Matter Converter on the planet with the most remaining Matter Converters controlled by that player.
 
** The result should be that:
 
*** If you had a positive energy balance before this version, you will have a positive energy balance when you load the save in 5.040+.
 
*** It won't give you a lot of Matter Converters you don't need.
 
*** You'll still want to look at your energy situation and make adjustments for the new model. Particularly if this version-upgrade logic somehow messes up in your case ;)
 
  
* The automated energy hamsters have taken off without giving notice, but we suspect they're on vacation in Bermuda.
+
== Version 0.510 Hotfix ==
 +
(Released August 15th, 2017)
  
* In case you were wondering, all the tooltips and relevant tutorial components have been updated for the new model, but please let us know if we missed something.
+
* Put in a variety of small tweaks in the external code library to suppress harmless compiler warnings that nonetheless cluttered up our view (and that of modders) while compiling.
  
== Co-Op Improvements ==
+
* Put in some wrappers for sub images and sub text so that when there's an index out of range exception we no longer have to do a bunch of guesswork; it tells us what index it wanted and what the length was, so our time looping around in instrumentation is a lot lower.
 +
** It also now tells you the name of the type of element it is (eg BuildImageButtonBorderless), since that can also be a source of hunting around in the dark.
  
* Fixed another rare desync that would occur when the "ship to kill" logic was loaded from savegames that were saved during a big battle. Not many people save DURING a big battle, so this one didn't come up much.
+
* Previously, there were cases where we had one prefab referencing another prefab inside the modding and gui project.  This was convenient!
 +
** However, it turns out that when the child prefab is updated, it doesn't flag the parent as also updated, and no amount of fiddling makes it trigger that flag.
 +
*** That, in turn, means that the child of the parent winds up not being properly sent to players via the build.
 +
** To get around that, we're no longer referencing one prefab from another within the asset bundles themselves.
 +
*** Instead we're creating those linkages in our own prefab xml setup using the new xml tags has_child_prefab, child_prefab_bundle, and child_prefab_filename.
 +
*** Note that this doesn't have any effect on prefabs like the Dropdown, which reference elements INSIDE their own existing .prefab file.  That's perfectly fine.  The problem was when one .prefab file was referencing some completely other .prefab file.
 +
** This is what was causing the mysterious index out of range exceptions in the prior version.
 +
** Thanks to BadgerBadger for reporting.
  
* Added in a new "aggregate hash" that sums up a few key integer stats from non-cold-storage ships (location xy, destination xy, is destination settled, "ship to kill" object number), to provide a sort of early warning system against desyncs.
+
== Version 0.509 Player Targets What? ==
** This makes the game much likely to actually desync quicker when there is a desync going on under the hood, which will make them easier to find, and hopefully also easier to reproduce when a player does run into a desync.
+
(Released August 14th, 2017)
** This adds a bit to the CPU load, but since it's all addition, it's nothing particularly notable, which is one of the plusses of this.
 
  
* Fixed a bug where helper players were getting the overflow from other players resources income-past-cap.
+
* You can now programmatically change the font size and spatial offset of text bits on an ArcenUI_ImageButton.
** The resources were basically being lost since helpers cannot gift resources, which is intentional as otherwise this overflow case would represent an in-game bonus from having slots devoted to "helper", which would invalidate the assumption that the game can be balanced as if they weren't there and thus the AI's strength doesn't have to go up due to the presence of helpers, etc.
+
** The ability to change color this way was also added recently.
** Along with this: apparently in the past overflow was going to ALL human player slots, even those that had never had any players in them, causing the resources to be split more ways than necessary in MP games with fewer than 8 human players.  Fixed now.
 
  
* Fixed a bug in multiplayer where hacking an ARS and having the first player pick an unlock on that planet would cause the other human players to be given a random unlock about a game-second later.
+
* You can now programmatically change the spatial offset and size of image bits on an ArcenUI_ImageButton.
 +
** The ability to change color this way was also added recently.
  
== Performance Improvements ==
+
* You can now programmatically change which sprite is shown by an image bit on an ArcenUI_ImageButton.
 +
** The texture must be in a unity asset bundle loaded by the game, and it must be configured as a sprite in the unity editor. This is pretty easy, but it does have to be done.
 +
** You just pass in the name of the bundle containing the texture, and the path-within-the-bundle to the texture, and it takes care of the rest.
  
* HUGE Memory breakthrough.
+
* The build queue item currently under construction now shows its estimated time to completion just above it.
** Bad news first: the bad news is that this touched 63 different code files, and has resulted in approximately 4500 disparate lines of code being changed in a spiderweb pattern all throughout the application.  So... expect some bugs.  So far we haven't seen any, but with an organization change this drastic some are inevitable.  Why, oh why, would we do this?
+
** Note that it currently assumes the builder has access to enough metal to work at normal speed; this will be refined.
** Well, that brings us to the good news: the baseline heap memory usage for the application has been literally HALVED, and in large savegames it's also... well, about halved in most cases.  For those players that had been experiencing the dreaded "Too Many Heap Sections" error (thanks to Unity 3D's less than stellar garbage collector bounding capping out at about 900MB), this is tremendous news.
+
** Thanks to BadgerBadger for suggesting.
** As a small ancillary bonus, this also makes both the program itself and individual savegames load a bit faster.  The older your CPU, the more you will notice this effect (on older CPUs, it could shave off multiple seconds, actually).
 
** As another not-so-small bonus, this restructuring cuts down on some confusing cases with the spirecraft and how some of the by-unit-scale stuff works.  Long-term, this should mean a lot fewer bugs related to the unit cap scales, which is also welcome news.  Some subtle bugs related to the armor rating have already been fixed as just part of making this transition, though we don't think anyone reported these specific ones.
 
  
* Put in a small code change that might lead to more efficiency during really large battles with a lot of things being drawn as well as a lot of sound effects being played. It might also make no difference, but it's a good precaution either way; our tests so far have not really been clear as to whether there is any benefit.
+
* The build and tech buttons now always use the size of unit icons used with flairs (even if the unit type has no flair), to keep the display consistent and allow the remaining-cap count to be a bit larger visually.
 +
** That count is now larger, also.
 +
** Thanks to BadgerBadger for suggesting.
  
* Added new unit cap scale option: Ultra Low
+
* Fixed bug where the start-in-control-of-first-planet lobby option caused warp gates to not spawn anywhere (instead of just not on the human homeworld).
** Most large-cap ships have roughly a quarter of the standard cap (Fighter MkI = 24), and are roughly four times as expensive, four times as strong, etc.
+
** Thanks to BadgerBadger for reporting.
** This puts the lowest possible load on the your CPU when you have the biggest-possible battles.  Also helpful if you're playing a game with 8 human homeworlds (in multiplayer or otherwise).
 
  
* Backported the draw order sorting from AVWW after all.  This should help with the performance of lots of shots, lines, forcefields, or similar being on the screen at the same time.  Or far zoom icons for ships, for that matter. It won't help for the ships themselves when you are very zoomed in, but that's comparably rarer.
+
* Replaced the ship/ship-type mouseover info in the bottom-left with an actual detail "window" which uses layout and icons to communicate much of the previous-text information.
 +
** Most of the icons are currently placeholder "text" (images of text); that's still underway.
 +
** This also includes the Description field from the ship's xml, which the previous display did not.
  
* Removed the usage of Graphics.DrawMesh (which helped performance in AVWW, but seemed to harm performance in AI War for some people) in favor of Graphics.DrawMeshNow (which is what we've been using in AI War up until the last couple of releases).  If you were seeing performance problems in the last few versions, please let us know if you continue to do so.
+
* Renamed the I-IV tab to Fleet, since it includes MkV stuff anyway, if you have it.
  
* Added a memory optimization to the aggregate-targeting system to only initialize the data structures as it needs them rather than all up front. This may cause some slowdown when fighting on a planet for the first time or with a bunch of new ship types at once, etc, but in general that shouldn't be too bad and will "work itself out" during the early phase of a battle.
+
* Replaced player_units_do_not_attack_unless_taking_planet (which took true, defaulted to false) with target_type_for_player, which takes:
** Memory had been pretty ok, but every time we add new ship types that's more memory footprint all around so it was good to counterbalance that a bit.
+
** AutotargetAlways
 +
*** Default behavior.
 +
** AutotargetIfTakingPlanet
 +
*** What "true" used to mean for the old flag.
 +
** NeverAutotargetButAllowManualTarget
 +
*** Like "true" on the old flag, but does not even autotarget when the planet is marked for taking (can still right-click to attack).
 +
**** This is now set on AIP reducers like the Data Center.
 +
** NeverTarget
 +
*** Your units will never ever aim at this target.
 +
**** This is now set for missile silos and design backups, since those are of no value to you unless you hack them (and hacking them destroys them).
 +
** Thanks to Draco18s and BadgerBadger for suggesting.
  
* Removed the sprite pooling, including the sprite pooling option in the settings menu, and greatly improved both RAM use and CPU load with this and related underlying functions.
+
* Carrier, Missile, Implosion, and Lightning Guardians MKs 2-4 visuals now in place, added instead of the Mark 1 versions of their respective types that had been used previously.
  
* In particular, improved the batching of things like destination lines, ship-to-ship beams, and so forthThese should now perform better than they did before we even started the backporting (which then caused a performance hit on these operations).
+
* Widow Guardian Mark 1 visuals now in place and wired up to be used by all 5 marks, plus the dire version, of the guardianActual other variants coming later.
  
* Fixed a longstanding (since March 2011) bug where several per-unit computations were being done every frame instead of every 6 or so frames as designed.
+
== Version 0.508 The Adornment Of The Buttons ==
 +
(Released August 10th, 2017)
  
== Interface Improvements ==
+
* Build menu and queue icons now show:
* The "selection description" window in the bottom right of the hud that shows the count of each type in the selection now shows two percents: the first is the average percent-of-max-health of the living ships of that type (this used to be there before the Unity port, and it's back now!), the second is the lowest percent-of-max-health of the living ships of that type.
+
** In the upper left corner, the number of squads you can construct until you hit the cap.
 +
*** If this number is zero, it is shown in red.
 +
** Just below that:
 +
*** If you do not have enough fuel to build more of that unit, it shows a small fuel icon.
 +
*** If you do not have enough power to build more of that unit, it shows a small power icon.
 +
** Queue icons are now shown with a different button background color rather than being an entirely different prefab.
  
* The selection description window will now try to display up to 30 entries without resorting to a scrollbar, instead of only 5.
+
* Tech menu icons now show:
 +
** In the upper left corner, the number of science points it costs to unlock that unit.
 +
*** If this number is more science than you have, it is shown in red.
 +
*** If you've already unlocked this unit, the number is not shown at all.
 +
** Just below that:
 +
*** If you have unlocked this unit, it shows a small green checkmark.
 +
*** If you have not unlocked this unit, and cannot because you do not have a prereq, it shows a small padlock icon.
 +
**** It also darkens the button.
 +
*** If you have not unlocked this unit, and cannot because you do not have enough science, it shows a small science icon.
  
* Replaced the old "if CanUseNeinzulRegenerator then multiply by 2" wave-size rule with a more general UsefulnessInAIWaveMultiplier UnitData field.
+
* Using the number-key navigation in either the build or tech menus (push one number to select a column, another to select the cell at the corresponding row) now shows a white outline around the buttons in the selected column after the first number.
** Everything with CanUseNeinzulRegenerator (which is just the 5 youngling types), gets a 2 for this.
 
** As an experiment, Bombers get 0.8 and Fighters and Missile Frigates get 1.2.  Bomber waves will probably still be more dangerous (as is intended) but it might make the difference in "interestingness" less.  Not planning to touch the bonus ship types because if the AI has a particularly bomber-like bonus ship type that should just be a characteristic of the kind of difficulty you'll be facing in that game, etc.
 
  
* On to #2 on the vote tallies list: The mouseover tooltip for the AI Progress display on the resource bar now displays each of the tech level thresholds for each AI Player.
+
== Version 0.507 When Menus Attack ==
** Thanks to wyvern83 for the suggestion.
+
(Released August 7th, 2017)
  
* Courtesy of being really high on the vote tallies: previously double-clicking a single unit would select all (your) units of that exact type on the screen.  Now triple-clicking will do the same thing except it will include all units of the same general type (ShipType).  Meaning that triple-clicking a fighter of any mark will select all your fighters of any mark on the screen.
+
* Build menu moved back to left side of screen, and back to a horizontal arrangement, but now on top of the build menu instead of under it (so basically exactly where it was in classic)
** Caveat: the general categorization being used is sometimes more general than mark; notably remains rebuilders have the same ShipType as engineers.  Requests to make triple-clicking an engineer not also select remains rebuilders are likely to be ignored ;)
+
** And now uses the icons for the queue menu instead of just the
** Also, we have to do this triple-click detection manually, so basically it's looking for a third click within 3 tenths of a second after the double-click selection.  If this timing is problematic, let us know.
+
** Thanks to BadgerBadger for the suggestions.
  
* In response to the number-one-on-the-vote-tallies mantis issue:
+
* The build queue buttons are now a different color, to make it easier to tell them apart from the normal menu buttons.
** Added new PlanetView KeyBind: "Show Strong/Weak Info":
 
*** Defaults to Alt+W.
 
*** When this is active and the mouse cursor is over a ship, each planetary summary sidebar entry will display Win/Lose/Draw (and a % indicating intensity of win or loss, if it's not a draw) as a rough indicator of how effective a cap of the ship type under the cursor would be against a cap of the entry's ship type.  Since planetary summary entries frequently include multiple distinct types of ships, this is perhaps most useful in conjunction with the "Guide" mode of the planetary summary that shows all ships of a given mark level (the default key for switching to guide mode is F1).  However, even in normal mode this can be useful to at least get a rough feel for which of your ships on the planet are the best you have on hand against a specific target.
 
*** Caveat: this is not using a full simulation or anything like that, it uses the same simplified formula as the reference tab uses.  So stuff with modules won't really get accurate results (because it's only counting the base hull), etc.
 
*** Suggestions on text color, default keys, etc, are quite welcome; we're not totally happy with the effect right now but don't have a lot of time to fiddle with alternatives.
 
** Added new PlanetView KeyBind: "Strong/Weak => One Vs One":
 
*** Defaults to Alt+E (so the full combination would be to hold Alt+W+E).
 
*** When both this and the "Show Strong/Weak Info" keybind are active, the strong/weak info shown will use a one-ship vs. one-ship comparison instead of the normal cap vs. cap comparison.
 
  
* Courtesy of the new #2 item on the mantis vote-tallies: Added "Auto-Scout-Picket" command to the context menu (there's also an key bind, unbound by default):
+
* Moved the ship/squad counts for player vs enemy to the sidebar, no longer cluttering up the bottom-right info section.
** Tell all cloaking scout units in the selection to try to station themselves on a planet where you do not currently have scout intel.  Basically it:
+
** Thanks to eRe4s3r for reminding us to move that.
*** 1) Makes a list of all scouts with cloaking in your selection.
 
*** 2) Makes a list of all planets you do not have current (less than 5 seconds ago) scout intel.
 
*** 3) Sorts that list of planets by distance (ascending) to the planet with your selection.
 
*** 4) Tells the first scout in the first list to go to the first planet in the second list, and so on.  If it runs out of planets it loops back to the beginning of the planet list and thus it will double up, etc.  When it runs out of scouts it stops.
 
** Please remember that this order (and auto-explore) are only intended to automate simple scouting situations and thus save you time giving otherwise trivial orders.  If your scouts all die before accomplishing anything that means that it's not a simple scouting situation and you'll need to take manual control to get good results.
 
** Thanks to Malibu Stacey for the suggestion that inspired this command.
 
  
* Previously the controls window was not fitting vertically on 1024x600 (which isn't officially supported but we try to make it playable).  Fixed to fit better.
+
* Re-implemented the Tech menu, based off the new Build menu.
** Thanks to Talaraine for the report.
+
** Thanks to BadgerBadger for reminding us of how non-functional the tech menu had become.
  
* Courtesy of the current #1 on the mantis vote tallies: Added "Copy To Disk" and "Copy From Disk" buttons to bottom of the controls screen.
+
== Version 0.506 Hotfix ==
** Copy To File creates a copy of your global controls (excluding per-planet stuff, but including ship designs) as "copiedGlobalControlSet.dat" in your RuntimeData directory.
+
(Released August 4th, 2017)
** Copy From File prompts you to confirm first, and if you confirm it overwrites all your global control (excluding per-planet stuff, but including ship designs) from what's in "copiedGlobalControlSet.dat" in your RuntimeData directory.  If you don't actually have such a file it doesn't do anything when you confirm.
 
  
* Courtesy of the new #2 item on the mantis vote tallies list: Added "Mobile Tractors With Full Load Rally" toggle to the global tab of the controls screen.
+
* Fixed null exception in the new mark-based-color tooltip code.
** If this toggle is checked, when one of your mobile units with tractor beams (notably Etherjets, Spire Tractor Platforms, Spirecraft Martyrs, and Black Widow Golems) has a "full load" (all tractors active), it will look for a rally post to rally to.  If that rally post happens to be a redirector, that will work as it normally does, etc.
+
** Thanks to BadgerBadger for reporting.
** When the rally trigger kicks in, all other orders (including FRD and attack-move, etc) will be canceled on the tractoring unit.  But if you give the ship an order after the rally behavior is triggered, it won't retry the rally unless it it loses one of its tractor targets and then fills up again.
 
** Note that this does not apply to Riot Control Starships with tractor modules, because the modules themselves are not mobile units.
 
  
* Fixed the close-zoom image for the AI Core Neinzul Spawner Guard Post having a height that wasn't a power of 2.
+
* Removed the debug line that's been in tooltips since forever, showing the numeric location of the unit.
** This would only impacted you if you were all the way zoomed in on one of these, and would have led to it looking stretched or (on older graphics card) looking gibberish-like.
+
** Thanks to BadgerBadger for reminding us.
** But in the recent backporting we added some extra sanity checks that catch this when the player tries to look at it.
 
  
* An all-new, much higher-quality starfield/nebulae background effect is now drawn behind planets. These are vastly more varied and interesting, and require a similar amount of CPU/GPU processing to render as the old ones did.
+
* The sidebar no longer shows metal/fuel/science/hacking resource points, or the controller, since they're always present.
 +
** Thanks to BadgerBadger for suggesting.
  
* The game no longer scrolls the nebulae at the start of the game, instead giving you a really good static look at a really interesting nebulae background.
+
== Version 0.505 Tooltips And Build Menu ==
 +
(Released August 3rd, 2017)
  
* A completely new method for rendering the planets has been put in place, and they are now more a part of the background starfield/nebula than anything else.
+
* The build menu now shows icons instead of names for actual "click this to build this unit type" buttons.
** As part of this, 14 of the pre-existing planets have been kept although scaled down, and 40 new planet graphics by Eldon Harris have been added to the game. It makes quite a difference when combined with the new nebulae!
+
** The tab-selection part of the menu is still text, similar to AIWC.
 +
** The approach we tried with "show a horizontal list of types, then a horizontal list of marks above that" is gone, in favor of a more AIWC-like grid where the columns are the types and the marks/variants are arranged vertically upward.
 +
** The number-key navigation still works: the first number from 1-9 selects that column of the grid (and gives it a visual highlight, which is more subtle than intended because adding a new icon/layer to that is an involved process), and the second number from 1-9 actually clicks the button at the corresponding row in that column (1 is the bottommost, 2 is the next one up, etc).
  
* The graphics of planets 3, 8, 11, and 16 have been substantially improved so that they have better borders and look more convincing as planets.
+
* The Escape key now does what the 0 key did: close any open bottom-bar menus and open the master menu.
 +
** So to get the old Escape behavior of opening the system menu, you press Escape followed by 1.
 +
** And the 0 key now does what it used to: acting as a tenth button for whatever the topmost bottom-bar menu is.
  
* Fixed a graphical bug with the border drawn around barracks icons in some contexts.
+
* Fixed bug where the sidebar icons (and now the build menu icons) were not scaling correctly at different resolutions, leading to overlap of other elements at some resolutions but not others.
  
== New Ships ==
+
* When a button click in the interface is "denied" in the sense that you click something that isn't allowed to happen at the moment, it now plays a buzz sound effect rather than the normal click sound effect.
  
* Added new unlockable support unit type: Hardened Forcefield Generator MkI-III.  Basically the same as normal human generators except:
+
* When you are clicking your campaign name in the load savegame menu it no longer makes the big booming sound effect of starting the game. However, actually clicking the specific savegame entry inside the load campaign submenu still does.
** 1/4th the HP.
 
** 1,000,000 Armor Rating instead of zero (this effectively reduces all incoming damage to 1/5th its normal power, unless the attacker has extremely high armor piercing or very high damage-per-shot).
 
** They do not shrink as they take damage, making it easier to know how long a given target will be protected, etc.  On the other hand this may make it harder to tell "at a glance" how long the generator has left to hold, so we might need to do something else here.
 
** The first mark is not available by default, but costs 1000 knowledge (mkII and III are 2000 and 4000 knowledge each like the normal line).
 
  
* Science Lab III:
+
* Fixed a super annoying bug where shots would zip off into an area kind of near the center of the planet and then to their target under certain circumstances.  It was a major noticeable visual artifact, for sure.
** Has been renamed to "Knowledge Hacker"
 
** Is now mobile, cloaked, and significantly more durable.
 
** Now has a 15-second setup-after-moving time (similar to the MRS's 60-second setup time before it can repair) during which it cannot gather knowledge.
 
** Since you can now build them off-planet where they're not triggering spawns, these changes significantly reduce the amount of player-hassle and wall-clock-time spent on a single knowledge raid; the raids themselves (beyond the first raid) are far more dangerous so it should balance out difficulty-wise, but be less annoying.
 
  
* Added new type of AI Eye: the Parasite Eye.
+
* Fixed a bug where the tooltips over build buttons were not working when you were viewing them on the galaxy map.
** Has same trigger conditions. 
 
** Instead of spawning ships it powers on (it's in stand-down except when actively triggered) and starts firing.  You really don't want that to happen.  Multiple hyper-powerful railcannons that reclaim what they hit.
 
*** Standard "what can be reclaimed" rules apply.
 
*** Has the extra flag to prevent it from firing on non-reclaimable targets thanks to a test where multiple starships were dying every two seconds.
 
*** Note that this has a kill rate about 1/2 that of the Ion Eye, so the overall rate of "evening the field" should be similar.
 
*** In case you're curious, the results are not zombies and can be re-reclaimed if you're so inclined.
 
  
* Added new type of AI Eye: the Ion Eye.
+
* The tooltips for planets now say who owns it, or if it's neutral territory.
** Has same trigger conditions.
+
** If the AI owns it, it now shows the mark level for the planet, too.
** When seeding an eye, the game has an equal chance of seeding each type of eye, and only one eye is seeded per planet that's supposed to get one.
 
** But when triggered, instead of spawning ships it powers on (it's in stand-down except when actively triggered) and starts firing.  You don't want that to happen.  It has the firepower of four MkV Ion Cannons.
 
  
* A new Ancient Shadows bonus ship class has been added: Neinzul Scapegoat (Mark I-V).
+
* Did a variety of formatting improvements on the tooltips.  If anyone is looking for inspiration for more:
** Mature Neinzul organism without the short lifespan of a Youngling. Capable combatant in its own right, but also sacrifices itself to regenerate military fleet ships on the same planet when they take critical damage.
+
** http://digitalnativestudios.com/textmeshpro/docs/rich-text/
 +
** Incidentally!!  We can probably use the <space> tags in order to do better layout of things like the top bar, and then have icons for things that would otherwise use the <sprite> tag more under our control.
 +
*** As noted in one of the dev diary videos from this week, the support for the sprite tag is pretty flaky at best, and rather than using a bunch of labels this would save us some draw calls (when rebuilding part of the gui).
 +
*** Either way, it's all one draw call once it's drawn once, until it changes again, and it's only the part of the gui (the "window") that changes that has to be updated at any given time.
  
* Another new Ancient Shadows bonus ship class has been added: Spire Railcluster (Mark I-V).
+
* Fixed a bug with the tooltips where they would keep showing the last thing you were hovering over unless you started hovering over something new.
** Large Spire fleet ship mounting multiple short-range railcannonsHighly effective against very small ships.
+
** This has introduced the occasional flicker in a couple of instancesWe'll have to see what we can do there.
  
* New Ancient Shadows Bonus Ship Type: Zenith Reprocessor:
+
* Previously, data on the galaxy map would get noticeably stale in terms of frequently not showing the mark level after the planet name, or not showing an ownership change, etcThis now automatically self-corrects every 400ms if something is wrong and you are on the galaxy map.
** A larger, specialized version of the Acid Sprayer, this ship's shots actually "metabolize" the enemy targetWhen the target dies, a percentage of the target's metal+crystal construction cost will be granted to the player that did the most reprocessing damage to it.  The more reprocessing damage the ship has taken, the larger the percentage of resources reprocessed.
+
** Thanks to BadgerBadger for reporting.
  
* New Ancient Shadows Bonus Ship Type: Zenith Siege Engine:
+
== Version 0.504 Big Ship Graphics Batch + Test And Revise Pass #3 ==
** Moderately large vessel built around an outsized plasma siege cannon.  The ship does not have enough power to both move and keep the weapon online, so it must remain immobile for a full reload cycle before it can fire.  When it fires, however, the enemy will feel it.
+
(Released July 31st, 2017)
  
* Added new Ancient Shadows bonus ship: Spire Corvette.
+
* Player homeworlds can no longer have hacking points, to avoid motivating reloading until you get a planet with hacking points.
** A starship-sized vessel developed by retrofitting the smallest Imperial Spire combat design with human technology.  Has a moderately powerful photon lance, but can also mount a small number of modules.
 
** Built from the SCRV tab of the Starship Constructor.
 
  
* Added new Ancient Shadows bonus ship: Saboteur.
+
* Player homeworlds are now always great at science, good at power, and normal at metal and fuel, again to avoid motivating starting the game over and over until you get the resource mix you want.
** Fires hostile nanites at enemy ships.  Unlike reclamation nanites, these focus on overloading the target's power systems with the goal of causing it to explode violently.  This target does not go critical until its health is reduced to zero normally, but once that happens it will explode and damage up to 40 nearby friendly (to the exploding ship) units.  The damage done to each victim of the explosion is based on how much damage the exploding ship took from overload-nanites, and generally cannot exceed one-tenth the maximum health of the exploding ship.
 
  
* Added new Ancient Shadows bonus ship type: Youngling Firefly.
+
* Added Galaxy button to the right of Planet on the master menu.
** Small, shortlived ship that builds up a charge as it successfully attacks other units.  When it dies it explodes violently to damage up to 20 nearby enemy units.  The explosion damge done to each victim starts at about the same strength as the Firefly's normal shot, but increases with the charge the ship has accumulated, up to a maximum of 20 times that.
+
** Moved the Find Planet button from Planet to Galaxy
 +
** Added a new Display button to Galaxy, which opens a list of Galaxy Display Modes
 +
*** Currently that's just Normal (what you used to get before) and Resources (which shows the resources each planet is better-than-normal at producing)
 +
*** These modes are defined in external code so you can greatly change what they display, if you are so inclined.
  
* Added a new "Mini-Fortress" unit to the SUP tab of the command-station/mobile-builder buy menu (this is a base-game unit, not tied to an expansion).
+
* Incorporated BadgerBadger's improvements to the Nanocaust faction.
** These are basically a MkI fortress on a 1/10th scale (stat-wise), and you can only build 2 per planet (per player, also scales with multiple homeworlds), but there's no galaxy-wide cap so putting them on your satellite worlds does not take away any cap your main defenses could be using.
+
** Now less likely to dominate your game in the first hour.
** Unlocking these costs 1000 knowledge (for reference, MkI forts cost 3000 knowledge to unlock, and provide 25x as much firepower at cap for your main line but not the per-planet-cap flexibility of these).
 
** These don't have the penalty vs polycrystal (or scout) hulls, making them actually able to deal with bombers.
 
  
== Ship Logic Updates ==
+
* A random flagship, golem, and ARS are now seeded within 2 hops of your starting planet (and thus within the initial known-map range).
  
* Changed the targeting logic for AOE units (that don't already use the alternate logic for engine damage, paralysis, reclamation, or insta-kill) to prefer non-AOE-immune targets.  This is necessary because of the recent change to let flaks and some other aoe units be able to damage an aoe-immune ship they fire directly at, but since an aoe-immune ship is likely to be in a pile of other aoe-immune ships most of the dps is wasted when there are non-aoe-immune targets available.
+
* Redid the build menu layout to be more consistent with the layers-of-bars-on-the-bottom approach, where the first layer lets you pick the tab you want to build from, the second layer lets you pick the type of ship/unit you want to build, and the third layer lets you pick the specific mark/variant you actually want to be queued up or "loaded" onto the mouse cursor for direct placement.
** Note that if the flaks are already locked on to something aoe-immune (like a missile frigate) and something non-aoe-immune (like a fighter) comes into range, the flaks will probably take a few seconds to retarget since the game only does the target logic every so often.
+
** Each of these layers now fully responds to the 1-9 keys, like other menus, if you like that sort of thing.
 +
** The queue display itself has been moved to the right-hand side of the screen, and laid out vertically, to visually and spatially distinguish it from your build menu.
  
* Ships with engine damage now automatically repair their own engines, such that it takes a bit over four minutes to go from 0% engine-health to 100% engine-health.
+
* Fixed a bug in the external code project files that was breaking the build process if you tried to build those projects in a normal steam install instead of in our development environment.
** Basically, until now it's been too easy to long-term-disable AI ships via engine damage.  Not many players abused this thoroughly, but some definitely did, to hilarious (and disappointing, from a challenge perspective) results.
 
** But tactical usage should still be very viable for kiting around a planet, spreading out an incoming attack, etc.
 
  
* The logic for when a carrier is popped early now tries a lot harder to produce something similar to what's actually in the carrier, and tries to avoid exo-like spawning logic.
+
=== New Graphics Implemented For 34 Ship/Structure Classes! ===
** Regardless of what it winds up spawning, it no longer scales up with difficulty level (since the ship numbers that led to the generation of the carrier were already a result of difficulty level).
 
** If its contents fit under a certain threshold (under 150 if there are < 2000 AI ships on the planet, under 50 if there are < 3000 AI ships on the planet, etc), it just spawns whatever is in the carrier.
 
** Else, it promotes all triangle/bonus fleetships in the carrier to max mark (mark 5 for most types, mark 4 for some) and scales down the quantity accordingly (mkI to mkV divides quantity by 5, etc).
 
** If that's still not enough to get the quantity under the threshold, it divides the quantities in the carrier by some number (determined by how badly over-count it still is) and uses that extra strength to add mkV guardians to the carrier instead.  Since a single mkV guardian is worth about the same as ~2.2 full caps of mkI fighters, that's pretty good compression.
 
** If that's somehow still not enough, it falls back on the exo-like population it's used in the past, but without the extra multiplier from difficulty.
 
** For the curious, having advanced logging on when a carrier does early-pop logic like this will generate a log entry in the corresponding log file in your RuntimeData directory, explaining the computation.
 
  
* Engineers have had a "what to assist" logic overhaul such that:
+
* 200 megs worth of compressed textures and meshes added to the main asset bundle (up to 1.2gb total for those)!
** If is Prefer-Non-Military toggle is on, and one is military and the other is not, prefer the non-military one.
+
** These have been in progress for months by Blue and Cinth, and are just now being actually wired into the game fully because of the particular way our work pipeline goes.
** If one has more currently assisting engineers than the other, prefer the one with less.
+
** The breakdown of all this is below, and this isn't remotely all the stuff that we have nearly-done, so more will come soon.
** If the repairer is not a teleporter and the difference in distance to each unit is larger than about 4000 range units, prefer the nearer.
+
*** It's worth noting that the radii and squad sizes may not be quite right on them in this initial wiring-up.
*** Also, distance is now considered zero if the target is already within range, which helps a lot because previously it was masking other considerations.
 
** If one object is a damaged irreplaceable unit and the other is not, prefer the damaged irreplaceable.
 
** If one object is in stand-down and the other is not, prefer the one not in stand-down.
 
** If one object's remaining-health-percent is less than half the other's, prefer the lower-health one.
 
*** This was being considered before (it always went for the lowest percent-health), but only by teleporting repairers.
 
** If one object has taken more than 25% engine damage and the other has not, prefer the engine-damaged one.
 
** If one object's metal+crystal cost is more than twice the other's, prefer the more expensive one.
 
** Thanks to Wanderer and the other voters for inspiring these changes.
 
  
* Human-player teleporting units now use normal engines when group-moving.
+
* The following bonus-style ships now (newly) have full graphics:
** Along with this, increased the normal-engine speed of all teleporting units to the speed of a fighter, for those lower than that
+
** Raptor, sniper, space tank, infiltrator, space plane, armor ship, grenade launcher, sentinel frigate.
 +
** When paired with the existing ships that already had graphics, this is actually all but three of the remaining bonus-style ships slated for version 1.0 of the game!
 +
** "Bonus-style" ships are basically the little squads of ships that you can start the game with, or unlock via Advanced Research Stations or similar.  There are lots of other kinds of ships and structures (more TYPES of other ships/structures far outnumber the types of bonus ships), but these are most numerous in your fleet when talking sheer numbers of actual entities flying around.
  
* Advanced Fabricators and Fabricators now use the same "don't put this near a wormhole" logic as human home command stations.
+
* The following "drone" type entities now (newly) have full graphics:
 +
** Implosion drones.
 +
** There are still four other types of drones that just use the little rock stand-in graphics.  These are either in progress or slated to be completed in the next month.
  
* Removed energy cost from Logistics and Military command stations, since the cost was pretty minor and the units certainly aren't in danger of overshadowing the econ station at this point, and the costs were interfering with the logic for rebuilding their remains in some cases.
+
* The following AI guardian type entities now (newly) have full graphics:
** Also removed it from warp-jammer stations, but since that wasn't so minor also increased that station's direct per-second m+c cost.
+
** Note that most of these will have five unique stages of graphics for each of the five marks, but for many of them they only use the mark 1 graphics at the moment for all 5 marks.  In those instances, the graphics for all 5 marks are done already, but we haven't finished processing the higher-mark models into the engine yet.
 +
** Shield guardian, stealth guardian, sniper guardian, missile guardian, lightning guardian, flak guardian (all 5 marks), carrier guardian, emp guardian, implosion guardian.
 +
** The there are a number of other guardians that still use the rock-type graphics for the moment, even though there were a bunch of other guardians that already had graphics. Lots of guardian types in this game!
  
* Fixed a longstanding bug where attack-move units with no other orders would auto-target stuff that should not be auto-targeted (wormhole guard posts, AIP-on-death structures, etc) if the unit in question shot them first.
+
* The following starships now (newly) have full graphics:
 +
** Note that all of these will have five unique stages of graphics for each of the five marks, but for now all of the ones in this batch only use the mark 1 graphics at the moment for all 5 marks.  In those instances, the graphics for all 5 marks are done already, but we haven't finished processing the higher-mark models into the engine yet.
 +
** Siege starship, carrier starship.
 +
** Combined with the 4 existing starship types, that's all of the starship types for version 1.0 of the game.  Compared to bonus ship types or guardians, there are relatively few starship lines.
  
* Fixed a bug where Spire Blades, Spire Minirams, and Spire Rams would not actually automatically die (but just self-damage by some amount) when attacking.
+
* Phase 2 of the AI master controller now has its graphics linked up.
  
== Balance Updates ==
+
* The following AI structures now (newly) have full graphics:
 +
** Special forces secret ninja hideout, troop accelerator, black hole machine, raid engine, alarm post, planetary cloaker, attrition emitter, magnifier, super terminal, ion cannon, orbital mass driver, and warhead suppressor.
 +
** When combined with all the AI structures that already had graphics, this is now all of the ones for 1.0 now having graphics!
 +
*** ...with the exception of the interplanetary guns, actually.  That's a stretch goal that has 5 very huge guns that are not in yet, and they technically fall under this category.  But they're not in the game just yet, anyway, and are on our list for soon, visually-speaking. :)
  
* Exogalactic strikeforces provoked by the Broken-Golems-Hard or Spirecraft-Hard minor factions (but not Fallen Spire ones) now have a chance (50% for Broken-Golems, 20% for Spirecraft) of using an alternate composition distribution that heavily favors a large lead ship and a single battlegroup.
+
* The following ship types now have actual proper icons shown rather than showing unknown and text:
 +
** Vorticular cutlass, vampire claw, etherjet tractor.
 +
** Vampire guardian, implosion guardian, dire warp beacon guardian, dire commander guardian, dire shredder guardian, dire teuthida guardian, dire hunter guardian.
 +
** Dyson sphere golem, devourer golem, armored golem, artillery golem, black widow golem, regenerator golem, cursed golem, hive golem, botnet golem, zenith trader.
 +
** All of the ships in the game now have proper icons and flair assigned.
  
* Broken-Golems-Hard and Spirecraft-Hard exogalactic strikeforce initial-strength, per-minute-increment-amount, and maximum-strength all increased roughly 10%.
+
== Version 0.503 Nanocaust + Test And Revise Pass #2 ==
 +
(Released July 25th, 2017)
  
* The Armored, Black-Widow, Artillery, and Regenerator Golems used in exogalactic strikeforces are now different than the "standard" AI golems (like those used by the Golemite AI Type).  The main difference is that they lack the 1/10th-health-of-a-normal-golem rule (but the Armored variants still have a 1/2 health modifier, since they're so buff).
+
* Fixed a bug where the Dyson's allegiance logic for "planet controlled by AI" and "planet neutral" was flipped.
** Thanks to Shrugging Khan for continuing to provoke the golems.
+
** Thanks to BadgerBadger for reporting.
  
* Black Widow golem health and Attack Power boosted a bit (15%-ish).
+
* Added BadgerBadger's "Save and Quit" button to save menu.
 +
** Thanks Badger!
  
* Regenerator Golem health doubled, in response to various concerns that they're less useful than other golems.
+
* The "ship cannon" effect when the Ark or other command unit replaces a lost squad ship now has a placeholder animation (like a repair beam) so you can at least see what's happening.
  
* The "shot travels at least 40 speed faster than its target's current speed" logic has been extended to include "shot travels at least 40 speed faster than its target's tractor-er's current speed", since in the "tow" case the target's current speed is almost always zero.
+
* AI Type external code has been reorganized to only have one interface at the Core-dll level, and is split out in External code (but you do not have to follow that pattern).
  
* Spire Blade Spawner:
+
* AI Type external code now has a hook for DoPerSimStepLogic, just like special factions and conducts.
** Ship cap from 0.05 of normal to 0.03 of normal (in practice, from 9 to 5 for mkI).  Note that this impacts AI usage as well as human.
+
** Thanks to BadgerBadger for suggesting.
** BaseAIPerGuardPostShipCap from 2 => 1.
 
  
* Spire Gravity Drain:
+
* Entities now have a SecondsSinceCreation field, for modding purposes.
** Grav range from 3000*mk => 8000 (flat).
+
** Thanks to BadgerBadger for suggesting.
  
* Spire Gravity Ripper:
+
* AOE weapons now factor their max-ships-hit-per-shot into their dps balance calculation.
** Attack power from 1000*mk => 2000*mk.
 
** Seconds-per-salvo from 1 => 2.
 
** So basically the gravity ripping effect is being nerfed to 50% of what it was, and the normal attack is better against armor.  We'll see where to go from there.
 
  
* Spire Miniram:
+
* Badger's "Nanocaust" special faction has been added to the game.
** Ship cap multiplier from 0.25 => 0.20.
+
** Some explanation: https://forums.arcengames.com/ai-war-ii-modding/the-nanocaust/msg215686/#msg215686
 +
** Thanks Badger!
  
* Spire Stealth Battleship:
+
== Version 0.502 Mostly-Invisible UI Work ==
** Effective Attack range from 6500 + (500*mk) => 7000 flat (thus, they can no longer engage while still protected by their 8000 radar dampening range).
+
(Released July 14th, 2017)
  
* Spire Tractor Platform:
+
* Bottom-left tooltip now aligns to the top of the master menu area.
** Hull Type from Turret => Heavy.
+
** The alignment is still a bit rough, but at least it reacts to an increase in the occupied vertical space.
  
* Previously, turtle AI types had over 13 times as many AI Eyes as "normal".  Moderately defensive ones (Shield Ninny, Grav Driller, and Peacemaker) had only 2 times as many as normal. Turtles now have about 2.6 times as many as normal.
+
* Completely reworked how UI layout from the old "everything is relative to the edges of the screen" approach that was heavily based on Unity's transforms, anchoring, etc, to an "everything is relative to the edges of the thing which contains it" approach.
 +
** This now supports a variety of alignment types, including "as far top/left as possible" "as far bottom/right as possible" "in the middle" and "left/right/above/below this list of other windows", each of which can be used separately for the x and y axis.
 +
** Note that any UI mods you may have will probably not work after this release until they're updated. The KDL_UIWindows.xml file should have the necessary information on how to adapt your stuff.
 +
** The Build and Tech menus currently sit higher on the screen than they should, will be fixed soon.
  
* Light Starship:
+
* AOE shots no longer hit a protecting shield (or other target) more than once when detonating.
** Base Health from 1.5m => 2m.
 
** Armor Rating from 500 => 1000.
 
** Given Radar Dampening of 8000 (to make it harder to deny a fleet its fleet starship munitions boost by ganking the fleet starships from long range).  For reference, its munitions boost range is 3000.
 
  
* Flagship:
+
* Most AOE weapons now have a maximum number of targets they will hit per shot.
** Base Health From 4,875k => 6m.
 
** Given Radar Dampening of 8000.  For reference, its munitions boost range is 6000.
 
  
* Neinzul Youngling Commando:
+
* The 0 key, which normally opens the master menu (commands not related to your selection) when you have no bottom menu open, will now always do that no matter where you are in the bottom menu structure, allowing key sequences like 0-7-1-1 (select all mobile military on the planet) to have a consistent behavior even if you currently have a selection or have a sub menu (or menus) open.
** Base Health from 6600*mk => 8000*mk.
 
** Base Attack Power from 1000*mk => 1200*mk.
 
  
* Impulse Reaction Emitter:
+
* Added audio hooks for several events like hacking starting, losing a planet, ark's shields going down, etc.
** Now has a minimum multiplier of 5 (roughly what it would get vs a ship with 5,000 energy cost).  This might be excessive, we'll see, but the ship was having significant "used as a paperweight" issues against anything at all small.
 
  
* Zenith Mirrors:
+
== Version 0.501 Test And Revise Pass #1 ==
** When a shot is reflected, the returned shot's power is now increased 4x.  Thought to be a perpetual motion machine until the first power bill arrived.  More seriously, this is an attempt to correct for the fact that things now tend to have a higher ratio of hp to damage (particularly against their own hull type) than when the mirrors were first added.
+
(Released July 7th, 2017)
  
* When a ship is translocated away from its current location, all incoming projectiles now are also immediately translocated to its new destination, and thus will hit it instead of fizzlingThis makes the military command stations a lot less unwieldy.
+
''Note that this one was a little slower coming, just because of some life stuff going onOther than that we theoretically should be moving into quicker release cycles. ;)''
  
* Raid starship rebalance, thanks to many players for various suggestions:
+
* Adjusted the shader to try and lighten the Experimental Fabricator model a bit.
** Raid Starship health has been increased from 1.6 million health * mark level to 2 million health * mark level.
+
* Added the attribute " y_offset_of_icon="20" " to the fortress xml entry to help with the flickering issue.
 +
* Adjusted the radii on several ships and turret types to help with overlapping selection boxes.
  
* Guard posts, fortresses, superfortresses, force fields, and exo-shields are all now immune to regeneration from regenerator golems/trains.
+
* Added "Start With First Planet" toggle button to the lobby, defaults off. If on:
 +
** The planet you start on begins with the controller and resource spots under your control.
 +
** There's no initial AI presence on the planet you start on.
 +
** Your Ark starts next to the controller on that planet instead of near the edge of the grav well.
 +
** Your starting AIP is what it would have been after conquering the first planet.
 +
** Thanks to... well, everyone, for letting us know that fighting that first battle every time got old.
  
* AI Motherships are now considered large ships for purposes of bomber starships and siege starships being able to hit them.
+
* As framework for the start-with-first-planet option, the "Conduct" table has been moved out to external XML. It's basically just a boolean value you can check for in mapgen or whatever other external logic, but you can also add arbitrary per-sim-step logic if you like. Whether it works or not is up to you, of course, but it's a pretty flexible hook.
  
* When an engineer is repairing a ship, and it was not set to repair that ship explicitly by the player, and it's not in free-roaming defender mode or attack-move mode, it will no longer try to chase the ship it is repairing.  Instead it will just find a better target and keep its position.  This allows for players to exercise more tight control over their engineers now that engineers have a huge repair range and no longer teleport.
+
* Fixed a number of issues that were preventing your "last game lobby settings" from persisting across executions of the application.
  
* Astro Trains are now immune to translocation and gravity effects, since both of those cause more problems for players than they would ever solve
+
* Turrets and (most) other structures that you place directly will now leave remains, as in AIWC, that can be rebuilt by a controller, Ark, or Flagship.
 +
** By "rebuilt" is meant "switch it back into self-building mode".
 +
** There's a 5 second delay between an entity's death and when it can be rebuilt. That delay is in the external constants file if you're curious.
  
* The radar dampening range of marauders and resistance fighters has been changed to be about 1000 greater than their attack range in all cases, soo that they always have to come into range of their targets in order to fire on their targets. This makes it so that turrets and other fixed-position defenses are not completely powerless against them.
+
* Fixed bug where pressing escape in the lobby would cause a null reference exception.
 +
** It now correctly exits the lobby.
  
* Spire Civilian Leader Outposts are now included in the galaxy map filter for Detected AI Progress Reducers.
+
* The "Free Roaming Defender" button, since the text doesn't even remotely all fit on the button, is now called "Pursue", so you can at least see whether the mode is on or off for your current selection.
  
* Spire Civilian Leader Outposts previously did not have their minor faction stance properly set, so they could not be attacked.  Now they are properly noted as AI Allies until captured by the human team.  They are still direct-only to attack, though, so unless you accidentally mis-click on them your ships won't attack them.
+
* A number of buttons in the lobby have also been modified to better fit their text.
  
* Armored Warhead health reduced from over 2 billion to 40 million. This is still a huge amount of health, but they are no longer infinitely survivable.  This also fixes a bug where the interface was having an overflow exception and rendering their health as 1.
+
* Various balance numbers (metal cost, power cost, fuel cost, science cost, speed, range, etc) are now rounded to a more readable number if that is within 2% of the "real" value.
 +
** This could stand some refinement, but even at this point it makes the tech menu a lot easier to read.
  
* When planet-wide EMP or tachyon detonations occur, as from a warhead or an EMP guardian, a chat message is now sent to the human players telling them who detonated what, and where.  This message is also clickable.  The goal here is preventing EMP guardians from punching QUITE so impenetrable a hole in player defenses without notice.
+
* Included BadgerBadger's "Find Planet" function in the planet action menu.
 +
** Thanks, Badger!
  
* Warhead Interceptors have been nonfunctional since slightly before 5.0 of the game (I disabled them, but never did get around to re-enabling them.  They should work once again, but I haven't had a test case to work on it to be sure. If anyone has a save with them not working after this version, please let us know.
+
* Integrated BadgerBadger's addition of the concept of a "campaign" to the save/load menus.
 +
** Thanks, Badger!
  
* The efficiency of gravitational slowing (gravity drains, gravity turrets) has been greatly improved, such that big  battles that previously would  grind to a halt because of them can now be played at 3x their prior framerate in one test case in particular.
+
* Fixed bug where the algorithm that decides which planets are good at which resources could sometimes assign a zero production of metal, energy, fuel, or science to a planet.
** One major improvement was to exclude checking of gravitational slowing for ships that can't move or aren't moving at the moment (since they don't need to be slowed!), and the other was to skip redundant gravitational slowing checks for gravitational sources that are the same and which are too close together.  This last is very similar to how the speed improvements on the range data display (from way back pre-2.0 days) works.
+
** Note: it's intentional that most planets do not have the hacking resource at all.
  
* The devourer golem is now completely invincible—it was never meant to be killable in the first place, but recent changes to the game made that so that it was possible post-5.0.  Like the dyson sphere, the devourer is more intersting when it is indestructible.
+
* The Basic Turretry pattern now spends 25% of its budget on shield generators.
  
* Minor factions now shoot low-power ships without prejudice, which means that devourer golems actually will devourer more again.
+
* Shield generators no longer project their shields when disabled by paralysis, still-building, etc.
  
* Zenith SpaceTime Manipulators, like forcefields, now have the ability to move very slowly but not to go through wormholes, to allow for better repositioning of them.
+
* Fixed bug where shield generators were galaxy-wide-cap instead of planet-cap.
  
* Gifting a ship now copies across its current attack recharge, cloaking recharge, and similar, preventing a few exploits related to that and penetrators in particular.
+
* Fixed bug where player-owned carrier-starship drones would never return to their parent ship because they always thought enemies were present.
  
* Dyson Gatlings are now immune to paralysis attacks.
+
* Made drones like the carrier starship drones die if their parent ship dies or is on a different planet.
  
* Slightly improved the targeting handling when a ship is targeting a teleporting ship that is out of range.
+
* Added IndividualBehaviorLogic tracing type, for inspecting the low-level individual ship logic that takes over in the absence of any commands from the owner (things like FRD are handled here, as well as carrier drone return-to-carrier behavior).
  
* Spirecraft Penetrator balance:
+
* The "engines out" colorization of the mark level icons has been made less garish and instead has text saying "ENG" over it on the bottom.
** Mark I moved from pysite to xampiteMark II moved to ebonite, and now produce two per asteroid.  All the other marks not moved around.
+
** Added new "out of order" display for the mark level icons that says "OFF." This is for stuff that is dead and going to be rebuilding.
** Penetrator health reduced 8x.
 
** Penetrator perma-cloaking replaced with normal cloaking
 
  
* AI ships that are spawned in response to saboteurs, such as the human mark III science lab, are now zombie bots
+
== Version 0.500 Ship Batch 7 of 7 ==
 +
(Released June 27th, 2017)
  
* Zenith SpaceTime Manipulators can no longer be swallowed or regenerated.
+
=== New Ships! (Note That More Are To Come Pre-1.0, But Not Pre-Early-Access) ===
  
* Human-allied zombies and minor factions were not being properly limited in their pool of planets to fix, thanks to a typo in their logic.  It should now be fixed.
+
* The AI Master Controller is now armed.
 +
** And its on-death behavior has changed.
  
* Zenith Electric Bombers:
+
* Botnet Golem
** No longer use scaled caps (due to the 0.1 ship cap multiplier, that can make the additional /2 or /4 from normal and low caps cause a more significant truncation than is desirable).
+
** As in AIWC, fires large salvos that cause victims, once dead, to become zombie units of the same type that attack their old enemies but do not take orders from anyone.
** Event attack cost (used for exogalactic strikeforce computations) tiers increased from "Medium Corvette" through "Heavy Frigate" to "Light Frigate" through "Medium Destroyer", since the previous placement was putting mkIII zelecs at the same place as a mkV bomber. It's not a goal to balance the event attack costs terribly precisely, but that was a bit excessive.
+
*** So these zombies (not the golem itself) are the first third-party or "special faction" units.
 +
** Unlike AIWC these shots are no longer insta-kill, but quite powerful nonetheless..
 +
** For now zombies just stay on then planet where they start, and FRD.
  
* Sentinel Frigates:
+
* Devourer Golem
** Event attack cost (used for exogalactic strikeforce computations) tiers increased from "Heavy Corvette" through "Light Destroyer" to "Light Frigate" through "Medium Destroyer".
+
** Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
 +
** Attacks everything within range (except controllers/warp-gates), and generally wins. When it does damage, it gains a portion of it back in health, to keep it going on those long hauls through the AI's territory.
 +
** Randomly picks another planet somewhere on the map to go to.
 +
*** If you feel like reprogramming the galactic wrecking-ball, this routing code is in SpecialFaction_Devourer.DoLongRangePlanning()
 +
** When it reaches destination, rinse, repeat.
 +
** Good idea to not be wherever this thing is. Thankfully it's slow.
 +
** Will need rebalancing to avoid it causing a win/loss on its own (in the last test, it wandered through the AI Homeworld and took down the AI Master Controller singlehandedly), but we're working on an approach that doesn't involve unintuitive immunities.
  
* Spire Blade Spawners:
+
* Zenith Dyson Sphere
** Now have an attack again (not having an attack was causing all kinds of bugs and unintended behaviors), with a base power of 1000 per shot, 8 shots per salvo, 2 seconds per salvo, and effective range of 6000 (for reference, that's the same as the spire stealth battleship except it's 25% the base power and 1000 lower range).
+
** Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
*** Notably, this should make the BaseAIPerGuardPostShipCap flag work correctly again for them (it's set to 1 for them).
+
** Unarmed, and immobile, but immensely hard to kill.
*** But since they were unable to guard stuff in the past due to zero attack, to correct old saves the AI ones just being completely stripped out when loading something from 5.009 or earlier. Human ones are not affected.
+
** Periodically produces units to go to other planets and attack enemies, similar to AIWC, but instead of the single "Dyson Gatling" unit type from AIWC it simply picks from a subset of the AI's MkV Guardians. You want to know how it got those guardians? You've seen that episode, right?
** Have the new DoesNotMoveToPursueUnlessOrderGivenByPlayer flag, which prevents human ones from chasing an auto-targetted target (in FRD or not).  Hopefully this will deal with the complaint that lead to the original removal of their guns.
+
** Like in AIWC, the Dyson's units have different allegiances depending on who controls the Dyson's planet:
 +
*** If the AI controls that planet, the Dyson hates everyone.
 +
*** If a player controls that planet, the Dyson hates everyone except the AI.
 +
*** If no one controls that planet, the Dyson hates everyone except the players.
 +
** Unlike AIWC, the Dyson's preivously spawned units will automatically "update" to follow any changes to those allegiances.
 +
** Also, "hates everyone" now includes other special factions, like the Devourer and Zombies (which currently means that the Dyson's units will Nom your Botnet zombies even if it likes you; we'll probably change that later).
 +
** As in AIWC, the Dyson's units won't attack an AI controller/warp-gate. Still feels kind of lame, but the alternative is either uncontrolled AIP growth or potentially-tons-of free extra territory for the player. Suggestions welcome. It'd be fun to have factions like the Devourer and Dyson be unrestrained in their ruckus-causing, without throwing the player's game into continual chaos.
 +
** As with the Devourer, will need rebalancing to avoid eventually flooding the galaxy with special-faction guardians.
  
* Made Cloaker Starships mark I knowledge-free now, instead of costing 1k knowledge. This helps to compensate players a bit for the generally-increased difficulty of the Zenith expansion.
+
* Zenith Trader
 +
** Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
 +
** Unarmed, but hard to kill.
 +
** Randomly wanders the galaxy.
 +
** When present on the same planet as your Ark, your Ark gets an extra build menu that lets it build things like Ion Cannons, Black Hole Machines, etc.
 +
** Like AIWC, the trader is friendly to all factions, and all factions are friendly to it.
 +
*** Unlike AIWC, there's one exception: the Devourer knows the Trader is not to be trusted. We suggest making your Trader purchases before the two of them meet.
  
* Same with the Neinzul Rnclave Starships mark I. They were 2k knowledge, but now they are knowledge-free.
+
* Dire Guardians:
 +
** Dire Teuthida Guardian
 +
*** Spawns Teuthida drones, which zombify things they destroy.
 +
** Dire Hunter Guardian
 +
*** Spawns Hunter/Killers (this takes a long time for each one), which are actually stronger than the Hunter Guardian itself. An H/K's main weapon is called a "Plasma Torpedo Shotgun", which tells you all you need to know.
  
* Mercenary Neinzul Enclave Starships, which would now be pretty well pointless, have also been revamped.  Now they are the equivalent of the mark II Neinzul Enclave Starship, rather than the mark I starship.  This is very powerful, but they are also now limited to only a single ship in their shipcap, rather than 6 ships.
+
=== Post-Processing Stack And Related ===
  
* Starship costs tweaked around a bit:
+
* Upgraded to Unity version 5.6.2f1 from 5.6.1p1.
** Bomber starship metal cost reduced from 120k to 80k.
+
** This introduces some bugfixes for windows and linux on the player side, and fixes a memory leak in the profiler for us on the editor side.
** Fleet starship metal cost reduced from 60k to 40.
 
** Siege starship crystal cost reduced from 120k to 80k.
 
** Riot Control starships crystal cost reduced from 80k to 60k, and metal cost reduced from 30k to 20k.
 
** Enclave starship costs reduced from 30k metal and crystal to 20k each instead.
 
  
* Zentih SpaceTime Manipulator energy costs reduced to 20k from 60k
+
* As it turns out, the experimental post-processing stack v2.0 that unity has in beta and warned "don't use in a production environment" is indeed not ready for a production environment. ;)  Was worth a shot.
 +
** The new 5.6.2f1 won't even build for DX11 on the version of the PP stack we were using, and it was causing strange graphical artifacts for at least one tester.
 +
*** Thanks to 5ounds for reporting the strange seizure-strobes. ;)
  
* Due to widespread feedback that the martyr is very OP, we've drastically increased the asteroid "cost" of building them:
+
* Yet AGAIN we've completely redone the post-processing stackWhat's up this time?
** Previously Reptite could be used to build 2 MkI MartyrsNow it cannot build martyrs at all.
+
** We're using the FXAA implementation by Amplify Solutions, since that's quite battle-tested.
** Previously Pysite could be used to build 4 MkI Martyrs or 2 MkII Martyrs.  Now it can only build 1 MkII (can't build MkIs).
+
** We're using PRISM post-processing to handle some color grading, minor vignetting, and sharpeningThe difference in quality from the sharpening plus the FXAA is pretty notable even if you already had MSAA cranked upIt all works in tandem.
** Previously Xampite could be used to build 4 MkII Martyrs or 2 MkIII MartyrsNow it can only build 1 MkIII (can't build MkIIs).
+
** We've also returned to Amplify Bloom once again, since that just is unparalleled in terms of its overall quality and its ability to ensure temporal stabilityWe've actually cranked up the temporal stability to an unusual degree, and have a much wider radius of faint bloom, so that we get a softer effect (it was getting pretty grating in recent versions) and so that also we get an effect that has a bit of a trail after bright sources because of the temporal delayLooks bad in setup scenes, looks great in battles.
** Previously Ebonite could be used to build 4 MkIII Martyrs or 2 MkIV MartyrsNow it can only build 1 MkIV (can't build MkIIIs).
+
** One of the reasons that we had moved to the unity post-processing stack was that since it is free and open-source we could simply include that in the AIW2ModdingAndGUI project.  Other than the FXAA solution, these other bits are not open sourceBut it's important to be able to see what you're actually going to get as a result in-game when you're making something in the AIW2ModdingAndGUI project... so we just compiled the non-editor code into our own dlls, and then removed the front-end editor code from that particular project.  Problem solved.
** Previously Adamantite could be used to build 4 MkIV Martyrs or 2 MkV MartyrsNow it can only build 1 MkV (can't build MkIVs).
 
** Note that the units themselves are just as incredibly powerful as before (we really want them to be highly useful), but hopefully this change puts their real cost more in line with their utility and also puts a saner limit on the total number the players can have in a gameMore changes may follow if necessary.
 
** For reference, previously the total number of martyrs that could be produced from all asteroids in an average 80-planet galaxy was about 2200 on average (so someone holding 15% of the galaxy might reasonably field 220 over the course of the game, if they didn't use many other spirecraft)Now that total-possible number average about 480 (so that same martyr-happy player would probably only have about 48 to use, unless they take more planets).
 
  
* Zenith Viral Shredders:
+
* Experimented around with Graphics Jobs again, which is a feature that we've tried on and off with unity.
** Simplified the scaling of replication costs (how much damage a shredder has to do to replicate) and made it better at preventing game-breaking swarms of shredders.  Now instead of it using a linear multiplier based on the owner's number of shredders on that specific planet, it quadruples the replication cost for every full cap of that mark of shredder owned by that player anywhere in the galaxy (but if they own less than or equal to a full cap, there is no extra cost).
+
** It's definitely causing a lower overall framerate in this particular game, and more choppiness, so we turned it back off and won't be including it.
*** So if the mkI cap is 98 (normal cap scale) and you have between 99 and 195 (inclusive) mkI shredders they will have to do 4x as much damage to replicate as normal.  If you have between 196 and 293 (inclusive) mkI shredders they will have to do 16x as much damage to replicate as normal.  And so on (maximum multiplier is 1024 to avoid arithmetic overflow; at that point a mkIV on low caps would need to do over 376 million damage to replicate).
+
** Most likely this is because of all of the instancing that we do, and the fact that offloads a lot of the work of dynamic batching already.
** Base Energy Use from 100 => 50 (note: all mkI types use half normal energy).
 
** Replication-created shredders now copy the FRD, Attack Move, and any unit commands (movement waypoints and whatnot) of their "parent".  Note that they already copy the control groups and "am I currently selected" status of their parent.
 
** The end result of all this should be that if you play your shredders well you'll be able to maintain maybe 2 or 3 caps worth of them (a pretty significant advantage over other bonus ship types) but it's going to be difficult to get into the really absurd numbers.  On the other hand, maintaining that swarm won't cost as much energy as it used to and it should require less micro due to the commmand copying.
 
  
* For a very long time it's been possible to ward off almost any amount of damage through sufficient micro of a pile of forcefield generators and engineers (to repair the ff's as they collapse within the protection of other generators, or go on low power mode, or are being newly built). While ff's are supposed to be extremely helpful in protecting stuff, it wasn't intended that they be able to do so indefinitely while under constant attack. So:
+
* Upgraded to Amplify Shader Editor v1.0.0.012, which adds a few new goodies for us and a couple of bugfixes.
** When a forcefield is damaged by enemy fire, all allied forcefields whose fields are in contact (or very close to it) with the damaged ff will take 1 point of damage from the energy conducted along the surface of the field. The damage itself is inconsequential since the ff's have millions of hp, but it will trigger the "cannot be repaired less than 6 seconds after being damaged" logic.  This also applies to forcefields currently under construction or in low-power mode.  So it won't be possible to repair some forcefields in a ff-pile while others in the same group are under fire.
 
** Forcefield generators now cannot be assisted during construction if they have been damaged recently.
 
** When a new forcefield is placed for construction, if it is in near any allied forcefields (low power or not) that is currently unrepairable due to recent damage, the newly placed forcefield inherits the longest assist-delay present among those neighbors.  So it won't be possible to speed-build new generators under other fields that are currently under fire.
 
** This also applies to all the "shield bearer" and module type shields.
 
** If this leaves some situations unreasonably hard other changes can be made to compensate, we just wanted to close this "micro to dodge anything" loophole.
 
  
* Due to very widespread feedback that ion weaponry is very underpowered, all Ion Cannon and Spirecraft Ion Blasters now fire 4 shots per salvo instead of 1.
+
== Version 0.450 Sound! ==
 +
(Released June 22nd, 2017)
  
* For the ships listed below, armor piercing increased from "really high" (6 figures) to 999,999.  They're really supposed to just flat out get through any armor, excepting maybe some of the ships so large we don't mention them in release notes because it would be a spoiler.
+
=== Post-Processing Stack Revisions ===
** Zenith Polarizer
 
** Spire Armor Rotter
 
** Youngling Vulture
 
** Youngling Nanoswarm
 
** Raid Starship
 
** Lightning/Armored/EMP/Tachyon-warheads
 
** Botnet Golem
 
** Devourer Golem
 
** Sentinel Frigate
 
** Spire Blade
 
** Spire Gravity Drain
 
** Spirecraft Siege Tower
 
** Sniper
 
** Electric Shuttle
 
** Lightning Turret
 
** Sniper Turret
 
** Spider Turret
 
** And a variety of lesser known but related types.
 
  
* AI Hunter/Killers are now eligible to be chosen for exogalactic battlegroupsThe MkI is considered one notch above the Armored Golem cost-wise, and proceeding up from thereFor anyone who remembers the slaughter those things could perform before, their number of shots-per-salvo has been halved but their health has been doubled.
+
* We completely redid our post-processing stack AGAIN, this time based on the not-yet-fully-stable (whee!) unity stack v2, which is still in development.
 +
** For reference, the version we're using https://github.com/Unity-Technologies/PostProcessing/tree/v2
 +
** Why use this? Well, Chris was getting really sick of the over-done bloom that he was winding up with the older PP stack, and couldn't fix it with any settings he could use.  The newer PP stack has not only a better control over bloom, but also a much better auto-exposure tool.  The HDR tonemapping tool seems borked at the moment, but the auto-exposure tools is yielding better results for us than we got with the Neutral tonemapper in the PP stack v1 anywayWould have been nice to use ACES, but oh well.
 +
** With the new exposure correction, we've actually brightened things up a tad, and there's a hint of what you might think of as eye adaptation, although that's really more a factor of exposure averaging and is a very subtle effect.
 +
** We're also now using SMAA on the CPU side in addition to the pre-existing MSAA we use on the GPU side.  Previously we were not even using FXAA on the CPU side, though we were thinking about it.  TAA is now available in PP stack v2 in the Forward rendering path, which we're excited about, but it doesn't yield sufficiently crisp results yet.  So for the moment SMAA it is.
 +
** Why all this fuss over the post-processing stack?  Well... sometime soon we have to start doing screenshots that people will start showing around on websites and seeing on Steam, so it's pretty important that things look nice enough.
  
* Added a new ability to the Spirecraft Attritioner in hopes of making it more generally useful.  From the new tooltip:
+
=== Sound Effects! ===
** One unique side effect of Spire attrition technology is that when an enemy ship is destroyed by any cause all its allies (that aren't immune to attrition) take a certain percent of that ship's maximum health as feedback damage.  This feedback damage is cumulative with multiple Spirecraft Attritioners and higher mark attritioners cause a higher percentage, but this feedback damage is divided evenly across all affected targets and thus does not greatly damage any one target.
 
** Basically, this functions as a small boost to overall fleet dps (averaged out over time), and thus makes the attritioner useful in short engagements where previously its contribution would have been minimal.
 
** Current percentages are 0.5%/1.0%/1.5%/2.5%/5.0% for the 5 marks of attritioner.  Also, this effect does trigger on enemies killed by attrition/feedback (otherwise it motivates micro to make sure a triggering-source kills big targets).  In our tests this has not seemed overpowered though it is likely that further balancing will be needed.  Bear in mind that mkV attritioners require the extremely rare Titanite, and mkIVs require the not-much-more-common Adamantite.
 
** Thanks to Hearteater and many other players for weighing in with feedback that led to this change.
 
  
* Spirecraft Ion normal shot damage from 700 => 14000, and armor piercing from 0 => Max.
+
* We now have a bus-based sound mixing solution in place, based on unity 5's advanced mixing capabilities, but then expanding that even further.
** Previously their damage was just token, but this brings them up to roughly the DPS of the Spirecraft Siege Tower (which, for reference, also has max armor piercing), but can't target anything that's immune to insta-kill (which is basically anything bigger than a fleet ship). The result is that a cap (8) of MkI Spirecraft Ions is capable of doing well against a single cap of even MkV fleet ships unless those fleet ships have a bonus against them (bombers, chameleons, raiders, IRE's, etc), and so on.  In general, a lot of these together can put some serious hurt on fleet ships (particularly low health ones) even when they can't insta-kill.
+
** In our case we're setting up both directional and 2D sound sources with custom falloffs, and a maximum number of "voices" per bus, and advanced customization for clusters of sound effects (time delay between individual sound effects playing, between sound effects for the whole cluster, and even failover to a different sound effect cluster if the first cluster is still on cooldown).
** Related note: since their seconds-per-salvo is higher on the lower cap scales, and since their shot damage now actually matters, and since just about everything they can target scales with the caps, their damage will now be scale upward on the lower caps.
+
** This allows for us to really tune and mix the sound the way that we want, including music ducking, and general sound ducking for various types of vocal audio.
** Updated the tooltip, which is reproduced here since it probably helps understand what we're doing here:
+
** This also allows for us to have voice commands that play, but not too frequently, and for them to "fail over" to other types of sound effects to indicate orders receipt when the voice command version is on cooldown.
*** Like Zenith Ion weapons (which AI Ion Cannons use), Spire Ion weapons insta-kill most ships with a mark level equal to or lower than its mark value, and cannot fire at all on ships immune to Ion weapons (i.e. immune to insta-kill).  Unlike Zenith Ion technology, these ships are mobile, much shorter-ranged, and actually do decent damage to higher mark ships.
+
*** Thanks to qipoi for suggesting this functionality regarding the voice commands playback and failover.
  
* Fallen-Spire city-provoked exogalactic strikeforces "buildup" rate (this only impacts the time between attacks, not their size or composition) redistributed a bit:
+
* Hugely reworked our music pipeline, as part of our new sound pipeline in general, so that it's all now piped through a central audio mixer that supports audio ducking for the music and for other sound effects as-needed for things like voice alerts and things of that nature.
** Spire City Hubs now generate 1/4 the "aggro" they used to.
+
** It also allows for us to have certain explosions just drown everything out in an impressive way, and in general allows us to do sound mixing by bus, which can be tuned in the AIW2ModdingAndGUI project.
** Spire Shard Reactors, Habitation Centers, and Shipyards now, instead of generating zero "aggro", generate 1/8th what the Spire City Hub used to generate.
 
** So a city with all 6 building slots taken up causes exactly the same amount of buildup as before.
 
** But the advantage is that if your cities get really beat up in an AI attack and you lose city structures you have more time to rebuild before the next exo.  Not exactly smart of the AI, but the alternative is often a game that is fundamentally lost but just a matter of time.
 
  
* Youngling Nanoswarm:
+
* The game now has proper volume handling, which it didn't have before even for the music.
** Fixed bug in targeting logic that was making it focus on single targets when the intent was that they would aggressively spread themselves out across all available targets. The new behavior still doesn't reach quite the desired behavior (they still tend to only spread out over a subset of the available targets) but it's still a significant improvement. Hopefully more can be done later.
+
** These volume settings are layered on top of the volume settings from the mixer, and it all gets translated over nicely.
*** Note that this overrides the Non-Sniper-Focus-Fire control; there's very little reason one would ever want these the auto focus-fire since they do so very little damage. Of course if you really want a bunch of nanoswarms to all attack the same target you can give them a normal attack order.
+
** Players simply select a volume between 0 and 100 for any particular type of sound that they want to adjust.
** Explosion range from 200/225/250/275/300 => flat 1000.
+
*** Note that for turning off sounds or voice or music entirely, it's more efficient to simply use the toggles for those so it's not silently playing those sounds or music.
*** They still only hit a max of 3/5/7/9/11 targets when they explode, so this makes it more likely that they'll actually get multiple hits.
+
** The types of sound that can be adjusted are:
 +
*** Master (affects literally everything, music, etc).
 +
*** Music (just affects music)
 +
*** Sound (affects all non-music sounds).
 +
*** Voice (just affects spoken voice lines).
 +
*** Combat (affects all the sounds of battle).
 +
** Given that the actual underlying bus volumes are in -80 to +20 dB ranges, where 0 is the default (unaltered) state, and we may have altered the bus defaults in the mixer itself...
 +
*** The game takes the inputs for the "volume" as a 0-200 range, then transforms that into a multiplier against the default volume of the bus.
 +
*** Specifically:
 +
**** If you choose 0 volume it just goes to -80, if you choose 100 it stays at the bus default, whatever that is.
 +
**** If you choose anything between 1 and 99, then it multiplies the inverse cube of the percentage of that by the starting volume of the bus.
 +
***** This helps to offset the logarithmic falloff of dB reduction from 0, and feels pretty natural.
 +
***** It does mean that since we're only using the cube, and not the fourth or fifth power, that in general things still go pretty unexpectedly extra quiet below 40% or so, though.  But this gives the most gradiations in the audible range.
 +
**** If you choose anything between 101 and 200, then it multiplies the flat percentage of that by the difference between the max (20 dB) and the starting volume of the bus, added to the starting volume of the bus.
 +
***** This gives a great deal of precision in making things slightly louder, but doesn't really hide the logarithmic rise where you have to go to 180% or so to get a really substantial (10dB or more on average) rise out of the result.
 +
***** Overall this isn't quite the most natural way to handle the volume siders above 100%, but it does give the most precisions, which is probably for the best.  And it's still easy enough to tune.
  
* AI Fortress health from 6x human fortress equivalents => 3x human fortress equivalents.
+
* There are now computery sound effects for giving attack, move, wormhole-path-move, and construction orders.
** Previously it was easy to take out an AI Fortress with just bombers (and other polycrystal stuff, since fortresses can barely scratch the paint on polycrystal) but it could take a really long time.  We want the fortresses to be challenging but not in the "how long do I have to wait before it dies" sense. Hopefully we can find some other more interesting (and not very time consuming) way of making them more challenging
+
** The ones for placing construction units are particularly satisfying. :)
  
* Ships that generate attack (munitions) boosts now show the magnitude of the boost in the tooltip, not just the range.
+
* There are now sound effects that play when you alter your build queue, alter your control groups, "do some other general tweaks, mainly cheats," launch warheads (this one is cool), scrap units (careful of the heart attack), start hacking something, change into hold fire mode or out of it, toggle pause, and unlock a tech.
** Thanks to SpaceBrotha for the question that reminded us that this info wasn't directly displayed anywhere.
 
  
* Ships that are not immune to attack boosting but have a attack-boost-ceiling below the default (which is 4, i.e. 5x or 500% of normal damage) now display their maximum receivable boost in their tooltip.
+
* There are now settings that allow you to mute various parts of the battle sound effects selectively (shots firing, shots hitting, ships exploding). This might be useful to someone else, but it's also helpful for us in testing certain sounds without the mixing.
  
* Higher mark Hybrid Drone Spawners now spawn drones more quickly in addition to being capable of spawning higher mark drones (a mkIV drone spawner still only spawns mkI drones for a hybrid at the first maturity level, and so on).
+
* All of the ships/structures in the game now have explosions set for when they explode.
 +
** They fall into 14 different categories of explosion sound effect, two of which are just for warheads.
 +
** There are then a further three twos of explosion sound effect that happen for ships that are not at the planet you are presently at, or when you are on the galaxy map.
  
* Hybrids: second-stage and third-stage maturity now takes less time (about half what it used to, still longer than first-stage), as previously most hybrids died either before or during the first stage.
+
* The game now uses a blend of 2D and 3D (spatial) audio, which is pretty typical for games that are in 3D.
 +
** Things that are "HUD sounds" or other non-point-source type sounds just play normally, as does music.
 +
** Things that are sound effects coming from a ship or a shot or an explosion have direction and attenuation based on their relative location to the camera.
 +
*** This makes it substantially quieter in the battle when you zoom way the heck out, which is nice, although different sounds are attenuated at different rates -- the explosions of ships dying attenuates a lot slower, for instance, so you can keep an ear on that easier.
 +
*** This is something that anyone can tune (in a modding sense) by adjusting the prefabs in the AIW2ModdingAndGUI/Assets/AudioPrefabs/Combat folder.
 +
**** The major settings to play with there are Max Distance (the furthest out the camera can zoom is 1200, for reference), and then the Spatial Blend and Spread values.  Having a Doppler level is also possible, but tends to give strange and muddy results.
 +
**** You can combine changes here with changes to AIW2ModdingAndGUI/Assets/AudioPrefabs/OfficialMixer (click into that object to get the mixer panel), if you like. 
 +
***** One thing Chris was considering, for instance, was making it so that WeaponsHitting had a max distance of 500, over which it would attenuate, and then increase the WeaponsHitting bus from -23dB up to something a lot more substantial.  You'd then have no sounds of shots hitting beyond 500 distance, but much louder sounds of that hitting when you are progressively closer than that.
 +
***** This isn't something you can mod and just keep modded all that easily at the moment, although you can make a copy of the mixer and then point your xml (using an override) to your mixer instead of ours.  The risk being that if we make a lot of changes to the sound buses, which is most likely now while they are new, then yours may stop working and you have to make a copy of.
 +
***** At any rate, mainly if you want to mess around with that and see if there are values that you feel like give a better result, we'd always be willing to take that sort of thing under advisement. ;)  We have BadgerBadger fixing bugs already, goodness.  But anyhow, the point being that it's open so that people from the community can fiddle and share their results with everybody if that is an area of their interest.
  
* Neinzul Youngling Tigers:
+
* There is now a set of sound effects for ships entering or exiting wormholes, as was the case in the first game. These are neater, though.
** Time-to-live from 2 minutes => 4 minutes, which is the same as other youngling types.
 
** Metal and Crystal cost from 50/50 => 40/40.
 
** Base Armor Rating from 300*mk => 600*mk.
 
** Base Health from 11k*mk => 13k*mk.
 
** Thanks to chemical_art for suggesting/inspiring these changes.
 
  
* Neinzul Youngling Vulture:
+
* All of the various buttons in the game can now have a click_sound xml attribute set on them, to choose between sound effects for them to play when clicked.
** Metal and Crystal cost from 50/50 => 40/40.
+
** This also applies to dropdowns, image buttons, button lists of various sorts, etc.
 +
** By default buttons all now play the sound effect "ButtonNormal" when clicked.  You can override this to silence if you need to for a given button that also plays a sound effect via a command that is executed, if you need.
 +
** A different sound effect, ButtonStartGame, is played when you start a new game or load an existing one.
  
* Spire Teleporting Leech:
+
=== Shot Visuals! ===
** Base Energy Cost from 400 => 200.
 
** Base Metal Cost from 2200 => 1200.
 
** Base Crystal Cost from 800 => 500.
 
  
* Science Lab MkII:
+
* The forcefields and the ship-to-ship lines have been moved into the modding and gui project so that anyone can edit them.
** Base Health from 120k => 500k.
+
** Improvements have been made to how the various lines look, from their shaders, while we were at it.
** Base Armor Rating from 1500 => 5000.
 
** Now has cloaking.
 
** Long story short: they're still more expensive than MkIs, but now they actually are significantly easier to keep alive in dicey situations than MkIs.
 
  
* AI Superfortress:
+
* All of the shot graphics have also been moved to the modding project, for the same reason.
** Base health from 750 million => 450 million.  This brings it from 5*human-version to 3*human-version, putting it in line with the other fortresses.
 
** Health regen halved.
 
  
* AI Fortress I/II/III: health regen halved.
+
* For now taking away the side-specific bullet colors.  Frankly this makes it a lot harder to differentiate bullets by type, which is more important.
  
* Neinzul Preservation Warden spawn counts now scale up with AI Difficulty (the higher of the two is used, this is 1 at diff 7, 1.5 at 8, 2 at 9, 3 at 10) and AI Handicap (again, the higher of the two, negative handicaps don't apply to this), similar to other non-AIP-based threats.  Previously it only scaled with the number of human players/homeworlds, and of course the number of human-controlled resource extractors.
+
* The armor-piercing bullets now have their real graphics, which is the pre-existing orange tracer shots, but made a lot shorter.
 +
** Note that the tracer-style shots are heavily affected (in terms of how long they are) by the speed at which they are moved.  So there are now three different variants for use in different speed scenarios.  This is super easy to mod if someone is changing around shot speeds dramatically and wants the shots to look similar to how they do at the current speed.
  
* Sentinel Frigates and Zenith Electric Bombers are now considered large enough targets for ships like the Antimatter Starship.
+
* All of the not-yet-done shots now use the old green-style enemy shots, to make those easy to spot and then fill in the real data for.
  
* The earliest time that an AI player can even check for sending a wave has been changed to avoid both AIs sending their first waves on the exact same second on higher difficulties (which artificially increases the difficulty of the first wave, giving a false impression of how hard the second will be)Specifically, it's still (( 14 - Difficulty ) * 100) seconds for the first AI player, and 1.5 times that for the second AI player.
+
* FINALLY got a version of the fusion rocket shot visuals going that we're actually happy with.  It has to look nice, but not too close to the other stuffExaggeratedly-large so you can see it, but not so much so that it's cartoony.  Nicely colored, but emissive and bright enough you can see it at a distance.  And on and on.
 +
** We experimented a ton with trail renderers in addition to the rocket, and having those be the things that are visible at far distances, but that wound up always looking too similar to the other trail renderers (when additive particle blending was used) or extremely chuggy on the CPU (when alpha particle blending is used and thus they needed to sort).
  
* Black Widow Golem:
+
=== Misc ===
** Number of tractors from 100 => 200.
 
*** Tractors on non-scaling ships do need to be made to scale with unit caps, but we don't have time to implement that just yet.  Bear in mind that when that scaling comes, the current number of tractors will be the _highest_ value: corresponding to "high" caps, because that's what the caps were before scaling was added (when the tractor numbers were established to begin with), so it won't make them any better.  For now, enjoy :)
 
** This golem's tractors now do 2 seconds of paralysis damage per second to each held ship.  Ships immune to paralysis are not affected.
 
** Base Health from 80M => 200M.
 
** Basically just trying to make this golem a lot more useful and a lot less likely to die when not baby-sat.
 
  
* Some further adjustment to high-difficulty wave size calculation, this time not changing diff 10 much at all but making the 9.3-9.8 stretch build up more gradually rather than 10 being more than 2x as hard as 9.8.
+
* Fixed bug where golems were not actually being seeded.
** Previously in step 8 any difficulty greater than 7 received a 2.5 multiplier (7 got 2.25, and lower the lower you went).
+
** Thanks to BadgerBadger for reporting.
** Now:
 
*** 7.3 through 9 still get 2.5.
 
*** 9.3 gets 2.75 (10% harder than before).
 
*** 9.6 gets 3.00 (20% harder than before).
 
*** 9.8 gets 3.80 (52% harder than before).
 
*** 10 gets 4.5 (would be 80% harder than before, but see next change).
 
** Previously each wave on diff 10 would actually cause 2 separate waves.  This was from an old rule where 8 through 10 got double waves, but that was changed to just 8 due to the challenge-cliff it caused between 7.6 and 8.  Now this rule has been entirely removed, since 10's waves are now so much larger than before.
 
** We're very much open to more feedback on this; basically diffs 9.3 through 10 aren't really where we expect people to play (indeed, we may need to make them harder if someone actually beats 10 in a fair fight again), but we want it to be fun for those who do.
 
  
* Previously Sniper and Spider turrets cost 8 to 10 times as much metal+crystal to build a cap of compared to all other turret types, so:
+
* Fixed a bug where it was possible for the map seeds auto-generated to be longer than the ones you can key in manually.
** Base Metal Cost from 1500 => 300.
+
** Thanks to BadgerBadger  for literally fixing the bug himself.
** Base Crystal Cost from 7500 => 1500.
 
** They're still the most expensive turrets, that's intentional, but they're no longer quite so punishing (before you could have built a fleet of starships for the cost of a cap of sniper turrets).
 
  
* Antimatter Starship:
+
* Fixed a bug where hitting B selects additional build units.
** Yes, this one is getting _another_ revamp.  Some background:
+
** Thanks to BadgerBadger for literally fixing the bug himself.
*** First, they were called dreadnoughts.  They did tons of engine damage.  Too much.  Nerfed.
 
*** Then, they were called useless.  For a long time.
 
*** Then, we made them hit like a train from long range, but unable to fire upon anything remotely small.  They were called Siege Starships (alias: "awesome").
 
*** But this broke a lot balance because you could just camp around your siege starships from across the planet and bomb everything to bits.
 
*** So they were given antimatter bombs that can't hit forcefields, fortresses, or... well, much of anything.  In fairness they do great against starships and guardians, but that's proven too small a niche to really please their users.  They were renamed "Antimatter Starship", which has since become a dire insult in 75% of the inhabited galaxy.
 
*** But the solution was unclear: we could shorten their range, but Bomber Starships (which were made normally available shortly after these were changed to Siege Starships) already fill the short-range big-stuff-killing niche.
 
*** And now, the next episode...
 
** Base range from 16000 => 4000.
 
** Shot type changed back from Antimatter Bomb => Energy Bomb (same basic type as bombers use, so no one is specifically immune to it like some are to antimatter bombs).  Still cannot fire on small ships, like before.
 
** If it hits a forcefield, it will also damage up to 200 units protected by that forcefield (or forcefields physically near that forcefield) with 1% (to each target) of the damage done to the forcefield.
 
*** Note: even stuff the starship itself cannot aim at (small units and cloaked units, etc) can be hit by the splash damage.
 
*** The 200-count doesn't change between low, normal, and high unit caps because that would change the dps of the unit pretty significantly.  If it proves to be a problem we can try a few things.
 
** Has been renamed to the Plasma Siege Starship.
 
** The end result:
 
*** Still longer-ranged than the bomber starship, but much shorter than before, so not worrying that it will break balance in that way.
 
*** Still only about 1/3 of the bomber starship's single-target dps, but can up to triple the total damage output in a "siege" situation against a forcefielded group of targets. Still not the better choice in terms of raw damage, but the utility of being able to get at the protected targets should counterbalance that and create its own niche.
 
  
* Plasma Siege Cannon Modules (the ones for Fallen Spire modular stuff) now also have the forcefield-splash-damage attribute. Thematically, the Siege starship is (using) a plasma-siege-cannon now.
+
* Put in a fix that definitely prevents keybinds from triggering while a textbox is focused (we've been able to test it now).
 +
** Thanks to BadgerBadger for reporting.
  
* Zenith Beam Frigate Base Range from 7500+100*mk => 6500+100*mk.
+
* Added a link to the external tutorial on the main menu.
** They're supposed to be long-ranged, but some marks were outranging their main triangle counter (missile frigate, which has 6500+500*mk base range), which isn't appropriate given the beam frigate's very high damage when it hits several targets per shot.
+
** Thanks to BadgerBadger for literally coding the addition!
  
* Turret base energy costs:
+
* Put in a fix where squads should now properly change their ownership color if their current side doesn't match what their previous state was.
** Basic Turret from 150 => 100.
 
** MLRS Turret from 150 => 100.
 
** Flak Turret from 300 => 200.
 
** Missile Turret from 150 => 100.
 
** Counter-Dark-Matter Turret from 4000 => 1000.
 
** Counter-Missile-Turret from 4000 => 1000.
 
** Counter-Sniper-Turret from 4000 => 1000.
 
** Sniper & Spider Turrets from 250 => 150.
 
** Grav Turret from 500/8000/10000 => 400*mk.
 
** Tractor Turret left alone (150/240/300).
 
** Laser Turret (150) and Heavy Beam Cannon (750/1300/2000/20000) left alone.  They're energy weapons.
 
** Lightning Turret from 500/1000/2000 => 400 flat.  Energy weapon, yes, but that was a bit high.
 
** These really aren't that big a deal, but it does help rein in some numbers that were set long ago, and bring the energy-per-dps ratio of the main attack turrets under the stuff that shoots and has engines.
 
  
* Artillery Golem:
+
* An error message stating "Player data archive not found at `/home/user/AIWar2/AIWar2Linux_Data/data.unity3d`, using local filesystem[user@Desktop AIWar2]$" on startup on linux should no longer display. It was harmless, but annoying.
** Base Armor Rating from 0 => 4000.
+
** Note we didn't get a chance to test this yet, but knock on wood it should work. ;)
** Base Recharge Time from 30 => 8.
+
** Thanks to BadgerBadger for reporting.
** Basically: when you see an Artillery Golem you can get on your side, we want you to be happy.  When you see an Artillery Golem on the enemy side, we want you to be sad.  Previously it wasn't doing a whole lot of either.
 
** Thanks to Orelius and others for feedback on golems.
 
  
* Regenerator Golem:
+
* World_AIW2.Instance.QueueGameCommand now takes a second parameter that says if it should consider handling local audio/visual feedback of the command being sent.
** Repair cost reduced by 90% to make regeneration not "cost" quite so much more than simply producing the ships from scratch, in metal+crystal terms.
+
** Generally speaking almost everything in the AIWarExternalCode should have that as true, so that sound effects and such can be played as need in order to register that things have been accepted.  But things from the AI should always say false.
  
* Cursed Golem:
+
* Fixed a bug where every full-capacity squad with more than one ship in it was drawing an extra ship.
** Self-attrition reduced by 50% (now would go from 100% to 0% in 60 minutes instead of 40).
+
** This doesn't fix isues with squads having more living ships than they should based on ships that died; that's a separate issue.
 +
** Thanks to BadgerBadger for reporting.
  
* Lightning Turrets
+
* The game now notices when there are more ships specified to be in a squad than the actual formation allows for, and complains.
** Attack changed to function like electric shuttles:  Hits up to 200 targets, and if hits are left over can hit each target up to 5 times (meaning that groups as small as 40 take the full power of the attack).
+
** This was affecting autocannon minidpods (40 requested, 25 available), laser gatlings (80 requested, 25 available), and minefields (80 requested, 25 available).
 +
** The game now has two new squad formations that have 48 and 100 scale-1 formation positions in them, for handling these cases.
 +
*** Note that we're going to work on vastly better formations in general later, and we welcome formation creation by players, too.
  
* Lighting Turrets/Electric Shuttles: The per-planet-per-player-per-type-per-mark delay has been reduced to a very minimal duration, generally allowing a full cap of lightning turrets to unload its full power before the first one finishes reloading. 
+
* Stumbled upon a fix to a moderate-to-severe performance bug in unity that was calling a lot of shuffling-around of gui elements that were not even moving.  It's a bug relating to them having a parent that is not at position 0, with details you can read about here if you like: https://issuetracker.unity3d.com/issues/canvasrenderer-dot-ontransformchanged-is-called-on-ui-objects-which-transforms-are-not-moving
** This still prevents a total alpha strike, but that also helps avoid a situation where the entire lightning turret cluster unloads on a couple of leading fighters before the rest of the wave shows up.
+
** In some cases this dramatically reduced stutter that was coming from the GUI.
** It also looked really cool in testing.
 
  
* Player-Ally Dyson Gatlings are no longer unable to shoot mkV units.
+
* You can now actually name your savegames.
** In previous iterations this rule was necessary because player-ally dysons were clearing off AI homeworlds and/or core worlds.  Since player-ally dysons rarely wind up on AI planets anymore the rule no longer seems necessary, and "why are my dysons not shooting X?" questions have been happening on a regular basis for quite some time.
+
** Thanks to BadgerBadger for literally coding the addition.
  
* Hybrids:
+
== Version 0.401 Ship Batch 6 of 7, And Gimbal Perfoooormance! ==
** If either player has Advanced Hybrids enabled, hybrid maturity-xp contributions to the central dirty-tricks "bank" are now doubled compared to Normal Hybrids.
+
(Released June 12th, 2017)
** The first couple stages of the only such dirty-trick progression currently implemented now happen a bit faster, but the first and second nasty bits have been made less nasty
 
  
* Spirecraft Shield Bearers:
+
* The game console has now been fully moved to the AIW2ModdingAndGUI project (source code aside), and has been re-skinned using our own graphics and text mesh pro.
** Ship cap doubled.
+
**This may not have seemed like a high-priority thing to do, and indeed it was not in and of itself, but it validates a particular GUI creation workflow that we now have, as well as providing a concrete example for that type of GUI.
** Amounts produced:
+
*** Basically our existing GUI creation methodology is all based around xml creation of things and populating them certain ways.
*** Reptite: from 0 => 1 mkI (so can now be built from Reptite)
+
*** But now we can also take an entire GUI canvas, create it in the WYSIWYG unity editor in the AIW2ModdingAndGUI project, and then wire it up in a completely traditional-for-UGUI fashion and after that let it be triggered from the dynamic GUI.  These are even loaded using the existing "gui prefabs" logic that the xml-oriented GUI uses.
*** Pysite: from 1 => 2 mkI
+
** The end result is just as performant in both cases (and basically identical), and so mainly the question is of which approach is easier for a given piece of the GUI.  There's no one right answer.  Even the xml-oriented version is using prefabs that have a bunch of nested stuff, but this is just taking it to a completely other level of having the entire canvas/window populated.
*** Xampite: from 1 => 2 mkII
+
*** At any rate, being able to do this now and having an example of how to do it was well worth the time in this particular build.  It should open up options better for the upcoming GUI revisions.
*** Ebonite: from 1 => 2 mkIII
 
*** Adamantite: from 1 => 2 mkIV
 
*** Titanite: from 1 => 2 mkV
 
** Hopefully this will bring their costs more into line with their actual utility (as non-repairable shields).
 
  
* Plasma Siege Starship
+
* A massively new way of drawing the "sprite gimbals" over squads in the game is finally complete.
** Shot now has a traditional (lightning-type) aoe that does 6.25% of normal damage to up to 14 extra nearby targets.
+
** We tried a variety of approaches, but for various reasons dynamic batching, instancing, and so forth all yielded subpar results when individual sprites were made up of often up to 6 sub-parts (main icon, border, flair, mark level, and health bar).
*** In order for this normal aoe to work, the restriction from firing upon fleet ships has been removed.  Previously it was there primarily to keep the autotargeting from "wasting" shots on small stuff, but this has become less important.  It still prefers targeting starships, etc.
+
** We're now baking the sprites into meshes prior to them ever being instanced, which cuts the graphics load of the gimbals to around a sixth of what they previously were.
** Still has the "siege" effect when hitting a forcefield, but that's been changed from 1% of the damage done to up to 200 ships to 6.25% to up to 25.  That's less total, adjusting somewhat for the addition of the traditional aoe and the greater ease of getting the whole bonus.
+
** That said, the sprites themselves still need to be instanced even after being baked, and to do that we need a single mesh for all the types for the most part.  So we're hiding data in the uv2 and uv3 channels that let us know which instance properties to conditionally apply to which vertices, which in turn lets these things colorize themselves (via HSV shift) as needed. But since not everything needs to be colorized, our new ubershader for the baked group is now actually more efficient than before, making the savings more than a drop to 1/6th of the previous load from this source.
** For reference, the Siege's dps (per unit, not per cap) against a single target is about 71% that of the Bomber Starship (previous version notes said 1/3rd, that was actually inaccurate). If the traditional aoe hits the full 14 targets, that brings it up to about 133% that of the Bomber StarshipIf the shot also hit a forcefield that's protecting other units, that extra "siege" damage is just gravy on top (potentially up to a total of 245% or so).
+
** Performance improvements in this area might not seem like that big a deal, but on a GTX 1070 with 5k ships on the screen, the icons were approximately half of the visual load.  Facepalm, right?  So this has been a big priority.
*** If this proves to be too much, adjustments can be made, but typically we get more useful feedback for a new/changed unit that's stronger than it should be than if it were weaker.
+
** The downside of the new approach would seemingly be that now these icons are harder to edit, though, if someone wants to modBummer... except that it's just as easy as ever! :D
 +
*** We've created editor tools in the AIW2ModdingAndGUI project that allowed us to merge meshes, set the uv2 and uv3 channels properly, and so on.  You can re-bake the meshes as desired, and we can do so quite easily as well.  You can't do it by xml anymore, but that's a pretty small thing.
  
* AI Carriers:
+
* Fixed a bug in the prior build where the gimbal icons no longer reacted to player mouse hovering or clicking.
** Are no longer invincible if there's >= 2000 AI ships already on the planet.
+
** This was because of the changes in the hierarchy of pieces of squad parts in the last version.
*** Previously this was necessary to avoid too many AI ships on a planet at once for decent cpu/ram performance. 
+
** Thanks to TheVampire100 for reporting.
** Now, when a carrier deploys (it deploys when destroyed):
 
*** If there are fewer than 1400 AI ships already on the planet, and another carrier has not deployed in the last few seconds, it deploys normally as before.
 
*** Otherwise, it "combines" its contained units into a fairly small assortment of ships and deploys those.  The population of this group uses similar logic as exo waves, but is not itself an exo wave (there's no leader, no beeline-human-homeworld logic, etc), it behaves as normal threat.
 
**** The more AI ships there are on the planet, the more "condensed" it tries to make this deployment, so in those cases you'll see more enemy starships, etc but far smaller quantity.
 
** Also, if there are less than 500 AI ships already on the planet, and it is a non-AI planet and there's at least one enemy military (non-mine) unit, and another carrier has not deployed in the last few seconds, it automatically deploys.
 
** Rationale: Previously it was possible to have carriers slip through otherwise impenetrable defenses because there were simply too many AI ships (which may have been somewhere else on the planet) to quickly kill.  This was desirable from a design standpoint because we don't want a single layer of impenetrable defenses to be the end-all defensive strategy in the game.  However, it has proved consistently frustrating (in a non-fun way) for some players so it seemed a good time to try something different. Now the presence of a ton of other AI ships doesn't make the carriers invincible, it just makes them very dangerous to destroy.  Hopefully in an interesting way :)
 
  
* Spider turrets:
+
* When you are placing ships/structures on the map, there's now a filled circle that shows the radius of the footprint that ship will take upIt then also shows the icon of the ship in white over where the footprint is.
** Base Metal Cost from 6000 => 1200.
 
** Base Crystal Cost 15000 => 2400.
 
** These weren't actually changed in last patch because they weren't inheriting the sniper turret costsThis is actually a good thing as spider turrets are substantially more useful than sniper turrets.  They now cost 2x as much m+c as the sniper turret (3600 vs 1800).
 
  
* Riot Starships:
+
* Fixed an issue where the missile turret was not assigned its flair properly.
** Ship Cap from 4/3/2 => 4 flat.  Most of the special starship types have non-decreasing caps already.
 
** Base Health from 900k*mk => 1.8M*mk.  This brings their just-the-hull health up to just below the squishy end of the current target zone for starships (7.5M*mk cap-hp, though Raids and Leeches are currently way below that for other reasons).
 
** Shield mkI/mkII Base Health from 500k*mk => 1.8M*mk.  This brings their hull+shield health up to the middle of the target zone.
 
** Base Speed from 20/17/14 => flat 20.
 
** Base Energy Cost from 3000/4000/5000 => flat 3000.
 
** Base mkI Metal+Crystal Cost from 20k+60k => 30k+50k (mkII is 2x, mkIII is 4x).
 
** Knowledge Cost from free/3500/4500 => free/4000/5000.  DPS starships run 0/5k/7k, more specialized ones like the raid run 0/4k/4k, etc.
 
** Base Attack Power from 3600/5200/6800 => 4000*mk.  This brings their non-bonus-dps up to the very low end of the current target zone for starship (20k*mk cap-dps).  So it's really low (even with module damage), but it's a utility type.
 
** Base Engine Damage from 40/55/70 => 40*mk.
 
** Multiplier vs Medium from 2 => 4.  Its other 4 bonuses were already 4.
 
** All Modules:
 
*** No longer have an energy cost.  12k cap-e for the hulls is enough.
 
** Machine Gun Modules:
 
*** Engine Damage Percent Floor from 50%/30% => 40%/20%.
 
** Laser Modules:
 
*** Engine Damage from 17*mk => 30*mk.  The machine guns are still 3x as efficient for total EDPS but have shorter range and cannot bring engines as low as these.
 
*** Multiplier vs CloseCombat from 5 => 4.
 
*** Multiplier vs Neutron from 3 => 4.
 
** Shotgun Modules:
 
*** Base Attack Power from 40 => 400.
 
*** Engine Damage from 28 => 36.  Makes these 2x as efficient as MGs for total EDPS.
 
*** Shots per salvo from 25/49 => 25*mk.
 
*** Multiplier vs Swarmer from 6 => 4.
 
*** Multiplier vs CloseCombat from 5 => 4.
 
*** Multiplier vs Refractive from 5 => 4.
 
** Tazer Module:
 
*** Multiplier vs Medium from 3 => 4.
 
*** Multiplier vs Artillery from 3 => 4.
 
*** Now has a planet-wide stagger time of 2 seconds, to prevent permanently stunlocking 4000+ ships in a multi-hw setting with 4 Riot IIs.  They can still be used to effectively halve the attack power (due to prolonging reload time) of non-paralysis immune enemies.  Also tends to interrupt them while they try to get away.
 
*** Thanks to Wanderer for being the one to confirm the long-held suspicion that these were horribly exploitable.
 
** Tractor Modules:
 
*** Tractor Range from 1700*mk => flat 4400.  Same as mkIII tractor turrets.
 
*** Tractor Count from 10/40 => 72*mk.  Same as mkII/mkIII tractor turrets (but mobile and not needing supply).
 
**** Note that this doesn't scale with unit cap scale and really should, but that's a bit out of scope for this time frame and these would be the numbers on high caps so you're not losing anything.
 
** For reference, total cap-EDPS with all MG/SG builds firing within main-gun range is now 3080/4720/7080, compared to the spider turret's 7833 (from infinite range, insta-fire, and able to take engines down to 1%, but immobile and way more expensive).
 
** This was another long-overdue rebalancing, hence the magnitude of changes.
 
  
* Orbital Mass Drivers:
+
* The game now automatically checks its models for missing materials, or materials not set up for instancing.
** Now when under a firepower-reducing forcefield they retain 75% of their attack power instead of the customary 25%.
+
** There were then a number of ships that we fixed that on so that they have instancing set up properly.
  
* Leech Starship:
+
* The font_size property now actually works on the new text labels in the game (not buttons or anything else presently).
** Base Energy Use from 10k/14k/18k => flat 5k. So cap-e is same now as Raids (the next highest for combat starships)
 
** All vs-hull-type bonuses removed, to allow for a bit more of an overall damage buff and thus more general reclamation utility.
 
** Base Health from 1.6M*mk => 3.2M*mk. Was well below the target range for starship cap-health, is now just on the low-end (bottom is 7.5M*mk).
 
** Shots per salvo from 1 => 3.  That brings it up to the target range for starship-with-no-bonuses cap-dps (about 66k*mk), and should help it reclaim more.
 
** Hull type from UltraLight => Heavy because UltraLight tends to be a major pain to kill when in the hands of the AI (see: raid starships) and the health just doubled.
 
  
* Light Starship/Flagship/Zenith Starship/Spire Starship/Core Starship
+
* The game now has icons for the various resources, which can be inserted into text with <sprite> tags from text mesh pro.
** Ship Cap from 5/3/2/2/2 => 4 flat.
+
** Unfortunately the process for getting those in there requires the creation of sprite dictionaries embedded in the main game Resources folder at the moment.  We will likely alter that at a future time, but for now that's stuck.
** Base Speed from 15/18/18/24/22 => 22 flat.
+
** The process for getting new sprites in there is pretty convoluted in general at the moment, to be honest, so that's again something we'll have to work on laterBut it does work, and it does perform well!
** Base Armor Rating from 1000/2500/2500/2500/2500 => 1000*mk.
 
** Base Energy Use from 2k/10k/20k/20k/20k => 4k flat.
 
** Base Attack Range from 1500/4800/3000/10000/500 => 3000+(200*mk).
 
** Base Health from 2M/6M/14,625k/12,675k/25,350k => 3.75M*mk.  This brings them to 15M*mk cap-health, and the target range for starships is 7.5M-40M*mk (though there aren't any "Armor Starships" or whatever that would actually use the top of that range, etc).
 
** Shots-per-salvo from 5/9/14/4/5 => 5 flat.
 
** Seconds-per-salvo from 4/4/2/2/5 => 4 flat.
 
** Multiplier vs CloseCombat from 12/12/1/1/1 => 4.
 
** Multiplier vs Medium from 8/8/1/6/1 => 4.
 
** Multiplier vs Light from 6/6/1/1/1 => 1/1/4/1/4.
 
** Multiplier vs Polycrystal from 1/1/0.01/4/1 => 4/1/1/4/4.
 
** Multiplier vs Artillery from 1 => 1/4/1/1/4.
 
** Multiplier vs UltraLight from 1/1/1/4/1 => 1.
 
** Multiplier vs Swarmer from 1/1/1/1/0.1 => 1.
 
*** Part of this is to make each of the mkI-IV varieties good against one triangle ship type, and the mkV good against them all (not that you can get the mkV normally, but the AI can!).
 
** Base Attack Power from 3600/12k/30k/60k/60k => 8k*mk.  This brings them to 40k*mk non-bonus and 160k*mk bonus cap-dps, which is about right for a 4x-bonus starship.
 
** Munitions boost range from 3k/6k/5k/8k = 2k+(1k*mk).
 
** Most of the mark-specific quirks (flagships do a little engine damage, zeniths and up have warp detection, spires are immune to gravity, different ammo types, etc) are still there.
 
** There've been a lot of balance problems with this line for a while, and we've held off from comprehensive changes partly since they're really two separate lines (fleet starship and alien starship) and we'll probably split them up at some pointWe'll probably still split them up later since that would be cool, but for now it's easier to balance them as a cohesive line according to the guidelines used for the other combat starships.
 
  
* Flak Turrets:
+
* Fixed a bug where "dfgdfg" would show briefly as the planet name in the prior build.
** Effective range from 4000/5000/6000 => 4500/5500/6500 to make them a little easier to place around a wormhole.
+
** Thanks to BadgerBadger for reporting.
** Now when under a firepower-reducing forcefield they retain 75% of their attack power instead of the customary 25%.
 
** Hopefully they'll now be closer to the general usefulness of other turrets in that they don't have to die immediately (if protected).
 
  
* Lightning Turrets:
+
* Updated to Amplify Shader Editor v1.0.005, which has a number of new features and some at least minor performance improvements.
** Now when under a firepower-reducing forcefield they retain 75% of their attack power instead of the customary 25%.
 
  
* Heavy Beam Cannons (just the human standalone ones, not any of the spire variants, though the spire variants were impacted by the m+c and knowledge cost changes) :
+
* Fixed an issue with the AI Warp Gates not having their mechanical parts rotating properly.
** All marks:
 
*** All vs-hull-type bonuses removed, these are just straight damage now, which is more thematically appropriate.  Also, it's nice to have at least one turret type that doesn't have that kind of bonus.
 
*** For reference, these aren't really "aoe", they're "blast-through"; a beam loses strength as it does damage.
 
** MkI
 
*** For reference, MkI unit cap is 12 for these, and each fires 3 beams every 7 seconds.
 
*** Base Health from 250k => 850k.  This brings cap-health a bit higher than missile turrets, which are the squishy end of turret types.
 
*** Base Energy Use from 750 => 1650.  This brings cap-energy to just slightly above MLRS and several other turret types.
 
*** Base Metal/Crystal Cost from 8000/14000 => 6500/11000.  This brings cap-mc to slightly below most turret types.
 
*** Base Attack Power from 50000 => 140000.  This brings cap-dps to be second highest turret non-bonus-dps (lightning being highest) but well below the any turret's bonus-dps.
 
*** Knowledge cost from 2000 => 500. The other mkI turrets are free.
 
** MkII
 
*** For reference, MkII unit cap is 8 for these, and each fires 6 beams every 6 seconds.
 
*** Base Health from 1.25M => 2.55M.  Basically: mkI health * (2 for being mkII) * (1.5 for smaller unit cap)
 
*** Base Energy Use from 1300 => 2500. (roughly mkI * 1.5 for cap)
 
*** Base Metal/Crystal Cost from 16000/28000 => 13000/22000.  (mkI * 2, customary for mkII)
 
*** Base Attack Power from 50000 => 180000.  Basically: mkI damage * (0.429 for rate-of-fire-difference) * (2 for mkII) * (1.5 for unit cap)
 
*** Knowledge cost from 3000 => 2500. Most other mkII turrets are 2000-3000.
 
** MkIII
 
*** For reference, MkIII unit cap is 4 for these, and each fires 12 beams every 5 seconds.
 
*** Base Health from 2.25M => 7.65M.  Basically: mkI health * (3 for mark) * (3 for unit cap)
 
*** Base Energy Use from 2000 => 5000. (roughly mkI * 3 for cap)
 
*** Base Metal/Crystal Cost from 32000/56000 => 26000/44000.  (mkI * 4, customary for mkIII)
 
*** Base Attack Power from 50000 => 225000. Basically: mkI damage * (0.179 for rof diff) * (3 for mark) * (3 for cap)
 
*** Knowledge cost from 3500 => 3000.  That's pretty normal for a mkIII turret.
 
** MkIV
 
*** For reference, MkIV unit cap is _1_ for these, and it fires 40 beams every 4 seconds.
 
*** Base Health from 3.25M => 40M.  Basically: mkI health * (4 for mark) * (12 for unit cap)
 
*** Base Energy Use from 2000 => 20000. (roughly mkI * 12 for cap)
 
*** Base Metal/Crystal Cost from 64000/112000 => 52000/88000.  (mkI * 8, customary for mkIV)
 
*** Base Attack Power from 50000 => 290000.  Basically: mkI damage * (0.043 for rof diff) * (4 for mark) * (12 for cap)
 
*** Knowledge cost staying at 3000.  Thought about 3500, but it really is just one unit.
 
** These haven't seen a real rebalance in... a long time, and had fallen behind pretty drastically through the various changes since the 3.x days.  Hopefully this will make them statistically competitive with other turret types (that have much larger caps).  Feedback on how it all actually works out in practice is very welcome.
 
  
* All modules (except those that generate forcefields) are now invincible and thus untargetable, etc.
+
* Put in some code to automatically tell us when our animators have messed up.
  
* When computing the number of reactors of a specific mark controlled by a specific player on a specific planet for the purposes of reactor-inefficiency, that number is now divided by that player's number of homeworlds (if that player has more than 1).  This allows them to get basically the same energy output per m+c cost as an equivalent number of separate players with the same total number of homeworlds.
+
* The game now has a nice fade-in effect whenever you're switching planets or in and out of the galaxy map, making things feel more polished.
** On the same note, the "auto build energy reactor" toggles on the CTRLS window (both galaxy-wide and per-planet) have been converted to sliders allowing you to specifying that more than one should be auto-built.  If both the galaxy-wide one and a per-planet one are greater than zero, that planet will auto-build the higher of the two numbers (but not the sum, unlike with engineers).
 
** The energy difference between multi-HW and multi-players has been known for a long time and not considered a priority.  However, recent scientific analysis has concluded that multi-HW AARs have significant potential entertainment value, hence the change.
 
  
* Everything that fires Siege Plasma (Plasma Siege Starship, Plasma Siege Cannon modules), Flak grenades, grenades, or self-explodes (autobomb, nanoswarm) can now fire directly upon aoe-immune targets, but the resulting aoe will still not hit any aoe-immune targets (just the directly hit target).
+
* Fixed a problem with the mod support where every dll had to define a type which implemented the IInitialSetupForDLL interface, and further required a specific naming convention for that type.
** Notably, this restores the Plasma Siege Starship's ability to target Raid Starships, which was unintentionally lost in the previous version.
+
** Now when loading a dll it looks at all types exported from it and runs the RunInitialSetup() of each IInitialSetupForDLL it finds.
 +
** If it doesn't find any, it won't mind.
 +
** Thanks to Draco18s for reporting.
  
* Youngling Nanoswarm:
+
* The very low end of the camera zoom now has a few more gradations where it shows more of a side-facing view, and then the very lowest zoom level actually looks back UP slightly, allowing you to see tall ships and structures better, and in general get a little more cinematic of a view.  This has no effect on the higher zooms.
** Paralysis time from 1*mk seconds to 3*mk seconds.  Partly because really short paralysis times work a bit oddly, partly because these needed to be more useful.
+
** Thanks to BadgerBadger for inspiring this change.
** Engine damage from 2*mk => 10*mk.
 
  
* The "The Tank" AI-type wave multiplier from 0.5 => 1, as the intent behind it is that it be actually stronger on offense than usual, rather than weaker.  The average should be fine, but possibly another increase can come later.
+
=== New Ships ===
  
* Vorticular Cutlass:
+
* Bonus Fleet Ships:
** Base Health from 7000*mk => 10500*mk.  This puts them at the top of the target fleet ship range with 30M*mk cap-health (Armor Ships and Shield Bearers were the only other ones up there before this).
+
** Vampire Claws
** Base Speed from 16 => 54.  So from slower than a fighter to slightly faster than an etherjet.
+
*** Cloaked melee ships that heal themselves when they do damage.
** Base Metal/Crystal cost from 200/50 => 30/30.  Now the same price as infiltrators, a bit lower than tele-raiders, etc.
+
** Vorticular Cutlasses
** Base Energy use from 100 => 20.
+
*** Melee ships that damage themselves when they do damage (when balanced, their dps will be much higher than vampire claws, for example).
 +
** EtherJet Tractors
 +
*** Cloaked Jets with Tractors. What could go wrong?
  
* Acid Sprayers:
+
* Dire Guardians:
** Base Attack from 450 => 600. This puts the non-bonus cap-dps pretty exactly at the fighter's.
+
** Dire Warp Beacon Guardian
** Base Movement Speed from 40 => 50. Now same as the ether-jet; this is a very short range ship and needs to be able to close the distance.
+
*** The AI can always send waves to the planet this guardian is on, and if it is on alert this is likely to happen.
** Vs Hull Type Multipliers from 6 => 8.  The fighter's vs-polycrystal bonus is 5, for reference.
+
*** Not to be confused with the Dire Warp Bacon Guardian (despite internal typos to the contrary), partner-in-crime to the Pancake Golem.
** Base Metal/Crystal cost from 0/300 => 40/180. So 10% more expensive to build to cap than a fighter (though it's still twice as much energy).
+
** Dire Commander Guardian
 +
*** Increases reinforcements sent to the planet it is on.
 +
*** Triggers waves (like a raid engine) while this is on alert.
 +
** Dire Shredder Guardian
 +
*** Internally constructs and launches shredder drones (vicious little melee ships).
 +
 +
* Guardians:
 +
** Vampire Guardian
 +
*** Can be very hard to kill if you don't kill it quick, because of its ability to heal itself from doing damage.
 +
** Implosion Guardian
 +
*** The Dire Implosion Guardian's little (and far more common) brother. They're a real pain in the rear if you're a golem...
 +
 +
* Golems:
 +
** Seeded like Flagships, you find these, clear their planets, and claim/repair them to gain control of them.
 +
** Unlike flagships, these are rarer, claiming them costs AIP, and they don't have the quasi-Ark functions for building/repairing/etc. Instead, they're considerably more beastly than Flagships and some have unique abilities.
 +
** Armored Golem
 +
*** Short-range brawler.
 +
** Artillery Golem
 +
*** Long-range sieger.
 +
** Black Widow Golem
 +
*** Massive paralyzing-tractor capacity, and does engine damage with its shots.
 +
*** The "if you move while tractoring something, it moves with you" logic has also been implemented.
 +
** Regenerator Golem
 +
*** Regenerates ships you lose on its planet, at the cost of some of its own health.
 +
** Cursed Golem
 +
*** Has powerful fast-firing railcannon, but damages itself in proportion to the damage done.
 +
** Hive Golem
 +
*** Internally constructs hive drones, which it launches in large groups against any threat on the planet.
  
* Riot Tazer:
+
== Version 0.400 Usability and the GUI Pipeline ==
** Paralysis Time from 1 => 3 (internally 2 => 4, but the first second generally gets eaten due to processing order).
+
(Released June 6th, 2017)
** Reload Time from 2 => 8.
 
** Per-planet stagger from 2 seconds => 6 seconds.
 
** This helps prevent some transient (and difficult to reproduce) stunlocks due to processing order, while maintaining the ability to keep things locked down 50% of the time.
 
  
* Anti-Starship Arachnid V:
+
=== Usability Improvements ===
** Has become Spider Bot V, which it has been internally since the beginning but had a bunch of special changes to make it an anti-starship unit.
+
* Reorganized the bottom menu to better emphasize the function most people expect from the number keys in strategy games with real-time simulation. Namely: control groups.
*** Long ago this was a really important unit for the AI because it would spawn them in response to human usage of starships, but that hasn't been the case for rather a while.
+
** So now the 1-9 buttons along the bottom of the screen are the control groups 1-9.
*** In the meantime, they generally only see service if a human player captures a fabricator that produces them, and while the AI does use some starships generally these units are very, very low on usefulness to a human player because they literally can't hit anything that isn't a starship. So now they're just Spider V.
+
** And the 10th button (button 0) is a "Menu" button that opens the master menu that used to be there.
 +
*** Though that no longer has the "commands" sub-menu.
 +
** If you have a selection, the game shows the commands menu (as a bar instead of a stack) above the bottom bar, and the 0-9 keys map to that instead of control-groups/menu.
 +
*** And backspace will cancel your selection (if you have no deeper foldouts), thus returning you to the bottom-bar context.
 +
** The upshot is that if you select your Ark, you'll see a "Build" button in the command bar at the bottom of the screen, among other things an Ark can do. Similar with other unit-producing things.
  
* Spider Bots:
+
* The buttons in the command menu (now shown whenever you have a selection) now are only visible if they can be executed with the current selection:
** Engine Damage per shot from 15 => 60.
+
** FRD only shows if there's a mobile military ship.
*** This brings mark I cap-engine-damage-per-second to about 30% of a cap of Spider Turrets; a cap of mkII (which has fewer ships) to 50-55%, and so on.
+
** Scrap only shows if there's a non-Ark.
** Base Health from 3600*mk => 7200*mk.  They were right at the flimsiest end of fleet ship cap-health (5M), now just in the lower 3rd (10M).
+
** Build only shows if there's exactly one type of builder unit.
 +
** Hacking and Warheads only shows if there's the Ark.
  
* Beam Starship:
+
* Added some direct keybinds for the sake of near-term sanity:
** Rebalancing as a MkV starship, since the fleet ship fabricators produce MkV stuff.
+
** P
** Base Move Speed from 14 => 22.
+
*** Toggles pause.
** Base Health from 4.5M => 22.5M.  Now on par with the Core Starship for cap-health.
+
** B
** Max targets hit per shot from infinite => 9.  Same as Zenith Beam Frigate.
+
*** Selects a builder unit on the planet and opens the build menu.
** Seconds-per-salvo from 5 => 2.  Not the same as Zenith Beam Frigate.
+
*** If a builder is already selected, selects the "next" builder, if any.
** Base Attack Power from 28k => 44k.  If it hits 9 targets every 2 seconds, that puts cap-dps at about 3/4 that of the Core Starship's bonus cap-dps.
+
** T
** All vs-hull-type multipliers removed; the "bonus" for ships like this is typically obtained by hitting more than one ship; max bonus is against large clumps where you can always hit the max.
+
*** Opens the tech menu.
** Energy and m+c costs looked ok; energy a bit high, m+c rather low for mkV but since you have to get a fabricator to build these we can let it slide unless it becomes a problem.
+
*** If tech menu is already open, closes all menus.
 +
** Escape
 +
*** Opens the system menu (save/load).
 +
*** If system menu is already open, closes all menus.
 +
** Space
 +
*** Closes all menus.
 +
** You can change any of the above in your inputmappings file.
  
* Warbird Starship:
+
=== Visuals And Moddability ===
** Rebalancing as a MkV starship, since the fleet ship fabricators produce MkV stuff.
+
* TextMesh Pro has now been integrated into the game (version 1.0.55.56.0b9). We have the paid version, but we're using the free version so that we can include it with the ModdingAndGUI project.
** Made eligible for spawning in exos again; were originally removed from that because if they were lead ships they made the whole group go terrifast. Well, Raid Starships are even faster and are still eligible, so these are going back in. Generally these won't be picked to lead all but relatively early exos with lighter overall firepower.
+
** This lets us do a lot more advanced text rendering at no extra performance cost, as well as giving us basic functionality like proper kerning.
** Base Health from 3M => 17M. Now about 70% of Core Starship for cap-health (or: a bit over 10M*mk, where 7.5M*mk is about as low as any combat starship should go in the current approach).
 
** From no vs-hull-type multipliers => 4 vs polycrystal, heavy, ultra-heavy, and structural.
 
** Seconds-per-salvo from 5 => 2.
 
** Shots-per-salvo from 40 => 16.
 
** Base Attack Power from 2k => 8k.  This brings non-bonus/bonus cap-dps to a bit under 200k/800k, very similar to the core starship in that regard.
 
** Energy and m+c costs looked ok; energy a bit low, m+c rather low for mkV but since you have to get a fabricator to build these we can let it slide unless it becomes a problem.
 
  
* Paralyzers (specifically, zenith paralyzers, but also nanoswarms to some extent) are now much more aggressive about spreading out their fire across available targets to make better use of the paralysis effect.
+
* The first place we've set to using TMPro is the galaxy map, where now the text is both in a better font as well as a lot more readable.
** It still will focus more than is optimal in cases where a group of more than 100 paralyzers (of the same mark, controlled by the same player, relatively near one another) has more than 100 non-paralyzed targets in range (they'll generally all focus on 100 of the targets in the first volley, and spread out afterward) due to our desire to not have target lists longer than 100 for RAM-consumption reasons.  But it's a lot better than it used to be.
+
** The actual places where the fonts are set up for the galaxy map, and things are oriented around planets, is now also in the ModdingAndGUI project so that it can be edited by folks as desired.
  
* AI Super-Terminals:
+
* Darkened all of the new skyboxes to fit with the new HDR rendering.
** Previously these became active after you finished building a command station on the planet, and went dormant again as soon as your command station was destroyed.  Now they never go dormant after becoming active: now, the only way to shut down an active superterminal is to destroy it.
 
*** Thanks to Atomjack for pointing out that it was too easy to keep turning the terminal on and off previously.
 
** Now each super-terminal "pulse" has a 10% chance to be a "surge":
 
*** It puts a message in the chat log letting you know there was a surge.
 
*** It intensifies the pulse by (highest AI difficulty / 2) (so diff 7 means that pulse will be 3.5 as strong in terms of enemy ships generated).
 
*** It sets the time until the next pulse to 1 second instead of the usual 15.  "Chain surges" are therefore possible, albeit fairly unlikely.
 
** Previously when the super terminal reached a certain size of mkV pulse it simply didn't get any more dangerous; now it will start shortening the time between pulses as the strength goes past that point.
 
** In all, super terminals were being a little too tame.  It's great that proper playing of an ST can make the difference between winning and losing, but they seemed to need more danger and unpredictability to balance out their fairly powerful advantages.  It's more like "riding the bull" now, and if it gets out of control it can kill you.
 
  
* Mapgen will no longer put the dyson sphere adjacent to an AI core world, because having a core world on alert the whole game was nearly an automatic loss on some more intense scenarios.  It's better if you die because of something you actually had influence over.
+
* Made it far easier for people to edit skyboxes quickly, thanks to a new button in the header of the skybox editor.
  
* Science Labs I/II/III, the Survey Ship, and the new Ship Design Hacker are now all immune to the maw's swallow effect.
+
* The ruined network nodes now have proper graphics.
  
* Impulse Reaction Emitter, in recognition of winning the 3rd "worst ship" award:
+
* The advanced starship constructor now has proper graphics and animation now.
** Effective Range from 4200 => 6000.
 
** Base Move Speed from 20 => 30.  This makes it slightly faster than a fighter.
 
** Base Metal+Crystal cost from 300+300 => 250+250.  That's mkI; other marks use normal progression.
 
** Minimum multiplier from 5 => 8.
 
*** The base-cap-dps was already high at 73k and is now in the top 10 among fleet ships (including self-destructing ships and ships with no bonuses) at 117k, but this helps counterbalance the fact that it doesn't get more than the minimum multiplier against most fleet-ship targets.
 
** Multiplier from (target energy use)/1024 => (target energy use)/256.  So it starts getting a higher-than-minimum bonus against ships using 2049+ energy, up to the max multiplier of 30 against targets using 7680+ energy (note that the IRE is not any better damage-wise against max-multiplier targets, since it was already very powerful there).
 
  
* Space Plane, in recognition of doing really well in the 3rd "worst ship" poll:
+
* Dropdowns in the game are now actually fully skinned for the first time, making them consistent with the rest of the GUI.
** Vs-Hull multipliers from 2.4 => 3.2.
+
** They also use the TMPro text to show their text, making their text sharp, too.
*** For reference, that's against Light (Fighter), Polycrystal (Bomber), Heavy (... a lot of things), and UltraHeavy.
+
** Their scrolling speed is also finally reasonable when you use the mouse wheel, too.
*** Eyebots have 3.2, and a somewhat lower base-dps, but can shoot through forcefields.
 
** Seconds-per-salvo from 3 => 9.
 
** Base Attack Power from 600*mk => 1800*mk. 
 
*** So that's the same dps as before (aside from the multiplier increase), but higher alpha capacity for hit-and-run using their radar dampening, etc.
 
** Base Energy Use from 100 => 50, because with the 1.75x ship cap the default energy use (100) was kind of excessive.
 
** Base Metal+Crystal cost from 90+90 => 75+75 (that's mkI).  More in keeping with the dies-due-to-light-breeze-when-it-can-catch-them nature of the ship.
 
** And the AI is really happy about this part: the Space Plane is now immune to AoE damage.  That's bargained down from immune-to-gravity, so be happy.
 
  
* Vampire Claw, also in recognition of runner-up-for-worst-ship:
+
* The fortress and experimental fabricator now both have proper graphics implemented.
** Base Health from 5000*mk => 10000*mk. 
 
*** Previously they only had 4M cap-health, which was below even stuff like eyebots.  Kind of rough for a melee ship even with self-regen.  Now at 8M they're still really low compared to most fleet ships.
 
** Now have cloaking.  Be afraid.  Bring tachyons.  And garlic.
 
*** Note that this means that games with cloaking ships disabled won't have claws.  But any game already started that has them will continue having them, regardless of that setting.
 
** Base Energy Use from 200 => 160.
 
** Base Attack Power from 650 => 850.
 
** Added Artillery to the hull types this has a bonus against (om nom missile frigate tasty).
 
** Now has a 0.3x multiplier against the command-grade hull type.
 
  
* Youngling Tiger:
+
* We've done EXTENSIVE improvements to the GUI system, with a whole new GUI pipline that is massively more efficient.
** Base Metal+Crystal from 40+40 => 25+25, same as commandos and weasels.
+
** Some more details are here: http://arcengames.com/ai-war-2-v0-400-released-usability-and-the-gui-pipeline/
  
* Youngling Vulture:
+
* The sidebar is back, as well, even though it doesn't look great yet.
** Base Metal+Crystal from 40+40 => 25+25, same as commandos and weasels (and tigers, now).
 
  
* Spire Gravity Drain:
+
=== Misc ===
** Base Metal+Crystal from 0+3000 => 500+1000.  These were tied for most expensive fleet ship, and 2x (or more) as expensive as all but 6 other fleet ship types. Wasn't really anything to justify that.
+
* Fixed a bug where saves triggered in the save menu could happen while some changes to gamestate were still ongoing, leading to the data being saved in an inconsistent (and sometimes non-loadable) fashion.
 +
** Also added a warning message that will show if this particular corruption happens again, though it shouldn't be able to.
 +
** Thanks to BadgerBadger for the report and save.
  
* Spire Gravity Ripper:
+
* Fixed a bug that could cause a hang in the mapgen logic.
** Base Metal+Crystal from 1800+1200 => 1000+500.  Was similar to the grav drain's situation.
+
** Thanks to drspikes and BadgerBadger for reporting.
  
* Spire Armor Rotter:
+
* Fixed a bug where various internal tech-groupings were showing as selectable menus (ironically named "Not Shown").
** Base Metal+Crystal from 800+1900 => 450+900.  Was 3rd most expensive.
+
** Thanks to BadgerBadger for reporting.
  
* Space Tank:
+
* When there is invalid data somewhere on trying to load a ship that does not exist, the game now does a better job telling you what the heck is happening. This would mainly be something helpful to modders and us devs.
** Base Metal+Crystal from 1100+0 => 600+100.  Was 5th most expensive, and more expensive than bombers, now slightly less expensive than bombers.
 
** Base Attack Power from 2600*mk => 2300*mk.
 
** Vs-Hull-Type multipliers from 3.2 => 6. 
 
*** Bombers have 6.  Space Tanks now have a roughly 30% higher base-dps, since the general idea is for bonus ship types to be 30-50% more useful than triangle types.
 
** Effective range from 4800+200*mk => 6300+200*mk.  Since they're so slow.
 
  
* Grenade Launcher:
+
* Put in massive numbers of performance improvements in how the GUI interfaces with unity.
** Base Energy Use from 400 => 150.  It had twice the cap-energy-use of the next highest fleet ship type.
 
  
* Sentinel Frigate:
+
* Put in a bunch of new error checking on the GUI side, so that if things are set up wrong at any point, it now yells instead of failing silently.
** Base Attack Power from 14000*mk => 31000*mk.  It had a cap-dps (base=max for this one) of 44k, which was really laughable.  100k is bit on the low end for a type with no bonus of any kind, but it is an infinite-range ship.
 
  
* Made end-of-Fallen-Spire spawns yet more enthusiastic, due to the opposition they sometimes face on 10/10. That AI sure is stubborn...
+
* Tractor turret tractor-multiplier from 30 => 3.35, which is slightly more than enough for one squad of MkI tractors to indefinitely hold one cap (10 squads) of MkI fighters. Previously it could hold... more. A lot more.
 +
** Tractor effectiveness is also now reduced by the tractor turret "squad" taking losses.
  
* Dyson Antagonizer (hybrid plot) :
+
* Put in some logic to prevent minor gc allocs related to the galaxy map when you're not viewing the galaxy map.
** Now tries to be built somewhat closer to the AI's border.
 
** Health from 80M => 40M.
 
** The more dangerous values may be restored for Advanced Hybrids or some other option in the future, but the previous string of buffs to this plot was proving too much for normal.
 
  
* Knowledge Raiding:
+
* Fixed a bug in the last couple of versions where ship animations were not always playing when there were a ton of ships on a planet.
** Now scales more granularly with difficulty (for example,previously 9.3, 9.6, and 9.8 all had the same intensity of response as 9; no longer).  This somewhat increases the difficulty of k-raids on non-integer difficulties.
+
** Thanks to BadgerBadger for reporting.
** Now considers the ship cap of ships being spawned when deciding how many to spawn, so a laser gatling doesn't "cost" as much as a fighter, but a Maw "costs" quite a lot more.  This makes the difficulty of k-raids not nearly as variable based on what bonus ship types the AI has, or the unit-cap-scale being used.
 
** Now only the AI controlling the planet spawns response ships, but spawns twice as many, rather than both AIs spawning ships separately.  This makes the composition different if the AIs have different bonus types.
 
** Now the spawns happen every 10 seconds instead of (11 - Difficulty) seconds, and the strength is multiplied by 2.5 to roughly normalize it to what diff 7 was doing.  The base strength of the spawn is still linearly proportional to difficulty, but this second difficulty-based factor which made it heavily higher-than-linear is no longer there.  That really steep ramp-up at the end was good before, but would be excessive with the other changes below.
 
** Now, the more knowledge you raid for, the more intense the response.  Up to 1 planet's worth of knowledge there is no change, after a full 2 planet's worth of knowledge the response is 1.5x as intense (having increased linearly during the raids after the first planet's worth), at 3 planet's two times as intense, at 4 2.5x, and so on.
 
*** In multiplayer games this ramping-up is adjusted, e.g. if 3 players have raided 9000 total knowledge (3000 each), the ramp-up is the same as in a single-player game where that player has raided 3000 knowledge.  Multi-homeworld players only count as 1 for this purpose.
 
*** Now each spawn makes a number of "wild rolls" which apply various effects to what happens.
 
**** These range from "nothing" to "make it spawn around the planet edge" to "multiply it by 1.5" to "make it all raid starships" to "make it spawn on a neighboring planet", etc.
 
**** At first there is only 1 roll per spawn, but this goes up by 1 for every 1500 knowledge raided.
 
** If you have Advanced Logging enabled, each spawn will generate an entry in the "CounterSaboteurSpawns.txt" log file; it may not make sense to players but is very helpful to us if you submit it with your feedback.
 
** For the detailed discussion see http://www.arcengames.com/forums/index.php/topic,9906.0.html , but in brief the rationale is:
 
*** K-raiding's main purpose is to let players dig themselves out of a hole by gaining power without increasing AIP.
 
*** K-raiding also needs to not be a way of circumventing normal AIP-gain on a wide scale.  To some extent it's good; avoiding 200 AIP via it is a bit much.
 
**** If a player gets in a hole multiple times in a row, it's ok if the k-raiding gets harder and eventually either they die to it (sparing them a longer game) or they have to bite more AIP (making progress, probably towards sparing them a longer game).
 
*** If possible, K-raiding also needs to not be boring.  Partly that means making it so that "playing optimally" doesn't involve 10+ k-raids in a game, and partly that means making the actual AI response to the raids more interesting.
 
*** In general, the balance of all this is tentative.  It looks right in our testing, but it may be too easy or (perhaps more likely) too hard.  Please give us feedback and we will continue to refine towards better balance and more fun :)
 
  
* Scout Starship:
+
* Bunches of performance improvements have been made to the movements of squads and their icon gimbals.
** Base Health from 120k/480k/960k/1.2M => 300k*mk.
 
** Base Armor Rating from 1500 flat => 1500*mk.
 
** Tachyon Range from 750/950/1150/1550 => 2000*mk.
 
** Ship Cap from 5/4/3/2 => 5/5/5/2.
 
** Energy Use from 2000/4000/6000/6000 => 2000/2000/2000/5000.
 
** Base Move Speed from 224/464/704/704 => 240/480/720/720.
 
** Now can cloak-boost up to 20*mk allied cloaked ships (range: 4k/5k/6k), except the MkIV which isn't being given cloak-boosting due to potential issues with a tachyon-immune ship having a lot of cloak-boosting.
 
** The MkIV Scout Starship:
 
*** Now provides counter-missile coverage.
 
*** Will now not use the evade-after-exiting-wormhole logic at all, since it is permacloaked (the non-starship MkIV Scout has the same attribute already).
 
  
* Spirecraft-Medium and Broken-Golems-Medium no longer have a score penalty.
+
== Version 0.301 The New HDR Visual Stack ==
 +
(Released May 30th, 2017)
 +
* Engine Damage Repair has been implemented.
 +
** Works similarly to hull/shield repair, but does not actually cost metal.
  
* Fortresses (mkI, II, and III; human and AI) now have a radar dampening range of 30000. Since most ships have ranges lower than that it doesn't affect them, but this prevents sniping them (notably with zenith-bombards and sentinel frigates) from way out of range.
+
* Changed balance_seconds_per_fight to 15 from 20, and balance_seconds_per_shot to 2 from 4, massively speeding up the feeling of combat from what it felt like in the prior version. It's now much more like what it was in past versions, without having such bullet spam in giant battles that there's a bunch of slowdown.
 +
** Thanks to BadgerBadger for reporting.
  
* Now when a unit dies while under the influence of a parasite infestation ("reclamation damage"), those parasites will behave far more efficiently:
+
* Fonts are now sharper in the GUI, although there's still room for improvement. Blurriness causing legibility problems is a definite issue to some extent still.
** If there are enough of them on the ship to take it over (that is, reclamation damage is >= half the ship's max health) then enough will remain to perform the takeover.
+
** We've also updated the font on the small buttons at the bottom of the screen to be more readable, although we still want to update that even further in the future.
** Any remaining parasites (which means all of them, if there aren't enough to take the dying ship over) will spread to nearby (within 2000 range units) valid targets that have not been fully infested.
+
** Thanks to Sounds and BadgerBadger for reporting.
** The end result is that while the exact same amount of reclamation damage is being done, the efficiency of it actually doing something in condensed fighting is way more satisfactory, particularly towards the end as all the partially-reclaimed ships die off and the parasites all pile up on the survivors.
 
*** In fact, it's possible that reclamators are now back to being OP, but not nearly as much as in the days when a single leech-starship salvo could "tag" 40 ships for guarunteed reclamation.  Your feedback on the new balance will be appreciated.
 
  
* Youngling Nanoswarm:
+
* New backgrounds for dropdowns.
** Base attack power from 400*mk => 800*mk.  Still not much at all, but it allows:
 
** Inherent "damage does 2x as much reclamation damage" rule removed.  So it does the same amount of RD as before, just without the fiddly rule (which is now completely gone, the  nanoswarm was the only thing using it).
 
  
* Mines:
+
=== HDR Graphics! ===
** Base Health is now 16 times the damage done, to allow 16 detonations before "wearing out" instead of the 2/3 that were probably common before.  There are 16 mines in the graphic: the logic is unassailable, no?
+
* We had thought this wouldn't be possible with our visual style as recently as one version ago, but it turns out it is!
** Standard Mines:
+
** Also, prior to version 5.6 of unity, it ''literally'' wasn't possible at all, at least not without losing hardware MSAA support (which is the best sort of antialiasing available these days, and fastest).
*** Base Metal+Crystal cost from 360+1200 => 20+40, which puts them at about 2x the cap m+c cost of zenith autobombs (which are in many ways simply mobile mines).
 
**** Note that the build time for all 3 mine types is still 90 seconds.
 
** Area Mines:
 
*** Base Metal+Crystal cost from 1080+3600 => 40+80.
 
*** Now hit a maximum of 10 targets with their aoe.
 
*** Base Damage per hit from 7500 => 52500 (half as much damage as a normal single-target mine).
 
** EMP Mines:
 
*** Base Metal+Crystal cost from 720+2400 => 60+120.
 
*** Fixed an error in the tooltip: it said the paralysis was 60 seconds long, but it's really only 10 seconds.
 
  
* Harvester Exo-Shields, in honor of winning the 4th "Worst Unit" poll (and the first one for which it was eligible) :
+
* The game now uses HDR graphics for the main camera, allowing for a better color range and fancier lighting effects, etc.
** Now has cloaking.
+
** One of the most obvious examples is the way the rings on the end of the laser turrets glow very bright blue now, whereas before they would white out fast and so we had to keep them pretty non-bright.
** Now cloaks the protected harvester.
 
** No longer halves production of protected harvester.
 
** Energy Use from 1000 => 5000.  At maximum non-ZPG energy efficiency (running everything off mkIIs) that's a bit under 4 (m+c)/s to run, or 1/5th of a mkI harvester.
 
** The result is that:
 
*** They have a much lower operational cost which no longer scales up with higher harvester marks or with your energy efficiency.
 
*** More importantly, they allow a new tactical choice: do you want attacking enemies to potentially be distracted some/all of the harvesters in the system, or do you want to make sure they stay focused on the command station or some other objective?  Some defensive setups get much higher efficiency when the enemy stays focused in a particular radial or linear area, and this can help with that.  On the other hand, sometimes the AI's tendency to split up after harvesters is a big help.
 
  
* Metal/Crystal Harvester II/III, in honor of getting 2nd place (by one vote) in the first "Worst Unit" poll in which they were eligible:
+
* We're using a new reflection cubemap against our scenes, and have tuned a ton of the materials to have better values to give themselves really high quality results without an over-blown specular highlight at certain angles to the main scene directional light.
** A bit of background:
+
** Kinda related to this, we're doing new tonemapping now, which maps back down from HDR to the LDR range better, and helps give us a richer color without things having to be so darn glowy _everywhere_.
*** Unlocking Econ Station II costs 4000 knowledge and gives a total of 576 m+c above the "standard" command station (econ I) if you build all 6, and that bonus is still relevant if you unlock Econ III. That's about 0.144 (m+c)/s per knowledge point.
 
*** Unlocking Econ Station III costs 5000 knowledge and gives a total of 1536 m+c above the "standard" command station.  Benefit/K Ratio is about 0.3072.
 
*** Previously, unlocking mark II of either metal or crystal harvester cost 3250 knowledge and, assuming a mid-game situation of 13 total planets (i.e. all 6 of econ II and econ III could be placed) with an average of 2 spots of that resource per planet (ymmv, but it's probably not far off) gave a total of 208 resources above mkI harvesters.  Benefit/K Ratio was about 0.064.
 
*** Previously, unlocking mark III of either harvester cost 4000 knowledge (but really 7250 since you don't get the benefits of mkII and mkIII at the same time like you do with econ stations) and, across 26 ressource spots, gave a total of 416 resources above mkI harvesters.  Benefit/K Ratio (assuming 7250 "real" K cost) was about 0.0574.
 
** So, to do something about this pretty vast disparity:
 
*** Harvester II:
 
**** Knowledge cost from 3250 => 2000.
 
**** Production from 28 => 31 (so +8 => +11).
 
*** Harvester III:
 
**** Knowledge cost from 4000 => 2500 (so 4500 total).
 
**** Production from 36 => 73 (so +16 => +53).
 
***** Yes, that's a lot, but that's what parity with econ III looks like.  And nerfing econ III would have been an outrage considering how much waiting-for-resources happens on challenging games _with_ econ IIIs.
 
** In short, harvester upgrades should now be competitive with econ station upgrades.  Getting mkIII in both harvesters also now costs the same amount of knowledge as getting mkIII econ stations, but has a somewhat lower "barrier to entry" in that the individual knowledge costs are smaller.
 
*** Further balance feedback is, of course, welcome.  This change will have a fairly dramatic impact in favor of harvesters on multi-HW games, for one, but it's primarily important that choices be interesting in single-HW games and adjustments can be made for the less common scenarios (as long as multi-HW doesn't become excruciating, of course).  Of more concern is the impact on multiplayer games if all players gift all their harvesters to one player who upgrades to mkIII harvesters (and gives resources back) and other such tomfoolery, but that can also be adjusted for as the need arises.
 
  
* Warp Jammer Command Stations, in honor of tying for third in the first "Worst Unit" poll it was eligible for:
+
* The bloom effects have been completely replaced with another set, which is able to use a lot more precision in what it does.
** Now prevent their planets from putting adjacent AI planets on alert. 
 
*** Those adjacent planets can still be put on alert any other way (for example, but another bordering human world without a jammer or by a significant human presence on the planet or a different adjacent planet).
 
*** But this still allows a new strategic choice in shaping the AI's response to your presence.
 
*** Notably, this could be used on a planet adjacent to a particularly hard-to-crack AI planet to allow you to get supply on the target planet and thus deploy turrets and such without putting the target planet on permanent alert (which is normally a distinct no-no for core worlds and homeworlds).  But beware, if the jammer is destroyed, its effects go away.  Also, jammers are far from free.
 
** Also fixed a longstanding bug where these counted (for display purposes only, apparently) as an AI reinforcement warp gate.
 
  
* Missile shots (from the missile frigate, MLRS fleet ship, MLRS turret, Missile Turret, Anti-Armor Ship, etc) now can acquire a new target from their firing ship's target list if their current target is destroyed or otherwise no longer available (note that all shots insta-hit a ship trying to leave the planet, but missiles now won't "overkill" them in that case).
+
* The game now uses the bloom and tonemapping from the relatively-new [https://www.assetstore.unity3d.com/en/#!/content/83912 official unity postprocessing uber-stack].
** Bear in mind that the parent ship's target list does not necessarily include all viable targets, and is often limited to 50 nearby targets, but this still significantly decreases DPS wastage for missiles (which generally move fairly slowly)
 
  
* Mobile Repair Stations, in belated honor of doing well in the last "worst unit" poll
+
==== Known Issues ====
** Maximum simultaneous repairs from 100 => 20.
+
* Thanks to the tonemapping, the backgrounds are presently too bright relative to the ships. We simply didn't have time to get to that, and didn't want to hold up the rest of this release over that.
** Repair rate reduced.
 
** Time it must remain stationary before starting repairs from 60 seconds => 5.
 
** Now has cloaking.
 
*** This doesn't break when repairing, but beware AI tachyons.
 
  
* Metal/Crystal Harvester Upgrades:
+
==== AIW2ModdingAndGUI Capability Updates! ====
** MkII production from 31 => 30.
+
* Since this [https://www.assetstore.unity3d.com/en/#!/content/83912 unity postprocessing uber-stack] is freely available, and even open source at that, we're now able to show you actually what ships would really look like in the real game when you are working in the AIW2ModdingAndGUI project.
** MkIII production from 73 => 55.
+
** This is enormously important in particular for being able to reliably set up the space nebula backgrounds, which have their characteristics altered some by the post-processing stack and which you need to be able to see in order to properly create them.
** Results/Rationale:
+
** As part of this, we're no longer using Amplify Bloom or Beautify.
*** Assuming 12 resource spots on the homeworld and 4 resource spots per captured planet (the latter is a well-attested average, to the author's surprise).
+
** Also as part of this general work, we've updated all the various shaders and ship models and materials in the examples folder there.
*** MkII upgrades are better than EconII if you have 1, 2, 3, or greater than 12 planets, but are worse from 4 to 11.
 
*** MkIII upgrades are better than EconIII (plus EconII since it's unlocked on the way) if you have 1-4 or greater than 13 planets, but are worse from 5 to 12.
 
*** Harvesters still have the advantage of not occupying the command station "slot" but also still have the disadvantage of being at the mercy of mapgen: sometimes you don't have the luxury of picking a planet with 4+ resource spots instead of a planet with 1-2.
 
*** All in all, the question of "do I upgrade harvesters or econ stations?" should now be more situational and map-based.
 
  
* Fixed a null exception that happened when gifting a spirecraft mining enclosure to another player.
+
* To aid in background creation, as well as in general giving more examples of ships and how their shaders are used, there are a bunch of new ships that have been added to the example project: data center, lightning corvette, mlrs corvette, spider, and starship constructor.
  
* Neinzul Enclave Starships, in honor of winning the fifth "Worst Unit" poll.
+
=== Bugfixes ===
** Base Armor Rating from 1000 flat => 1000*mk.
+
* Fixed a bug in the improvements to shot staggering that caused divide-by-zero errors when the game was paused (because it actually runs zero-length frames during that time so the game can still respond to you).
** Base Health from 500K*mk => 3M*mk.
+
** Thanks to BadgerBadger for reporting.
*** This gives an individual one 80% the health of an individual corresponding fleet-boosting starship; not using cap comparisons here since these are not military ships (i.e. ships with an attack), but for reference those fleet-boosting starships have 2x as much cap.
 
** Now have radar dampening of 8000/7500/7000/6500.
 
*** Between this, the armor, and the health it should be a lot more reasonable to keep these alive unless you get overwhelmed, in which case these should die (cloaking was experimented with, but was way too exploitable; that much cheese requires cloaker starships).
 
** Knowledge Costs from 0/3000/5000/10000 => 0/2000/2000/14000.
 
*** This is because the first two upgrades are purely for in-the-field construction (which is worth something) and the last is a game-changing ability to have mkIV production capacity without an advanced factory.
 
** The rate at which they construct ships used to be the same as a space dock, and is now 4*mk as fast as a space dock (so 16x for a mkIV).
 
*** This is because previously using these efficiently basically required engineer support (specifically, engineer mkIII support).  Engies still help, but it's not as critical.
 
  
* Armored Warheads, in honor of placing second in the fifth "Worst Unit" poll:
+
* Fixed a variety of errors that could happen with accidental extra calls to clean up objects (those extra calls are GOOD, since they often are coming from a few sources that need to double check things properly). This should also help performance minorly when objects are destroyed compared to pre-0.300 versions.
** Base Attack Power from 300k/1.5M/2.4M => 1M*mk.
+
** Thanks to BadgerBadger for reporting.
** Explosion Size from 1500/1250/750 => 1500*mk.
 
** Now do 10k*mk armor damage, enough to strip all the armor off most units that aren't some kind of boss fight.
 
** In general you still aren't going to want to use these a lot, it's still a "rot your teeth" sort of unit where heavy use is rarely a good sign for how well your game is going.  But these should be more useful than they were, for sure.
 
  
* Lightning Warheads:
+
* Fixed some bugs that could prevent shield repair.
** Base Attack Power from 300k/1.5M/2.4M => 800k*mk.
+
** Thanks to BadgerBadger for the report and save.
*** Just keeping up with the armored warhead changes; only a significant change to the mkI, really.  So the armored ones pack about 25% more punch, for whatever that's worth.
 
** Explosion size changed to match the new armored warheads: 1500/1250/750 => 1500*mk.
 
  
* Metal/Crystal manufactory input and output scale multiplied by 10 (so consumes 200 of a resource to produce 140, instead of 20 for 14), in honor of placing 3rd in the fifth "Worst Unit" poll.
+
* The sidebar is removed temporarily, since it was so busted anyway and overlapping things strangely.
 +
** Thanks to BadgerBadger for reporting some of the related issues it was having.
  
* There's now a galaxy-wide population cap on each of the three types (enemy-to-all, player-ally, and ai-ally) of Dyson Gatling, equal to the current effective AIP.
+
* Fixed some bugs that caused the build menu buttons to collapse into a pile in the bottom-left of the screen.
** So if AIP is 80, there could be 80 enemy-to-all gatlings, 80 AI-ally gatlings, and 79 player-ally gatlings and if the Dyson was currently player-ally it would still spawn another player-ally gatling before ceasing to spawn until either the player-ally gatling count went down or the AIP went up
+
** Thanks to BadgerBadger for reporting.
  
* Amended the "if base max health >= 1,000,000, then immune to fusion cutters" rule to exclude fleet ship types whose mkI versions don't pass that >= 1,000,000 threshold (to prevent situations where fusion cutters were getting way less useful against higher-mark AI planets, etc). The fleet ship types that still have the immunity due to health:
+
* Reworked the "Quit Game" button on the master menu to no longer be a "immediately chuck the gamestate into the grinder" function, but rather "tell the game that once it's done executing the current sim frame to close the gamestate". This avoids various race-condition null exceptions when quitting while the sim threads are going.
** Spire Stealth Battleship
+
** Thanks to BadgerBadger for reporting.
** Spire Blade Spawner
 
** Spire Maw
 
** Spire Tractor Platform
 
  
* Ships killed by a zombie-reclamator no longer spread any excess reclamation damage they have to other ships. The spreading mechanic was intended to make non-zombie-reclamators more reliable; the zombie reclamators were already plenty powerful enough :
+
* Improved the inter-cluster connection logic of Clusters to be much less likely to draw long connections that overlap other clusters.
 +
** Thanks to BadgerBadger for reporting.
  
* Teleport Battlestations, in honor of doing pretty well in the last worst-unit poll:
+
== Prior Release Notes ==
** Base Max Health from 14k*mk => 28k*mk (bringing it from 4.8M cap-hp, which is basically the minimum for a fleet ship, to 9.6M cap-hp where about 18 other types will be lower than it).
+
[[AI War 2:Earlier Than Early Alpha]]
** Base Attack Power from 400 => 700 (bringing it from 39.2k cap-base-dps and 94k cap-max-dps, where some ships have a base dps higher than that max-dps, to the midst of the respectable-attack types)
 
 
 
* Marauders and Resistance Fighters can now be targeted by ships that cannot target small units (Bomber Starship, etc).
 
 
 
* Since the Riot Starship MkIII did pretty well in the last worst-ship poll:
 
** Gave them tachyon coverage matching the MkIII scout starship.
 
** Added a couple additional options for its highest-level hardpoint:
 
*** Grav Tazer
 
**** Similar to the Riot IIs tazer but also applies the "halt" effect (same as the grav ripper) to everything hit, making it take longer for even paralysis-immune ships to get away.
 
**** Note that these share the same planet-wide stagger category as Riot II tazers, to prevent these making permanent tazer lock possible again.
 
*** Grav Generator
 
**** Basically a ship-mounted grav turret, requires research of Grav Turret Is.
 
 
 
* CPAs now don't get queued up if the result based on difficulty, AIP, etc would be way too small (under 200 ships, for high caps, adjusted appropriately) (once a CPA is announced, however, it will happen).
 
 
 
=== Rebalancing High (and-not-so-high) Difficulties ===
 
 
 
* Since the many changes to high-difficulty wave calculations a few months ago the 9+ difficulty range has gotten a fair bit of play and generally looks easier than it has been.  And just recently the game was [http://www.arcengames.com/mantisbt/view.php?id=8373 beaten fair-and-square on 10/10].  In response to that bug:
 
** A Diff 9+ player will seed 1 less data center than normal (but no fewer than 1 if it would have seeded any).
 
** On Diff 8+ the first step of the [[AI War:Why Do Enemy Waves Get So Large?#How Wave Sizes Are Calculated|wave size formula]] has been changed from:
 
*** ( AIProgress * AIDifficulty ) / ( 13 - AIDifficulty )
 
*** to ( ( ( AIProgress * 0.8 ) ^ 1.1 ) * AIDifficulty ) / ( 13 - AIDifficulty )
 
*** This produces very similar sizes in the early game but adds a gradual exponential increase as AIP gets higher, having both the effect of making later planet captures not feel as much less significant (in terms of wave size) than early planet captures and increasing the overall "throw weight" of the AI's attacks on these higher difficulties.
 
** On Diff 7+ the randomization of wave intervals (which feeds directly into step 5 of the wave size formula) has been changed to consider the number of planets that the AI can send waves against (and thus the probable defensive power of those worlds, i.e. chokepoints, and the viability or lack thereof of smaller waves):
 
*** If there are 6+ wave-targetable planets it uses the normal (pre-5.036) formula of adding a random number from (AIDifficulty*-60) to (AIDifficulty*120).
 
*** If there are 5 wave-targetable planets the random is from (AIDifficulty*-30) to (AIDifficulty*120).
 
*** If there are 4 the random is from 0 to (AIDifficulty*120).
 
*** If 3, from (AIDifficulty*30) to (AIDifficulty*120).
 
*** If 2, from (AIDifficulty*60) to (AIDifficulty*120).
 
*** If 1, from (AIDifficulty*90) to (AIDifficulty*150) (making it actually able to hit single-chokepoints harder than it used to).
 
*** The upshot is that it makes the AI a little "smarter" about figuring out that it may as well not bother sending small waves against concentrated defenses and should just save up for stronger attack forces.  Accordingly, since the AI on <7 is intentionally a bit dumb it doesn't get this new rule at all.
 
 
 
* Previously, an AI of difficulty 9.3 or higher would automatically be one tech level higher than normal.  This was generally fine but did cause a pretty massive difficulty cliff between 9.0 and 9.3, and we prefer to keep each step a relatively smooth progression from one step to the next.  Now:
 
** That automatic tech level increase has been removed.
 
** AI's with difficulty > 9 get an additional reduction to their tech thresholds (on top of the normal difficulty*10 one) of ((difficulty-9)*200). So the threshold for reaching tech 2 is:
 
*** 9 = 210 (same as before).
 
*** 9.3 = 148.
 
*** 9.6 = 85.
 
*** 9.8 = 43.
 
*** 10 = 0 (so diff 10 starts at tech 2).
 
*** Of course, that makes the thresholds for tech 3 and tech 4 much higher since it's using the normal base of 800 and 1200 for those instead of 300 and 800 (which they used to use due to automatically being one tech level higher), thus actually making things a lot easier for those higher AIPs.  See next change.
 
** To add back some of the difficulty but in a more granular fashion than before, on diff 9+ (not just 9.3+) waves will have a portion of their fleet ships "promoted" to the next tech level according to how close AIP is to the next tech level.
 
*** So if you're playing on 9.6 and have 50 AIP, approximately 50/85= 58% of the mkIs fleet ships in a wave will be promoted to mkII.
 
*** Of course, they'll also run into the tech level multiplier which will reduce their actual numbers significantly, but roughly 58% of the wave's "strength" of that ship type was spent on the higher tech level.
 
 
 
* Previously carriers were way less dangerous than the ships they contained, tending to make a wave + a stack of carriers feel a lot more like that many back-to-back waves.  This is better than the pre-carrier condition of waves capping out at 2000 ships, but still tends to cause the actual difficulty of waves to increase much much slower with the size of the wave than is desirable.  So:
 
** Now gets +1 shots-per-salvo per 16 ships inside the carrier (that's on high caps; per 8 ships on normal, 4 on low, 2 on ultra low).  So a carrier containing 1000 ships on a high caps game has 63 shots per salvo.
 
** Base Attack Power from 1400*mk => 19200*mk (the base strength of 16 fighters on high caps, but without the fighter's bonuses).
 
** Seconds-Per-Salvo from 2 => 4 (same as fighter, cuts down a bit on shot-spam).
 
** Can no longer fire as though ignoring through forcefields, but it can still move through them.
 
** Shot type from dark matter => energy bomb as the idea is not for these to be easily counterable via counter-dark-matter turrets.
 
** Hull-bonus against Turret from 0.1 => 1.
 
** Hull-bonus against Structural from 0.1 => 1.
 
** Hull-bonuses against Scout and Command-Grade staying at 0.1.
 
** In summary, a full carrier is now pretty dangerous, but the firepower is still significantly lower (by about 3x, probably) than its total contents.  That's fine as they'll probably still feel more powerful than you want them to be.
 
 
 
* Previously it was possible for AI Homeworlds to get really brutal combinations like an AI Eye + 3 (or more) Core Raid Engine guard posts (which is pretty much the RNG saying "good game" on higher difficulties but you don't know until you scout it), or nothing really all that threatening at all.  Randomization is core to AI War, but this particular bit of it could literally be the difference between a fairly easy endgame and a mathematically-impossible-to-win situation.
 
** Now, for AI Homeworlds, it randomizes the three most brutal structures (Core Raid Engine, Core CPA, and AI Eye) separately from the rest of the structures:
 
*** On Diff 9+ it always gets two picks from this new set.  So you could get an Eye + a Core Raid, or two CPAs, or two Eyes (which is actually kind of nice to you since they don't really stack), or whatever.  But not 3 Core Raids.  And not none of the above.
 
*** On Diff 8+ it randomly rolls (per homeworld) between one and two picks.
 
*** On Diff 7+ it always gets one pick.
 
*** Below Diff 7 it randomly rolls between zero and one picks.
 
** As the set of core guard posts expands in the future (expansions, mainly), this "brutal" set can also be added to.
 
 
 
=== New Drones For The Neinzul Enclave Starship ===
 
 
 
* Didn't want to let the AI have _all_ the fun, so: Added 4 new drone ship types that only the Neinzul Enclave Starship can build:
 
** Neinzul Laser Drone I-IV
 
*** MkI and II require Laser Turret II technology.  MkIII and IV require Laser Turret III technology.
 
*** Has 5x bonuses against the hull types that Laser Turrets have a bonus against.
 
** Neinzul Needler Drone I-IV
 
*** MkI and II require Basic Turret II technology.  MkIII and IV require Basic Turret III technology.
 
*** Has 5x bonuses against the hull types that Basic Turrets have a bonus against.
 
** Neinzul MLRS Drone I-IV
 
*** MkI and II require MLRS Turret II technology.  MkIII and IV require MLRS Turret III technology.
 
*** Has 5x bonuses against the hull types that MLRS Turrets have a bonus against.
 
** Neinzul Missile Drone I-IV
 
*** MkI and II require Missile Turret II technology.  MkIII and IV require Missile Turret III technology.
 
*** Has 5x bonuses against the hull types that Missile Turrets have a bonus against.
 
** A Neinzul Enclave Starship can build any of these up to its own mark level once you have the corresponding turret technology, just select an enclave and click the "DRONE" tab on the buy menu (similar to how the Starship Constructor has a "RIOT" tab for the Riot Control Starships).
 
** Stat wise:
 
*** Each drone only lives 30 seconds; no repair, no attrition-stops-on-low-power, no regeneration chambers, nada.  It's got 30 seconds to hurt something.
 
*** Drones do not have the lightning speed of the normal Youngling types (not wanting these to horn in on what makes the younglings special).  One consequence is that the "mothership" has to be within a certain range of the stuff you want hurt.
 
*** Drones are pretty flimsy, but dying from enemy fire isn't much of an event for these.
 
*** Ship cap is about 25% of normal because these aren't supposed to be like a whole new ship unlock, they're just a bonus on top of what you already get for turret (and enclave starship) research.
 
*** Drones cannot traverse wormholes.
 
*** Drones are super, super cheap in both metal/crystal and energy.
 
*** Attack-power-wise on an individual basis they're about as strong as a normal fleet ship with 5x bonuses, making them fairly effective against the stuff with those hull types.
 
** The motivation behind these:
 
*** High-difficulty play can make it feel very painful to spend knowledge unlocking something that doesn't give an offensive boost.  That's fine, but turrets in particular could get very little love due to their... very limited offensive use, shall we say.  So having turret research provide a modest amount of offensive boost (if you have CoN and thus the Neinzul Enclave Starship, anyhow) seemed like a fun way to do things.  And we've already done the cross-tech thing with having turret research unlock spire capital ship modules in LotS, so doing a bit more of it seemed fine.
 
*** Despite the fairly massive buffs Neinzul Enclave Starships received not long ago there's still been a lot of feedback that they're underwhelming and that they don't have a lot of point.  Well, now they can build lots of little sharp points that will really annoy the AI for you, and they're the only way to build them.
 
*** But this is also not so powerful that you have to do turret research or even use the enclaves at all, it's just making it nicer if you do.
 
 
 
=== Better Scaling For Multi-Homeworld Games ===
 
 
 
* Previously CPA size was multiplied by the number of (non-Helper-role) human players, fixed to be multiplied by the (starting) number of human homeworlds.
 
 
 
* Previously if there were multiple human homeworlds (and thus human ship cap was much higher) each AI player would send that many extra waves (and various threats like normal CPAs and exo-attacks would be multiplied in size accordingly, though not always linearly). 
 
** This was generally fine but:
 
*** Particularly on high homeworld counts that could lead to a ton of waves all smaller than the carrier threshold that would nonetheless add up to larger than the max number of AI ships that the game generally allows on a planet (5000), causing those extra AI ships to just disappear. 
 
*** Also, now that carriers will be more of a threat, it would be nice for them to see use in those circumstances.
 
*** Some important varieties of AI strength were not being increased at all, like: Reinforcements, Counterattack Guard Post spawns, Raid Engine spawns, Core Raid Engine spawns, Core CPA Guard Post spawns,
 
** So now:
 
*** If there are one or two human homeworlds, the number of waves per AI player is calculated the same way as before: one and two, respectively.  But if there's more than that it still doesn't go above two and instead increases the size of the individual waves proportionately.
 
**** So 3 HWs means twice as many waves as single-player (instead of three times as many) but they're 1.5x as large as they would have been. 4 HWs means twice as many waves that are 2x as large, and so on.
 
*** Reinforcements, Counterattack Guard Post spawns, Raid Engine spawns, Core Raid Engine spawns, and Core CPA Guard Post spawns now use the same scaling-with-HW-count as is used for normal CPAs: multiply by 1 + ((HW_count-1)*0.33).
 
**** This isn't 1:1 because the power increase from multiple homeworlds isn't (closer in MP, but the problems of coordination and efficiency are in play there).
 
 
 
* When Spirecraft are enabled and there's more than one human homeworld, the number of asteroids seeded will go up.
 
** The main reason is that on Hard you're facing much harder exos on multi-HW, but weren't getting any additional benefit to match.  Medium was not as much of a concern, but it could use it too.
 
** The increase is 50% for each additional human homeworld, so 2 HHWs => 150% asteroids, 3 HHWs => 200%, 4 => 250%, etc.  A straight-up 1:1 was also possible but seemed excessive.  In general multi-HW isn't really a 1:1 increase, but let us know if this scaling feels like too much or too little.
 
 
 
* Spirecraft Shieldbearers:
 
** Can now be put in low power mode (shutting off their projected shield).
 
** Now their projected shield no longer shrinks as the shieldbearer loses health.
 
*** Something more like shrinking-to-90% had been considered, but that would still have resulted in stacks of them getting whittled down all at once (while still taking up ship cap) rather than dying one at a time while leaving the remaining ones at high health (depending on how they were stacked).
 
** Now have AI-only variants that can be chosen for exos.
 
*** To make them actually work with exos, this variant actually has normal guns.  They're only moderately powerful (about 1/4 as much DPS as a same-mark siege tower), but they avoid the logical problems the gunless ones had in exos.
 
*** These still have the shrink-when-damaged behavior, to make them a bit easier to handle.
 
*** Adding shieldbearers may make exos significantly harder, but that may not be a bad thing.  Let us know if you find it particularly fun or unfun; adjustments can be made.
 
** Thanks to TechSY730 and others for inspiring these changes.
 
 
 
* Spire Maw vacuum-recharge-seconds from 2 => 5/4/3/2/1.
 
 
 
* Knowledge Hacker and Ship Design Hacker collision priority set to 890 (below only stationary objects, standard/hardened forcefield generators, command stations, command station cores, and rally posts).
 
 
 
* Core CPA Guard Posts now start a timer-for-CPA instead of instantly triggering a CPA.
 
 
 
* Core CPA Guard Posts now trigger in response to >= 1 enemy human military ship being present, rather than > 1.
 
** So that Artillery Golem won't get by on the ol' "But I'm just *one* ship!" excuse anymore.
 
 
 
** EMP mines:
 
*** Health halved, which halves the number of times a single one will go off before needing to be rebuilt.
 
*** Knowledge cost from 1500 => 1000.
 
** Area mines:
 
*** Knowledge cost from 4000 => 2000.
 
 
 
* Vampire claws are now immune to being camouflaged by the Camouflager AI Type because the combination of melee and cloaking didn't work very well there (could wind up with non-decloakable enemy vampire claws just sitting on your planet for a long time).
 
 
 
* Made Maws try to vacuum their shoot-at target if for some reason vacuuming their "assist" target failed.
 
 
 
* Carrier hull type from Scout => Ultra-Heavy.
 
 
 
* Now when a unit is actively making progress on a build queue it loses the ability to be cloaked until 2 seconds after the last build queue activity.
 
** Notably, this prevents neinzul enclave starships from spamming a planet with drones (and whatever else) with impunity.  Can still FRD built non-drones through a wormhole to a target planet, though, and that's fine.
 
** Also this will break the cloak on modular ships that are building new modules, but since modules mostly can't die in combat anymore (except shield modules) and their internal build queue is disabled while they're in low-power mode, and if they're not in low-power mode and they're on an enemy planet they've probably lost cloak due to shooting at something... all told, shouldn't be a big change for them
 
 
 
* Human Forcefield generators (including hardened ones) now drop remains and can be rebuilt.
 
** Note that the normal under-construction-forcefield-generator restrictions still apply; namely that it cannot receive construction assistance if it is close to another forcefield that has recently taken damage (this was added a few months ago to prevent forcefield+engie stacks that were effectively immortal).
 
** Still, the fact that the rebuild starts at 50% instead of 0% (and is automatic if there are remains rebuilders nearby, as opposed to requiring player intervention) is a buff.
 
** Also note that this does not apply to the "player home forcefield generator" that starts next to each human home command station: those are supposed to be irreplaceable.
 
 
 
* Human command stations (other than the home command station) now drop remains and can be rebuilt.
 
** Also removed the rule where colony ships and mobile builders on the planet (or in a transport on the planet) when a human command station dies also die.
 
** That rule (and the lack of rebuildable command stations) was there to prevent exploits based around very rapidly rebuilding command stations.  It could often tie up AI attack forces much longer than would normally be possible, etc.
 
** However, one of the most unnecessarily-micro-intensive operations in the game was rebuilding lost planets because you have to build a colony ship, select it, give it a move order to the lost planet, switch to that planet, select the colony ship, select the command station type you want, and place it.  Way more player interaction than should be necessary for "rebuild what was there".  But we couldn't make it a lot easier without making those exploits possible again.
 
** So, to replace the previous exploit-prevention, now when a non-home human command station dies then it "stalls" the construction of any human command station on that planet for 4 minutes (1 minute if the station that died was a military station); during that time a new station can be placed or the previous one's remains rez'd by a remains rebuilder, but the resulting under-construction station will not actually make any progress on construction until the stalling timer has expired.
 
*** Note that all ways of removing a human station will trigger this timer: being destroyed by enemy fire, being scrapped, and being replaced by another human command station.  The latter is something of an inconvenience but the thought is that it is far less than the convenience gained by being able to automatically rebuild command stations.
 
 
 
* Remains Rebuilders no longer require supply, to make rebuilding a "satellite" planet at least possible.
 
** If this makes some wild exploits possible please let us know, but since most of the stuff that can be rebuilt requires supply anyway..
 
 
 
* Grenade Launcher grenade explosion radius from 200/300/400/500/600 => flat 500.
 
 
 
* Flak grenade (from guardians and turrets) radius from 300/350/400/450/500 => flat 500
 
 
 
* AI Guardians energy cost from 500*mk => 1250*mk; this is basically irrelevant (AI players don't have an energy model, really), but does help Impulse Reaction Emitters hurt them, giving the IRE another situation in which they are useful that isn't dependent on superweapons or something like that being enabled.
 
 
 
* Shield Bearers (the normal ones; this was already true of the spirecraft ones) are now immune to insta-kill.
 
 
 
* All non-shield modules are now immune to armor boosting (they're invincible, it'd be a waste).
 
 
 
* AI Carriers:
 
** Effective range from 6000 => 3000.
 
** Base Health from 3M*mk => 2M*mk.
 
** Thanks to Wanderer for inspiring these changes.
 
 
 
* MkII+ Basic, Laser, MLRS, and Heavy Beam Cannon turrets now have radar dampening equal to their range minus 1000 to prevent them being inevitably alpha-striked by really substantial waves.
 
 
 
* The Zenith Trader has finally yielded to the threat of sanctions and now only sells no-AIP-on-death versions of structures to the AI.  The toys will still annoy you when the AI gets them (indeed, a new toy has been added to the AI-only list to maintain annoyance equilibrium) but the Trader will no longer be an indirect source of AIP.
 
 
 
* In honor of it winning the latest worst-unit poll, Zenith Reserves:
 
** AIP cost on death from 5*mk => 1*mk.
 
** Amount of ships granted increased roughly 33%.
 
 
 
* In honor of coming in second in the most recent worst-unit poll, the Decloaker:
 
** In general, moving this from a mobile tachyon unit with outdated stats to a mobile tachyon unit with roughly mkI-starship stats. 
 
*** Note the tachyon range of 20k was already huge, no buff seemed necessary there.
 
*** Also note that it isn't really a starship from the perspective of starship disassemblers, etc, it's just beefed up because it has a ship cap of 4.
 
** No longer has the IsBlind flag.
 
** Now has cloaking.
 
** Base Damage-per-shot from 36k => 50k.
 
** Seconds-per-salvo from 10 => 2.
 
** Effective Attack Range from 18k => 8k (the only reason they had such a long range was that we hadn't revisited this one since the last major range changes).
 
** Base Health from 40k => 2M (again, in the general range of mkI starships).
 
** Base Energy Use from 100 => 1000.
 
** Base Metal Cost from 5000 => 10000.
 
** Base Crystal Cost from 7500 => 20000.
 
** Now has most common-to-starship immunities.
 
 
 
* Captive Human Settlement, in honor of coming in third in the "worst unit" poll: AIP-on-death from 100 => 15.
 
** As was understood in the discussion in the nomination/poll threads, these are supposed to be a "penalty" unit, but players had a very good point that 100 AIP was just gameshattering for something like that (rebel colonies have the same AIP-on-death, for instance).
 
 
 
* Spire Armor Rotter, in honor of coming in fourth in the latest "worst unit" poll:
 
** The general idea is to make these pretty good combat ships in their own right, at least until armor matters more in the general case and armor rot thus means more.
 
** Base Health from 14,500*mk => 23k*mk (this gives them a similar cap-health as fighters).
 
** Multiplier vs UltraHeavy from 2 => 3.
 
** Multiplier vs Heavy from 2 => 3.
 
** Multiplier vs Polycrystal from 1 => 3.
 
 
 
* Microparasite, because it (like other experimentals we need to get back to) had really outdated stats:
 
** In general, rebalancing these to be something like the MkV Parasite while maintaining their distinguishing characteristics (like having twice the cap and firing 4 times as fast).
 
** Metal Cost from 1800 => 1400.
 
** Crystal Cost from 240 => 3400.
 
** Base Health from 7200 => 36k.
 
** Base Armor Rating from 500 => 1500.
 
** Base Damage-per-shot from 8000 => 2000.
 
*** Previously they had 6.4x the dps of a mkV parasite, even though they were considered mkIII!  This is still 1.6x the dps of a mkV parasite.
 
** Base Armor Piercing from 0 => 3000.
 
** Effective Attack Range from 4600 => 6000.
 
** Multiplier vs Polycrystal from 20 => 4.
 
** Multiplier vs Artillery from 1 => 4.
 
 
 
* Special Forces Guard Posts no longer count as reinforcement-warp-gates and are no longer autotargeted (by player or player-ally-minor-faction ships).
 
** They still get reinforcements when their planet is reinforced, and those reinforcements use the special forces behavior, but they can no longer make a planet eligible for reinforcement all by themselves. 
 
** This removes the "cheese" that was possible by keeping them alive to trick the AI into reinforcing a planet with nothing but a special forces guard post on it (generally a waste).
 
** With the cheese gone, there's no longer a need to make it hard to keep these alive, so the autotargeting could go away.
 
** Which in turn removes the annoyance of getting +1 AIP from actions over which you did not have direct control (particularly with minor faction allies).
 
** We may do something more clever with the special forces ships themselves in the future, we'll see.  In the meantime these two changes seem to be a net improvement.
 
 
 
=== Core Guard Post Rebalance ===
 
 
 
* All Core Guard Posts:
 
** Base Energy Cost from 500 => 10000 (doesn't matter except for IRE fire).
 
 
 
* Core Heavy Beam Guard Post:
 
** Total base attack power (this is divided amongst all its beams) from 8M => 4M.
 
** Multiplier vs Swarmer from 4 => 3.
 
** Multiplier vs Refractive from 3.5 => 3.
 
** Multiplier vs UltraLight from 3.25 => 3.
 
** Multiplier vs Medium from 2.5 => 3.
 
** Multiplier vs Heavy from 1.75 => 3.
 
 
 
* Core Electric Guard Post:
 
** Basically balancing this against a cap of theoretical-mark-V electric shuttles, but still only about half that power with less than a quarter of the health.
 
** Can now hit a maximum of 200 units per shot
 
*** This is the same mechanic as the electric shuttle and it can multi-hit targets up to 5 times each if hits are left over from the first pass.  So it gets more-or-less optimal DPS as long as 40 ships are in range.
 
** Base Health from 6M => 12M.
 
** Multiplier vs Artillery from 4 => 1.
 
** Multiplier vs Neutron from 2 => 1.
 
** Seconds Per Salvo from 13 => 20.
 
** Damage Per Shot from 3k => 50k.
 
** Base Attack Range from 13k => 8k.
 
 
 
* Core Missile Guard Post:
 
** Basically balancing this against a cap of MkV missile frigates, but with way less durability.
 
** Base Health from 6M => 18M.
 
** Multiplier vs UltraLight from 8 => 4.
 
** Multiplier vs Medium from 6 => 1.
 
** Multiplier vs Light from 1 => 4.
 
** Multiplier vs Swarmer from 1 => 4.
 
** Multiplier vs Neutron from 1 => 4.
 
** Multiplier vs Composite from 1 => 4.
 
** Multiplier vs Refractive from 1 => 4.
 
** Effective Attack Range from 36000 => 12000.
 
** Seconds Per Salvo from 5 => 1.
 
** Damage Per Shot from 80k => 200k.
 
 
 
* Core Sentinel Guard Post:
 
** Basically balancing this against a cap of MkV Zenith Beam Frigates, but with maybe half the power and way less durability.
 
** Can now hit a maximum of 20 targets per shot.
 
*** Using the same mechanic as the Zenith Beam Frigate: the line attack does full damage to each target hit, but gets no compensation for not hitting the full number of targets.
 
** Base Health from 3M => 18M.
 
** Damage Per Shot from 4k => 100k.
 
** Effective Attack Range from 9000 => 8000.
 
** Multiplier vs Light from 16 => 1.
 
** Multiplier vs Swarmer from 8 => 1.
 
** Multiplier vs Neutron from 4 => 1.
 
 
 
* Core Leech Guard Post:
 
** Basically balancing this against a cap of MkV Parasites, but with way less durability.
 
*** Interestingly, the attack power was basically already spot-on.
 
** Base Health from 6M => 12M.
 
** Multiplier vs Medium from 3 => 4.
 
** Multiplier vs Neutron from 1 => 4.
 
** Effective Attack Range from 5000 => 6000 (slightly further out than its radar dampening range).
 
 
 
* Core Zenith Bombard Guard Post:
 
** Basically balancing this against a cap of MkV Zenith Bombards, but with way less durability and about half the attack power.
 
** Base Health from 6M => 12M.
 
** Damage Per Shot from 60k => 900k.
 
** Effective Attack Range from 53k => 34k.
 
** Multiplier vs Heavy from 1.75 => 2.
 
** Multiplier vs UltraHeavy from 1 => 2.
 
** Multiplier vs Structural from 1 => 2.
 
** Multiplier vs Swarmer from 4 => 1.
 
** Multiplier vs Refractive from 3.5 => 1.
 
** Multiplier vs UltraLight from 3.25 => 1.
 
** Multiplier vs Medium from 2.5 => 1.
 
 
 
* Core Zenith Fortress Guard Post:
 
** Was going to balance this against a cap of MkV Fighters (but without the hull-type-bonuses), but with way less durability and maybe 1/2 to 2/3rds the attack power... but it's actually already there.
 
** Shot type from (default? it doesn't appear to be set?) => Flamewave.
 
 
 
* Core Spire Shield Guard Post:
 
** Base Health from 392M => 200M.
 
 
 
* Core Neinzul Melee Guard Post:
 
** Basically balancing this against a theoretical cap of MkV cutlasses, but with way less durability.
 
** Base Health from 6M => 36M (it's a self-damaging melee unit, it needs it).
 
** Base Move Speed from 30 => 44.
 
** Damage Per Hit from 106k => 300k.
 
** Multiplier vs Neutron from 3 => 4.
 
** Multiplier vs Light from 3 => 4.
 
** Multiplier vs Scout from 2 => 1.
 
** Multiplier vs Composite from 1 => 4.
 
 
 
* Core Booster Guard Post:
 
** Base Health from 6M => 18M.
 
** Munitions Boost and Armor Boost range from 8k => 16k.
 
** Intentionally leaving the attack alone here: that's not really the point of the unit.
 
 
 
* Buffed reinforcements a bit in general.  Judging by CPA size and other indicators since the major rework of reinforcements this has been lower than it was by a significant margin.
 
 
 
* When an AI gets 2 "brutal" picks for its homeworld (only happens on high difficulty), it now cannot pick 2 AI Eyes, since that's too nice.
 
 
 
* Previously it was very easy to keep an AI from ever reinforcing its homeworld until the very end during the assault upon it.  This is generally desirable as part of the game is not stirring up that hornets nest until you've got the extermination squad in position.  But the complete lack of reinforcements there may be letting that end-challenge get a little too tame against careful players.  So now there's a 0.25%/0.50%/1% chance on Diffs 7+/8+/9+ (respectively) of a homeworld receiving high reinforcement priority per reinforcement pulse.
 
 
 
* AIP floor minimum is now 10 instead of 1.
 
 
 
* Data Center AIP-reduction-on-death is now reduced by 25% on Diff 8+, and by 50% on Diff 9+ (so 15 and 10, respectively).  If the two AIs are different difficulties, the higher is used in this case (tried using the difficulty of the AI player that owns the data center but that leads to some display inaccuracy problems as the game is pretty used to units not having stats that vary between players).
 
** Along with this, Took out the change that reduced the number of Data Centers seeded on Diff 9+ (as pointed out, this did reduce total AIP reduction available but also reduced the challenge of getting it).
 
 
 
* Net AIP reduction for killing all the coprocessors is now reduced by 25% on Diff 8+ and by 50% on Diff 9+ (so 45 and 30, respectively; that's 105 and 90 total reduction but killing all the coprocessors costs +60 AIP).  If the two AIs are different difficulties, the higher is used in this case.
 
 
 
* AIP floor no longer has a cap of 300 (not that this should impact games where you were caring about AIP anyway, that requires really high total AIP to reach).
 
 
 
* AIP floor was previously total-AIP-gained / 5.  Under Diff 8 that's still true.  Now on Diff 8+ it is TotalAIP / 4, and on Diff 9+ it is TotalAIP / 3.  If the two AIs are different difficulties, the higher is used in this case.
 
** This effectively reduces the return on superterminal hacking since it does +1 and -2 AIP per trigger.
 
 
 
* Zenith Electric Bomber is now immune to insta kill, like other low-cap fleet ships.
 
 
 
* Spire Archives, in honor of winning our seventh "Worst Unit" poll:
 
** Now try to seed on a non-home, non-core planet adjacent to an AI core planet.  So taking one doesn't mean taking or alerting a homeworld, and doesn't mean taking a core world, but does mean alerting a core world (unless you claim the archive planet with a warp jammer, at least).
 
** Knowledge gain rate from 1/sec => 5/sec. 
 
*** So to get the full 9000 knowledge takes 1800 seconds = 30 minutes; can cut that down a bit by having science ships help on the first 3000 (theoretical minimum total time of 20 minutes because the science ships can't help you on the last 6000 knowledge).
 
** When their planet is exhausted of all 9000 knowledge, they automatically die without causing AIP.
 
** In short: instead of being literally "during the homeworld assualts" plays for knowlegde these are a mid/late-game high-risk-for-knowledge plays, but if you pull them off (holding the planet for 20–30 minutes to get all the knowledge) you get 3 planets worth of knowledge for only one planet's worth of AIP and without a permanent possible +80 AIP hanging over your head if something slips through.  If you were going to take that planet anyway, all the better.
 
 
 
* Warheads killed by warhead interceptors no longer cause AIP-on-death.
 
 
 
* Spire Shield Guard Posts (the normal ones, not the Core ones), in honor of tying for second in our first "Aim The Nerfbat (AI-Side)" poll, have had their health changed from 56M*mk => 28M*mk.
 
** Galactic Sandpaper Incorporated has already filed for bankruptcy.
 
 
 
* Spire Stealth Battleship, in honor of tying for second in our first "Aim The Nerfbat (AI-Side)" poll:
 
** Radar Dampening from 8000 => 10000.
 
** Base Move Speed from 18 => 16. (for reference, a fighter's is 28, this is before a variety of other calculation steps)
 
 
 
* The Player Home Forcefield Generator:
 
** Now projects a grav well of 6600 radius (3 times its forcefield radius, 1600 more than the MkI Grav turret's radius) that allows a max speed of 8 (same as the MkI Grav turret).
 
** Now projects tachyon coverage of 6600 radius (3 times its forcefield radius, 600 more than a MkIII Scout Starship).
 
 
 
* Since the Botnet Golem won (by a landslide) our first "aim the nerf bat" poll, a plan was set in motion.  The Botnet, however, saw it coming.  Pulling a koolaid-man, it busted out of its former niche into a whole new minor faction, to wit: Botnet Golem.
 
** This is basically like the Broken Golems faction except:
 
*** It only seeds the Broken Botnet, and it only seeds one of them (Broken Golems no longer seeds any botnets, needless to say).
 
**** It tries to seed on a planet 4 or 5 hops from the human homeworld(s); if it can't it tries 3, 2, and then 1.  This is a far more controlled distance than normal golems (which is just 3+ from human homeworlds) because it's best that the challenge of having this faction on not vary so widely as a simple 3+ distance seeding would.
 
*** The botnet's energy cost on Moderate went from 400k => 800k.
 
*** The broken-botnet's AIP-on-metamorphsis on Moderate went from 40 => 100.
 
*** The exo response on Hard is the same as Broken Golems, but it's separate from that so you're really getting all that pain just for the one unit.
 
** Also increased the Botnet's health from 36M to 100M (still 1/5th of an Armored Golem) to make it less likely you'll lose the sole advantage granted by this faction to a silly mistake.
 
*** Note: the golemite AI's version of the Botnet's health is still what it was.
 
** We're still very open to further balance changes; the main thing this move enabled was balancing the botnet separately from the other golems: we could have brought it down to the level of the other ones, but where's the fun in that?
 
*** Note: none of this affects the old saves except the change in base energy from 40k to 80k (and potentially the Moderate numbers for the Botnet will automatically go up, not sure).
 
 
 
* The exos from BrokenGolemsHard and SpirecraftHard are now more aggressive:
 
** The threshold for the first exo of each has been doubled, which means (all else being equal) it would take twice as long to happen and be twice as powerful.
 
** The accumulation (which is AIP-based, unlike Fallen Spire exos) now acts as if effective AIP is always at least 50 + (game_second/360).  In other words, the minimum starts at 50 and goes up by 10 each hour (1 every six minutes).
 
*** This minimum stops going up at 250 (20 hours).  (thanks to TechSY730 for suggesting that)
 
** Thanks to Faulty Logic, Kahuna, rabican, and others for playtesting examples where even on high difficulties these exos were fairly underwhelming, at least early on.
 
 
 
* Golem construction costs adjusted due to the recent fix in repair cost computation (bear in mind that golems are never built, only repaired, so these numbers only impact the cost of repairing one, which jumped about 6 fold due to that fix) :
 
** Armored golem from 30M+30M m+c => 10M+10M.
 
*** Combined with the halving of base repair costs in this release, this means that the armored golem now costs the same to repair as it used to take with engie 1s since those used to have a 6x repair multiplier.  The difference is now it doesn't matter if you use MRS's or EngieIIIs except in terms of how fast it happens.
 
** Artilery golem from 10M+10M => 8M+8M (lots of feedback that these are OP lately).
 
** Black Widow golem from 25M+25M => 10M+10M (ditto).
 
** Regenerator golem from 60M+60M => 20M+20M (note that the regenerator's post-reactivation repair cost is 10% of what it would normally be, due to an earlier change).
 
** Cursed golem from 10M+10M => 3M+3M (a slight buff, but these aren't all that popular in general).
 
** Hive golem from 20M+20M => 7M+7M (a slight nerf, but these are quite strong).
 
** Botnet golem from 40M+40M => 20M+20M (in keeping with last version's changes, trying to make the cost of these more closely equal the benefit; let us know if this is still off)
 
 
 
* MkI Engineer repair multiplier from 6 => 2; this isn't because it needs a nerf but because with the repair fix people need time to adjust to how much stuff costs to repair when the math isn't bugged and it's easier to do that when the repair happens over more than a couple seconds.  If this is a problem an alternate approach can be found, but our understanding is that repair _time_ (as opposed to repair cost) hasn't really been a problem for folks, but vanishing economies have been.
 
** MkII Engineer still has a multiplier of 9 and MkIII still has a multiplier of 12, the idea being that if you're unlocking those you specifically want them to do things quickly
 
 
 
* Repair cost in general is now based off half the construction cost instead of the full construction cost.
 
 
 
* Repairing engines now does not cost m+c (if health is also being repaired at the same time that costs m+c).
 
 
 
* Spire Refugee Ship (the starship recovered in the second stage of Fallen Spire) can no longer be put in a transport, since the chase logic doesn't work right with stuff in transports and jumpships make it pretty trivial.
 
 
 
* The game now tries to seed human home command stations further away from wormholes and tries harder to find such a spot.  This should help prevent "AI says: I have a plasma siege starship, gg" situations.
 
 
 
* Heroic AI type balance changes:
 
** Is now considered a technologist type for the purposes of lobby logic and display (specifically, being displayed in RED), though it does not get higher tech levels than usual.
 
** Its non-wave champion spawns now start at Frigate-level at tech-level 1, not Destroyer-level.
 
 
 
* Neinzul champion hulls are now immune to black hole machines.
 
 
 
* Plasma Siege Starship ship cap from 5 => 4.  Most of the others here were at 4 already, and it's been pretty widely considered the best of the combat starships lately.
 
 
 
* Leech Starship:
 
** Ship cap from 3 => 4.
 
** Seconds Per Salvo from 4 => 2.
 
** Shots Per Salvo from 3= > 6.
 
** Base Attack Power from 30k => 2k (24k base-cap-dps, parasite has 12.25k)
 
*** Previously Leech Starships had nearly _five times_ the base-cap-dps of the equivalent fleet ship type (the Parasite).  That parasite has 4x multipliers where the leech has none, so they don't need to be all that close, but the leech having a higher base dps than the parasite's bonus dps... no.
 
**** This change was done rather than buffing the parasites because the parasites seem to be reclaiming at a good rate already; further feedback on this is quite welcome.
 
** Base Armor Piercing from 0 => 750*mk (same as parasite).
 
 
 
* Knowledge costs:
 
** Flagship was 0/2000/5000.
 
** Zenith Starship was 1000/2500/6000.
 
** Starship Starship was 1000/2500/6000.
 
** Bomber Starship was 0/5000/7000.
 
** Plasma Siege Starship was 0/5000/7000.
 
** Leech Starship was 0/5000/6000.
 
** MkI costs (or lack thereof) unchanged.
 
** MkII costs are now all 2500.
 
** MkIII costs are now all 4000.
 
** The idea being that you're paying for 1x/2x/3x the raw stats, with a 0/500/1000 "surcharge" for the fact that 2x health and 2x attack power is more than 2x as useful, etc.
 
 
 
* Health:
 
** "Normal" cap-hp for a fleet ship type is about 15M (ranging from 10M to 30M), Normal for a starship type is about 22.5M (but normal cap-dps is lower).
 
** Flagship from 3.75M*mk => 5M*mk (20M cap-hp).
 
** Zenith from 4.5M*mk => 6M*mk (24M cap-hp).
 
** Spire from 3M*mk => 4M*mk (16M cap-hp).
 
** Bomber from 4.7M*mk => 7M*mk (28M cap-hp)
 
** Plasma Siege unchanged at 5M*mk.
 
** Leech from 3.2M*mk => 4M*mk (16M cap-hp).
 
 
 
* Metal+Crystal/Energy costs:
 
** Cap-m+c for fleet ship types varies widely, from about 40k for fighters to about 160k for bombers even just within the triangle.  Starships are supposed to be substantially more expensive than fleet ships in exchange for being easier to keep alive.  Also, the econ part of the game has been a lot easier since changes to the energy system and harvesters. So targeting about 400k m+c for a mkI cap here.
 
** Cap-e is more consistent for fleet ships, typically about 20k (halved for mkI types).  So targeting about 40k for a mkI cap here.
 
** The m+c costs listed are for mkI, mkII are 2x, mkIII are 4x.  E costs do not change with mark.
 
** Flagship from 40k+24k / 4k e => 60k+40k / 10k.
 
** Zenith from 24k+40k / 4k e => 40k+60k / 10k.
 
** Spire from 30k+34k / 4k e => 45k+55k / 10k.
 
** Bomber from 80k+8k / 2k e => 85k+15k / 10k.
 
** Plasma Siege from 8k+80k / 2k e => 15k+85k / 10k.
 
** Leech from 60k+40k / 5k e => 60k+40k / 10k.
 
 
 
* Fighter (including tachyon-micro and bulletproof variants):
 
** Base Move Speed from 28 => 32.
 
** Multiplier vs Polycrystal from 5 => 6.
 
** Multiplier vs CloseCombat from 2.4 => 6.
 
** Multiplier vs Medium from 2.4 => 6.
 
** Base Attack Power from 1200 => 1000 (similar for the variants).
 
 
 
* Bomber Base Move Speed from 28 => 26.
 
 
 
* The following guardians now have the medium hull type:
 
** EMP (was Neutron)
 
** Heavy Beam (was Heavy) 
 
** Laser (was Swarmer)
 
** Lightning (was Composite) 
 
** Special Forces Rally (was Heavy)
 
** Spire Implosion (was Artillery)
 
** Starship Disassembler (was UltraHeavy)
 
** Tachyon (was Refractive)
 
** Tractor (was Neutron)
 
** Vampire (was Artillery)
 
 
 
* Spire Starship:
 
** Hull type from Neutron => Medium.
 
** Base Attack Power from 120k*mk => 600k*mk.
 
*** The previous number was the result of multiple math errors during the balancing process.  Specifically: its dps was computed using a seconds-per-salvo of 8 when it's actually 10 due to the photon lance's firing time, and its base dps was balanced as if it had 4x bonuses despite not having any bonuses.
 
 
 
* All fleet ship caps have been adjusted to be multiples of 8 (generally by rounding down, unless something was 1 away from the next higher multiple, in some cases), except for those fleet ships which don't change caps at different unit cap scales.
 
** This involved about 5 metric tons of relatively minor changes to health, attack power, metal cost, crystal cost and energy cost.  Mostly cap-health and cap-dps didn't change by more than 1% in either direction; cap-m,c,e costs vary a bit more but nothing earthshaking.  The numbers are internally arranged in a much better fashion now which should help with other changes going forward.
 
** The main immediate benefit of this is that the ultra-low-caps setting no longer impacts the balance of fleet ship types whose caps are not multiples of 8, because, well, they are now.
 
 
 
* Previously on Diff 9+ if you were part of the way from one AI-tech-level to the next, each wave would have a proportionate percentage of its ships "promoted" to the next tech level to make the transition in difficulty feel smoother.  Now this happens on difficulty 5+ 
 
** Mathematically speaking this makes the game somewhat more difficult and that's why it was restricted to 9+.  In practice it seems to make the game easier because you're testing your defenses against waves more like the ones you're going to get at the next tech level, rather than getting the jump all at once.
 
** The main motivation for changing this now is that since the double-application of the mark-level downwards-multiplier on wave sizes has been changed to only applying it once (as mentioned above), the higher-mark waves will be larger and the feeling of a "challenge cliff" between AI tech levels greater.  This really helps avoid those cliffs.
 
 
 
* Zenith Siege Engine:
 
** MkI-cap-health from 16.8M => 10M.
 
** Corrected an... interesting balance-math error where it had 720k mkI-cap-dps AND 10x multipliers (against structural, heavy, ultraheavy, and turret):
 
*** Multipliers from 10x => 5x.
 
*** MkI-cap-dps from 720k => 360k (which is still really, really high for a base-dps even with no multipliers, but the must-reload-after-move mechanic is still really new, etc).
 
** Reload time from 15 => 10.
 
*** Damage adjusted to maintain dps.
 
** Now pay no attention to auto-FRD or auto-kite.
 
** Thanks to Faulty Logic for inspiring these changes, as little consolation as that may be to the many ships (including spire capital ships)
 
* All modular forts now pay no attention to auto-kite (previously some did, and some didn't).
 
 
 
* Zenith Reprocessor:
 
** MkI-cap-health from 8.4M => 15M (now in the neighborhood of fighters).
 
** MkI-cap-dps from 17.2k => 30k (has 8x multipliers).
 
 
 
* The Shards in the Fallen Spire campaign now move 4x as fast (still immune to all forms of speed-boosting, combat style, etc) and the response "chase spawns" now happen about 4x as often.
 
 
 
* AI Type reinforcement/wave multipliers, since some of these are really old and the reinforcement ones in particular can have a disproportionately large impact on the feel of the game (to the extent that picking a particular AI type can make reinforcements look "broken", as in barely happening) :
 
** Mad Bomber reinforcement multiplier from "you get one ship" on non-core-worlds (and 0.25 on core worlds) => 0.7, on all worlds.
 
** Neinzul Youngster reinforcement multiplier from 0.25 => 0.8.
 
** Vicious Raider, Extreme Raider, and Technologist Raider multiplier from 0.3 => 0.8.
 
** Attritioner, Zenith Descendant, Spireling, Starfleet Commander, Experimentalist, and Grav Driller reinforcement multiplier from 0.4 => 0.9.
 
** The Tank reinforcement multiplier from 0.3 => 0.9, and wave multiplier from 1.0 => 1.25 (same as the attritioner, zd, etc group above).
 
** Feeding Parasite, Thief, Technologist Parasite, Bully, Assassin, and Speed Racer reinforcement multiplier from 1.0 => 0.9 (since they already had a 1.25 wave multiplier).
 
** The Core reinforcement multiplier from 0.3 => 0.5 (same as its wave multiplier).
 
 
 
* Corrected a balance-math problem where the game was counting the 14 "secondary hits" of siege plasma without considering the fact that they only hit for 1/16th of normal strength.  This means that the zenith siege engine's mkI-cap-base-dps is 45k instead of 360k.
 
** The actual attack power of the unit is unchanged, this is just fixing a bug in the internal balancing model.
 
** But since it's now clear that the numbers are more reasonable than previously thought, the siege engine's multipliers have been increased from 5 back up to 10.
 
 
 
* Human Cryo Pods and Home Settlements (the buildings that start next to a human home command station) are now immune to aoe (but not to beam weapons, i.e. not immune to linear-aoe), to avoid excessive-frustration issues with units like the firefly.
 
 
 
* Spire Corvette shield modules now cost 2000*mk each of metal, instead of 1m+1c to avoid the ship being effectively invincible due to immediately rebuilding its own shield.  As it is a mkI shield can be "brought back online" in less than 20 seconds, but as normal engineers cannot assist if the ship has taken damage in the past few seconds.
 
 
 
* Zenith Reprocessor:
 
** MkI-base-cap-dps from 30k => 45k (for reference, Acid Sprayers have 58.8k, and the same bonuses).
 
** Now immune to tractors.
 
** Now have cloaking (and thus will not be included in future games with cloaking turned off, but will still be present in games already created with cloaking turned off).
 
 
 
* Military Command Stations:
 
** Base Health from 500k/1.5M/3M => 1M/4M/9M. (puts it on the low end of a fleet ship or starship with a cap of 10, but with the mkII/mkIII versions much stronger to help justify knowledge cost)
 
** Metal,Crystal production from 16,16/32,32/64,64 => 24,24/48,48/96,96 (the same as logistics stations).
 
** Now do not suffer damage reduction when firing from under a normal human-tech forcefield.
 
*** Yes, it's now just an obvious move to put a shield on these; presumably that was already true if you cared about keeping the planet.  And it still costs shield cap, so not 100% obvious.
 
** Base Damage per shot from 3200*mk => 5k*mk. (puts it on par with a fleet ship or starship with a cap of 10, but since shots-per-salvo is also mark-based this makes mkII/mkIII versions much stronger to help justify knowledge cost)
 
** Is now immune to radar dampening.
 
** Shot type changed from translocating lightning to a new "knockback railgun" mechanic.  So the shots are now insta-hit, and actually still do the translocation code path but instead of sending the target to a random angle and random distance from the planet center they send the target directly away from the military station out to a distance about 2000 units short of the station's maximum firing range (assuming it wasn't further out than that already).
 
** MkII and MkIII versions now do 200 engine damage per shot.
 
** MkIII versions now apply 5 seconds of paralysis per shot.
 
 
 
* In honor of basically winning the "what most needs attention for 6.0?" poll, the remains rebuilders have received a logic overhaul and now:
 
** Try not to target the same thing as another remains rebuilder.  If there are fewer rebuild targets than rebuilders on the planet they'll generally spread out pretty evenly across the targets.
 
** If in FRD, they now are much less likely to "yoyo" back to the FRD-point between rebuilds until all the targets are rebuilt.
 
** Recharge time from 10 seconds => 1 second.  The recharge time wasn't particularly easy to notice before because rebuilders would all pile up on the same target and while the ones not actually doing the rebuild would not incur the 10 second recharge time they would have to wait about 1 second to retarget.  With a pile of 20 rebuilders it was hard to notice the one that did the initial rebuild took 10 seconds before it could actually rebuild something.
 
*** This is actually a fairly significant buff to the unit, but it's probably not a big balance impact to start the rebuilding faster.
 
 
 
* Spire Tractor Platform:
 
** MkI-Cap-Health from 10.5M => 8M.
 
** Base move speed from 18 => 15.
 
 
 
* The AI Core Grav Reactor Post now no longer receives protection from the Core Shield Generator network, to avoid generating maps (mainly snake ones) that were literally impossible due the homeworld having an invincible black-hole-generator-effect unit.
 
 
 
* To provide a counterbalance against the player's ability to build up a powerful champion (and nebula-ally fleet) without increasing AIP much (if at all, depending on map layout and tolerance for deepstrikes), each AI homeworld now gets "nemesis" champions in proportion to the number of human champions, the highest champion hull size unlocked for human players, and that AI's difficulty.
 
** Critically, the "population cap" of these nemesis spawns actually goes _down_ as AIP increases (bottoming out at 150 AIP) to simulate the AI having less to invest into its nemesis spawns as AIP increases and waves, special forces, strategic reserve, and other responses are being given more and more resources.  More importantly, this allows the nemesis spawns to counter an "early AIP" champion rush without making a more "normal AIP" approach massively harder to the point of stalemate.
 
** Nemesis spawns are not immediately replaced up to the population cap (takes a little over 10 minutes to go from zero to the cap), and spawns remain even if the cap drops below the current population (but once you kill them off the extras don't come back).
 
** Nemesis spawns never go through wormholes, so they won't ever leave the homeworld they're defending.  This is good and bad for the player, but good all around for their intended purpose.
 
 
 
*The tech level of the AI is now only inflated by 1 artificially when playing on greater than difficulty 9, rather than greater than difficulty 8.
 
 
 
* Handicap now has the following effects, all of which is new unless otherwise noted:
 
** AI
 
*** Previously it affected the speed at which the AI reinforced. It no longer does.
 
*** Increases the number of ships in each wave and reinforcement, and decreases when negative.
 
*** Roaming Enclaves and Preservation Wardens are spawned sooner or later into the game.
 
*** Scrap waves are scaled accordingly.
 
*** Specifically "forced waves" are scaled accordingly.
 
*** Cross planet atacks are scaled accordingly.
 
*** Saboteur and deep strike reactions are scaled accordingly.
 
*** For now, event attacks are NOT affected by this.
 
*** Initial seeding of AI planets are intentionally not affected by this—same as human players get no starting benefit from handicaps.
 
** Player
 
*** Increases the amount of resources gathered from producers (using a new formula), and decreases when negative (also using the new formula).
 
 
 
* Some triangle rebalancing:
 
** The rationale here is that bombers have been having their way with forcefields a bit too much, and having fighters be so much more "general-dps" than the other two has made them much less a natural predator of the Bomber.  Also, the Missile Frigate is still being reported as the least desirable by a significant margin.
 
** Fighters (including the tachyon and bulletproof variants) :
 
*** Bonus vs Polycrystal from 2.4 => 5.
 
** Bombers:
 
*** Bonus vs UltraHeavy from 10 => 6.
 
*** Bonus vs Structural from 10 => 6.
 
*** Bonus vs Heavy from 10 => 6.
 
*** Bonus vs Artillery from 10 => 6.
 
*** Base Attack Power from 1900*mk => 2400*mk.
 
** Missile Frigates:
 
*** Bonus vs Light from 10 => 6.
 
*** Bonus vs UltraLight from 10 => 6.
 
*** Bonus vs Swarmer from 10 => 6.
 
*** Bonus vs Neutron from 10 => 6.
 
*** Bonus vs Composite from 10 => 6.
 
*** Bonus vs Refractive from 10 => 6.
 
*** Base Attack Power from 1600*mk => 2400*mk.
 
*** Base Crystal Cost from 700 => 500.
 
 
 
* Tractor Beam Turrets:
 
** Base Health from 210k/840k/1680k => 560k*mk.
 
** Base Armor Rating from 1200 (flat) => 450*mk.
 
 
 
* Beam Guardians:
 
** Bonus Vs Turret from 8 => 1.
 
** Bonus Vs UltraLight from 8 => 1.
 
** Bonus Vs Artillery from 2 => 1.
 
** Base Attack Power from 4000*mk => 4500*mk.
 
** Base Armor Rating from 600*mk => 300*mk.
 
 
 
* Laser Guardians:
 
** Base Armor Rating from 1000*mk => 300*mk.
 
** Base Health from 1.4*(standard guardian health) to 1.1*(standard).
 
** Shots Per Salvo from 3 => 15.
 
** Seconds Per Salvo from 4 => 2.
 
** Base Attack Power from 17k*mk => 1700*mk.
 
** Base Armor Piercing from 500*mk => 300*mk.
 
** Base Attack Range from 7000 => 5000.
 
 
 
* Raider Guardians:
 
** Now Have Radar Dampening Range of 8000.
 
 
 
* Lightning Guardians:
 
** Base Armor Rating from 800*mk => 600*mk.
 
** Now use the same "can hit up to 200 targets max, but can do max damage to as few as 40 by hiting each target up to 5 times" logic as Electric Shuttles.
 
** Base Attack Power from 1600*mk => 2400*mk (for reference, Electric shuttles on low caps have 1600*mk, albeit somewhat slower reloading).
 
 
 
* Tractor Guardians:
 
** Base Armor Rating from 1200 (flat) => 450*mk.
 
 
 
* Spider Guardians:
 
** Base Armor Rating from 1000 (flat) => 150*mk.
 
 
 
* Sniper Guardians:
 
** Base Armor Rating from 1000 (flat) => 150*mk.
 
 
 
* Tachyon Guardians:
 
** Base Armor Rating from 400 (flat) => 150*mk.
 
 
 
* Gravity Guardians:
 
** Max Target Base Speed from 10/8/6/4/2 => 11/10/9/8/7.
 
** Grav Beam Base Range from 8k/10k/12k/14k/16k => 7k/8k/9k/10k/11k.
 
** Base Armor Rating from 100*mk => 300*mk.
 
 
 
* Zombie Guardians:
 
** Shots Per Salvo from 2/3/4/5/6 => flat 2.
 
** Base Armor Rating from 5000*mk => 300*mk.
 
** Base Attack Range from 9000 => 7000.
 
 
 
* EMP Guardians:
 
** Base Armor Rating from 1200 (flat) => 300*mk.
 
 
 
* Carrier Guardians:
 
** Base Armor Rating from 1200 (flat) => 300*mk.
 
 
 
* Fixed a bug with the electric shuttle "chain lightning" mechanic where it could hit a single forcefield way more times than intended.  Used to be as many as 200 per shot, but now down to 5 (anything can be hit 5 times per shot).
 
 
 
* Fixed bug where electric shuttles were able to chain-hit the same target 10 times in one blast (thus getting maximum efficiency against groups 20 or larger) instead of 5 (thus needing to hit at least 40 to get full damage).
 
 
 
* Reclamators (excluding zombie-reclamators) :
 
** Replaced the "cannot do reclamation damage to ships more than one mk level higher" rule: the reclamation effect of the actual damage done is multiplied as follows:
 
*** If the reclamator is 4 mks higher than the target (mkV shooting mkI), multiply by 64.
 
*** If the reclamator is 3 mks higher than the target, 48.
 
*** If the reclamator is 2 mks higher than the target, 32.
 
*** If the reclamator is 1 mk higher than the target, 16.
 
*** If the reclamator is the same mk as the target, 8.
 
*** If the reclamator is 1 mk lower than the target, 4.
 
*** If the reclamator is 2 mks lower than the target, 2.
 
*** If the reclamator is 3 mks lower than the target, 1.
 
*** There is no 4-mk-lower case because mkV are not reclaimable.
 
** Leech Starship base attack power from 120k*mk => 30k*mk.
 
** Parasite base attack power from 4000*mk => 1000*mk.
 
** Nanoswarms inherent 16x-reclamation property down to 2x, but no reduction in actual damage.
 
** Spire Teleporting Leech base attack power also not reduced, because the general feeling is that these are pretty underpowered already.  Might nerf these later if this proves to be too much.
 
 
 
* Parasites:
 
** Effective range from 3700 => 6000.
 
** Armor piercing from 0 => 750*mk.
 
** Base Health from 7200*mk => 14400*mk.
 
 
 
* Changed Engineer II and Engineer III caps from 0.75 and 0.5 of the Engineer I cap to 1.5 and 2.0 of the Engineer I cap, respectively.
 
** Gives a bit more motivation to unlock the higher engineer marks, if you're having trouble getting enough assistance/repair out.
 
 
 
== Misc Changes ==
 
 
 
* AI War engine upgraded to Unity 3.3, from previously being Unity 3.1.
 
 
 
* Spire Civilian Leaders are now no longer giftable, to avoid a bug whereby gifting them back and forth would repeat the AIP decrease.
 
 
 
* The alternate-victory condition on the Fallen Spire condition has been made a bit more vigorous about winning, since the recently added AI Hunter Killers were refusing to go quietly.
 
 
 
* Mostly as a visual improvement (via more variety of shot speed) and somewhat to make some weapons a little more effective:
 
** Laser shot speed tripled (wait, why does a laser shot have a speed?)
 
** Minor electric shot speed doubled.
 
** Shell shot speed increased to 1.5x what it was.
 
** Ion shot speed doubled.
 
** Combat style now applies to all shot speeds, not only artificially-increased ones.
 
** Note: shots will always move at least 40 faster than their target.
 
 
 
* Made the "signal markers" in Fallen Spire invincible in the same sense as the Dyson Sphere (well, without a certain caveat which applies to the Dyson)
 
 
 
* Just under "Enable Advanced Logging" on the Advanced tab of the Settings window, added a "Enable Reinforcement Logging" toggle.
 
** Similar to Enable Advanced Logging, this enables logging of AI reinforcements to the ReinforcementsLog_MainThread.txt and ReinforcementsLog_AIThread.txt files in your RuntimeData directory.
 
** This is off by default because:
 
*** This is really only for when you want to see if there is some problem with the reinforcement logic (short of logging, it is very hard for anyone to tell) and want to show evidence to the developers
 
*** Reading one of these logs in midgame will give "spoilers" about what the AI has, etc.  It's not considered a cheat, however, because all the actually-important info it gives you would be available if you had turned off fog-of-war in the lobby before the game.
 
*** Lots of disk I/O during the game causes instability on some systems.
 
 
 
=== New Variety for Existing Minor Factions ===
 
 
 
* Human Resistance Fighters:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" increment frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Marauders:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" increment frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Human Colony Rebellions
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Dyson Sphere:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" spawn-check frequency (one check per 20 seconds), 1 is 1/4th of 4 (one check per 80 seconds), 8 is 2x what 4 is (one check per 10 seconds), and 10 is insane (one check per 6 seconds).
 
** The galaxy-wide population caps on each of the three gatling types are modified by this 0-10 value.  4 is cap = AIP; 1 is cap = AIP / 4, 8 is cap = AIP * 2, etc (it's linear).
 
** So if you want a game-dominating dyson sphere, you can still get it :)
 
 
 
* Zenith Miners
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Broken Golems (Hard)
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" strength, 1 is way less than that, and 10 is way more than that (it's not linear).
 
** Note: the only thing impacted by the intensity value for Broken Golems (Hard) is the strength of the exogalactic strikeforces sent by the AI as a response to this faction being on.  The benefit you derive from it (number or strength of golems, etc) is not affected.
 
** Don't use a high value unless you want to see VERY strong exogalactic strikeforces (their frequency does not change).
 
 
 
* Neinzul Preservation Wardens:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" increment frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Neinzul Roaming Enclaves:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" increment frequency, 1 is way less frequent than that, and 10 is way more frequent than that (it's not linear).
 
** Don't use a high value unless you want to see these happening a LOT.
 
 
 
* Neinzul Rocketry Corps:
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" number seeded at the beginning of the game, 1 is way fewer than that, and 10 is way more than that (it's not linear).
 
** Don't use a high value unless you want to see a LOT of these (Would you like to play a game of... ?).
 
 
 
* Fallen Spire
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" strength, 1 is way less than that, and 10 is way more than that (it's not linear).
 
** Note: the only thing impacted by the intensity value for Fallen Spire is the strength of the exogalactic strikeforces sent by the AI as a response to this faction being on.  The benefit you derive from it is not affected.
 
** Don't use a high value unless you want to see VERY strong exogalactic strikeforces (their frequency does not change).
 
 
 
* Spirecraft (Hard)
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" strength, 1 is way less than that, and 10 is way more than that (it's not linear).
 
** Note: the only thing impacted by the intensity value for Spirecraft (Hard) is the strength of the exogalactic strikeforces sent by the AI as a response to this faction being on.  The benefit you derive from it (number of asteroids or strength of spirecraft, etc) is not affected.
 
** Don't use a high value unless you want to see VERY strong exogalactic strikeforces (their frequency does not change).
 
 
 
* Note that the Trader, Devourer, Easy and Moderate Golems (which don't fit into this idea of "faction intensity", they're really just different things than Hard Golems), Spire Civilian Leaders, and Easy and Moderate Spirecraft are all still just on/off.  This isn't because we don't have any ideas on how they might be made so, just none that were very simple to implement at this stage.
 
 
 
=== New Variety For Existing AI Plots ===
 
 
 
* Hybrid Hives
 
** Now instead of being an on/off toggle in the lobby, it can be set to a value from 0 to 10.  0 is disabled, 4 is the previous "normal" number of hive spawners seeded at the beginning of the game, 1 is way fewer than that, and 10 is way more than that (it's not linear).
 
** Don't use a high value unless you want to see a LOT of these.
 
 
 
* Amended the reinforcement logging to better reflect the impact of alert on the order that planets are checked for reinforcement.
 
 
 
* Renamed the AI Eye to the Sentry Eye.
 
 
 
* Bomber Starship renamed to Heavy Bomber Starship.
 
 
 
* Added 25 champion-related achievements.
 
 
 
* The shard seeding in Fallen Spire now only cares about how far from the human homeworlds a planet is, rather than the current border of AI territory.  This can make it easier depending on how much territory you've taken (particularly on something like a snake map, but that's something of an edge case), but in light of various recent changes this may not be a bad thing, and the seeding being relative to what you'd conquered was pretty annoying and encouraged some strange playstyles.
 
** The last shard is an exception: it still doesn't pay attention to what you've conquered, but it always tries to seed on an AI core planet (so bordering a homeworld, but never on a homeworld).
 
 
 
== Bugfixes ==
 
 
 
* Fixed a moderately longstanding bug where having the first AI player at tech level 1 and the second AI player at tech level 2 would actually draw as the text "II/II" instead of "I/II" on the resource bar.
 
 
 
* Fixed bug on the stats window resource-flows tab where most construction/repair/etc outflows were reported as positive instead of negative.
 
 
 
* Fixed bug that was greatly delaying the onset of gravity slowdown on units entering grav range in some cases.
 
 
 
* FINALLY fixed a long-standing and excruciatingly rare desync that nevertheless was reliably hit by two of our players, Fleet and Tssbackus.  Huge thanks to them for their persistence in helping us figure this out.  For all the details, here's the mantis issue: http://www.arcengames.com/mantisbt/view.php?id=3077
 
 
 
* The Zenith Trader previously had incorrect line breaks.  Fixed.
 
 
 
* Previously, when command stations were replaced, colony ships and mobile builders were still dying even though they shouldn't have been.  Fixed.
 
 
 
* Improved the clarity of the colony ship description.
 
 
 
* Previously, when a player was controlling an ally's ships and tried to put that ship into a control group, it would add it to the ally's control group instead of the local player's control group.  Having cross-player control groups is not possible without really expanding the control group data structure, which doesn't seem like a good idea to do at the present time, so for the time being allied ships simply won't go into control groups if a player tries to put them in there, at least cutting out the worst of the confusion.
 
 
 
* Fixed a bug with zombie or minor faction electric shuttles, where the shuttles would just sit there.  This also should improve the behavior for any ships that explode (including warheads, etc) when controlled by a minor faction, when zombified, when in FRD or attack-move in general, and possibly when in the hands of the AI in some circumstances.
 
 
 
* Previously, zombiefied ships were being bound by player ship caps, but they should not have been.  Fixed.
 
 
 
* Fixed a bug where Defender games were always being recorded in the high-score list as lost.
 
 
 
* Fixed a bug where lightning and armored warheads were following the unit-cap-scale.
 
** One of the side effects of this is that some Neinzul Rocketry Corps silos (only the lower-mark ones, and only on low or normal caps) were "scaling down" to a maximum internal capacity of zero, effectively making them Neinzul Rocketry Bricks.  No longer.
 
 
 
* Fixed a bug where a self-destructing aoe weapon with a limited number of secondary targets (autobomb, nanoswarm, etc) would fail to do any damage to anything in some cases where only the main target was hit.
 
 
 
* Fixed bug where copying in your global controls from disk could lead to building engineer IIs and IIIs without the required tech.
 
 
 
* Fixed a bug that has been causing astro-trains to not be able to attack for the last six months or so.
 
 
 
* Fixed a bug where the "I Have A Bad Feeling About This" achievement was not being awarded.
 
 
 
* Fixed bug where the command-station foldouts each player got on each ally's planet were not executing galaxy-wide or per-planet controls (like Auto-FRD, auto-build engineers, auto-build energy reactors).
 
 
 
* Fixed bug where Core Starships were not immune to translocation.
 
 
 
* Fixed a bug that would cause ships to sometimes ignore their wormhole orders to instead stay and fight when they have a target.  This was most noticeable with astro trains since they are never supposed to stop to fight, but it actually was affecting all AI ships since sometime prior to 5.0 most likely.  Possibly as far back as 4.0.  This had serious implications to the AI's ability to effectively retreat; the AI should be a lot more swift-footed now, while still getting in pot-shots when it decides to leave.
 
** Additionally, a potential desync was discovered where players that were using the F3 debug menu and hovering over ships might cause a desync in multiplayer.  Fixed that.
 
*** Fixing this also reduced the per-ship memory footprint by about 8 bytes, which we're always pleased to do.
 
 
 
* Fixed a null exception that could happen rarely when a unit was looking for the next wormhole to move to while moving from planet to planet.
 
 
 
* Fixed an (apparently) rare array-index-out-of-bounds error in the buy-menu "tooltip" window.
 
 
 
* Fixed a longstanding bug where modules would not always decloak their parent ship when firing.
 
 
 
* Fixed a longstanding bug (ever since starships were allowed to be loaded into a transport) where putting a ship with modules into a transport, saving the game, and loading the game would cause the modules to be removed from the game because the game thought they were no longer accessible (the "has a parent ship" link wasn't being checked).
 
 
 
* Fixed some longstanding (since introduction of group move trying to handle immune-to-speed-boosting units) bugs with group move:
 
** Previously, for example, a speed-boostable 140-speed unit group-moving with a non-speed-boostable 152-speed unit would result in the boostable ship going 152, and the non-boostable ship going 140 (_below_ its normal speed!).  This was because the non-boostable one was taking the minimum speed of it's boostable friends, and then setting its speed limit as if those friends were not actually boostable.
 
*** This bug has been captured, stuffed, and placed in the museum.  It couldn't get away fast enough.
 
 
 
* Fixed a few longstanding bugs where ships were able to fire on targets significantly out of their range because in a few places the range checking was early-out'ing with max(dx,dy).  This would have been fine if the target's current-forcefield-radius (and possibly other factors, none confirmed) were applied before the range check instead of after, but that wasn't the case and so the early-out threshold was wrong.  Well, it's right now.
 
 
 
* Fixed a problem with too-low throttles on minor faction / zombie ships preventing them from even attacking at all in some cases.
 
 
 
* Fixed a bug where a superterminal could be "paused" by scrapping your command station, saving, and reloading.
 
 
 
* Fixed the bug with two buttons for mark V fighters showing up in the mark V fighter fabricator.
 
 
 
* Fixed a bug where if the AI had a pile of over 2000 zombie threat ships (and over 4000 total threat) it was possible for it to try to redeploy those zombies to carriers, and the carrier would be created with the appropriate contents, but the zombies would not actually be scrapped.  Causing the AI to redeploy them again, creating still more carriers, and failing to scrap the zombies again.  It was just carriers all the way down, leading rapidly to tens and hundreds of thousands of threat.  Fixed so that the scrapping works, and thus the duplicate redeployments no longer happen.
 
 
 
* Fixed a regrettably longstanding bug where it was possible for modules (notably hybrid modules) to become "stranded" without a parent ship and to basically act as somewhat buggy (and, recently, the non-forcefield ones are now invinicible) turrets.
 
 
 
* Fixed a longstanding bug where the number of spire shipyards and spire hab centers supported by a spire shard reactor was being multiplied by the number of human home command stations.  The number of spire capital ships of each type supported by a spire shipyard (or refugee outpost, for the frigates) is still multiplied by that number, as is intentional.
 
 
 
* Fixed a bug where a ship with an inherent kiting range (raptor, zenith bombard, etc) would not correct for the radar dampening range of its target.
 
 
 
* Fixed a bug in the auto-build-energy-reactors controls where they were trying to check for remains of other energy reactors but were not checking the right list for those.
 
 
 
* Fixed bug where autobombs/nanoswarms/etc could now target and fly into an aoe-immune ship but couldn't actually do anything to it.  They'll now do damage and their other effects as normal, though if it's just a big pile of aoe-immune targets you'll probably want to hold them off for efficiency reasons: they'll only hit the direct target, unless there's something aoe-able in range.
 
 
 
* Fixed a bug where if the AI had a pile of over 2000 zombie threat ships (and over 4000 total threat) it was possible for it to try to redeploy those zombies to carriers, and the carrier would be created with the appropriate contents, but the zombies would not actually be scrapped.  Causing the AI to redeploy them again, creating still more carriers, and failing to scrap the zombies again.  It was just carriers all the way down, leading rapidly to tens and hundreds of thousands of threat.  Fixed so that the scrapping works, and thus the duplicate redeployments no longer happen.
 
 
 
* Fixed a really, really longstanding bug where the AI got 1 bonus reinforcement at diff 8, 1 bonus reinforcement at diff 9, and 2 bonus reinforcements at diff 10, but no bonus reinforcements at any of the non-integer difficulties between those.  Now it's 2 for 10 and 1 for >= 8
 
 
 
* Fixed a longstanding bug (since ship cap scales were added, roughly) where the ship-cap-scale multiplier was being applied twice to reinforcement calculations (so high got the normal amount, normal got half as much as it should have, low got 1/4 as much as it should have, etc).
 
** The effect isn't as severe as it probably sounds, because most of the calculations ended in "if less than 1, set to 1" and other bugs (see below) were letting the AI get a lot more mileage than was mathematically sanitary out of that 1.
 
 
 
* Corrected some longstanding issues where reinforcements were frequently getting stuff like Spire Blade Spawners in roughly the same proportion as Fighters; the ship cap multipliers were being used, but if a particular individual group of spawns in a reinforcement (there could be over 10 in a single reinforcement-of-planet event, and multiple such events can happen on a single planet per overall reinforcement) only had 1 ship to pick it could freely pick either a fighter or a spire blade spawner (or whatever it had unlocked) and the fact that it had just gotten something like 30x as strong as what "1" normally means was simply ignored.  If it had 20 ships to pick and picked a blade spawner that would be the end of the pick, though, so it wasn't totally ignorant of that dynamic.
 
** Now it does a bit of arithmetic "carrying" so that if one individual spawn really picks something low-cap like that (and it still can do that, otherwise stuff like blade spawners just won't happen in most reinforcements) then it remembers that for further spawns in that reinforcement event, which can make certain reinforcements a little lopsided but in general is at least a balanceable situation now,
 
 
 
* Fixed a bug where the Dyson Sphere itself was alerting its planet and neighboring planets on the AI thread, but not on the main thread.  It now does not alert on either (but the actual enemy-to-all gatlings and player-ally gatlings count for alert purposes, of course).
 
 
 
* Fixed a bug in the handicap modifier computations that caused negative handicaps to be far harsher than they were supposed to be in some circumstances (like making CPA size zero when it was supposed to be, say, 24, because the multiplier was about 51x smaller than it was suppposed to be).
 
 
 
* Fixed a longstanding bug where AOE "canister" shots (flak, grenade, plasma-siege) were not properly hitting forcefields when targeting a ship protected by them, unless the targeted ship was also in range of the explosion from the point where the shot hit the forcefield.
 
 
 
* Fixed a longstanding bug where an Ion Cannon killing a warhead would cause it to not properly detonate as if it had been killed by a Warhead Interceptor.
 
 
 
* Fixed a bug where the AI would not attack armored warheads (due to a "very low priority target" flag on those unit definitions).
 
 
 
* Fixed a bug where when the AI picked engineers or remains-rebuilders for reinforcements, it was "spending" too much on them.
 
 
 
* Fixed a fairly longstanding bug where player ships would not autotarget an AI ship that was under a (non-module) forcefield and guarding something because that ship had not set its "angry" flag (to avoid leaving the protection of the forcefield).  Now it considers the ship eligible for shooting if either it or its guard post has been angered recently.
 
 
 
* Fixed a bug in the last version where the laser turret upgrades could show the stats on laser drones instead of... laser turrets.  Similar for other turret techs that also unlock drones.
 
 
 
* Fixed a longstanding bug where a unit could both be reclaimed and regenerated, which would sometimes lead to an AI unit being reclaimed, zombified, and warped off somewhere deep in AI territory.  Not great for threat management.
 
** Fixed a related bug where a unit that had swallowed other units or was tractoring other units would take them with them when regenerated.  Now those units simply cannot be regenerated unless they have no such "load".
 
 
 
* Fixed a bug where neinzul drones (which cannot go through wormholes) could inherit a go-through-wormhole order from the enclave starship building them, and would actually go through the wormhole.
 
** Now they'll generally _move_ to a point near the target wormhole, but they won't try to traverse the wormhole itself.
 
 
 
* Fixed the colony ship tooltip which was still saying it had to be near the target construction point, and also amended its hint about replacing existing command station to reflect recent changes.
 
 
 
* Fixed a bug where beam and warbird starships were still in the "Starship mk III" buy-group for the AI; they're now in the mkV group where they're actually balanced to be now.
 
 
 
* Fixed a longstanding bug where the "prevent construction of new command station by a different player than the current controller of the planet" rule was preventing gifting of command stations.
 
 
 
* Fixed a longstanding omission preventing low-power ships under a forcefield protecting a passive guard post (and perhaps other guard posts) from coming out of low-power when the forcefield/post/guards were attacked.
 
 
 
* Fixed a longstanding bug where Decloakers in waves (only possible by having 1 wave-sending AI and 1 support-corps AI) were not having their ship cap multiplier applied and thus were appearing in vastly larger numbers than they should have been.  Wasn't a big deal before, but would have been devestating with their new stats.
 
 
 
* Fixed some bugs with the Spire Archive gain-knowledge logic producing erratic display results (and not displaying how much it had gathered out of the total 9000, etc).
 
 
 
* Fixed a longstanding bug where repairing units with a repair boost (which is most of the ones that can repair) were repairing units faster but still "spending" metal and crystal at the rate they would have if they had no repair boost.  The cost difference between repairing with an MRS and with an EngieIII was pretty big.  No longer.
 
 
 
* Fixed a bug where multiple human homeworlds (in SP or MP) were not increasing the guard post part of reinforcements.
 
 
 
* Fixed a longstanding (back to the unity port) bug where the buy/tech menus would also draw the buttons from the menus above them, commonly resulting in "ghosts" of build queue buttons, etc.
 
 
 
* Fixed a longstanding but very intermittent null-exception in tech-menu-button rendering.
 
 
 
* Fixed bug where core/starship/experimental fabricators were not being considered by the D keybind.
 
 
 
* Fixed a bug where remains currently in the process of rebuilding could get "stuck" at 1&nbsp;hp despite being under very heavy fire until its actual stored resources were exhausted.
 
 
 
* Fixed a longstanding bug where buy menu buttons were showing up red outside supply even when the ship doing the building can build fine outside supply.
 
 
 
* Fixed a longstanding bug where the AI would only produce carriers if the target planet already had 2 barracks, instead of 1.
 
 
 
* Fixed a bug where Fallen Spire events would spawn the recoverable objects (and thus anything they go on to build) as belonging to the first player even when the first player was champion-only.  Now it gives them to the first normal or normal+champion player.
 
 
 
* Fixed omission in the new CPA-size logic that was making it not consider one of the later parts of the wave-size calculations (making it a bit too high on lower difficulties and not as high as intended on higher difficulties).
 
 
 
* Fixed a longstanding bug in FRD target sorting that was sometimes being overly sensitive to differences in how far away two targets were.
 
 
 
* Fixed a bug where it was possible to start placement of an item (like an engineer or turret) and switch to another planet via control-group-selection and still be in the middle of placing that item (and if you had supply, actually be able to place it).
 
 
 
* Fixed a bug where a bunch of science ships on auto-knowledge-gather but with no eligible targets could "clog" the auto-explore throttle such that auto-explore for scouts would stop working.  Now auto-knowledge-gather has its own separate throttle.
 
 
 
* Made "what can I autotarget?" logic more consistent so that player-ally minor factions don't pop AI carriers.
 
 
 
* Fixed a bug where viewing a Core Spire Corvette Fabricator could cause unhandled exceptions (and the queue buttons to not show).
 
 
 
* Fixed a really longstanding bug where giving a ship an attack order against something already in range would cause it to move towards the target a little bit before stopping again.  This was mildly annoying with most units but very troublesome with units like fortresses and zenith siege engines that have to recharge (either their ability or their weapon) after moving at all.
 
 
 
* Fixed a bug where minor faction and zombie ships could be affected by the player auto-kite controls.
 
 
 
* Fixed a bug where a cpa deploying could cause unhandled errors.
 
 
 
* Military Command Stations:
 
** Fixed a bug where the mkII and mkIII versions no longer had a unit cap (leaving it that way was entertained, but ultimately would require more sweeping changes to command stations than is a good idea right now, if it would be a good idea at all).
 
** Fixed a bug where the mkII and mkIII were still showing the mkI descriptive text, despite that now not being the same.
 
** The knockback logic now launches stuff 2000 range units outside the station's effective range rather than 2000 range units inside, to help the autotargeting not get stuck on a few targets when its main use is best served by spreading shots out.
 
 
 
* Fixed a bug where the fallen spire campaign could spawn two of the same shard-signal.
 
 
 
* Fixed a longstanding bug where the galaxy-nav code of AI-ally Dyson Gatlings was getting distracted from its main purpose.
 
 
 
* Fixed a fairly longstanding bug where disabling an expansion from within the lobby would not properly remove several expansion-specific options (map types, setup scripts, minor factions, etc), which could lead to very odd behavior.
 
 
 
* Fixed a couple longstanding bugs that would cause very old saves to not load properly.
 
 
 
* Fixed a bug where hybrids, exo ships, and the like could switch to threat-fleet behavior.
 
 
 
* Fixed some bugs where special forces and strategic reserve spawns could result in an AI player controlling a type of ship only available to the other AI.
 
** And a related bug where some of the special forces spawn logic could only access the special ship types of the first AI player.
 
 
 
* Overhauled how line-place determines space between points to be closer to how the game will actually accept or reject a given placement.  Hopefully this will avoid "skipping every other one" bugs without adding excessive padding between points on a packed-line pattern.
 
 
 
* Fixed rare null exception that could happen when changing control groups.
 
 
 
* Fixed a bug where changing per-planet settings on one planet, then opening the CTRLS window from another planet would do the confirm-discard-changes check, which led to various other tomfoolery.
 
 
 
* Fixed a bug where MkV Spider fabricators were still considered experimental fabricators instead of core fabricators, which incidentally handles an issue where there was a very high chance of there being 2 of these per map.
 
 
 
* Now if you use the mid-game Manage Players interface to switch a player from the Normal role to Helper and then save that, it properly tells you that you can't do that rather than trying (and generally causing a desync).
 
 
 
* Fixed a moderately longstanding bug where if while starting a new game you select a planet as a homeworld, then deselect it (in favor of some other homeworld(s) ) before actually starting the game, and that planet happens to have the superterminal on it, the superterminal would start the game in "active mode".  Needless to say, that would be a short game.
 
 
 
* Fixed a really longstanding bug where shots on a planet were sometimes visible even through the fog of war.
 
 
 
[[Category:AI War Release Notes]]
 
[[Category:Release Notes]]
 

Revision as of 11:14, 18 September 2017

Contents

Starting State

Okay! We've extended the alpha period beyond what we had originally intended, but we're going ahead and giving out the Early Access keys to kickstarter backers on the date we originally specified. Meanwhile, we're pushing the date for early access back. That link explains a lot of the reasons.

If you're one of the many who struggle with playing the game such an incomplete state, check out the instructions

We also have a blog at https://blog.arcengames.com for dev diaries and other fun topics.

Also, here's Chris's todo list.

And here's what we've been doing for the last few months

Known Issues

  • The interface in general is horrible, and you need to go into the PlayerData folder and edit your settings file manually if you want to make settings changes.
  • Various ships are implemented but don't have real graphics, so they just show a little "rock" instead where the ship graphic would be. You can still see the ship icon and whatnot just fine.
  • Most ship shot types use the same graphics right now.
  • Only some of the sound effects are in, and only a couple of music tracks.
  • Particle effects are also limited.
  • Ships currently just sit there in their squads, rather than flying around within their squads.
  • Balance needs a lot of attention, with your help.
  • There's no tutorial yet, and there's basically not much in the way of a lobby beyond map types and seed. You can't choose your player color yet, even.
    • Compared to the actual gameplay mechanics, we felt like these were ancillary things, but they are coming up in importance sooner than later.

What Is The Purpose Of This Phase?

Short Answer: To make the game fun, which it is not yet. Please don't fret on that!

Long Answer: There's still a lot to do on the game obviously, as stated in the last blog post. But there's a lot of good stuff here to tinker with now, and we're really looking forward to having more people bashing on it. It's not a "fun, balanced game that just needs some polish" yet, but it will be really useful for us to have more people finding the pain points both in the interface (which is currently atrocious) and the actual gameplay flow (which, from a macro standpoint, is still pretty immature).

The underlying technology and components for making a fun game are here, and that'd a very critical step towards it being a fun and balanced game, but that's not where we are just yet. In a lot of respects we kind of reordered things: the underlying tech is somewhat more advanced and more polished than we had anticipated at this point, and that is pretty important because it gives us a better idea of what we CAN do in the engine. It gives us a better bounding-box for setting up things so that we can build an interface around what is possible, and have the scale of battles reflect what is possible performance-wise, and so forth. On that front, I'm super happy with where we are.

But yeah, the next step is to finish implementing the last of the "before early access" ships, and then to actually make a GUI that isn't eye-gouging as well as a game flow that doesn't have any obvious deficiencies. Right now there are some notable concerns about parts of the game flow regarding how you don't really need to keep territory as much as in the first game, and certain other bits of the feel from a strategic standpoint are "off." Some of that is just because xyz AI feature maybe isn't in place yet, but other pieces are more about the design of certain ships or mechanics. These are things we want to iron out before we go full-Early-Access, and we need the help of folks like you to do so. We're trying to streamline certain aspects of the first game, but we don't want to do that at the expense of what made the original game cool.

The engine for this one is so flexible that we could just recreate most of what the first game was if we felt like it, but we'd really rather not for a variety of reasons that should be apparent to anyone who tried to get into the first game and bounced off it, or who played the first game for a huge number of hours but wanted certain fundamental improvements. Now that all the basic frameworks are getting in place here, we're at a point where we can start thinking about those things.

Version 0.521

(Not yet released -- we're still working on it!)

  • Incorporated Badger's updates to the Find Planet function, which add the ability to search for the Devourer, Dyson Sphere, Super Terminal, Zenith Trader, or Nanocaust (hub).
    • Thanks, Badger!
  • All fuel-consuming units now consume half as much fuel.
    • You're supposed to bounce back and forth between Fuel being the limiting factor on your fleet, and Science, and in some cases Metal (if you choose only metal-poor planets and/or are careless with your units), but it was mostly Fuel in the previous balance.
    • Thanks to BadgerBadger for inspiring this change.
  • Now techs that let you build power-consuming units give a permanent boost to your power production.
    • Specifically, every 1000 science you spend on these techs gives you +10%, so 2500 total gives +25%, etc.
    • Thanks to BadgerBadger for inspiring this change.

Version 0.520 Formations

(Released September 15th, 2017)

  • Added Group Behavior button to the commands menu when you have a control group selected.
    • Under that is a Formation button.
      • Under that there is a "None" button (for default movement order logic) and one button for each Formation defined in the xml.
  • Added Formation folder to the GameData directory, and the new Formations are defined here.
    • And implemented in C# external code.
    • So the formation author is handed a control group and the point clicked by the move order, and can decide where each ship in the group should actually go, or what they should do instead.
  • Currently available formations:
    • Blob
      • Arranges the group's ships around the biggest shield-generator in the group (or just the strongest unit, if none has shields) in two wedges of concentric arcs, with the shorter-ranged stuff up "front" and the longer ranged stuff in the "back".
        • This tends to keep more units under shield coverage than the default behavior allows without obsessive micro, and it can look fairly cool, but there are certainly more optimal formations that could be achieved.
    • Reverse Blob
      • Just like Blob, but with the fore and aft wedges reversed. Useful if you are executing a Brave-Sir-Robin maneuver because it keeps your short-range stuff closer to the things shooting at you.
        • Though currently this is only a marginal difference because it's packed in close to your core unit rather than at the extreme edge of the shield (it's arguable which is preferable).
  • Fixed some longstanding issues where units with move orders would only move "close to" the target point and then stop. It was logic that worked fine in TLF and Starward Rogue, but not so well here, and lead to fast ships zipping back and forth because they never got close "enough".
  • Marginal reduction in starship caps to make them less individually weak.
  • Made starship radii better fit their actual model (makes it easier to have groups of them without them decolliding across half the planet)
  • Now when you have a unit rally to a control group, and the unit reaches the lead unit and cancels its rally command, it now copies the lead unit's orders to itself (so it's more likely to keep up without further explicit orders).
    • Thanks to BadgerBadger for suggesting.

Version 0.519 Who Thought A Settings Menu Could Cause A Platform-Specific Temporal Paradox?

(Released September 9th, 2017)

  • Several Guardians now have their Mk 2 - 5 models:
    • Widow, EMP, Shield, Sniper, and Stealth Guardians have all their models
  • Two Starships now have their Mk 2 - 5 models:
    • Carrier and Siege Starships have all their models
  • Dyson Sphere graphics are now hooked up
  • Hopefully fixed up OSX and Linux builds to not die/go-crazy as soon as they start.
    • Thanks to BadgerBadger and Sounds for repeatedly testing fixes.
  • Intra-update on September 11th: we got it fixed on the OSX thing, finally.

Version 0.518 Active Selections and Capturing the Uncapturable

(Released September 8th, 2017)

  • Added BadgerBadger's galaxy display modes for "AIP Reducers", "AI Defenses", and "Capturables".
    • Thanks Badger!
  • Incorporated BadgerBadger's updates to the Nanocaust special faction, including the ability for the player to hack the original Nanocaust controller to convert the faction from an enemy-to-all menace to an ally against the AI.
    • Thanks Badger!
  • Swapped the Pursue and Control Group command buttons so that Pursue is 1 again.
    • Thanks to BadgerBadger for suggesting.
  • Rebuilt all the unity bundles and executables for all platforms, with some settings rolled back to previous values, in hopes of resolving a crash-on-startup bug on OSX.
  • Fixed longstanding bug where it was generally impossible to claim or repair golems and various other things due to the large metal costs and hp counts causing an arithmetic overflow. Now the math is ordered in such a way as to not overflow.
    • Thanks to BadgerBadger for the reports and saves.
  • Control group selections are now "active" or "sticky", in that if you select a control group, and don't manually modify your selection, any new ships that appear on that planet as part of that control group (either through being constructed or coming in via wormhole) are automatically added to your selection.
    • If you change your selection manually in any way after that point, the stickyness stops.
  • Reworked the "do I draw the selection ring for this unit?" logic to actively check each visual unit each frame for its selection status, rather than only updating the visual state whenever the interface "selection" state changes. The latter is theoretically sufficient but in practice we wind up with lots of stuff being selected but not showing it after switching planet views, and enemies winding up with selection circles around them apparently due to some kind of object recycling, etc.

Version 0.517 External Data and Group Control

(Released September 7th, 2017)

  • Added a Control Group button to the commands you see when you have a selection. Clicking it brings up a list of buttons:
    • One for each control group you already have.
      • Clicking this adds all your selected units to that group.
    • And a button for creating a new one, if you have fewer than the max.
      • Clicking this creates a new group in that slot, and adds all your selected units to it.
    • And a "None" button.
      • Clicking this removes all your selected units from whatever groups they are in.
  • Build queues now default to looping.
  • Added an "External Data" architecture which allows modders to store and retrieve arbitrary data, and to have that data persist across save/load.
    • On the following:
      • The World object
      • Each PlayerAccount object
        • You probably won't need to do this, except for UI-related stuff in multiplayer games
      • Each WorldSide object
        • This is where you would put faction-specific stuff, including for special factions
      • Each Planet object
      • Each GameEntity object
        • I.e. ships and shots.
    • For example usage, open the ExternalCode project in visual studio (or monodevelop) and search for "DoomData". There's also a small (but critical) piece in the xml file in GameData/Configuration/ExternalDataPattern/
      • To actually run that stuff, change DoomData.DoDebugTestingLogic from false to true.
    • Thanks to BadgerBadger and Draco18s in particular for inspiring this addition.
  • Fixed a bug that was preventing games from loading properly in the previous version.
    • Thanks to BadgerBadger for reporting.

Version 0.516 UI Scaling and Rally Commands

(Released September 5th, 2017)

  • Added a UI Scale slider to the settings menu, so if you find the UI is taking up too much of your screen you can bump that down to something less than one.
    • Going too far tends to produce buttons where the text doesn't fit properly on it, since the engine scales text by font size and buttons by a scale multiplier. The font sizes obey UI Scale as well, but it's not exactly the same.
  • Added BadgerBadger's "Set Defaults" button to the settings menu.
    • Clicking it just sets all the toggles and textboxes and sliders back to their default positions. Clicking save will then actually change your settings to those values, as normal.
    • Thanks Badger!
  • Incorporated a small change from BadgerBadger so that starting the game with the first planet already owned also adds a Starship Constructor to your starting units.
    • Thanks Badger!
  • The sidebar text that used to show Squad Count and Ship Count now shows Squad Count and Total Strength, since strength is a much more useful number than ship count.
    • Thanks to BadgerBadger for submitting the code for this.
  • Units with internal build queues (Starship Constructor, Space Dock, Ark, etc) now have a "Rally" button on their command menu. Clicking it brings up another row of buttons, each corresponding to one of your Control Groups, and one "Clear" button.
    • Clicking one of the group buttons makes all future units produced by this unit:
      • Assigned to the target control group
        • Note: this does not assign the producer to that group, though you can do that separately
      • Have orders to go find the primary (strongest) unit in that control group, wherever it is in the galaxy.
        • So if they're not on the same planet, they'll find a path to the primary unit's planet.
        • And if they're on the same planet, but not near the primary unit, they'll move over to it.
        • If the primary unit moves to a different location or planet, these rallying units will update their orders to adjust.
        • Once they get within a short distance of the primary unit, they drop this "rally" behavior and respond normally.

Version 0.515 The Settings Menu Of Doom

(Released September 2nd, 2017)

(0.514 was quickly succeeded by this)

  • Ships in squad formations now take on the rotation of the transform that is in the squad, allowing us to create formations where all the ships (usually turrets) are not facing the same way.
  • Fixed bug where the at-mouse tooltip would draw under certain other elements.
  • Finally added a Settings menu!
    • As part of this, we pulled most of the game's settings out from hardcoded fields to externally-defined data (in xml).
      • So if you want to have persistent settings which apply to your mods you can do that, though you'll have to use slightly different functions to get and set the values (GetIntBySetting, SetIntBySetting, etc).
    • Also as part of this, we implemented a whole new way of populating a UI window with controls, entirely through C#.
      • XML is still the preferred way for windows with fixed sets of simple controls like the main menu.
      • Unity prefabs (in the modding-and-gui project) are still the preferred way for windows with really complex nested controls like the Ship Detail Display.
      • But if you need variable numbers of controls, laid out in a simple way (like a table with columns of different types of controls; more complex than a ButtonSet), this new method is the way to go.
    • ALSO as part of this, we implemented support for vertical and horizontal sliders.
    • So the new window looks at all the externally defined settings, and for each one of those adds a row of controls to the window.
    • There are more settings than there is screen space, so the game's first scrollbar has been added to let you go through the collection.
    • The window currently supports three types of settings: boolean toggles (on/off buttons), integer textboxes (for things like windowed resolution), and floating-point horizontal sliders (for camera settings).
      • Added slightly later: dropdowns, for now just one sub-type of dropdown for the fullscreen resolution setting.
      • There's also support for "hidden" settings of the following types: bool, int, float, FInt (fixed-point non-whole-number for sim math, don't use float in the sim); these don't show on the settings menu but modders can use them to store and retrieve configuration, e.g. for custom map type parameters).
  • Fixed some issues where keyboard camera movement would not work when the mouse was over certain UI elements.
  • Fixed a bug where band-box selection was basically broken when the Ship Detail Display was visible.
    • Thanks to BadgerBadger for reporting.
  • New squad formations added in!

Version 0.513 Tooltips For Your Tooltips

(Released August 25th, 2017)

  • The ship detail display now uses the awesome new icons from Blue, and thus has far less text than it did.
  • The ship detail display now continues to show for 2 seconds after your mouse is no longer over the ship.
    • When the mouse is within the ship detail display it continues to refresh that 2-second timer.
  • The individual icons and text elements inside the Ship Detail display now have mouseover tooltips that:
    • Float just to the right and below the mouse cursor, but don't run off the bottom or right of the screen.
    • Size to fit the text being displayed, and wrap long lines.
    • Disappear after about half a second of the mouse cursor not being over something that should cause a tooltip.
    • The above is just standard behavior that you would presumably expect. Many hours and electrons lost their lives in the war to persuade our engine of this.
  • The planet tooltip no longer shows at the same time as the ship detail display when mousing over the icon of a unit that shows on the galaxy map.
    • The planet tooltip will be reworked into another detail display fairly soon, but for now this was necessary to avoid overlap.
  • The Ship Detail display no longer shows anything in the spaces for Engine Damage Resistance and various other resistances if the unit has the "normal" value for that stat.
    • Perhaps the empty space is not desirable from a usability standpoint and it would be better to have grayscale versions of the icons for these resistances so you can tell what it is that they don't have. Your thoughts are welcome on the forum :)
  • Numbers in the Ship Detail display now round to the nearest thousand and show "k" for numbers >=100,000, and to the nearest million and show "m" for numbers >= 100,000,000. So for example "500,000" is written "500k".
  • The Ship Detail display now shows a % next to the hit point total for either build-progress (for stuff like turrets under construction) or current health (for built stuff that is damaged).
    • When this is active the display of max health is more aggressively rounded, so at 1000 it rounds by thousands, and at 1000000 it rounds by millions.
  • Fixed missing-localization error message when claiming a golem or other unit that causes AIP on claim

Version 0.512 Hotfix

(Released August 20th, 2017)

  • Fixed a bug where the ship-detail tooltip would try to show for a ctrl+mouseover'd wormhole. Also fixed the inner bug where it would barf if somehow applied to an entity with null for mark level.
    • Thanks to BadgerBadger for reporting.
  • Set M as the default key for "select all mobile military on this planet".
    • To properly apply this to existing installs, we added support for the "default_should_override_unbound_user_binding_if_older_than_version" element in the InputAction xml nodes. It will only override your setting the first time you load the game in the new version, and only override it if you had no key defined for that binding before.
    • Thanks to BadgerBadger for suggesting.

Version 0.511 Unity 2017.1 Upgrade

(Released August 18th, 2017)

  • Upgraded our version of the unity engine to 2017.1p4, from version 5.6p3.
    • We had planned to do an upgrade eventually anyhow, but our hand was forced by the security vulnerability UNITY-SEC-844.
    • Note that this security vulnerability affects developers, not customers, but we felt it was a good idea to go ahead and update as soon as we were informed about it.
    • If you're modding the game using the unity editor, you'll also need to upgrade to that new version.
    • More info: https://unity3d.com/security
  • Fixed a bug in the prior version of the game that was preventing building the external code dll because of a couple of API changes that we made that were not properly reflected.
    • Thanks to BadgerBadger for reporting.

Version 0.510 Hotfix

(Released August 15th, 2017)

  • Put in a variety of small tweaks in the external code library to suppress harmless compiler warnings that nonetheless cluttered up our view (and that of modders) while compiling.
  • Put in some wrappers for sub images and sub text so that when there's an index out of range exception we no longer have to do a bunch of guesswork; it tells us what index it wanted and what the length was, so our time looping around in instrumentation is a lot lower.
    • It also now tells you the name of the type of element it is (eg BuildImageButtonBorderless), since that can also be a source of hunting around in the dark.
  • Previously, there were cases where we had one prefab referencing another prefab inside the modding and gui project. This was convenient!
    • However, it turns out that when the child prefab is updated, it doesn't flag the parent as also updated, and no amount of fiddling makes it trigger that flag.
      • That, in turn, means that the child of the parent winds up not being properly sent to players via the build.
    • To get around that, we're no longer referencing one prefab from another within the asset bundles themselves.
      • Instead we're creating those linkages in our own prefab xml setup using the new xml tags has_child_prefab, child_prefab_bundle, and child_prefab_filename.
      • Note that this doesn't have any effect on prefabs like the Dropdown, which reference elements INSIDE their own existing .prefab file. That's perfectly fine. The problem was when one .prefab file was referencing some completely other .prefab file.
    • This is what was causing the mysterious index out of range exceptions in the prior version.
    • Thanks to BadgerBadger for reporting.

Version 0.509 Player Targets What?

(Released August 14th, 2017)

  • You can now programmatically change the font size and spatial offset of text bits on an ArcenUI_ImageButton.
    • The ability to change color this way was also added recently.
  • You can now programmatically change the spatial offset and size of image bits on an ArcenUI_ImageButton.
    • The ability to change color this way was also added recently.
  • You can now programmatically change which sprite is shown by an image bit on an ArcenUI_ImageButton.
    • The texture must be in a unity asset bundle loaded by the game, and it must be configured as a sprite in the unity editor. This is pretty easy, but it does have to be done.
    • You just pass in the name of the bundle containing the texture, and the path-within-the-bundle to the texture, and it takes care of the rest.
  • The build queue item currently under construction now shows its estimated time to completion just above it.
    • Note that it currently assumes the builder has access to enough metal to work at normal speed; this will be refined.
    • Thanks to BadgerBadger for suggesting.
  • The build and tech buttons now always use the size of unit icons used with flairs (even if the unit type has no flair), to keep the display consistent and allow the remaining-cap count to be a bit larger visually.
    • That count is now larger, also.
    • Thanks to BadgerBadger for suggesting.
  • Fixed bug where the start-in-control-of-first-planet lobby option caused warp gates to not spawn anywhere (instead of just not on the human homeworld).
    • Thanks to BadgerBadger for reporting.
  • Replaced the ship/ship-type mouseover info in the bottom-left with an actual detail "window" which uses layout and icons to communicate much of the previous-text information.
    • Most of the icons are currently placeholder "text" (images of text); that's still underway.
    • This also includes the Description field from the ship's xml, which the previous display did not.
  • Renamed the I-IV tab to Fleet, since it includes MkV stuff anyway, if you have it.
  • Replaced player_units_do_not_attack_unless_taking_planet (which took true, defaulted to false) with target_type_for_player, which takes:
    • AutotargetAlways
      • Default behavior.
    • AutotargetIfTakingPlanet
      • What "true" used to mean for the old flag.
    • NeverAutotargetButAllowManualTarget
      • Like "true" on the old flag, but does not even autotarget when the planet is marked for taking (can still right-click to attack).
        • This is now set on AIP reducers like the Data Center.
    • NeverTarget
      • Your units will never ever aim at this target.
        • This is now set for missile silos and design backups, since those are of no value to you unless you hack them (and hacking them destroys them).
    • Thanks to Draco18s and BadgerBadger for suggesting.
  • Carrier, Missile, Implosion, and Lightning Guardians MKs 2-4 visuals now in place, added instead of the Mark 1 versions of their respective types that had been used previously.
  • Widow Guardian Mark 1 visuals now in place and wired up to be used by all 5 marks, plus the dire version, of the guardian. Actual other variants coming later.

Version 0.508 The Adornment Of The Buttons

(Released August 10th, 2017)

  • Build menu and queue icons now show:
    • In the upper left corner, the number of squads you can construct until you hit the cap.
      • If this number is zero, it is shown in red.
    • Just below that:
      • If you do not have enough fuel to build more of that unit, it shows a small fuel icon.
      • If you do not have enough power to build more of that unit, it shows a small power icon.
    • Queue icons are now shown with a different button background color rather than being an entirely different prefab.
  • Tech menu icons now show:
    • In the upper left corner, the number of science points it costs to unlock that unit.
      • If this number is more science than you have, it is shown in red.
      • If you've already unlocked this unit, the number is not shown at all.
    • Just below that:
      • If you have unlocked this unit, it shows a small green checkmark.
      • If you have not unlocked this unit, and cannot because you do not have a prereq, it shows a small padlock icon.
        • It also darkens the button.
      • If you have not unlocked this unit, and cannot because you do not have enough science, it shows a small science icon.
  • Using the number-key navigation in either the build or tech menus (push one number to select a column, another to select the cell at the corresponding row) now shows a white outline around the buttons in the selected column after the first number.

Version 0.507 When Menus Attack

(Released August 7th, 2017)

  • Build menu moved back to left side of screen, and back to a horizontal arrangement, but now on top of the build menu instead of under it (so basically exactly where it was in classic)
    • And now uses the icons for the queue menu instead of just the
    • Thanks to BadgerBadger for the suggestions.
  • The build queue buttons are now a different color, to make it easier to tell them apart from the normal menu buttons.
  • Moved the ship/squad counts for player vs enemy to the sidebar, no longer cluttering up the bottom-right info section.
    • Thanks to eRe4s3r for reminding us to move that.
  • Re-implemented the Tech menu, based off the new Build menu.
    • Thanks to BadgerBadger for reminding us of how non-functional the tech menu had become.

Version 0.506 Hotfix

(Released August 4th, 2017)

  • Fixed null exception in the new mark-based-color tooltip code.
    • Thanks to BadgerBadger for reporting.
  • Removed the debug line that's been in tooltips since forever, showing the numeric location of the unit.
    • Thanks to BadgerBadger for reminding us.
  • The sidebar no longer shows metal/fuel/science/hacking resource points, or the controller, since they're always present.
    • Thanks to BadgerBadger for suggesting.

Version 0.505 Tooltips And Build Menu

(Released August 3rd, 2017)

  • The build menu now shows icons instead of names for actual "click this to build this unit type" buttons.
    • The tab-selection part of the menu is still text, similar to AIWC.
    • The approach we tried with "show a horizontal list of types, then a horizontal list of marks above that" is gone, in favor of a more AIWC-like grid where the columns are the types and the marks/variants are arranged vertically upward.
    • The number-key navigation still works: the first number from 1-9 selects that column of the grid (and gives it a visual highlight, which is more subtle than intended because adding a new icon/layer to that is an involved process), and the second number from 1-9 actually clicks the button at the corresponding row in that column (1 is the bottommost, 2 is the next one up, etc).
  • The Escape key now does what the 0 key did: close any open bottom-bar menus and open the master menu.
    • So to get the old Escape behavior of opening the system menu, you press Escape followed by 1.
    • And the 0 key now does what it used to: acting as a tenth button for whatever the topmost bottom-bar menu is.
  • Fixed bug where the sidebar icons (and now the build menu icons) were not scaling correctly at different resolutions, leading to overlap of other elements at some resolutions but not others.
  • When a button click in the interface is "denied" in the sense that you click something that isn't allowed to happen at the moment, it now plays a buzz sound effect rather than the normal click sound effect.
  • When you are clicking your campaign name in the load savegame menu it no longer makes the big booming sound effect of starting the game. However, actually clicking the specific savegame entry inside the load campaign submenu still does.
  • Fixed a super annoying bug where shots would zip off into an area kind of near the center of the planet and then to their target under certain circumstances. It was a major noticeable visual artifact, for sure.
  • Fixed a bug where the tooltips over build buttons were not working when you were viewing them on the galaxy map.
  • The tooltips for planets now say who owns it, or if it's neutral territory.
    • If the AI owns it, it now shows the mark level for the planet, too.
  • Did a variety of formatting improvements on the tooltips. If anyone is looking for inspiration for more:
    • http://digitalnativestudios.com/textmeshpro/docs/rich-text/
    • Incidentally!! We can probably use the <space> tags in order to do better layout of things like the top bar, and then have icons for things that would otherwise use the <sprite> tag more under our control.
      • As noted in one of the dev diary videos from this week, the support for the sprite tag is pretty flaky at best, and rather than using a bunch of labels this would save us some draw calls (when rebuilding part of the gui).
      • Either way, it's all one draw call once it's drawn once, until it changes again, and it's only the part of the gui (the "window") that changes that has to be updated at any given time.
  • Fixed a bug with the tooltips where they would keep showing the last thing you were hovering over unless you started hovering over something new.
    • This has introduced the occasional flicker in a couple of instances. We'll have to see what we can do there.
  • Previously, data on the galaxy map would get noticeably stale in terms of frequently not showing the mark level after the planet name, or not showing an ownership change, etc. This now automatically self-corrects every 400ms if something is wrong and you are on the galaxy map.
    • Thanks to BadgerBadger for reporting.

Version 0.504 Big Ship Graphics Batch + Test And Revise Pass #3

(Released July 31st, 2017)

  • Player homeworlds can no longer have hacking points, to avoid motivating reloading until you get a planet with hacking points.
  • Player homeworlds are now always great at science, good at power, and normal at metal and fuel, again to avoid motivating starting the game over and over until you get the resource mix you want.
  • Added Galaxy button to the right of Planet on the master menu.
    • Moved the Find Planet button from Planet to Galaxy
    • Added a new Display button to Galaxy, which opens a list of Galaxy Display Modes
      • Currently that's just Normal (what you used to get before) and Resources (which shows the resources each planet is better-than-normal at producing)
      • These modes are defined in external code so you can greatly change what they display, if you are so inclined.
  • Incorporated BadgerBadger's improvements to the Nanocaust faction.
    • Now less likely to dominate your game in the first hour.
  • A random flagship, golem, and ARS are now seeded within 2 hops of your starting planet (and thus within the initial known-map range).
  • Redid the build menu layout to be more consistent with the layers-of-bars-on-the-bottom approach, where the first layer lets you pick the tab you want to build from, the second layer lets you pick the type of ship/unit you want to build, and the third layer lets you pick the specific mark/variant you actually want to be queued up or "loaded" onto the mouse cursor for direct placement.
    • Each of these layers now fully responds to the 1-9 keys, like other menus, if you like that sort of thing.
    • The queue display itself has been moved to the right-hand side of the screen, and laid out vertically, to visually and spatially distinguish it from your build menu.
  • Fixed a bug in the external code project files that was breaking the build process if you tried to build those projects in a normal steam install instead of in our development environment.

New Graphics Implemented For 34 Ship/Structure Classes!

  • 200 megs worth of compressed textures and meshes added to the main asset bundle (up to 1.2gb total for those)!
    • These have been in progress for months by Blue and Cinth, and are just now being actually wired into the game fully because of the particular way our work pipeline goes.
    • The breakdown of all this is below, and this isn't remotely all the stuff that we have nearly-done, so more will come soon.
      • It's worth noting that the radii and squad sizes may not be quite right on them in this initial wiring-up.
  • The following bonus-style ships now (newly) have full graphics:
    • Raptor, sniper, space tank, infiltrator, space plane, armor ship, grenade launcher, sentinel frigate.
    • When paired with the existing ships that already had graphics, this is actually all but three of the remaining bonus-style ships slated for version 1.0 of the game!
    • "Bonus-style" ships are basically the little squads of ships that you can start the game with, or unlock via Advanced Research Stations or similar. There are lots of other kinds of ships and structures (more TYPES of other ships/structures far outnumber the types of bonus ships), but these are most numerous in your fleet when talking sheer numbers of actual entities flying around.
  • The following "drone" type entities now (newly) have full graphics:
    • Implosion drones.
    • There are still four other types of drones that just use the little rock stand-in graphics. These are either in progress or slated to be completed in the next month.
  • The following AI guardian type entities now (newly) have full graphics:
    • Note that most of these will have five unique stages of graphics for each of the five marks, but for many of them they only use the mark 1 graphics at the moment for all 5 marks. In those instances, the graphics for all 5 marks are done already, but we haven't finished processing the higher-mark models into the engine yet.
    • Shield guardian, stealth guardian, sniper guardian, missile guardian, lightning guardian, flak guardian (all 5 marks), carrier guardian, emp guardian, implosion guardian.
    • The there are a number of other guardians that still use the rock-type graphics for the moment, even though there were a bunch of other guardians that already had graphics. Lots of guardian types in this game!
  • The following starships now (newly) have full graphics:
    • Note that all of these will have five unique stages of graphics for each of the five marks, but for now all of the ones in this batch only use the mark 1 graphics at the moment for all 5 marks. In those instances, the graphics for all 5 marks are done already, but we haven't finished processing the higher-mark models into the engine yet.
    • Siege starship, carrier starship.
    • Combined with the 4 existing starship types, that's all of the starship types for version 1.0 of the game. Compared to bonus ship types or guardians, there are relatively few starship lines.
  • Phase 2 of the AI master controller now has its graphics linked up.
  • The following AI structures now (newly) have full graphics:
    • Special forces secret ninja hideout, troop accelerator, black hole machine, raid engine, alarm post, planetary cloaker, attrition emitter, magnifier, super terminal, ion cannon, orbital mass driver, and warhead suppressor.
    • When combined with all the AI structures that already had graphics, this is now all of the ones for 1.0 now having graphics!
      • ...with the exception of the interplanetary guns, actually. That's a stretch goal that has 5 very huge guns that are not in yet, and they technically fall under this category. But they're not in the game just yet, anyway, and are on our list for soon, visually-speaking. :)
  • The following ship types now have actual proper icons shown rather than showing unknown and text:
    • Vorticular cutlass, vampire claw, etherjet tractor.
    • Vampire guardian, implosion guardian, dire warp beacon guardian, dire commander guardian, dire shredder guardian, dire teuthida guardian, dire hunter guardian.
    • Dyson sphere golem, devourer golem, armored golem, artillery golem, black widow golem, regenerator golem, cursed golem, hive golem, botnet golem, zenith trader.
    • All of the ships in the game now have proper icons and flair assigned.

Version 0.503 Nanocaust + Test And Revise Pass #2

(Released July 25th, 2017)

  • Fixed a bug where the Dyson's allegiance logic for "planet controlled by AI" and "planet neutral" was flipped.
    • Thanks to BadgerBadger for reporting.
  • Added BadgerBadger's "Save and Quit" button to save menu.
    • Thanks Badger!
  • The "ship cannon" effect when the Ark or other command unit replaces a lost squad ship now has a placeholder animation (like a repair beam) so you can at least see what's happening.
  • AI Type external code has been reorganized to only have one interface at the Core-dll level, and is split out in External code (but you do not have to follow that pattern).
  • AI Type external code now has a hook for DoPerSimStepLogic, just like special factions and conducts.
    • Thanks to BadgerBadger for suggesting.
  • Entities now have a SecondsSinceCreation field, for modding purposes.
    • Thanks to BadgerBadger for suggesting.
  • AOE weapons now factor their max-ships-hit-per-shot into their dps balance calculation.

Version 0.502 Mostly-Invisible UI Work

(Released July 14th, 2017)

  • Bottom-left tooltip now aligns to the top of the master menu area.
    • The alignment is still a bit rough, but at least it reacts to an increase in the occupied vertical space.
  • Completely reworked how UI layout from the old "everything is relative to the edges of the screen" approach that was heavily based on Unity's transforms, anchoring, etc, to an "everything is relative to the edges of the thing which contains it" approach.
    • This now supports a variety of alignment types, including "as far top/left as possible" "as far bottom/right as possible" "in the middle" and "left/right/above/below this list of other windows", each of which can be used separately for the x and y axis.
    • Note that any UI mods you may have will probably not work after this release until they're updated. The KDL_UIWindows.xml file should have the necessary information on how to adapt your stuff.
    • The Build and Tech menus currently sit higher on the screen than they should, will be fixed soon.
  • AOE shots no longer hit a protecting shield (or other target) more than once when detonating.
  • Most AOE weapons now have a maximum number of targets they will hit per shot.
  • The 0 key, which normally opens the master menu (commands not related to your selection) when you have no bottom menu open, will now always do that no matter where you are in the bottom menu structure, allowing key sequences like 0-7-1-1 (select all mobile military on the planet) to have a consistent behavior even if you currently have a selection or have a sub menu (or menus) open.
  • Added audio hooks for several events like hacking starting, losing a planet, ark's shields going down, etc.

Version 0.501 Test And Revise Pass #1

(Released July 7th, 2017)

Note that this one was a little slower coming, just because of some life stuff going on. Other than that we theoretically should be moving into quicker release cycles. ;)

  • Adjusted the shader to try and lighten the Experimental Fabricator model a bit.
  • Added the attribute " y_offset_of_icon="20" " to the fortress xml entry to help with the flickering issue.
  • Adjusted the radii on several ships and turret types to help with overlapping selection boxes.
  • Added "Start With First Planet" toggle button to the lobby, defaults off. If on:
    • The planet you start on begins with the controller and resource spots under your control.
    • There's no initial AI presence on the planet you start on.
    • Your Ark starts next to the controller on that planet instead of near the edge of the grav well.
    • Your starting AIP is what it would have been after conquering the first planet.
    • Thanks to... well, everyone, for letting us know that fighting that first battle every time got old.
  • As framework for the start-with-first-planet option, the "Conduct" table has been moved out to external XML. It's basically just a boolean value you can check for in mapgen or whatever other external logic, but you can also add arbitrary per-sim-step logic if you like. Whether it works or not is up to you, of course, but it's a pretty flexible hook.
  • Fixed a number of issues that were preventing your "last game lobby settings" from persisting across executions of the application.
  • Turrets and (most) other structures that you place directly will now leave remains, as in AIWC, that can be rebuilt by a controller, Ark, or Flagship.
    • By "rebuilt" is meant "switch it back into self-building mode".
    • There's a 5 second delay between an entity's death and when it can be rebuilt. That delay is in the external constants file if you're curious.
  • Fixed bug where pressing escape in the lobby would cause a null reference exception.
    • It now correctly exits the lobby.
  • The "Free Roaming Defender" button, since the text doesn't even remotely all fit on the button, is now called "Pursue", so you can at least see whether the mode is on or off for your current selection.
  • A number of buttons in the lobby have also been modified to better fit their text.
  • Various balance numbers (metal cost, power cost, fuel cost, science cost, speed, range, etc) are now rounded to a more readable number if that is within 2% of the "real" value.
    • This could stand some refinement, but even at this point it makes the tech menu a lot easier to read.
  • Included BadgerBadger's "Find Planet" function in the planet action menu.
    • Thanks, Badger!
  • Integrated BadgerBadger's addition of the concept of a "campaign" to the save/load menus.
    • Thanks, Badger!
  • Fixed bug where the algorithm that decides which planets are good at which resources could sometimes assign a zero production of metal, energy, fuel, or science to a planet.
    • Note: it's intentional that most planets do not have the hacking resource at all.
  • The Basic Turretry pattern now spends 25% of its budget on shield generators.
  • Shield generators no longer project their shields when disabled by paralysis, still-building, etc.
  • Fixed bug where shield generators were galaxy-wide-cap instead of planet-cap.
  • Fixed bug where player-owned carrier-starship drones would never return to their parent ship because they always thought enemies were present.
  • Made drones like the carrier starship drones die if their parent ship dies or is on a different planet.
  • Added IndividualBehaviorLogic tracing type, for inspecting the low-level individual ship logic that takes over in the absence of any commands from the owner (things like FRD are handled here, as well as carrier drone return-to-carrier behavior).
  • The "engines out" colorization of the mark level icons has been made less garish and instead has text saying "ENG" over it on the bottom.
    • Added new "out of order" display for the mark level icons that says "OFF." This is for stuff that is dead and going to be rebuilding.

Version 0.500 Ship Batch 7 of 7

(Released June 27th, 2017)

New Ships! (Note That More Are To Come Pre-1.0, But Not Pre-Early-Access)

  • The AI Master Controller is now armed.
    • And its on-death behavior has changed.
  • Botnet Golem
    • As in AIWC, fires large salvos that cause victims, once dead, to become zombie units of the same type that attack their old enemies but do not take orders from anyone.
      • So these zombies (not the golem itself) are the first third-party or "special faction" units.
    • Unlike AIWC these shots are no longer insta-kill, but quite powerful nonetheless..
    • For now zombies just stay on then planet where they start, and FRD.
  • Devourer Golem
    • Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
    • Attacks everything within range (except controllers/warp-gates), and generally wins. When it does damage, it gains a portion of it back in health, to keep it going on those long hauls through the AI's territory.
    • Randomly picks another planet somewhere on the map to go to.
      • If you feel like reprogramming the galactic wrecking-ball, this routing code is in SpecialFaction_Devourer.DoLongRangePlanning()
    • When it reaches destination, rinse, repeat.
    • Good idea to not be wherever this thing is. Thankfully it's slow.
    • Will need rebalancing to avoid it causing a win/loss on its own (in the last test, it wandered through the AI Homeworld and took down the AI Master Controller singlehandedly), but we're working on an approach that doesn't involve unintuitive immunities.
  • Zenith Dyson Sphere
    • Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
    • Unarmed, and immobile, but immensely hard to kill.
    • Periodically produces units to go to other planets and attack enemies, similar to AIWC, but instead of the single "Dyson Gatling" unit type from AIWC it simply picks from a subset of the AI's MkV Guardians. You want to know how it got those guardians? You've seen that episode, right?
    • Like in AIWC, the Dyson's units have different allegiances depending on who controls the Dyson's planet:
      • If the AI controls that planet, the Dyson hates everyone.
      • If a player controls that planet, the Dyson hates everyone except the AI.
      • If no one controls that planet, the Dyson hates everyone except the players.
    • Unlike AIWC, the Dyson's preivously spawned units will automatically "update" to follow any changes to those allegiances.
    • Also, "hates everyone" now includes other special factions, like the Devourer and Zombies (which currently means that the Dyson's units will Nom your Botnet zombies even if it likes you; we'll probably change that later).
    • As in AIWC, the Dyson's units won't attack an AI controller/warp-gate. Still feels kind of lame, but the alternative is either uncontrolled AIP growth or potentially-tons-of free extra territory for the player. Suggestions welcome. It'd be fun to have factions like the Devourer and Dyson be unrestrained in their ruckus-causing, without throwing the player's game into continual chaos.
    • As with the Devourer, will need rebalancing to avoid eventually flooding the galaxy with special-faction guardians.
  • Zenith Trader
    • Special Faction unit, one is seeded somewhere on the map at the beginning of the game (if enabled in the lobby).
    • Unarmed, but hard to kill.
    • Randomly wanders the galaxy.
    • When present on the same planet as your Ark, your Ark gets an extra build menu that lets it build things like Ion Cannons, Black Hole Machines, etc.
    • Like AIWC, the trader is friendly to all factions, and all factions are friendly to it.
      • Unlike AIWC, there's one exception: the Devourer knows the Trader is not to be trusted. We suggest making your Trader purchases before the two of them meet.
  • Dire Guardians:
    • Dire Teuthida Guardian
      • Spawns Teuthida drones, which zombify things they destroy.
    • Dire Hunter Guardian
      • Spawns Hunter/Killers (this takes a long time for each one), which are actually stronger than the Hunter Guardian itself. An H/K's main weapon is called a "Plasma Torpedo Shotgun", which tells you all you need to know.

Post-Processing Stack And Related

  • Upgraded to Unity version 5.6.2f1 from 5.6.1p1.
    • This introduces some bugfixes for windows and linux on the player side, and fixes a memory leak in the profiler for us on the editor side.
  • As it turns out, the experimental post-processing stack v2.0 that unity has in beta and warned "don't use in a production environment" is indeed not ready for a production environment. ;) Was worth a shot.
    • The new 5.6.2f1 won't even build for DX11 on the version of the PP stack we were using, and it was causing strange graphical artifacts for at least one tester.
      • Thanks to 5ounds for reporting the strange seizure-strobes. ;)
  • Yet AGAIN we've completely redone the post-processing stack. What's up this time?
    • We're using the FXAA implementation by Amplify Solutions, since that's quite battle-tested.
    • We're using PRISM post-processing to handle some color grading, minor vignetting, and sharpening. The difference in quality from the sharpening plus the FXAA is pretty notable even if you already had MSAA cranked up. It all works in tandem.
    • We've also returned to Amplify Bloom once again, since that just is unparalleled in terms of its overall quality and its ability to ensure temporal stability. We've actually cranked up the temporal stability to an unusual degree, and have a much wider radius of faint bloom, so that we get a softer effect (it was getting pretty grating in recent versions) and so that also we get an effect that has a bit of a trail after bright sources because of the temporal delay. Looks bad in setup scenes, looks great in battles.
    • One of the reasons that we had moved to the unity post-processing stack was that since it is free and open-source we could simply include that in the AIW2ModdingAndGUI project. Other than the FXAA solution, these other bits are not open source. But it's important to be able to see what you're actually going to get as a result in-game when you're making something in the AIW2ModdingAndGUI project... so we just compiled the non-editor code into our own dlls, and then removed the front-end editor code from that particular project. Problem solved.
  • Experimented around with Graphics Jobs again, which is a feature that we've tried on and off with unity.
    • It's definitely causing a lower overall framerate in this particular game, and more choppiness, so we turned it back off and won't be including it.
    • Most likely this is because of all of the instancing that we do, and the fact that offloads a lot of the work of dynamic batching already.
  • Upgraded to Amplify Shader Editor v1.0.0.012, which adds a few new goodies for us and a couple of bugfixes.

Version 0.450 Sound!

(Released June 22nd, 2017)

Post-Processing Stack Revisions

  • We completely redid our post-processing stack AGAIN, this time based on the not-yet-fully-stable (whee!) unity stack v2, which is still in development.
    • For reference, the version we're using https://github.com/Unity-Technologies/PostProcessing/tree/v2
    • Why use this? Well, Chris was getting really sick of the over-done bloom that he was winding up with the older PP stack, and couldn't fix it with any settings he could use. The newer PP stack has not only a better control over bloom, but also a much better auto-exposure tool. The HDR tonemapping tool seems borked at the moment, but the auto-exposure tools is yielding better results for us than we got with the Neutral tonemapper in the PP stack v1 anyway. Would have been nice to use ACES, but oh well.
    • With the new exposure correction, we've actually brightened things up a tad, and there's a hint of what you might think of as eye adaptation, although that's really more a factor of exposure averaging and is a very subtle effect.
    • We're also now using SMAA on the CPU side in addition to the pre-existing MSAA we use on the GPU side. Previously we were not even using FXAA on the CPU side, though we were thinking about it. TAA is now available in PP stack v2 in the Forward rendering path, which we're excited about, but it doesn't yield sufficiently crisp results yet. So for the moment SMAA it is.
    • Why all this fuss over the post-processing stack? Well... sometime soon we have to start doing screenshots that people will start showing around on websites and seeing on Steam, so it's pretty important that things look nice enough.

Sound Effects!

  • We now have a bus-based sound mixing solution in place, based on unity 5's advanced mixing capabilities, but then expanding that even further.
    • In our case we're setting up both directional and 2D sound sources with custom falloffs, and a maximum number of "voices" per bus, and advanced customization for clusters of sound effects (time delay between individual sound effects playing, between sound effects for the whole cluster, and even failover to a different sound effect cluster if the first cluster is still on cooldown).
    • This allows for us to really tune and mix the sound the way that we want, including music ducking, and general sound ducking for various types of vocal audio.
    • This also allows for us to have voice commands that play, but not too frequently, and for them to "fail over" to other types of sound effects to indicate orders receipt when the voice command version is on cooldown.
      • Thanks to qipoi for suggesting this functionality regarding the voice commands playback and failover.
  • Hugely reworked our music pipeline, as part of our new sound pipeline in general, so that it's all now piped through a central audio mixer that supports audio ducking for the music and for other sound effects as-needed for things like voice alerts and things of that nature.
    • It also allows for us to have certain explosions just drown everything out in an impressive way, and in general allows us to do sound mixing by bus, which can be tuned in the AIW2ModdingAndGUI project.
  • The game now has proper volume handling, which it didn't have before even for the music.
    • These volume settings are layered on top of the volume settings from the mixer, and it all gets translated over nicely.
    • Players simply select a volume between 0 and 100 for any particular type of sound that they want to adjust.
      • Note that for turning off sounds or voice or music entirely, it's more efficient to simply use the toggles for those so it's not silently playing those sounds or music.
    • The types of sound that can be adjusted are:
      • Master (affects literally everything, music, etc).
      • Music (just affects music)
      • Sound (affects all non-music sounds).
      • Voice (just affects spoken voice lines).
      • Combat (affects all the sounds of battle).
    • Given that the actual underlying bus volumes are in -80 to +20 dB ranges, where 0 is the default (unaltered) state, and we may have altered the bus defaults in the mixer itself...
      • The game takes the inputs for the "volume" as a 0-200 range, then transforms that into a multiplier against the default volume of the bus.
      • Specifically:
        • If you choose 0 volume it just goes to -80, if you choose 100 it stays at the bus default, whatever that is.
        • If you choose anything between 1 and 99, then it multiplies the inverse cube of the percentage of that by the starting volume of the bus.
          • This helps to offset the logarithmic falloff of dB reduction from 0, and feels pretty natural.
          • It does mean that since we're only using the cube, and not the fourth or fifth power, that in general things still go pretty unexpectedly extra quiet below 40% or so, though. But this gives the most gradiations in the audible range.
        • If you choose anything between 101 and 200, then it multiplies the flat percentage of that by the difference between the max (20 dB) and the starting volume of the bus, added to the starting volume of the bus.
          • This gives a great deal of precision in making things slightly louder, but doesn't really hide the logarithmic rise where you have to go to 180% or so to get a really substantial (10dB or more on average) rise out of the result.
          • Overall this isn't quite the most natural way to handle the volume siders above 100%, but it does give the most precisions, which is probably for the best. And it's still easy enough to tune.
  • There are now computery sound effects for giving attack, move, wormhole-path-move, and construction orders.
    • The ones for placing construction units are particularly satisfying. :)
  • There are now sound effects that play when you alter your build queue, alter your control groups, "do some other general tweaks, mainly cheats," launch warheads (this one is cool), scrap units (careful of the heart attack), start hacking something, change into hold fire mode or out of it, toggle pause, and unlock a tech.
  • There are now settings that allow you to mute various parts of the battle sound effects selectively (shots firing, shots hitting, ships exploding). This might be useful to someone else, but it's also helpful for us in testing certain sounds without the mixing.
  • All of the ships/structures in the game now have explosions set for when they explode.
    • They fall into 14 different categories of explosion sound effect, two of which are just for warheads.
    • There are then a further three twos of explosion sound effect that happen for ships that are not at the planet you are presently at, or when you are on the galaxy map.
  • The game now uses a blend of 2D and 3D (spatial) audio, which is pretty typical for games that are in 3D.
    • Things that are "HUD sounds" or other non-point-source type sounds just play normally, as does music.
    • Things that are sound effects coming from a ship or a shot or an explosion have direction and attenuation based on their relative location to the camera.
      • This makes it substantially quieter in the battle when you zoom way the heck out, which is nice, although different sounds are attenuated at different rates -- the explosions of ships dying attenuates a lot slower, for instance, so you can keep an ear on that easier.
      • This is something that anyone can tune (in a modding sense) by adjusting the prefabs in the AIW2ModdingAndGUI/Assets/AudioPrefabs/Combat folder.
        • The major settings to play with there are Max Distance (the furthest out the camera can zoom is 1200, for reference), and then the Spatial Blend and Spread values. Having a Doppler level is also possible, but tends to give strange and muddy results.
        • You can combine changes here with changes to AIW2ModdingAndGUI/Assets/AudioPrefabs/OfficialMixer (click into that object to get the mixer panel), if you like.
          • One thing Chris was considering, for instance, was making it so that WeaponsHitting had a max distance of 500, over which it would attenuate, and then increase the WeaponsHitting bus from -23dB up to something a lot more substantial. You'd then have no sounds of shots hitting beyond 500 distance, but much louder sounds of that hitting when you are progressively closer than that.
          • This isn't something you can mod and just keep modded all that easily at the moment, although you can make a copy of the mixer and then point your xml (using an override) to your mixer instead of ours. The risk being that if we make a lot of changes to the sound buses, which is most likely now while they are new, then yours may stop working and you have to make a copy of.
          • At any rate, mainly if you want to mess around with that and see if there are values that you feel like give a better result, we'd always be willing to take that sort of thing under advisement. ;) We have BadgerBadger fixing bugs already, goodness. But anyhow, the point being that it's open so that people from the community can fiddle and share their results with everybody if that is an area of their interest.
  • There is now a set of sound effects for ships entering or exiting wormholes, as was the case in the first game. These are neater, though.
  • All of the various buttons in the game can now have a click_sound xml attribute set on them, to choose between sound effects for them to play when clicked.
    • This also applies to dropdowns, image buttons, button lists of various sorts, etc.
    • By default buttons all now play the sound effect "ButtonNormal" when clicked. You can override this to silence if you need to for a given button that also plays a sound effect via a command that is executed, if you need.
    • A different sound effect, ButtonStartGame, is played when you start a new game or load an existing one.

Shot Visuals!

  • The forcefields and the ship-to-ship lines have been moved into the modding and gui project so that anyone can edit them.
    • Improvements have been made to how the various lines look, from their shaders, while we were at it.
  • All of the shot graphics have also been moved to the modding project, for the same reason.
  • For now taking away the side-specific bullet colors. Frankly this makes it a lot harder to differentiate bullets by type, which is more important.
  • The armor-piercing bullets now have their real graphics, which is the pre-existing orange tracer shots, but made a lot shorter.
    • Note that the tracer-style shots are heavily affected (in terms of how long they are) by the speed at which they are moved. So there are now three different variants for use in different speed scenarios. This is super easy to mod if someone is changing around shot speeds dramatically and wants the shots to look similar to how they do at the current speed.
  • All of the not-yet-done shots now use the old green-style enemy shots, to make those easy to spot and then fill in the real data for.
  • FINALLY got a version of the fusion rocket shot visuals going that we're actually happy with. It has to look nice, but not too close to the other stuff. Exaggeratedly-large so you can see it, but not so much so that it's cartoony. Nicely colored, but emissive and bright enough you can see it at a distance. And on and on.
    • We experimented a ton with trail renderers in addition to the rocket, and having those be the things that are visible at far distances, but that wound up always looking too similar to the other trail renderers (when additive particle blending was used) or extremely chuggy on the CPU (when alpha particle blending is used and thus they needed to sort).

Misc

  • Fixed bug where golems were not actually being seeded.
    • Thanks to BadgerBadger for reporting.
  • Fixed a bug where it was possible for the map seeds auto-generated to be longer than the ones you can key in manually.
    • Thanks to BadgerBadger for literally fixing the bug himself.
  • Fixed a bug where hitting B selects additional build units.
    • Thanks to BadgerBadger for literally fixing the bug himself.
  • Put in a fix that definitely prevents keybinds from triggering while a textbox is focused (we've been able to test it now).
    • Thanks to BadgerBadger for reporting.
  • Added a link to the external tutorial on the main menu.
    • Thanks to BadgerBadger for literally coding the addition!
  • Put in a fix where squads should now properly change their ownership color if their current side doesn't match what their previous state was.
  • An error message stating "Player data archive not found at `/home/user/AIWar2/AIWar2Linux_Data/data.unity3d`, using local filesystem[user@Desktop AIWar2]$" on startup on linux should no longer display. It was harmless, but annoying.
    • Note we didn't get a chance to test this yet, but knock on wood it should work. ;)
    • Thanks to BadgerBadger for reporting.
  • World_AIW2.Instance.QueueGameCommand now takes a second parameter that says if it should consider handling local audio/visual feedback of the command being sent.
    • Generally speaking almost everything in the AIWarExternalCode should have that as true, so that sound effects and such can be played as need in order to register that things have been accepted. But things from the AI should always say false.
  • Fixed a bug where every full-capacity squad with more than one ship in it was drawing an extra ship.
    • This doesn't fix isues with squads having more living ships than they should based on ships that died; that's a separate issue.
    • Thanks to BadgerBadger for reporting.
  • The game now notices when there are more ships specified to be in a squad than the actual formation allows for, and complains.
    • This was affecting autocannon minidpods (40 requested, 25 available), laser gatlings (80 requested, 25 available), and minefields (80 requested, 25 available).
    • The game now has two new squad formations that have 48 and 100 scale-1 formation positions in them, for handling these cases.
      • Note that we're going to work on vastly better formations in general later, and we welcome formation creation by players, too.
  • You can now actually name your savegames.
    • Thanks to BadgerBadger for literally coding the addition.

Version 0.401 Ship Batch 6 of 7, And Gimbal Perfoooormance!

(Released June 12th, 2017)

  • The game console has now been fully moved to the AIW2ModdingAndGUI project (source code aside), and has been re-skinned using our own graphics and text mesh pro.
    • This may not have seemed like a high-priority thing to do, and indeed it was not in and of itself, but it validates a particular GUI creation workflow that we now have, as well as providing a concrete example for that type of GUI.
      • Basically our existing GUI creation methodology is all based around xml creation of things and populating them certain ways.
      • But now we can also take an entire GUI canvas, create it in the WYSIWYG unity editor in the AIW2ModdingAndGUI project, and then wire it up in a completely traditional-for-UGUI fashion and after that let it be triggered from the dynamic GUI. These are even loaded using the existing "gui prefabs" logic that the xml-oriented GUI uses.
    • The end result is just as performant in both cases (and basically identical), and so mainly the question is of which approach is easier for a given piece of the GUI. There's no one right answer. Even the xml-oriented version is using prefabs that have a bunch of nested stuff, but this is just taking it to a completely other level of having the entire canvas/window populated.
      • At any rate, being able to do this now and having an example of how to do it was well worth the time in this particular build. It should open up options better for the upcoming GUI revisions.
  • A massively new way of drawing the "sprite gimbals" over squads in the game is finally complete.
    • We tried a variety of approaches, but for various reasons dynamic batching, instancing, and so forth all yielded subpar results when individual sprites were made up of often up to 6 sub-parts (main icon, border, flair, mark level, and health bar).
    • We're now baking the sprites into meshes prior to them ever being instanced, which cuts the graphics load of the gimbals to around a sixth of what they previously were.
    • That said, the sprites themselves still need to be instanced even after being baked, and to do that we need a single mesh for all the types for the most part. So we're hiding data in the uv2 and uv3 channels that let us know which instance properties to conditionally apply to which vertices, which in turn lets these things colorize themselves (via HSV shift) as needed. But since not everything needs to be colorized, our new ubershader for the baked group is now actually more efficient than before, making the savings more than a drop to 1/6th of the previous load from this source.
    • Performance improvements in this area might not seem like that big a deal, but on a GTX 1070 with 5k ships on the screen, the icons were approximately half of the visual load. Facepalm, right? So this has been a big priority.
    • The downside of the new approach would seemingly be that now these icons are harder to edit, though, if someone wants to mod. Bummer... except that it's just as easy as ever! :D
      • We've created editor tools in the AIW2ModdingAndGUI project that allowed us to merge meshes, set the uv2 and uv3 channels properly, and so on. You can re-bake the meshes as desired, and we can do so quite easily as well. You can't do it by xml anymore, but that's a pretty small thing.
  • Fixed a bug in the prior build where the gimbal icons no longer reacted to player mouse hovering or clicking.
    • This was because of the changes in the hierarchy of pieces of squad parts in the last version.
    • Thanks to TheVampire100 for reporting.
  • When you are placing ships/structures on the map, there's now a filled circle that shows the radius of the footprint that ship will take up. It then also shows the icon of the ship in white over where the footprint is.
  • Fixed an issue where the missile turret was not assigned its flair properly.
  • The game now automatically checks its models for missing materials, or materials not set up for instancing.
    • There were then a number of ships that we fixed that on so that they have instancing set up properly.
  • The font_size property now actually works on the new text labels in the game (not buttons or anything else presently).
  • The game now has icons for the various resources, which can be inserted into text with <sprite> tags from text mesh pro.
    • Unfortunately the process for getting those in there requires the creation of sprite dictionaries embedded in the main game Resources folder at the moment. We will likely alter that at a future time, but for now that's stuck.
    • The process for getting new sprites in there is pretty convoluted in general at the moment, to be honest, so that's again something we'll have to work on later. But it does work, and it does perform well!
  • Fixed a bug where "dfgdfg" would show briefly as the planet name in the prior build.
    • Thanks to BadgerBadger for reporting.
  • Updated to Amplify Shader Editor v1.0.005, which has a number of new features and some at least minor performance improvements.
  • Fixed an issue with the AI Warp Gates not having their mechanical parts rotating properly.
  • Put in some code to automatically tell us when our animators have messed up.
  • The game now has a nice fade-in effect whenever you're switching planets or in and out of the galaxy map, making things feel more polished.
  • Fixed a problem with the mod support where every dll had to define a type which implemented the IInitialSetupForDLL interface, and further required a specific naming convention for that type.
    • Now when loading a dll it looks at all types exported from it and runs the RunInitialSetup() of each IInitialSetupForDLL it finds.
    • If it doesn't find any, it won't mind.
    • Thanks to Draco18s for reporting.
  • The very low end of the camera zoom now has a few more gradations where it shows more of a side-facing view, and then the very lowest zoom level actually looks back UP slightly, allowing you to see tall ships and structures better, and in general get a little more cinematic of a view. This has no effect on the higher zooms.
    • Thanks to BadgerBadger for inspiring this change.

New Ships

  • Bonus Fleet Ships:
    • Vampire Claws
      • Cloaked melee ships that heal themselves when they do damage.
    • Vorticular Cutlasses
      • Melee ships that damage themselves when they do damage (when balanced, their dps will be much higher than vampire claws, for example).
    • EtherJet Tractors
      • Cloaked Jets with Tractors. What could go wrong?
  • Dire Guardians:
    • Dire Warp Beacon Guardian
      • The AI can always send waves to the planet this guardian is on, and if it is on alert this is likely to happen.
      • Not to be confused with the Dire Warp Bacon Guardian (despite internal typos to the contrary), partner-in-crime to the Pancake Golem.
    • Dire Commander Guardian
      • Increases reinforcements sent to the planet it is on.
      • Triggers waves (like a raid engine) while this is on alert.
    • Dire Shredder Guardian
      • Internally constructs and launches shredder drones (vicious little melee ships).
  • Guardians:
    • Vampire Guardian
      • Can be very hard to kill if you don't kill it quick, because of its ability to heal itself from doing damage.
    • Implosion Guardian
      • The Dire Implosion Guardian's little (and far more common) brother. They're a real pain in the rear if you're a golem...
  • Golems:
    • Seeded like Flagships, you find these, clear their planets, and claim/repair them to gain control of them.
    • Unlike flagships, these are rarer, claiming them costs AIP, and they don't have the quasi-Ark functions for building/repairing/etc. Instead, they're considerably more beastly than Flagships and some have unique abilities.
    • Armored Golem
      • Short-range brawler.
    • Artillery Golem
      • Long-range sieger.
    • Black Widow Golem
      • Massive paralyzing-tractor capacity, and does engine damage with its shots.
      • The "if you move while tractoring something, it moves with you" logic has also been implemented.
    • Regenerator Golem
      • Regenerates ships you lose on its planet, at the cost of some of its own health.
    • Cursed Golem
      • Has powerful fast-firing railcannon, but damages itself in proportion to the damage done.
    • Hive Golem
      • Internally constructs hive drones, which it launches in large groups against any threat on the planet.

Version 0.400 Usability and the GUI Pipeline

(Released June 6th, 2017)

Usability Improvements

  • Reorganized the bottom menu to better emphasize the function most people expect from the number keys in strategy games with real-time simulation. Namely: control groups.
    • So now the 1-9 buttons along the bottom of the screen are the control groups 1-9.
    • And the 10th button (button 0) is a "Menu" button that opens the master menu that used to be there.
      • Though that no longer has the "commands" sub-menu.
    • If you have a selection, the game shows the commands menu (as a bar instead of a stack) above the bottom bar, and the 0-9 keys map to that instead of control-groups/menu.
      • And backspace will cancel your selection (if you have no deeper foldouts), thus returning you to the bottom-bar context.
    • The upshot is that if you select your Ark, you'll see a "Build" button in the command bar at the bottom of the screen, among other things an Ark can do. Similar with other unit-producing things.
  • The buttons in the command menu (now shown whenever you have a selection) now are only visible if they can be executed with the current selection:
    • FRD only shows if there's a mobile military ship.
    • Scrap only shows if there's a non-Ark.
    • Build only shows if there's exactly one type of builder unit.
    • Hacking and Warheads only shows if there's the Ark.
  • Added some direct keybinds for the sake of near-term sanity:
    • P
      • Toggles pause.
    • B
      • Selects a builder unit on the planet and opens the build menu.
      • If a builder is already selected, selects the "next" builder, if any.
    • T
      • Opens the tech menu.
      • If tech menu is already open, closes all menus.
    • Escape
      • Opens the system menu (save/load).
      • If system menu is already open, closes all menus.
    • Space
      • Closes all menus.
    • You can change any of the above in your inputmappings file.

Visuals And Moddability

  • TextMesh Pro has now been integrated into the game (version 1.0.55.56.0b9). We have the paid version, but we're using the free version so that we can include it with the ModdingAndGUI project.
    • This lets us do a lot more advanced text rendering at no extra performance cost, as well as giving us basic functionality like proper kerning.
  • The first place we've set to using TMPro is the galaxy map, where now the text is both in a better font as well as a lot more readable.
    • The actual places where the fonts are set up for the galaxy map, and things are oriented around planets, is now also in the ModdingAndGUI project so that it can be edited by folks as desired.
  • Darkened all of the new skyboxes to fit with the new HDR rendering.
  • Made it far easier for people to edit skyboxes quickly, thanks to a new button in the header of the skybox editor.
  • The ruined network nodes now have proper graphics.
  • The advanced starship constructor now has proper graphics and animation now.
  • Dropdowns in the game are now actually fully skinned for the first time, making them consistent with the rest of the GUI.
    • They also use the TMPro text to show their text, making their text sharp, too.
    • Their scrolling speed is also finally reasonable when you use the mouse wheel, too.
  • The fortress and experimental fabricator now both have proper graphics implemented.
  • The sidebar is back, as well, even though it doesn't look great yet.

Misc

  • Fixed a bug where saves triggered in the save menu could happen while some changes to gamestate were still ongoing, leading to the data being saved in an inconsistent (and sometimes non-loadable) fashion.
    • Also added a warning message that will show if this particular corruption happens again, though it shouldn't be able to.
    • Thanks to BadgerBadger for the report and save.
  • Fixed a bug that could cause a hang in the mapgen logic.
    • Thanks to drspikes and BadgerBadger for reporting.
  • Fixed a bug where various internal tech-groupings were showing as selectable menus (ironically named "Not Shown").
    • Thanks to BadgerBadger for reporting.
  • When there is invalid data somewhere on trying to load a ship that does not exist, the game now does a better job telling you what the heck is happening. This would mainly be something helpful to modders and us devs.
  • Put in massive numbers of performance improvements in how the GUI interfaces with unity.
  • Put in a bunch of new error checking on the GUI side, so that if things are set up wrong at any point, it now yells instead of failing silently.
  • Tractor turret tractor-multiplier from 30 => 3.35, which is slightly more than enough for one squad of MkI tractors to indefinitely hold one cap (10 squads) of MkI fighters. Previously it could hold... more. A lot more.
    • Tractor effectiveness is also now reduced by the tractor turret "squad" taking losses.
  • Put in some logic to prevent minor gc allocs related to the galaxy map when you're not viewing the galaxy map.
  • Fixed a bug in the last couple of versions where ship animations were not always playing when there were a ton of ships on a planet.
    • Thanks to BadgerBadger for reporting.
  • Bunches of performance improvements have been made to the movements of squads and their icon gimbals.

Version 0.301 The New HDR Visual Stack

(Released May 30th, 2017)

  • Engine Damage Repair has been implemented.
    • Works similarly to hull/shield repair, but does not actually cost metal.
  • Changed balance_seconds_per_fight to 15 from 20, and balance_seconds_per_shot to 2 from 4, massively speeding up the feeling of combat from what it felt like in the prior version. It's now much more like what it was in past versions, without having such bullet spam in giant battles that there's a bunch of slowdown.
    • Thanks to BadgerBadger for reporting.
  • Fonts are now sharper in the GUI, although there's still room for improvement. Blurriness causing legibility problems is a definite issue to some extent still.
    • We've also updated the font on the small buttons at the bottom of the screen to be more readable, although we still want to update that even further in the future.
    • Thanks to Sounds and BadgerBadger for reporting.
  • New backgrounds for dropdowns.

HDR Graphics!

  • We had thought this wouldn't be possible with our visual style as recently as one version ago, but it turns out it is!
    • Also, prior to version 5.6 of unity, it literally wasn't possible at all, at least not without losing hardware MSAA support (which is the best sort of antialiasing available these days, and fastest).
  • The game now uses HDR graphics for the main camera, allowing for a better color range and fancier lighting effects, etc.
    • One of the most obvious examples is the way the rings on the end of the laser turrets glow very bright blue now, whereas before they would white out fast and so we had to keep them pretty non-bright.
  • We're using a new reflection cubemap against our scenes, and have tuned a ton of the materials to have better values to give themselves really high quality results without an over-blown specular highlight at certain angles to the main scene directional light.
    • Kinda related to this, we're doing new tonemapping now, which maps back down from HDR to the LDR range better, and helps give us a richer color without things having to be so darn glowy _everywhere_.
  • The bloom effects have been completely replaced with another set, which is able to use a lot more precision in what it does.

Known Issues

  • Thanks to the tonemapping, the backgrounds are presently too bright relative to the ships. We simply didn't have time to get to that, and didn't want to hold up the rest of this release over that.

AIW2ModdingAndGUI Capability Updates!

  • Since this unity postprocessing uber-stack is freely available, and even open source at that, we're now able to show you actually what ships would really look like in the real game when you are working in the AIW2ModdingAndGUI project.
    • This is enormously important in particular for being able to reliably set up the space nebula backgrounds, which have their characteristics altered some by the post-processing stack and which you need to be able to see in order to properly create them.
    • As part of this, we're no longer using Amplify Bloom or Beautify.
    • Also as part of this general work, we've updated all the various shaders and ship models and materials in the examples folder there.
  • To aid in background creation, as well as in general giving more examples of ships and how their shaders are used, there are a bunch of new ships that have been added to the example project: data center, lightning corvette, mlrs corvette, spider, and starship constructor.

Bugfixes

  • Fixed a bug in the improvements to shot staggering that caused divide-by-zero errors when the game was paused (because it actually runs zero-length frames during that time so the game can still respond to you).
    • Thanks to BadgerBadger for reporting.
  • Fixed a variety of errors that could happen with accidental extra calls to clean up objects (those extra calls are GOOD, since they often are coming from a few sources that need to double check things properly). This should also help performance minorly when objects are destroyed compared to pre-0.300 versions.
    • Thanks to BadgerBadger for reporting.
  • Fixed some bugs that could prevent shield repair.
    • Thanks to BadgerBadger for the report and save.
  • The sidebar is removed temporarily, since it was so busted anyway and overlapping things strangely.
    • Thanks to BadgerBadger for reporting some of the related issues it was having.
  • Fixed some bugs that caused the build menu buttons to collapse into a pile in the bottom-left of the screen.
    • Thanks to BadgerBadger for reporting.
  • Reworked the "Quit Game" button on the master menu to no longer be a "immediately chuck the gamestate into the grinder" function, but rather "tell the game that once it's done executing the current sim frame to close the gamestate". This avoids various race-condition null exceptions when quitting while the sim threads are going.
    • Thanks to BadgerBadger for reporting.
  • Improved the inter-cluster connection logic of Clusters to be much less likely to draw long connections that overlap other clusters.
    • Thanks to BadgerBadger for reporting.

Prior Release Notes

AI War 2:Earlier Than Early Alpha