How openly will GSB2 support mods?


#1

I know GSB1 had great support for mods, and they were relatively easy to make. With the different style of ship in this game, how much more difficult will it be to make new ones via a mod? Will we need 3d modeling programs to make use of the new lighting effects?
How easy will it be to make new effects, new campaign missions, etc.
And music? I’d really love some feedback on whether you can play a certain song specifically during a mission.


#2

I can’t answer all of this, most likely only Cliffski can, but I can tell you what’s possible right now:

  1. As far as I can tell, all of the graphics are, in the basics, 2D images, mostly DDS files. Unfortunately, at this point, they’re stuck into a .pak file, which, without some support from Cliffski, is very hard to ‘unravel’ in the specific files.

  2. Almost everything is in text files, and almost everything can be modded:

  • data/languages/english/shipmodules.csv holds all the ship modules, and you can tweak or even add modules already
  • data/hulls holds all the hulls, including their bonusses and turret slots.
  • data/elements holds all the visual elements, such as antennae, cockpits, etc.
  • data/shaders holds all the shader files. If you’re any good at pixel shader programming, you can fiddle around with all of the effects here
  • data/ships holds all the setup enemy ships, made from hulls, visual elements and ship modules.
  • data/scenarios holds all the information on how a scenario looks. what planets are in the background, whether there should be astroids, etc.
  • data/deployments holds all the information on how the enemy deployments are set up for the scenarios, using ships as detailed earlier.
  • data/sounds holds all the sounds and the music. The scenarios above don’t have a line for music, but maybe this will be added later by Cliffski.
    Be aware that the only thing you cannot do at this point is adding images, because of earlier mentioned pak file. So while you can add modules, hulls etc., you will need to use graphics which are already in there. But again, I’m sure this will be solved in the near future.

There are a few other things in the data map, but this should answer your question for a large part, and once Cliffski comes along he can probably give you some future information on how this game will progress.


#3

Mod support will be better than GSB1. The latest patch (coming tonight!) will show you the mod control panel which right now is dedicated to the (inactive) steam workshop for the game, but it will show you what is possible. Basically mods work the same way as democracy 3, where there is a file describing the mod, and a folder for it (all in the mydocuments part of your disk) and mods can be easily toggled on and off without uninstalling.

I need to write a pak exporter, but the format is trivial if anyone knows code and has a bit of time.

the format is just

a long integer, which is the number of files in the pak
followed by
an array of GPakFileEntrys, one for each pak.

class GPakFileEntry
{
public:

char						PathName[256];
char						Filename[128];
long						StartOffset;
long						FileLength;

};

And after that just comes all the raw binary data in order. There is no compression or other data.


#4

I was wondering what the status of this modding tool might happen to be. Unencumbered access to the graphical parts of GSB2 is necessary for the modding community to do much beyond number-tweaking.

Is there going to be an external pak exporter for each of the different platform-specific versions of GSB2 (Windows, Mac OS X, Linux)?

Or will it be bundled into the game program itself? I’m hoping for whatever’s most seamless, reliable and hassle-free for the individual modders themselves.


#5

Holy cow I am such a slacker. I forgot all about this. It should be trivial. I’ll try and do a standalone thing today as a stop-gap.


#6

Ok job done!: http://positech.co.uk/forums/phpBB3/viewtopic.php?f=46&t=11118


#7

Sweet; thank you! I will toast you with my next dram of whiskey. Jameson 12-year reserve sounds appropriate… :wink:


#8

is that…

an Elite reference?