Log in

View Full Version : Switching Skins



Griever14206
08-24-2007, 07:59
I've decided that however realistic the Greek Cities Hoplitai studded leather armor may be, I simply cannot stand the look of it. So, I was wondering if perhaps I could exchange the skin of the Greek Cities Hoplitai with that of the Eluetheroi (sp?) ones? IIRC those are the ones with the linothorax and the shield with the cup or chalice on it.

If anyone could help me with this it would be awesome, I searched through the RTW modding forums but couldn't find what I am looking for.

The Errant
08-24-2007, 13:30
I've decided that however realistic the Greek Cities Hoplitai studded leather armor may be, I simply cannot stand the look of it. So, I was wondering if perhaps I could exchange the skin of the Greek Cities Hoplitai with that of the Eluetheroi (sp?) ones? IIRC those are the ones with the linothorax and the shield with the cup or chalice on it.

If anyone could help me with this it would be awesome, I searched through the RTW modding forums but couldn't find what I am looking for.

Open the DMB file (RTW\EB\Data\descr_model_battle.txt) with notepad. Choose the "Edit" option from the menu and then "Find". Keyword is "hoplitai"
The entry should look like this:


; Hellenistic infantry - Hoplitai / Hoplitai Hellenikoi -------> MISSING MED/LOW/LOWEST

type hellenistic_infantry_hoplitai_hellenikoi
skeleton fs_o_f_spearman ; combat spear
indiv_range 40
texture thrace, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_thrace.tga
texture greek_cities, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_greek.tga
texture macedon, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_macedon.tga
texture romans_julii, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_hellenistic.tga
texture romans_brutii, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_hellenistic.tga
texture numidia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_hellenistic.tga
texture germans, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_hellenistic.tga
texture gauls, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture scythia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture spain, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture britons, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture dacia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture egypt, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture seleucid, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture carthage, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_blacksea_sor&het_carthage.tga
texture romans_scipii, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_blacksea_sor&het_carthage.tga
texture armenia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture parthia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture saba, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_regional.tga
texture pontus, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_hellenikoi_sor_pontus.tga
texture slave, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_slave.tga
texture merc, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_merc.tga
model_flexi eb/data/models_unit/ebhellenic_infantry_hoplitai_hellenikoi_sor_high.cas, 15
model_flexi eb/data/models_unit/ebhellenic_infantry_hoplitai_hellenikoi_sor_med.cas, 30
model_flexi eb/data/models_unit/ebhellenic_infantry_hoplitai_hellenikoi_sor_low.cas, 40
model_flexi eb/data/models_unit/ebhellenic_infantry_hoplitai_hellenikoi_sor_lowest.cas, max
model_sprite thrace, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_thrace.spr
model_sprite greek_cities, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_greek.spr
model_sprite macedon, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_macedon.spr
model_sprite romans_julii, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_successor.spr
model_sprite romans_brutii, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_successor.spr
model_sprite numidia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_successor.spr
model_sprite gauls, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite scythia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite spain, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite britons, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite germans, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite dacia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite egypt, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite seleucid, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite carthage, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite romans_scipii, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite armenia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite parthia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite saba, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_all.spr
model_sprite slave, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_slave.spr
model_sprite merc, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_merc.spr
model_sprite pontus, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_hellenikoi_all.spr
model_tri 400, 0.5f, 0.5f, 0.5f

Now. Copy the texture and mode_sprite entries from the slave faction after the entry for greek_cities, so that the lines look like this:


texture greek_cities, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hoplitai_sor_slave.tga

and like this


model_sprite greek_cities, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_hoplitai_slave.spr

Save the DMB file and exit. Restart EB and you should now be using the skins of the Slave faction for your Classical Hoplites. If it was another unit you were referring to, the same principle applies.

Olaf The Great
08-27-2007, 03:48
I'm a fan of the Mercenary(or is it Roman?) That has the Helmet on the shield,

geala
08-27-2007, 07:47
Thank you for this thread. :yes: I changed the textures of some Greek units (f.e. make them walking barefoot:beam: ) and exchanged also the Epirote slingers texture with that of the rebel ones (because it is not the best choice to have a broad petasos on your head when you have to use a sling), but the hats appear still as a black matrix. I presume, the reason is that I did not change the sprites too?

The Errant
08-27-2007, 07:58
Thank you for this thread. :yes: I changed the textures of some Greek units (f.e. make them walking barefoot:beam: ) and exchanged also the Epirote slingers texture with that of the rebel ones (because it is not the best choice to have a broad petasos on your head when you have to use a sling), but the hats appear still as a black matrix. I presume, the reason is that I did not change the sprites too?

Yes. Sometimes the sprites are defined as something along the line ebspriteunitnameall. When that ending for the sprite applies you can settle for changing the textures only. It will work fine regardless.

However most EB unit models are shared by several unit types, often by different cultures. In those instances the sprites for the specific textures are unique. And must be changed along with the textures. In battle, if the model looks messed up after a skin change, incorrect sprites or other model data is at fault.

Olaf The Great
08-28-2007, 15:57
Wait, would switching skins of Greek bodyguard with something else, maybe Seleucid Hypatists or Baktrion Agema be as easy, or would I have to change the whole unit

Because I don't like how my Rhodian, Athenian or Kretans have a spartan bodyguard.

The Errant
08-28-2007, 16:54
Wait, would switching skins of Greek bodyguard with something else, maybe Seleucid Hypatists or Baktrion Agema be as easy, or would I have to change the whole unit

Because I don't like how my Rhodian, Athenian or Kretans have a spartan bodyguard.

You would have to change the whole model. The DMB (descr_model_battle) determines what type of unit your dealing with. I'll explain by example:


; Hellenistic infantry - Hypaspistai / Massiloi Hoplitai

type hellenistic_infantry_hypaspistai_massiloi_hoplitai
skeleton fs_swordsman_barb_slash, fs_o_f_spearman ;1: fs_1h_axeman ; combat spear
indiv_range 40
texture macedon, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hypaspistai_agart_macedon.tga
texture romans_julii, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hypaspistai_agart_julii.tga
texture thrace, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hypaspistai_antiochus_epiphanes_thrace.tga
texture slave, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_massiloi_hoplitai_forgus_regional.tga
texture greek_cities, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_massiloi_hoplitai_forgus_regional.tga
texture scythia, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_massiloi_hoplitai_forgus_regional.tga
texture gauls, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_massiloi_hoplitai_forgus_regional.tga
texture merc, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_massiloi_hoplitai_forgus_regional.tga
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_high.cas, 15
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_med.cas, 30
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_low.cas, 40
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_lowest.cas, max
model_sprite romans_julii, 60.0, eb/data/sprites/greek/ebsprite_greek_infantry_hypaspistai_julii.spr
model_sprite macedon, 60.0, eb/data/sprites/greek/ebsprite_greek_infantry_hypaspistai_all.spr
model_sprite thrace, 60.0, eb/data/sprites/greek/ebsprite_greek_infantry_hypaspistai_all.spr
model_sprite slave, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_massiloi_hoplitai_all.spr
model_sprite greek_cities, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_massiloi_hoplitai_all.spr
model_sprite scythia, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_massiloi_hoplitai_all.spr
model_sprite gauls, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_massiloi_hoplitai_all.spr
model_sprite merc, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_massiloi_hoplitai_all.spr
model_tri 400, 0.5f, 0.5f, 0.5f


; Hellenistic infantry - Hoplitai Spartiates

type hellenistic_infantry_spartiateshoplitai
skeleton fs_o_f_spearman ;combat spear
indiv_range 40
texture greek_cities, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_spartan_hoplite_spw_greek.tga
texture egypt, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_spartan_hoplite_spw_greek.tga
model_flexi eb/data/models_unit/ebhellenic_infantry_spartan_hoplite_spw_high.cas, 15
model_flexi eb/data/models_unit/ebhellenic_infantry_spartan_hoplite_spw_med.cas, 30
model_flexi eb/data/models_unit/ebhellenic_infantry_spartan_hoplite_spw_low.cas, 40
model_flexi eb/data/models_unit/ebhellenic_infantry_spartan_hoplite_spw_lowest.cas, max
model_sprite greek_cities, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_spartiateshoplitai_all.spr
model_sprite egypt, 60.0, eb/data/sprites/hellenistic/ebsprite_hellenistic_infantry_spartiateshoplitai_all.spr
model_tri 400, 0.5f, 0.5f, 0.5f

The first code is that of the Hypaspistai, a model that is shared by the Massilian Hoplites. The second is the spartan one. First problem we run into is that without the proper software (3DsMAX) we can't go randomly changing the skins without corresponding sprites. If you do you get very ugly clipping on the battlefield, or worse a CTD.

The second problem is the animation model. The Hypaspistai have two weapons. The celtic longsword and the combat spear of the traditional hoplites. The spartan only have the combat spear. Since the hypaspistai model says the sword is the primary weapon you could never turn them into a hoplite unit. There is no way without 3DsMAX to change the weapons. Even to make an already existing secondary weapon into the primary. I know, I've tried... a lot.

The two models are in no way interchangable. Not without the proper tool to make changes. Basic changing of skins and sprites can be done if the models are similar enough. Unfortunately in this case they aren't. Sorry.

Olaf The Great
08-28-2007, 22:53
Well what would the code be to switch the whole unit, name and everything with another unit?

The Errant
08-29-2007, 07:44
Well what would the code be to switch the whole unit, name and everything with another unit?

First make backups of your EDU and DMB. Then open your EDU and find the entry for greek infantry greek general. In my EDU it looks like this, but since I'm playing with the internal version it won't look anything like yours. What's important is the correct entry:


;435
type greek infantry greek general
dictionary greek_infantry_greek_general ; Greek General's Bodyguard
category infantry
class heavy
voice_type General_1
soldier hellenistic_infantry_epikletoi_hoplitai, 20, 0, 1.22
officer ebofficer_hellenic_standardbearer
mount_effect elephant -1
attributes sea_faring, hide_forest, general_unit
formation 0.76, 1.2, 1.6, 2.4, 4, square
stat_health 1, 0
stat_pri 16, 8, no, 0, 0, melee, simple, piercing, spear, 0 ,0.13
stat_pri_attr light_spear
stat_sec 0, 0, no, 0, 0, no, no, no, none, 0 ,0.1
stat_sec_attr no
stat_pri_armour 14, 10, 4, metal
stat_sec_armour 0, 0, flesh
stat_heat 5
stat_ground 0, 0, -3, -2
stat_mental 16, disciplined, highly_trained
stat_charge_dist 30
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 2077, 0, 60, 504, 2077
ownership greek_cities

Now search for the entry for the Hypaspistai and copy the following lines from it.


stat_pri 11, 6, no, 0, 0, melee, simple, piercing, sword, 0 ,0.225
stat_pri_attr no
stat_sec 16, 6, no, 0, 0, melee, simple, piercing, spear, 0 ,0.13
stat_sec_attr light_spear

Place those in the correct entries within the stats of your greek generals bodyguard. Now change the soldier entry to look like this:


soldier hellenistic_infantry_new_general

Save your EDU and open the DMB file. Scroll down to the entry for Hypaspistai and make a copy of the following lines so the new entry in the DMB looks like this. You can place it just after or before the hypaspistai for easier reference.


; Hellenistic infantry - Hypaspistai / Massiloi Hoplitai

type hellenistic_infantry_new_general
skeleton fs_swordsman_barb_slash, fs_o_f_spearman ;1: fs_1h_axeman ; combat spear
indiv_range 40
texture greek_cities, eb/data/models_unit/textures/hellenistic/ebhellenistic_infantry_hypaspistai_agart_julii.tga
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_high.cas, 15
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_med.cas, 30
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_low.cas, 40
model_flexi eb/data/models_unit/ebhellenic_infantry_massiloi_hoplitai_hypaspistai_agart_lowest.cas, max
model_sprite greek_cities, 60.0, eb/data/sprites/greek/ebsprite_greek_infantry_hypaspistai_all.spr
model_tri 400, 0.5f, 0.5f, 0.5f

Notice that the type entry in the DMB must be exactly the same as the soldier entry in the EDU. The soldier entry determines the model used by the unit in battle. This is corresponded in the DMB by the type entry of a model.

Now save the DMB and exit. If you did both things correctly you should now have a new greek generals bodyguard model using the hypaspistai armament and skins.

In order to complete the task you still need to go to the EB\UI folder and copy the Hypaspistai unit cards to the greek_cities folder and rename those to greek_infantry_greek_general. But it will work fine without it too.