I recently figured out how to add additional races for Campaign/Conquest mode, (whatever you prefer to call it). You can only add additional AI races, the 4 player race thing is hard-coded into the game.
However, you can add up to 5 additional AI races, but you'll need a couple of things first.
The Map Editor, and knowledge of how to use it. (you can find it on sfc3.net or sfx.org - probably a few other places as well)
Knowledge of editing the core & loadout files
Creating a Nine Race MapIMPORTANT - Before you edit any file, you should always create a backup copy first, in case something goes wrong.
1 - First of all, you need to edit the Definitions.txt file, which will be in the Map Editor folder.
At the very beginning, you will see something like this
[Classes/Regions]
type="string"
range="array"
0="Neutral"
1="Federation"
2="Klingon"
3="Romulan"
4="Borg"
You need to know what races you intend to add, and you are limited in the names you can add. They must match exactly to the short empire names in the CommonSettings\RaceNames.gf file. The five names you can add are
5="Cardassian"
6="Species8472"
7="Rakellian"
8="Pirate"
9="Ferengi"
Where you put which name is your choice, this just happens to be my order. As long as the numbers are in order.
TEST EXAMPLE - Just add one race, we'll use the Rakellians for this example, as they are already on the game.
2 - Now you need to create yourself a map, I suggest that you create a basic 10x10 map to start with, have only a few hexes for each race. But you MUST, and I cannot stress this enough, MUST have at least one base, or one planet in one of each races hexes. Otherwise they will produce no AI ships. Save the map into your MetaAssets folder, in the SFC3 directory. Don't overwrite any of the existing maps of course.
If you prefer, you could edit one of the existing maps, and save that as your new map, it makes no difference.
TEST EXAMPLE - Just give the Rakelli a few hexes, one planet & one base. Simple really. No need to make the map anything special.
3 - Now, we need to edit the DefaultCore file (Excel is the best program for editing). Each race is REQUIRED to have 1 of each of the following types of ships. This may mean having two of the same ship, each with a different class.
Frigate (FF)
Destroyer (DD)
Light Cruiser (CL)
Heavy Cruiser (CA)
Heavy Battlercruiser (BCH)
Dreadnaught (DN ) (you may not need this one, but to be on the safe side, always include one)
Plus, you need to have one of each of the stations, unless you have new models, it's probably best to use the Fed stations, in which case you do not need to edit the Core file any further.
TEST EXAMPLE - Create copies of the Rakellian Attack & Light Cruiser, two of each, and then change the class values so they have all of the required classes listed above. Change the Classname on each of the copies, I suggest just adding a number to the end of the existing name. (RK-Frigate2, for example)
4 - Now go into the DefaultLoadOut file, you need to add/edit the file to add in the ships you just added to the Core file.
If the race has no bases already, then copy all of the Fed Bases, from ListeningPost to Starbase, the Stardocks are optional. Make sure you edit the SubName's to change Federation to Rakellian, do NOT edit the Classname line, otherwise the copied base will not load.
For all your ships, and bases, make sure the RaceName is set to the name of your race.
TEST EXAMPLE - The Rakellians already have bases set up, so all you need to do is create two copies of the LC & FF. Edit the ClassName to match the new lines you added to the Core file, and then edit the SubNames, no SubName must match, just add a number to the end like before.
5 - Now you need to make the map available, go to Assets\Scripts\Campaigns, and create a copy of one of the Conqeust.mct files, rename it, and then edit it.
Change the name, put a number after it, it really doesn't matter.
There are three map file names, they are usually always the same, just edit each of them and change it to the name of your map, whatever you chose to call it.
TEST EXAMPLE - Copy FederationConquest.mct, change to FederationConqeust2.mct, now edit the file, follow instructions above.
6 - Load up the game, and go to Single Player Campaign, then All Campaigns. Just play your new Campaign, and if you've followed the above instructions, you should now be on your new map, with your additional races showing up as AI races. Once you've figured it all out, you can create a full size map, and have lots of fun.
---------
I hope this guide helps out anyone who wants to add more races, especially those who run online campaigns.
If you want to see what a map with 9 races on looks like, click below (not the whole map, but the best view I could get with all races showing.)
NINE RACE MAP And now, a quick plug for my own Dominion Wars Mod, which has a fully working 9 race map already. Oh, and 66 new ships. The link is in my sig.