Adding Projectiles (RTW)

This is just example (using the axe from the Francisca Heerban from Barbarian Invasion) of the simplicity of adding projectiles, you can of course give it to any other unit or add a different projectile.Thanks to Terikel, by examining his mod I was able to figure out the necessary steps to adding projectiles.

Requirements

 * Notepad, or similar text editing device.
 * Rome; Total War. How else are you going to play?
 * Barbarian Invasion Expansion Pack for the source file.
 * 3dsMax, to add the model to the unit.
 * Adobe Photoshop or GIMP, for texturing.

Adding Projectiles
Step 1: Okay, start out by opening up explorer and navigating to "Activision/Rome - Total War". Because we wont be making our own models and textures go into "bi".



Step 2: Okay, notice "models_missile" and "descr_projectile_new.txt"? Those are the two files that we'll be using.



Step 3: We'll start off with "Descr_projectiles_new.txt". Copy paste the Francisca entry and paste somewhere in a new text file, you'll need it later.



Step 4: Now for the model and texture, go into "models_missile" and copy/paste "BI_projectile_francisca.CAS" to another folder, we'll use this later as well.



Step 5: Now go into "Textures" and copy "BI_projectile_francisca.tga.dds" to the same other folder as your model.



Step 6: Go back to your RTW root folder and this time go into the RTW data folder. Go into "models missile" and then "textures". Paste "Bi_projectile_francisca.tga.dds" from that other folder here.



Step 7: Go back into the folder right before and then paste "BI_Projectile_francisca.CAS" from your other folder here.



Step 8: Backtrack to "Data" and locate "descr_projectiles_new.txt".



Step 9: Open it and at the bottom of the file paste the francisca data that you copied from the projectiles txt in BI.



Step 10: You have now successfully placed the Francisca ax in game, its time to have a unit equip it. Locate "Export_descr_units.txt".



Step 11: CTRL+F and search "Velites", which is the unit i'll be giving this beauty to. Scroll to the "stat_pri" line and where it says "javelin" type "francisca". Then save the file.



Step 12: Run RTW, you should now have this:



Step 13: You might have noticed that the axes are thrown but the velites still hold javelins, we are about to remedy that. The files we'll need are the velite texture and the velite model. In models_unit search: "unit_roman_velite_high.CAS" and in your unpacked Rome textures folder search "UNIT_ROMAN_PEASANT_JULII.TGA.DDS". Obviously, if you want to encompass all the LOD then you'll need the high,med, and low CAS files, furthermore, for each roman faction you'll need to edit the texture. However because that would be a bit repetitive il only be doing the highest detail Julii velite. Put them in a seperate folder:



Step 14: Open 3dsmax and then import the velite model.



Step 15: Delete the Javelin he is holding along with the 2 across his shield.



Step 16: Import the Francisca model from the "models_missile" folder in "Data".



Step 17: Place the ax in the velite's right hand, his throwing hand.



Step 18: So that the ax moves with the rest of his body, apply a skin modifier (from the drop down menu on the right) and add the right hand bone.

Step 19: Now that that is done, its time to edit the texture, open Photoshop.



Step 20: Resize the ax texture and place it over the javelin and shield part of the peasant texture.



Step 21: Save it as "AXE_VELITE".



Step 22: Back in 3dsmax apply your new texture.

Step 23: The ax's texture will be a bit screwed up so add a "Unwrap UVW Map" modifier, select "Edit" and resize the verticies over the appropriate section of texture.



Step 24: Rename the ax "Primary weapon", make sure the skin modifier is always on top.



Step 25: Export the model as a CAS named "AXE_VELITE.CAS".



Step 26: Now to make the game use this new model and texture. Open "descr_model_battle" and search "Velite". Then change it this way.



Step 27: Now copy/paste your texture file into "models_unit/textures" and your model into "models_unit". It should now work.

Well, there we go, this is the end of this tutorial, hope this helps.