This one is all about new AI Types and being able to choose between them in the Lobby.
There’s some neat new personalities in there (I’m especially fond of “Brawler”, but I always did love the Burlusts), but the more important thing is all the framework necessary to have different factions have their own set of dropdowns in the lobby, so we can support variable-intensity special factions later on, etc.
On the subject of modding, some significant improvements were made to how you can define XML entries in terms of other entries, and more specifically to how the AI’s unit “draw bags” are populated.
There’s also a fix to a bug that had broken the ability to start a multiplayer game. Thankfully the sim itself was staying in sync fine, there was just a null exception in the lobby for the non-hosts, when trying to show certain information.
Lots of quality-of-fun improvements here, including much-improved support for having selections of stuff from multiple planets, helpful new info on the AI Defenses galaxy display mode, descriptions of many common units, and another round of basic balance changes.
But the main thing is definitely the addition of targeting modes for control groups. Now you can go into a planet with your fleet using “Defense” targeting, and it will defend itself against the main threats to your shield cover. Then you can switch to “Siege” targeting to have your long-range units focus on knocking out the enemy units that can hit you back. After that, you can switch into “Pre-Assault” to focus on neutralizing the things that would mess you up if you just charged straight through (tractors, shields, etc). Finally, during an actual charge, you can switch into “Assault” to prioritize tractors and shields in your way. If things don’t go your way, “Retreat” prioritizes the enemies that can catch you, are near you, or can wreck your shields. Once you’re done you can change it back to “None” and the individual weapon system target sorters will do their thing (as they will anyway if your group’s setting doesn’t have a preference between two targets).
Modders can also change these modes and add new ones. Look at the “TargetSorter_Siege” class in the external code project for an example (to add a new one you also need to add a line to GameData/TargetSorter/KDL_VanillaEntries.xml , but it’s straightforward).
No one theme here, other than “make the game more fun to play” 🙂
Opening with some UI improvements from community member BadgerBadger, and moving on to some behavior changes from me to make waves behave in a more familiar fashion and to make your ships not fan out in a counter-productive fashion when you give them an attack order.
Modders can now make different galaxy display modes change the text (and its color) around planets on the galaxy map, which really helps show the info you want.
And some various bugfixes in the middle of it all.
This one started with more work on differentiating the planets. In the last release we made it so the AI’s controller on each planet can be in different places. Now we’ve gone the rest of the way with all of the code for determining the position and type of the AI’s defensive units. The current set of AIDefensePlacer implementations (which you can mod, or add new ones to the mix) includes ones that split the AI’s defenses into two or three distinct locations on the planet.
Next, we’ve integrated four of the best map types developed by modders in our community. Draco18s’s “Density Map” is especially cool: it uses a bitmap to build a spiral galaxy by establishing different planet zones and only connecting planets within a zone (and each zone to each bordering zone).
Along with that, we added the framework community modder BadgerBadger developed for having map-type-specific lobby options, so you can configure how many arms an Octopus map has. This is still in early days, but it’s an exciting customization method beyond what AIWC offers.
Finally, we’ve made some more strides on the still-awful (because still-unfinished) UI: an improved metal display from Badger (along with tooltips up along that top bar), and the ability to color the lines between planets on the galaxy map. AIWC has a similar feature that is very helpful, and AIW2’s version of it is very moddable.
Lots of crazy going on lately, hence it being two weeks since the last release (sorry!)
This time I focused on articulating some key “joints” in the skeleton of how the game comes together:
– Wormhole placement now has much more variety, while maintaining the rule that you can tell which direction the other planet is in based on where the wormhole position.
– The AI’s main defensive position is also no longer always in the center of each planet.
– Finally, under the hood, much of the info tracking how strong the AI is and the humans are is now no longer specific to those two “main” factions but is now fully available for all special factions as well. The changed symbols impact existing mods, of course, but now you can do a lot more with them.
There’s also a variety of other changes; major postprocessing stack switch by Chris, more Nanocaust updates from Badger, and some key bugfixes that will make the AI not just bumrush every force that attacks that planet.
The main player-facing changes here are the rebalancing of fuel and power.
Fuel costs have been halved so that your fleet size is not almost always capped by Fuel, but sometimes by Science.
Power costs themselves are unchanged, but spending science on power-consuming units now gives you a galaxy-wide +% boost to power production. So if you have Planet A which naturally produces 1000 power, and Planet B which naturally produces 1500 power, spending 1000 science on turret techs increases Planet A’s power output by 100 and Planet B’s by 150. This allows you to invest in “thicker” defense rather than only in more diverse defense.
More changes are needed in both areas, of course. Please let us know what you think.
On the non-player-facing side, there’s the huge addition of letting modders attach custom data to the xml records that form the meat of the game definitions. So you can add custom external constants, or custom fields to map types or AI types or ship types or whatever. These use a namespace system similar to the External Data you can attach to in-game objects, so that different mods don’t stomp on each other.
Keith here. Sorry I haven’t been keeping things up to date over here. I’ve mainly been doing release notes on the wiki, the forum, and the other blog, and I was only dimly aware of this one.
So, to summarize the releases in the last 40-ish days, we:
* Completely redid the build and tech menus with fancy icons and sub-icons and keyboard navigation.
* Replaced the text-heavy unit-mouseover-tooltip with a mostly icon-based display, and this glorified “tooltip” has tooltips of its own!
* Spent an unfortunate amount of time handling the platform-bug fallout from updating to a new version of unity (to address a unity developer-side security issue).
* Added an in-game settings menu and moved the settings definitions themselves out to external xml so modders can add their own settings (community member BadgerBadger is already hard at work using that to transform the map-type selection process into something horrifyingly more powerful).
* Made it possible to scale your ui if you want the gui to use a different percentage of your available screen area. Especially useful for large monitors.
* Constructed an “external data” framework that allows modders to attach arbitrary data directly to ships, factions, planets, and the gamestate-as-a-whole, and to correctly persist that data across saving and loading the game.
* Endured absurdity (largely of my own making) for hours and hours convincing the build process to allow us to rename System.XML.dll to System.Xml.dll to un-break the linux build, and finding that the OSX build required a radically different version of UnityEngine.dll.
* Provided some heavy-duty power tools for controlling your fleets, specifically rally commands to automatically forward replacement units to your fleets, active selections to automatically select those reinforcements when they arrive, and moddable formation algorithms to automatically arrange your ships in relation to each other when you give a move order.
* Put in actual models for several existing ship types and finally made squads form up in interesting shapes.
And quite a bit more (updated Badger’s Nanocaust faction, added some new Galaxy Display Modes from the same, fixed a bunch of bugs, etc)
The key quality-of-life improvements, in no particular order, are:
– You can now choose to start with the first planet already under your control, and thus skip that first battle that tended to be the same.
– Turrets and similar structures that you build now leave remains that you can rebuild, similar to AIWC. Not having to manually re-place turrets after every significant defense is very nice.
– Tech costs and various other numbers are now rounded to not be weird values like 1199 (instead 1200, in that case).
– BadgerBadger’s “Find Planet” function has been integrated. Thanks Badger!
– BadgetBadger’s improved campaign-based save/load system has been integrated. Thanks Badger! (I keep finding myself saying that) The structure of the campaign data is likely to change to something more robust before 1.0, but this is a definite step in the right direction.
Up next is more of the same troubleshooting: finding the trouble that gets in the way of the game being fun, and shooting it. For now I’m focusing on my own testing as it’s a tighter feedback loop in many ways, but that will be broadening out.