Day: October 14, 2021

AI War 2 – Beta 3.709 Upgrades And Serialization Fix

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:The_Great_Refactor#Beta_3.709_Upgrades_And_Serialization_Fix

This one upgrades to a newer version of unity, fixing a number of bugs of relevance, including likely fixing the freeze on startup that was sometimes happening.

Additionally, this release should fix the bug where sometimes units would just turn feral on you when loading a savegame, and all bumrush you for no reason. Apparently testing with the golemite AI faction really makes for a show. If you see this again, please do let us know.

A number of performance improvements have been made in this build, although there’s more I wanted to do. I’ll continue pushing on with that over time. I also made some adjustments to have a death registry, which has some single player uses (it’s related to those performance and correctness bits above), and then also will be the final solution to the ghosts problem in multiplayer once I finish wiring that up.

Final solution? How can that be? Well, the client will be told of things that have died, and the client can ask the host about dead things, as well. That way, the worst thing we can have is not a ghost, or an accidental death — both two outcomes possible before — but instead just a “stale data for some reason” issue. That is far less severe, and should be easier to debug if it happens, but even that happening should be way less likely.

SirLimbo continues to be on a roll adding things to the main game and for DLC, working on some changes that affect how mines show their remaining “number of times they can go off,” and then also adding a bunch more stuff for the Brutal Guardians in the Dire Guardian Lair for DLC3.

I was hoping to redo some of how transported ships work, or how drones work, while we’re in here doing this much surgery anyway. That’s been on my wishlist for a long time. Unfortunately… wow. It’s just really complicated to try to change it, and it would lead to worse performance if I did. Given I’m trying to make performance go the other direction, I don’t feel great about that. It was worth a shot, but I’m going to give it a pass.

I still have some other during-beta things to refactor, to speed up, and to make easier to use in general, but the list is growing shorter. Then it’s just a matter of getting the last of the bugs out, making sure multiplayer is going well, and then it’s the new-feature train for a while.

More to come soon.
Enjoy!