Modding Basics- Rebellion

right|300px 
I found the Modding Basics page on this wiki somewhat confusing, outdated and unclear. I started only recently to mod Sins, and I used what I had learned mostly through trial and error with a few pointers. My intention is to make it easier for first-time Rebellion modders. I am currently using Rebellion 1.52, which I bought from Steam.
==Finding your Mod Path==
When you boot up Rebellion, the game searches for all the files it needs. The first place it looks is in your mod path. If there is nothing suitable in there, the game uses the original files. To find your mod path, go on Rebellion and then Options. Select Mods and click the Show Mod Path button. It should something like this:
C:\Users\Dom\Documents\My Games\Ironclad Games\Sins of a Solar Empire Rebellion\Mods-Rebellion v1.52
I recommend take a picture or writing this down until you memorise the location. A simple option is to create a shortcut on your desktop. The mods that you create will be folders in Mods-Rebellion v1.52.
==Finding reference data files==
The files that the game uses are in binary form, which is fairly useless. If you try to open one on notepad, it doesn't make much sense. So to edit them (and make a mod) you need the text versions. You can find them online; I found mine at this website: http://www.moddb.com/company/soase-m0dders/downloads/reference-files. As these are compressed archive files, you need the right program to open them. I use jZip, because it is free. However, if you bought Rebellion on Steam, there is another way. All the files used by vanilla Rebellion are at something like:
C:\Program Files (x86)\Steam\SteamApps\common\Sins of a Solar Empire Rebellion
There will be lots of confusingly named files. To make simple mods, you only need two folders: GameInfo and String. You also need the MANIFEST files: entity.manifest, galaxy.manifest, brush.manifest, playerPicture.manifest, and playerThemes.manifest. The GameInfo folder contains entity files: text descriptions of all the stats and attributes of a particular object, such as health, armor, weapon damage, etc. Although they look daunting to begin with, as you progress they will become easy to read. The String folder has one file: English. In it are descriptions and names of every ship, structure, research subject, etc. All the files are still in binary though. I use the Sins Data Converter, which is found at http://www.xtremestudios.net/portal/downloads/. I downloaded the latest one. It is fairly obvious what to do, but here are some tips. Create a COPY of the folder you want to convert on your desktop. Be very careful here. If you mess it up you will have to unistall and reinstall Rebellion. Copy the GameInfo folder from the above place and select the in-place conversion. It saves a lot of hassle. Make sure you click the version box, so always Rebellion. Check that it is binary (bin) to text (TXT). When it has finished, you will have lots of entity files which you can open and read with notepad or word or something. Have a look through some and try to figure out what is going on.
==Making your first mod (Overpowered Advent)==
Go to the mod path that you found earlier (that should be a shortcut on your desktop) and create a new folder called Overpowered Advent. Because you are not adding or removing files for this, all you need is a copy of the GameInfo folder. Move this into Overpowered Advent. Search for capitalship. You should get a few research subjects and a list of the 18 capital ships in the game. You may have noticed that the names of the entity files don't match up with the names in the game. For example, the CAPITALSHIP_PSIBATTLESHIP is actually the Radiance Battleship. This is okay for the easier things, like ships and structures, but gets very confusing for research subject, abilities and buffs. Anyway, open up the PSIBATTLESHIP. I will go into a detailed breakdown of this ship on another page later. Scroll down a bit and you come to this bit:
basePrice (how much it cost to make)
credits 3000.000000
metal 400.000000
crystal 250.000000
slotCount 50.000000 (how many ship slots it takes up)
BuildTime 75.000000 (how long it takes to build)
MaxHullPoints
StartValue 2640.000000 (starting hull points)
ValueIncreasePerLevel 108.000000 (the increase in hull points for each level)
MaxShieldPoints
StartValue 2100.000000 (starting shield points)
ValueIncreasePerLevel 216.000000 (the increase in shield points for each level)
Now change the MaxHullPoints to 5000 and the Max Shield Points to 5000 too. Save the file and exit it. The game does NOT require files in the mod folders to be in binary form, although it will be slower loading. Open Rebellion and go to Options, Mods, and there should be a mod on the right hand list- your mod, Overpowered Advent. Enable it and then click Apply Changes. The game will load again (it is checking whether you have any files or folders in your mod) and then you will be back to the title screen. Start a new game as the Advent, and hey presto! You have an improved capital ship.
==Making your second mod (Overpowered Advent)==
We are going to continue on our theme on making the Advent overpowered, this time by modifying the weapons of the Radiance Battleship. Go to the GameInfo folder in your Overpowered Advent folder. Open up the PSIBATTLESHIP again. I will explain as I go along. This time, go further down until you get to:
Weapon
WeaponType "Beam"
damageEnums (?)
AttackType "CAPITALSHIP"
DamageAffectType "AFFECTS_SHIELDS_AND_HULL"
DamageApplyType "OVERTIME"
DamageType "ENERGY"
WeaponClassType "BEAM"
DamagePerBank:FRONT 132.300003 (Each ship has banks of weapons, which can only target certain foes)
DamagePerBank:BACK 0.000000
DamagePerBank:LEFT 0.000000
DamagePerBank:RIGHT 0.000000
Range 4800.000000 (This may seem like a lot but it isn't)
PreBuffCooldownTime 7.000000 (The delay between shots)
CanFireAtFighter FALSE (Whether it is an AA weapon)
SynchronizedTargeting FALSE (?)
PointStaggerDelay 0.500000 (?)
TravelSpeed 0.000000 (Because it is a beam, there is no travel time)
Duration 4.000000 (The length of the effect)
fireConstraintType "CanAlwaysFire"
WeaponEffects
weaponType "Beam"
burstCount 1 (Means that it fires one beam (per bank))
burstDelay 0.000000
fireDelay 0.000000
First let's crunch some numbers. This beam can fire every 7 seconds (rate of fire). Each time it does 132 damage. Dividing the damage by the rate of fire we get the dps (damage per second). In this case 132 / 7 = 18.85. Not too bad really. Using this math you can make any weapon do as much damage as you want. If I made it fire every 5 seconds, and gave it a damage of 300, it would have a dps of 300 / 5 = 60. Let's really overpower this ship. Make the damage 21000, and the cooldown time 5 seconds. This gives us a dps of 4200. Then we can give it a ridiculous range - say 30000 - and you can send this ship into the pirate base and nothing will be left alive. Once again, close and save the file you are editing, and then try it out.
Category:Modding