1. AI War 2
  2. News

AI War 2 News

Beta 3.600 Multiplayer Sprint

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:Finalizing_Multiplayer#Beta_3.600_Multiplayer_Sprint

There's a saying about going through cycles of bugging and debugging, when it comes to code. The last few weeks have been debugging. Today and for a few days is mostly going to be bugging.

The multiplayer code simply doesn't need to be doing as much as it has been trying to, and so there's a bit of a shift in the design so that several new categories of data are host-directed and the clients thus do less as well as seeing exactly what the host sees. This will be a bandwidth-reducer as well as lowering the surface area for multiplayer-related bugs. There are a few benefits to general efficiency when it comes to single-player, too.

In the very short term, the beta branch of multiplayer is no longer feature-complete, as the client is now temporarily blind to a few things (notifications, intel tab) and may have some extra errors that happen when hovering over certain units. Among the other bugs already reported. My goal is to sprint through all of these things in the next few weeks, although from Thursday through Monday I'll be traveling, so there will be a brief hiatus.

This particular build also includes some excellent new fixes and tweaks for single-player, with the map darkening and focusing now working a lot better (it had been a regression sometime recently). The notifications temporarily do not function when it comes to the map darkening and highlighting, but that's part of the general rework of those that I'm doing for multiplayer purposes and now also this purpose.

Lots of mods got updates to function with the latest code, and all of them should now be functional again. And a couple of other random bugfixes.

More to come soon.
Enjoy!

Beta 3.510 Threads And Science

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:Finalizing_Multiplayer#Beta_3.510_Threads_And_Science

This one hits a number of bugfixes, and some quality of life improvements as well:

1. Double-clicking to center on a selected fleet should now work as you would expect it to, rather than being overly aggressive as it always has been before.

2. The "are you sure?" from the tech tab, including hotkeys and settings to bypass it, now also applies to the hacking tab. This is actually a pretty big deal, since hacking points are your most finite resource and you don't want to accidentally spend them when you think you might be opening a submenu.

3. The ships that benefit from a tech upgrade or downgrade, or a fleet upgrade, have been a thorn in our side for quite some time. Either not showing counts correctly, or not showing all the items being counted, etc. The presentation on all this has jumped up a substantial amount, and it now shows accurate mark levels, differentiation between mobile ships and defenses, and other things of that nature. This was quite a lot.

4. There were a number of random-seeming threading bugs that were popping up still in the last version. Those should be all fixed now, with some new strategies for tying threads together and monitoring and managing them. I wasn't directly seeing what many others were (go figure), so I can't verify that it's definitely all fixed, but fingers crossed it should be.

5. Fixed several longstanding minor bugs and ui annoyances that predate the beta, just as a palate cleanser of sorts between some of these other large items.

More to come soon.
Enjoy!

Beta 3.509 De-Apocalypsing The Code

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:Finalizing_Multiplayer#Beta_3.509_De-Apocalypsing_The_Code

This one is HUGE in terms of how many bugs it smashes. The recent version 3.500 added pooling to a lot of new parts of the game, and prevented a giant memory leak, but it also introduced a fairly apocalyptic number of bugs. I've been super stressed about it, honestly, wondering if that would smash my whole schedule and last for months, or what.

Well, today I wound up being able to duplicate and smash two really major bugs that were systematically destroying the game if you played for a long while in one game, or as soon as you loaded up a savegame or starting a new game after quitting to the main menu from playing previously.

Some of these are a bit amusing. The details are all on the chris-talks-code-gameplay, in really great detail as I explored through these things today. But the short version is:

1. Since 3.5, if you started a new game fresh, it wouldn't save what mods and dlc you had enabled in the save. This was troublesome, but not a world-ender.

2. After pooling kicks in (aka, after loading a save or starting a campaign after exiting to the main menu, or after playing long enough), the systems on new ships would be kind of randomly scrambled around. So... the cloaking device on ship A is now a random weapon from ship B, which has a weapon from ship C, etc. As you can imagine, this made for all sorts of truly insane bugs.

3. A whole bunch of pooled external objects were being incorrectly re-added to the pool and then redistributed, which meant that multiple things were sharing the same data storage. It's like if 400 people try to share one footlocker. Uh... yeah, it gets confused fast.

4. Pools of external objects were busted in general after the first load, and would just keep giving out the same initial object over and over again. The footlocker problem all over again, just a different location and even more severe.

Some other smaller bugs were also fixed, and many bits of preventative code were added.

This stuff will help with the stability of multiplayer (since single player and multiplayer have a huge amount of their code in common), but multiplayer on the beta branch is still not ready for playing. I have some more breaking in that area to do before I get to fixing, but the result should be really worth it. Lower bandwidth requirements, more accuracy, fewer desyncs that require repair. I'm hoping to get the main game, AND multiplayer, out of beta really soon.

I won't be around much tomorrow, as it's my daughter's birthday. Not sure how much this weekend, either. Maybe in bits and pieces. But definitely back to normal schedule on Monday.

More to come soon.
Enjoy!

Beta 3.508 Hotkey Heaven

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:Finalizing_Multiplayer#Beta_3.508_Hotkey_Heaven

This one finishes fixing up the orbital stuff for DLC3, which you can see some videos of on discord if you're interested (the chris-talks-gameplay-code section).

More relevant for everyone, the various hotkeys (like V for pursuit mode) now work as toggles properly, versus you having to hit V for on, and Ctrl+V for off. This was really buggy prior to last October, hence the switch to this awful system, but now it works great because I took a bit of a different premise.

A number of balance shifts have been made, most notably a global speed cap on player units to keep them from being multiplicatively speed-boosted to insanely overpowered degrees.

The tooltips have seen a number of updates for added correctness and informativeness, and there's a slew of random bugfixes.

More to come soon.
Enjoy!

Beta 3.507 Spare A Moment For Your Orbitals

New beta build! https://wiki.arcengames.com/index.php?title=AI_War_2:Finalizing_Multiplayer#Beta_3.507_Spare_A_Moment_For_Your_Orbitals

Okay, this one is largely a digression. But first, what's the stuff in here for the bulk of folks?

- More tools for looking at threads that might be misbehaving. It seems to be intermittent.

- Badger got the tech window code to provide a more accurate count of upgradable ship lines. It does not fix problems with the turret count though.

- Several bugfixes that were pretty minor.

Beyond that, I took a bit of a side track today, and worked on a major new gameplay mechanic for DLC3. Well, kind of a cluster of them. The core thing is ship orbits around other ships, the gravity well center, other ships orbiting other ships, and so on. There's more I need to do there to make it fully smooth, and I haven't had time to test the versions that are not focused around the fleet leader, but it's a start.

Why this side track? I learned today that Zeus's availability for doing his portion of DLC3 is going to be ending later this month, so I was now the bottleneck for him being able to do the work he wanted to. There's a few other things along those lines that I'm going to knock out, and that will give the testers more time to test, too.

Then I'm not holding up anyone else's work while I continue to bang my head against the wall of the codebase and get all the post-pooling errors that remain fixed. The number is really shrinking, which is good, but the number did not shrink today.

As those drop in number, I will then shift back to multiplayer and work on that. There's some major ripping and tearing I plan to do in that area to make the client really work well. Interestingly, I found an unexpected source of desyncs in the ship creation code today when I was working on the orbital work, so that's something I can improve. The game already self-repairs from desyncs, but the less work I make it do in that regard, the better it is for your bandwidth and for smoothness on the client. So that was an unexpected and nice find, but it's a nontrivial fix to solve it. (Passing a Context object past a client-barring gate is insta-desync, is the short explanation).

Loadouts are one of those things that are on my short term list of things to make ready for the others, and that will be backported to DLC1 as well. Though I'm not sure precisely when on that bit.

There's a bunch of other features and work, and I'm not entirely sure how well things will fit into my schedule. We'll find out as each week passes.

Right now it looks like the "true" versions of Expert and Deathwish mode are not going to come to pass, unfortunately. Strategic Sage and I have been discussing that, and essentially trying to get the Fuel concept or the other things we wanted in there is a HUGE time gamble for us both, and there's no guarantee that it will yield the feel that either of us are looking for. And meanwhile, most players are super happy with the Humanity Ascendant mode as it is, so I'm chasing a very tiny minority goal there. It's something I wanted to do, but it's looking like it's not remotely commercially viable right now. I don't plan to remove those other modes, because they do add on some stricter rulesets, but they may never be as divergent as they were intended to be.

There's a few nice QoL improvements still planned for the near future, because they are fast and the sort of thing everyone will appreciate. I'm going to try to avoid making promises for the next little while, because I'm really having to react on my feet to what comes up in testing and what other contributors need for their work and so on, so it's hard for me to keep a straight-line focus like if I was working in a vacuum by myself.

Anyway, the release tempo is going to stay fast for a while, either way.
More to come soon.
Enjoy!