Monday Modness: StarDrive 2 Community AI Patch

We here at eXplorminate like to take matters into our own hands.

In my review for StarDrive 2: Sector Zero, the big thing holding the game back was how the mid- and late-game AI struggled to put up a decent fight. Thankfully, enough other people in the eXplorminate family saw the same problem – and also saw a way to fix it.

Don’t forget to bring point defense!

The AI’s flaccid performance in the base game was due to a few compounding factors:

First, the AI didn’t have a very good research strategy. There are these fancy XML files that define different AI strategies in terms of which research it pursues. But in the unmodded game, these strategies didn’t lead in any coherent direction (i.e. there was no strategy) as they didn’t define a clear sequence. Moreover, the files just abruptly stop part way through the tech tree, leaving the AI to randomly pick research in the mid-game and beyond. This issue was further exacerbated because key technologies (e.g. Fusion Engines) were often overlooked by the AI, whereas the player could navigate the tech tree more intelligently and trade for what else they needed, leading to optimal ship designs.

Second, the AI ship designs (all 1,500 of them) were mostly terrible. Each design was a smattering of different weapon systems that rarely managed to gel into any sort of effective combat platform. More egregious, is that very few ships featured advanced or higher tech weaponry in any significant capacity. Those that did, often had competing technologies installed on the ship. This meant, coupled with the essentially random AI research behavior, it was a total crapshoot as to whether or not the AI could even build these advanced designs in the first place. Not that it would want to, because…

…The weapon balance was just not good. Even if the AI managed to build an advanced warship, chances are the high tech weapons it was sporting were actually worse than the lowest level weapons in the game. That’s right. Rockets and lasers, which require no research, were among the most effective weapons in the unmodded game. Disruptors, Phasors, Cruise Missiles, and Singularity Cannons were good, too (the latter being ridiculously over-powered), but just about everything else was garbage or outright broken upon closer scrutiny.

I say all of this in the past tense, because Icemania in eXplorminate’s Steam Group led a charge – aided by fellow StarDrive 2 modders Crunchy Gremlin, Marcos, CblHoK, Gut, and yours truly – to rectify the problem. Hence, the Community AI Improvements & Balance Mod was born.

We were spurred into action because StarDrive 2 developer, Dan DiCicco, was patching the game like crazy following Sector Zero’s release. During this time, he worked with us to make some critical engine changes that opened up the possibilities for an AI mod. So then, what did we do?

One does not simply overcome the Chaos Cannon (anymore!)

Activity #1 – Revised AI Strategies & Tech Tree

Each race now has its own technology strategy. These strategies are based on a preference for a given weapon platform (energy cannons, beams, missiles, torpedoes, or kinetic weapons) and give the AI research priorities all the way through the tech tree. There are subtle variations of each strategy, affecting how quickly the AI races up the tech tree. In effect, it determines whether the AI is playing the long-game or following more of a rushing strategy.

Along with these new strategies was a moderate re-working of the tech tree itself. I’ve always praised SD 2 for requiring hard choices between which technology to select. Unfortunately, there are cases where a certain technology is absolutely crucial (e.g. Fusion Engines or Class 1 Shields), so it is sort of a false choice in those cases. Moreover, having to take a necessary technology would sometimes preclude taking another technology that might be critical to a given weapon strategy, rendering that weapon platform inferior.

Take Beams for example. The AI needs to take Particle Accelerators (to boost research) over Ion Beams, and needs to take Fusion Engines (the only engine tech in the game) over Fusion Beams. And Graviton beams do not deal damage. So the first beam weapon the AI could reasonably use is Phasors, 3/4 of the way through the tech tree. A beam build was severely crippled right out of the gate, forcing the AI to use lasers for a majority of the game.

So, we re-worked the tech tree, expanding each branch by a few technology levels so that “must have technologies” were in their own slot and didn’t compete with other techs. At the same time, we introduced other weapon systems, already in the game, into appropriate technology slots. For instance, long-range kinetic weapon strategies end with Gauss cannons, a fairly early tech, in the unmodded game. As a result, we added Dual Mass Drivers and Subspace Artillery cannons, both already in the game, to the tech tree so that the AI can actually research and use these advanced kinetic weapons.

Planning out the intersection of species weapon strategy and development research

Activity #2 – Weapon Re-Balance

We knew a lot of weapons were just ineffective. At the same time, we didn’t want to rewrite the basis for weapon balance and the intended spirit of the weapon from scratch. We wanted to stay consistent with the original intent of the game, in hopes that the mod might become part of an official patch.

In order to understand the existing balance better, we built a data model for determining net weapon effectiveness as a function of its size, damage, range, special properties, power requirements, and so on. We then calibrated this model for the unmodded game based on in-game tests in the battle arena (thank god SD2 has a battle arena!).

Once we had a good sense of the existing weapon balance, we modified the weapon XML files – tweaking range, damage and so on – such that higher tier weapons in a given class (e.g. energy cannons or beams) reflected an increase in net effectiveness. In most cases, we could achieve the results we were looking for by tweaking basic properties. But in other cases, the weapons needed to be reworked more significantly.

For example, “swarm” weapons, which have a main projectile that split into smaller projectiles mid-flight, were completely broken. When they were used by the AI, they simply dealt no damage (due to a bug or glitch?). In the mod, these weapons retained their original intent by shifting them to a rapid firing, high-salvo count instead. As a result, swarm weapons now perform more consistently (and properly in our opinion).

Weapon balance: The science and art of using of gigantic spreadsheets!

Activity #3 – And Now with Better Ship Designs!

The final piece of the puzzle was making better ship designs for each race that aligned with their associated AI tech strategy. By focusing on a particular strategy, each of the nine races only needed about 25 designs rather than the original 1,500+. We developed a slick and standardized scheme for designating different technology levels, from Mk 0 to Mk 5. These tier levels determine which weapon systems the ship will use (per their tech strategy) along with what supporting modules would be included (ECM jammers, targeting facilities, shields, etc.) at that level.

During the process we also discovered that the AI was not retrofitting its ships very effectively, or at all in the case of corvettes. The developer was able to rectify some of the internal engine problems, while we were able to manually specify the “tech level” so that there was a clear progression for the AI to follow from Mk 0 to Mk 5. The result is a nice escalation of power over the course of the game.

The supposedly invincible Icemen Titan fleet.

Results! Results! Results!

So how does it all come together? Let’s just say that if you thought the AI was a pushover in the late game – watch out! Part of the new AI Tech Strategy stipulates a better selection of planetary buildings to construct, so the AI now grows faster and moves through the tech tree more quickly. The result is that it builds bigger and significantly more advanced fleets earlier. When used with more aggressive AI personality settings, it’s going to have a good amount of  weight to throw around. Suffice to say I’ve lost my first game on Brutal difficulty.

I used to look at the AI fleets in the late game and ruminate over how few ships I could use to defeat their much larger fleet. An enemy fleet of 50+ Command Points could be bested with a handful of well designed battleships or a small squadron of cruisers. This is simply not the case when using this mod, and you need to be very cautious about how and when you engage (or enrage!) the AI. The consequences of a miscalculation can be catastrophic.

I said in our Sector Zero review that the problem with the game is that an experienced player wins the game the moment they decide to attack the enemy. There basically was no strategy.  This is no longer the case. The AI mod re-injects tension back into the game and forces you to strategize more deeply and carefully. Mission accomplished!

Gratuitous space battles eat your heart out!

What’s Next?

There are, of course, plenty more things that we could do. As it currently stands, each race focuses on a certain weapon type. We could add additional AI tech strategies linked to each race that would add some variation from game to game. For instance, Pollops could use either Beams or Torpedoes (currently they only use Beams), and you don’t know which until you start fighting with them. This will require making new AI tech strategies (fairly quick but tricky) and new ship designs that align with it (slow and tedious). But it could be added on down the road.

What we would REALLY like to do is get this entire effort incorporated into the core game. That way everyone can benefit from these improvements, not just those up to the task of installing mods. We’ve tried to keep the work close to the original intent of the game so that integration can be seamless and doesn’t require players to re-learn the basics (like what roles different weapons have). Of course players would need to step up their strategy – but after all, that’s the whole point of this merry endeavor.

Check out the Community AI Improvements & Balance Mod and try it for yourself.

Missiles, missiles, everywhere, and not any time to think!

About the Primary Mod the Contributors

Icemania recently turned to modding to help resolve his frustrations with AI performance in Space 4X games.  His first mod was the Distant Worlds AI Improvement Mod where development didn’t stop until the AI slaughtered him at least once!  He was motivated to mod StarDrive 2 to finally see some awesome mid and late games battles and also to have more ship design choices while playing.

Note: In-game images in this article by Icemania

Mezmorki has modded for many other games throughout his illustrious videogame career – including Doom, Quake, and the Elder Scrolls. His biggest mod is the highly rated overhaul mod for Fallout 3, Fallout Wanderers Edition. He was motivated to work with others in creating the StarDrive 2 Community & AI mod after his frustrations with the end game reached a crescendo!


6 thoughts on “Monday Modness: StarDrive 2 Community AI Patch

  1. It’s a great job, folks. And I think we will see some of these balance and AI tweaks make their way to the core game. I’ve got to play with them a bunch myself first, but I do think you’ve done a great job here.


    1. Many thanks! I’d be happy to help explain any of our work or assist your efforts as needed. It’s great to hear that this might make it into the game in some capacity :) Cheers!


  2. If Zero does put the majority of this mod in the base game I’ll buy it. [I never have much luck with mods themselves.]



Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s