Game Design, Programming and running a one-man games business…

Democracy 4 mod support (non steamworks)

As people who have played my games for a long time may know, I am a huge fan of mod support for games. The first game I made that had a really big modding community was Gratuitous Space Battles. Some of the mods were amazing, and there were hundreds of thousands of player created challenges alongside proper mods like new ships, new modules and so on. (There was some modding for GSB2 as well, but that game didn’t do so well, and some really abusive ‘players’ of the game put me off continuing to work on it post-release… top tip: hurling personal abuse at game devs does not motivate them to implement your suggestions).

Anyway, the Democracy games have a history of a lot of modding, and I want to make Democray 4 the most moddable game in the series. I already laid the groundwork for that, with relatively little fanfare early on during the games Early Access period, but I’m putting some more work in now.

Like the previous games in the series, Democracy 4 is very moddable if you are happy to edit text files and csv files in excel. To go to further extremes, you might need to know how to create icons in InkScape (we use vector graphics for the icons now), or even supply custom event art images. However, despite it not requiring any l33t tools or an SDK, the mod support is still not as friendly as I want it to be.

Democracy 4 already supports steam workshop for mods, so you can log into steam, browse the uploaded mods (uploaded from within the game by other players), subscribe to them, and have the m automatically installed. You them have an in-game control panel that lets you toggle mods on and off, so you can keep them on your hard drive but decide if they are active or not.

Thats great but there are two areas that are still not good enough:

Firstly this is only good for steam owners. Mod support DOES work outside steam, but there is no easy way to find mods or install them

Secondly, actually making mods involves reading a lot of documentation and editing a bunch of files manually.

I’ve finally got my act together to fix the first problem. The next update to the game will include a non-steam mod browser. You will only see it if steam is not running (if steam is running, you will see all your steam workshop subscribed content instead). This new UI basically works exactly like steam workshop, where you have a list of all the mods I’ve put on my own server, and you can one-click install them. Coding this was a real pain (mostly some php nightmares), but its done now. Sadly for now, its not dynamic, meaning a mod submitted to steam workshop does not automatically also get submitted here too yet…

This is going to be great news for people who buy from the humble store, direct from me, the epic store or GoG. This means they will have to access to most of the mods steam players have. I like the idea that players get the same game regardless where they buy it, and do not like being locked in to one provider. This is why I have my own in-game achievements system for all players. (The steam copies just read my data and then mirror the achievements in the steam UI). FWIW, I also am planning on adding the achievements for the epic-store UI soon too.

I will be working over the next few weeks on the second problem…actually making the creation of mods much easier. Like I say, we do have extensive documentation, but I can imagine there being way more cool mods if people could just create the simpler ones (new situations, or dilemmas etc) in-the-game without editing files externally.

That will take a lot of UI coding, but its something I can do while waiting for the Japanese translators :D.

2 thoughts on Democracy 4 mod support (non steamworks)

  1. Have a look at swapping PHP for Golang. Gives you compilation, static types, concurrency etc. I did and never looked back.

Comments are currently closed.