Reply #1 Top
Copy and paste the old one, change the strings entries to what you want, and then make it buildable in the PlayerTech(Psi,Phase).entity file?
Reply #2 Top
This requires quite a bit of work, depending on how you go about it that is. If you're going to make a new ships then first get your favourite modelling application, export it to XSI (or you can create it in XSI) and save it as an XSI file. Use the converter tool supplied with the Tools and you've got your ship in mesh form.

Now this is where it gets important, you must make sure that you name the file unique and the filename is case sensitive so when you come to edit the entity files you will have to give the exact filename otherwise SOASE will not load up or will crash out.

So now you have your Mesh as I will call My_Custom_Frigate_Ship.mesh, what I want to do now is, as it's a frigate ship, is to set it to be buildable at the frigate factory. Let's just pretend to make a new race for now, so copy and paste any of the race entity files (in the 'GameInfo' directory) and rename it to anything you like, I'll call mine PlayerMyRace.entity. The race entity files start with 'Player' before hand, this is important!

Open up this file in any text editor you like and for now I'll just point you in the right direction instead of making a big tutorial.

Near the top of the page you'll see 'entities' followed by tabbed areas. What you want to do is find frigateInfo. We'll ignore the page counts for now and just create a new frigate ship instead. Let's edit 'Page:1'. Change the count of this page to '5', now to add your new ship below 'entityDefName "FrigateTechHeavy"' add this line:

entityDefName "RaceName_Frigate_Ship"

You can replace 'RaceName' with anything you like, in fact you can have this name as anything you like, just make sure that you have the case size correct. We want the Race to be selectable when in game, having the same name will be difficult to figure out which race is which, so at the top of the text you'll see 'raceNameStringID "IDS_PLAYERRACENAME_TECH"', you've probably noticed that I'm using the playerTech.entity file as reference. Anyway change the value to 'IDS_PLAYERRACENAME_RACENAME'. We will change the name of the actual race later.

Now save that file and let's copy the Tec Carrier, so in the 'GameInfo' directory search for FrigateTechCarrier.entity, copy and paste then rename it to RaceName_Frigate_Ship.entity. You've probably noticed that the filename is exactly the same as the definition we just created earlier. This is the same as almost everything in the source files so make sure you keep this in mind. Now open up the newly made file.

Within this entity file you'll again probably feel a little confused but don't worry, it's all actually quite easy to edit and understand. First what we want to do is point this entity to the model you created, so that would be the mesh file. Near the bottom of the document you'll see 'MeshName', change the value of 'MeshName' to 'My_Custom_Frigate_Ship' so it reads:

MeshName "My_Custom_Frigate_Ship"

Remember that this is what we named the mesh file as. Just don't add the file extension to the end of the values as the game auto does this. Now that we have done that we want to make sure that we know the name of the ship rathar than having two carriers! so scroll all the way to the top and change the 'NameStringID' value to 'IDS_MY_FRIGATE_SHIP'. Save the file.

And that's it bar one final thing. Those new name strings we created now need to be added, so open up English.str in the 'String' directory and add these lines:

StringInfo
ID "IDS_PLAYERRACENAME_RACENAME"
Value "This is where you type the Race name"
StringInfo
ID "IDS_MY_FRIGATE_SHIP"
Value "This is where you type the Frigate name"

And now add '2' to the NumStrings, it initially was '5157' and now should be '5159'. Save the file and you now have your first ship! Load the game, enable your Mod and off you go. If everything goes right you can now build all the Tec stuff and your newly created frigate ship.

Remember that the directory structure should be like this for all Mods:
x:\[user]\AppData\Local\Ironclad Games\Sins of a Solar Empire\Mods

Within the Mods directory create a new folder with the name being the name of your Mod. Now go into this folder and copy and paste the source files you got with the tools. So that's GameInfo, Mesh, Particle, and Window. To add textures and the strings to the Mod you need to copy and paste the Textures and String directory to your Mod directory, so it'll be Mods\[name of Mod]\String for the string and Mods\[name of Mod]\Textures for the textures. These are the only files you can touch, don't edit the main game files.

Hope this has helped. :D
Reply #3 Top
As far as the strings go, ship name and ship description are separate, so ideally unless you want to keep the old infocard description, you'll want to add both IDS_MY_FRIGATE_SHIP_NAME and IDS_MY_FRIGATE_SHIP_DESCRIPTION strings (the existing ship entity files use both).

Otherwise, the above guide is good :P Also note, you can only "add" ships to existing ones in the frigate factory. The capital ship factory doesn't use the second UI row and is so far limited to 5 ships only, so you'd need to replace one.
Reply #4 Top
I was wondering how to set the firing points on ships.
For example, TEC light frigates have two cannons, and when set to 1 burst they fire two time. TEC LRM have ten missile holes, and when set to 1 burst they fire 5 or 10 times. For all ships that I have created, the weapon seems to fire from the center (logical since I haven't set anything) but I was wondering how to add weapons, how to set wether they are front, side or rear weapons, and to set their number. There doesn't seem to be anything in the entity file indicating that a certain weapon takes a certain slot, so this is a complete mystery for me.
Any ideas?
Reply #5 Top
That stuff is in the mesh. The only thing you can modify in the entity files is how much damage a weapon does from the front, left, right, or rear. But the firing points for all of them are stored in the mesh.
Reply #6 Top
It was just a quick rough guide anyway ^^;. Good point about the description though and especially about the Capital Ships however I have an idea about adding more. I'll let you know if it works out.

I've completely started my Mod from scratch with a blank canvas so all I have at the moment is a construction corvette and a frigate factory. :lol:

Reply #7 Top
however I have an idea about adding more. I'll let you know if it works out.
End of quote


If you manage to do this people will love you forever :P
Reply #8 Top
That stuff is in the mesh. The only thing you can modify in the entity files is how much damage a weapon does from the front, left, right, or rear. But the firing points for all of them are stored in the mesh.
End of quote


yeah I keep hearing that..but no one has said what it is in the mesh! A emitter? A helper?? what about naming conventions for the weapon? I know that its named after the weapon number in its entity file right? Maybe I missed a post somewhere.

Reply #9 Top
That stuff is in the mesh. The only thing you can modify in the entity files is how much damage a weapon does from the front, left, right, or rear. But the firing points for all of them are stored in the mesh.yeah I keep hearing that..but no one has said what it is in the mesh! A emitter? A helper?? what about naming conventions for the weapon? I know that its named after the weapon number in its entity file right? Maybe I missed a post somewhere.
End of quote


This is a little confusing. basically you'll have a bone called "Exhaust" that does the trails. Then in the existing meshes you had Weapon-0 (for the first defined weapon) and Weapon-1 (second) etc, and duplicating Weapon-0 for example would make another muzzle for that weapon. However, DoV has models using a different naming convention and the weapons seem to work fine. I assume that in the absence of those names, it just assigns each weapon to a bone randomly.
Reply #10 Top
So if I understand this correctly then each "barrel" is a bone? Sorry I'm not used to modeling for this sort of game. Also what scale does the game use?
Reply #11 Top
Each "barrel" is a bone, yes, and if they have the same name they will be sequential "barrels" for the weapon, if different names than they will be different guns.