HomeGamesUpdatesPricingMethodology
Steam News31 March 20224y ago

Dev Diary#3 Modding

Modding has always been a top priority for GolemLabs. We grew up as gamers in the age of Doom and Quake, and many other great games that were highly moddable.

Full notes

Full SuperPower 3 update

Read the full published notes in a cleaner layout. The original post stays linked below.

What changed

0 fixes5 additions4 changes0 removals
  • Gameplay
  • Server
  • UI and audio
  • Maps
addedWe chose to go in a different direction for SuperPower 2, where we also released a full C++ SDK that enabled modders to recompile part of the gameplay code and offer even more complex mods. While many people enjoyed that, and that some cool mods are still in use today, it opened the door wide for nefarious uses. Some mods were openly destroying the games and ruined the community for many players.
changedFor SuperPower 3, our aim has been to continue offering extensive capabilities, while making the experience more robust to prevent malicious uses of the game.
changedFirst, distribution and installation of mods will be greatly simplified for SuperPower 3, thanks to the use of the Steam Workshop. You will be able to simply click on which mod you want and install it. We also plan on supporting instant update, so when you connect to a server that has mods you might not have installed, they will be installed automatically on a temporary basis so you can play on that server.
addedWe imagine that adding additional scenarios will be the main focus of most mods. A scenario includes the playable countries, server parameters, but also any modification of the data for that scenario. You can modify any of the start-up conditions - adding or removing treaties, changing any of the data of the game, but it can go as far as adding a country, changing region ownership, unit designs and placement, etc. A dedicated enough player could make a "WW2" scenario and recreate the conditions from 1939, in one single file.
addedYou can also modify data itself for use in scenarios. This can be tricky, of course, because some modifications (removing or adding countries, for instance) can clash with certain scenarios. As with all mods, there is a possibility to create things that don't make any sense. One test mod we made was to validate if the system could create a brand-new resource, connect it to various regions, and it did, it all got in the game correctly! With the release of the game, we will also release the scenario model. We have hundreds of data points for every country (194 at launch), regions (more than 2800), designs, etc.
addedMany of the equations that determine how data is managed, for instance government approval rates, or resource needs, are taken from scripts that are, again, in text files. These scripts are then compiled and run by the simulator. So, a modder could add variables or remove them, change the weight, or even completely add new iterations and scripts.

Modding has always been a top priority for GolemLabs. We grew up as gamers in the age of Doom and Quake, and many other great games that were highly moddable. We always enjoyed the basic version, and then got really invested in mods and extending the games to their possible limits. So ever since SuperPower 1, we wanted to open the game for mods.

We chose to go in a different direction for SuperPower 2, where we also released a full C++ SDK that enabled modders to recompile part of the gameplay code and offer even more complex mods. While many people enjoyed that, and that some cool mods are still in use today, it opened the door wide for nefarious uses. Some mods were openly destroying the games and ruined the community for many players.

For SuperPower 3, our aim has been to continue offering extensive capabilities, while making the experience more robust to prevent malicious uses of the game.

First, distribution and installation of mods will be greatly simplified for SuperPower 3, thanks to the use of the Steam Workshop. You will be able to simply click on which mod you want and install it. We also plan on supporting instant update, so when you connect to a server that has mods you might not have installed, they will be installed automatically on a temporary basis so you can play on that server.

Second, we also plan on continuing our support of mod cascading. Mods have an order of initialisation that enables mods of mods (weird phrasing, we know). Since not everyone can make the mega mods that change everything, but would still like to offer scenarios on them, it becomes easy by simply putting the mods in the correct order. So, how does modding works, and who can do it?

Most mods will be done using a simple text editor. We didn't want to have custom tools that would have needed maintenance and a separate distribution path. So, most mods can be done with Notepad.

  1. SCENARIOS

We imagine that adding additional scenarios will be the main focus of most mods. A scenario includes the playable countries, server parameters, but also any modification of the data for that scenario. You can modify any of the start-up conditions - adding or removing treaties, changing any of the data of the game, but it can go as far as adding a country, changing region ownership, unit designs and placement, etc. A dedicated enough player could make a "WW2" scenario and recreate the conditions from 1939, in one single file.

  1. DATA

You can also modify data itself for use in scenarios. This can be tricky, of course, because some modifications (removing or adding countries, for instance) can clash with certain scenarios. As with all mods, there is a possibility to create things that don't make any sense. One test mod we made was to validate if the system could create a brand-new resource, connect it to various regions, and it did, it all got in the game correctly! With the release of the game, we will also release the scenario model. We have hundreds of data points for every country (194 at launch), regions (more than 2800), designs, etc.

  1. BEHAVIOR

Many of the equations that determine how data is managed, for instance government approval rates, or resource needs, are taken from scripts that are, again, in text files. These scripts are then compiled and run by the simulator. So, a modder could add variables or remove them, change the weight, or even completely add new iterations and scripts.

With the behaviour scripts we also include equations constants - weights of data, importance of certain things over others, etc. to be modifiable.

  1. UI

We're not talking here about simply skinning the UI. Windows are created and called by scripts so you could, through mods, create entirely new windows that would track specific data, or new data, or whatever else you would like to see in the UI. Of course, there are protections to prevent you from seeing information that you're not supposed to prevent cheating through that option of the game.

  1. SOME DATA FACTS

This is the starting condition of the data (all of which are moddable):

193 countries; 2816 regions; 4204 cities; 285 distinct Social Groups; 372 media outlets; 1082 political parties and groups; 231 designs; 89537 international commerce deals; 10718 international treaties; 7580 unique instances of units; 1843 moddable data points in all of the above.6.

IMAGES AND DATA MODS

While image and data modification would be possible, it would require the creation of more complex mods. All assets are converted by Unreal (we use UE4) to be accessible in game. This means that reference maps for border definitions, 3D models, lighting, and other stuff are generated using the Unreal Engine, and thus are more difficult to change than editing simple text files. We hope to create a way to make this more accessible in the future - to enable you all to create a "Middle Earth - Lord of the Rings" uber-mod of SuperPower 3. We know someone out there will want to…

So, what are your impressions? What do you think? We hope it’s even better than what you imagined, concerning Modding! And we can’t wait to come back for the Dev Diary #4. See you soon, stay safe.

Source

Steam News / 31 March 2022

Open original post

Changelog.gg summarizes and formats this update. How we read updates.