Author Topic: AI War 2 v1.3 Released! "The Grand New AI"  (Read 2241 times)

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
AI War 2 v1.3 Released! "The Grand New AI"
« on: January 10, 2020, 04:02:40 pm »

If you've been in the forums, you know that we've been in an opt-in beta period for the last... goodness, has it been three weeks?

Release notes start here and then keep going here, here, here, here, and finally with today's last bits here. That's almost 15 thousand words of text, 29 pages in a word document. So let me try to break that down so you don't have to read every last bit. There's so much in v1.3 that it almost feels like a sequel in some ways, which is how we like it.

First Up: AI Defenses

This is probably the part of the new version that is most going to shock you when you load up a new campaign in particular. The AI is... well, scarier. They have more strength in more places, more variance in how they place things, and so on.

At a quick glance, it looks like the game got harder (and for a while in the betas that was empirically true). But we've spent a lot of time trying to dial that back with the 1.3 build in particular so that it looks scarier and gives a more varied challenge, but isn't actually baseline harder (except difficulty 10).

The really key thing to note about the AI defenses on each planet is that, while they may be numerically a lot stronger than they once were, they are also more spread out -- most of the time. This means that -- most of the time -- you can divide them up and attack them piecemeal, which is something we dearly missed from AI War Classic. That's now back, and we're really excited about it.

But we actually went further than that and also made it so that there are now legitimately some "hotspot" planets that ARE harder. They don't seed very frequently on low-and-middling difficulty levels, and they don't seed very near your starting position, but this is another cool thing we were missing from AI War Classic.

In Classic, sometimes you would run into a planet that was an unusually high mark, or that had a giant forcefield, or a superfortress, or whatever. We have had things like that in this sequel for a really long time, but the planets still somehow felt... homogeneous after you got enough hours in the game. So now the AI sometimes wormhole-camps its guard posts, sometimes masses them into a giant bundle that you have to take on at once, and other fun challenges. These sorts of exceptions really add some flair and excitement.

Beefing Up AI Intelligence

This is I suppose more of an item related to offense, except it also applies to the warden and the praetorian guard, both of which are defensive in nature. So I guess this is just a general thing.

First of all, Badger invented this handy new thing called "fire teams," which are sub-groups that the AI factions can order around independently. They can merge and split and coordinate and pincer and fake you out and a whole bunch of other things.

Basically something like the hunter fleet used to be a monolithic entity that came after you. It was smart and huge and scary... but it was all in one place that you could keep track of. It was hard to always predict what it was doing, but it could only be thinking of one thing at a time and so you could make some pretty accurate guesses based on its singular positioning.

None of that works anymore, because now the hunter fleet will fragment itself to pursue multiple goals at once. So will marauders, and a bunch of other factions and parts of the AI. You may still have a very good idea of what some part of the body of the hunter is thinking... and then be surprised that it was holding some substantial reserve well out of your viewing range, waiting for the opportune time to catch you off guard.

The cliche thing at this point would be to say "clever girl" with a picture of the three raptors. But that's just one part of fire teams.

Oh, hey -- almost forgot. We also made the subconscious mind of AI ships (and your ships in "pursuit mode") a whole lot smarter. You can trust your pursuit mode ships to take care of business much more efficiently now -- to the point that battles they lost on their own in the past they now win. Of course, that works against you just as frequently as for you...

Parallelism And The Lack Of Brain Function

Right, so we discovered something kind of crazy in this series of builds. You know how you can fast-forward time up to 10x, and it doesn't cause any extra CPU load?

Well... that was true, but it didn't speed up the "cognitive functioning" of the higher-level AI. Basically if you divide the intelligence for units and factions into subconscious/autonomic and conscious levels of thought... the subconscious/autonomic parts were as smart as ever on 10x difficulty, but the conscious thought of any faction that wasn't controlled by a human was incredibly hobbled.

This had to do with how we schedule some of the multithreading of background functioning for factions to support their "conscious thought" without eating CPUs with limited numbers of cores if you have many many factions at once in a big game. It was a complicated technical issue, but essentially meant that for some relevant reasons that we can't break without breaking future multiplayer support, at 10x speed the AI was only getting a chance to even try to think consciously every 60 realtime seconds instead of every second or so.

We had reports of people who beat difficultly 10 AIs by largely playing on 10x speed, and exploiting the fact that they could issue a ton of micromanagement commands and just fight the subconscious of the AI before it even consciously realized they were there.

The first solution to this was for us to look at our architecture and see if we could squeeze out more parallelism. A lot of us have quad-core computers with hyperthreading (so 8 virtual cores), or even just dual-core computers with 4 virtual cores. The odds of any player having a single-core computer is vanishingly small, though there are some players in that boat. There's an option to turn off PFP (Parallel Faction Processing) if you need to, but for most computers you should get a performance boost or at least be performance-neutral with the way it is currently.

Major Performance Improvements

Right, so this is no small thing. Even for those who have opted into the beta are in for a bit of a shock with the very latest build. All throughout these last three weeks we've been squeezing more performance out of the game, but in particular we've been able to make a ton of strides in the last day. Some of the savegames we were seeing that had 10% of normal speed on my quad-core now run easily at full speed.

Half on the subject of performance but half on simulation correctness, we found that our pooling of game entities was causing huge numbers of bugs that popped in and out of existence and not actually making things faster anymore. This was originally intended to help performance back before unity introduced their time-sliced garbage collector, and it did work very well.

We pool a TON of things in this game, and all of that is an enormous benefit to performance in general, garbage collector aside. But the actual pooling of entities -- ships and structures -- had to go. It was causing problems on the background "faction consciousness" threads and often leading the AI to give wrong orders or even sometimes give orders to YOUR ships because of the nature of pooling. All of that is solved now.

In the process of investigating this, we also really wanted to cut down on certain kinds of "game commands" that the background factions were sending that really didn't need to be there. Game commands are multi-player compatible ways for the faction consciousness threads (and human players) to give orders to ships above the in-simulation subconscious/autonomic commands that ships handle on their own. Keeping that smaller reduces the CPU load in single player, and will reduce the network load as we work in multi-player.

Also on the subject of performance, now that the AI is using more turrets than it used to (that's part of the general new defensive strategies that the AIs use), their turrets were... an annoying performance drain. Normally we just stack mobile units if there are too many of them, or they go into guard posts as reinforcements, etc. But none of that can happen for turrets, which are stationary.

To combat that issue, we made all of the AI turrets into Great-Turrets, which are about 5x stronger and costlier than the human counterparts. In existing savegames from older versions it automatically strips out 4/5ths of the turrets to make sure you don't get absolutely wrecked. But this minor consolidation keeps performance thrumming along as well.

So Many Balance Changes!

Beyond great-turrets and fire teams and how the AI fortifies its own planets, a lot of other things have evolved here.

One of the most recent favorites of mine is that dire guard posts on the homeworlds of AIs now cost AIP to destroy, and the overlord itself costs less than before. But as an added bonus, you now get a ton of science and hacking points from destroying the overlord -- who is also now stronger, to properly meet the threat of the late-game fleets you can easily muster these days. All of this makes for more dynamic escalation in multi-AI games in particular, but also even with just a single AI.

The way that player ship caps are calculated is also more consistent in terms of what you can expect with each mark level that you increase. You get a much more consistent number of frigates added, for one thing.

We also very harshly changed how the growth curve went for individual ship strength as mark levels went up. The multipliers were getting higher as well as the base attack power, meaning that in some cases a ship that was mark 7 could just evaporate its mark 5 opposite numbers. Now things remain more stable all the way through mark 7, having a more linear growth rate.

A ton of ships individually got balance tuning based on feedback, far too many to mention.

We also revised and improved the way that planets are spawned in terms of the mix of mark levels (ratios based on difficulty) in the central areas of the galaxy (meaning between the player and AI homeworlds, not physical center).

We also made the "neutering" of AI planets into something VASTLY more powerful that you can do, as it much more sharply curtails what sort of reinforcements they can get there. We also entirely block reinforcements on AI planets if they are outnumbered 2:1. So that's majorly in your favor, and a great new tool.

On the flip side, AI planets left to their own devices now have a much larger cap of ships that they can store up if you leave them alone for tens of hours. Those of you who like to capture entire galaxies (not the normal way to play the game!) will have some interesting new challenges, but it should still be possible on the typical difficulties for that sort of thing (5 and 6).

Oh! And in map styles that are really cramped -- mazes or snakes, for instance -- you now get a much kinder seeding of the early-game tools you need (Global Command Augmenters, etc). Lest you think that all the seeding improvements we made were in favor of the AI.

New "Adaptive" AI Type!

This is something people have been asking for for a while. Rather than fighting against an AI that works one way for the whole game... what if the AI kept switching up its style and you never knew what it was? That sounds... terrifying. But you guys wanted it, and so we added it. Good luck with that. ;)

There are 15 new achievements in place relating to the five difficulties of adaptive AI types, so there's more to hunt.

Max Game Speed Of 5x

In the past, you could make the game run at up to 10x realtime speed. This was useful when the game was chugging (which it does a lot less often now), or when you just wanted to get past a certain slow section. I myself tend to play on 3x or 4x speed normally and just pause frequently. I dunno why, it's just my personal taste.

The problem with going above 5x is that a lot of things start to break down. We start running into the sorts of problems that you normally see in physics simulations that have very fast-moving objects and no continuous collision detection on.

Even at 5x, your minefields are a lot less effective, and ships with shorter ranges will get off fewer shots against enemies. A lot of that is simply unavoidable without increasing the CPU load dramatically in order to achieve that 5x speed boost, which of course would defeat the whole purpose.

We looked at how people were playing and various scenarios run repeatedly at different speeds, and decided that 5x was the maximum at which the simulation really still resembles itself. So that's the new cap, if anyone is wondering why.

SO MANY Interface Improvements

Tooltips alone have gone through so much. Rather than having just "regular tooltips" that show a lot of info, and "full tooltips" that show even MORE, we now have three levels and the default is vastly more brief. It's surprisingly easy to use and makes the game so much more approachable. But all the information is still there at your fingertips.

A lot of interfaces now show you vital info like ship strengths or more about what will be improved by a tech,

Back To The Subject Of Difficulty

So is the game harder now than in the prior builds? ... Depends on what difficulty you're playing at. Difficulties 9 and 10 are likely going to be vastly harder than before, while 5-7 should be about the same, and less than 5 probably will look fancier in terms of enemy movements and positions but not actually be much more challenging.

But you probably will have to use more of your gray matter in order to deal with more varied situations on average, more of the time, so it should in general be an even more interesting experience at most every difficulty level.

We kind of tilted some of the ship numbers in your favor a bit in order to make it so that all the new AI intelligence doesn't just overwhelm you, and that may make some older savegames extra hard, it's hard to be sure. And in some cases you may say "you call that tilting strength in my favor?" ;) And to that we mainly say "you should have seen it before during certain points of the beta."

What can sometimes look very intimidating is something you really can just go in and dismantle piecemeal, because you have the superior ability to field replacement craft, among many other advantages. Big thanks to all the people who were helping us out so much during the beta with their thoughts on everything, as that helped us shape things out to be a lot more interesting without being brute-force harder.

And Hundreds Of Other things

  • Lots of bugfixes and balance tweaks detailed in the full release notes.
  • Particularly a bunch of improvements for xml modders.
  • You can now hack GCAs in order to re-roll their options (thanks donblas!).
  • Nanocaust construction centers and Marauder Outposts now warp in over time (a short time interval, like 30 seconds to a minute) rather than warping in instantly. This gives their enemies a bigger window to counter attack in.
  • Add the "Extreme" category of Quickstarts, with 2 default, 1 nearly default, and 2 bonus scenarios.
  • Allied Marauders are back to killing command stations by default, but with a setting to disable it. This is a no-longer-basically-cheating version of "minor factions don't cause AIP increases". Allied Marauders always kill warp gates though. If this works then I'm going to deprecate "minor factions don't cause AIP increase" since that's too cheaty for my tastes.
  • Add a "Select all non-flagship military on planet" selection option.
  • Added "Remove Unlock Variance in Capturables" option. This option removes the random ranges ships and turrets can be found with, fixing it at a constant average. (Thanks donblas).
  • Maps now default to having 7 FCEs instead of 11 (there were just too many before).
  • Some updates to the Octopus map generator from Tadrinth.
  • Added some more tips, including explanations of Wave, CPA, etc.

More to come soon!

Please Do Report Any Issues!

If you run into any bugs, we'd definitely like to hear about those.

The release of this game has been going well so far, and I think that the reviews that folks have been leaving for the game have been a big help for anyone passing by who's on the fence. For a good while we were sitting at Overwhelmingly Positive on the Recent Reviews breakdown, but there have been a lot fewer reviews lately and so that has definitely had a material negative effect. Go figure. Having a running selection of recent reviews definitely is helpful, but at least we have a pretty healthy set of long-term reviews. If you've been playing the game and enjoying it, we'd greatly appreciate it if you'd drop by and leave your own thoughts, too.

More to come soon. Enjoy!

Problem With The Latest Build?

If you right-click the game in Steam and choose properties, then go to the Betas tab of the window that pops up, you'll see a variety of options. You can always choose most_recent_stable from that build to get what is essentially one-build-back. Or two builds back if the last build had a known problem, etc. Essentially it's a way to keep yourself off the very bleeding edge of updates, if you so desire.

The Usual Reminders

Quick reminder of our new Steam Developer Page. If you follow us there, you'll be notified about any game releases we do.

Also: Would you mind leaving a Steam review for some/any of our games? It doesn't have to super detailed, but if you like a game we made and want more people to find it, that's how you make it happen. Reviews make a material difference, and like most indies, we could really use the support.

Enjoy!

Chris

Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!