4. neue Einheiten erstellen
z.B. germanische Speerträger in zwei Einheiten aufteilen, einmal mit der Fähigkeit Phalanx und als normale Speerträgereinheit.
Rome-TW/data/export_descr_unit
type warband spear german
dictionary warband_spear_german ; Spear Warband
category infantry
class spearmen
voice_type Light_1
soldier warband_spearman_german, 60, 0, 1.2
officer barb_standard
attributes sea_faring, hide_improved_forest
formation 1, 1, 2, 2, 5, square, phalanx
stat_health 1, 0
stat_pri 9, 8, no, 0, 0, melee, simple, piercing, spear, 25 ,1
stat_pri_attr spear
stat_sec 0, 0, no, 0, 0, no, no, no, none, 25 ,1
stat_sec_attr no
stat_pri_armour 3, 3, 5, leather
stat_sec_armour 0, 0, flesh
stat_heat 3
stat_ground 2, -2, 3, 2
stat_mental 4, impetuous, trained
stat_charge_dist 30
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 510, 200, 60, 80, 510
ownership germans
Der Eintrag für germanische Speerträger steht in der descr_unit unter warband spear german.
Diesen Eintrag kopieren uns wieder in die datei einfügen. Beim Kopieren ist auf die zwei Leerzeichen zwischen den Einträgen zuachten.
Nach dem Einfügen müssen folgende Daten verändert werden. (man kann natürlich alles verändern)
- neuer Name
-neue dictionary
-formation
-stat_pri_attr
type warband spear
men german
dictionary warband_spear
men _german ; Spear Warband
category infantry
class spearmen
voice_type Light_1
soldier warband_spearman_german, 60, 0, 1.2
officer barb_standard
attributes sea_faring, hide_improved_forest
formation 1, 1, 2, 2, 5, square,
Eintrag Phalanx löschen
stat_health 1, 0
stat_pri 9, 8, no, 0, 0, melee, simple, piercing, spear, 25 ,1
stat_pri_attr
no
stat_sec 0, 0, no, 0, 0, no, no, no, none, 25 ,1
stat_sec_attr no
stat_pri_armour 3, 3, 5, leather
stat_sec_armour 0, 0, flesh
stat_heat 3
stat_ground 2, -2, 3, 2
stat_mental 4, impetuous, trained
stat_charge_dist 30
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 510, 200, 60, 80, 510
ownership germans
Rome-TW/data/export_descr_unit_enums
Der Eintrag in dieser Datei verweist auf dei Textdateien, also auf den Namen und die beschreibungen im Spiel. Wenn eine neue Einheit hier keinen Eintrag hat, dann wird das Spiel in der Regel abstürzen.
Diese Datei ist nicht mit Spreadsheet geschrieben, es ist eine einfache Textdatei, sie kann also recht problemlos bearbeitet werden.In diesem Fall den Eintrag Warband spear german kopiern, einfügen und umbenennen.
warband_spear_german
warband_spear_german_descr
warband_spear_german_descr_short
warband_spear
men _german
warband_spear
men _german_descr
warband_spear
men _german_descr_short
Mit den Einträgen in den descr_unit und descr_unit_enums ist die Einheit soweit fertig, dass das Spiel gestartet und die einheit getestet werden kann. Als Icon im Menü hat sie den Standardicon (grauer Bauer) und keinen Namen.
Name und Beschreibung der Einheit erfolgt in der Datei Rome-TW/Data/Text/export_units. Einen bestehenden Eintrag kopieren, einfügen und entsprechend ändern. Es empfiehlt sich hier natürlich, den für warband_spear_german zu nehmen und umzubennen.
Darauf achten, dass die Namen aus der Rome-TW/data/export_descr_unit_enums
verwendet werden.
Icons umtauschen. Da es sich um eine neue Einheit handelt, braucht man einen neuen Icon für die Unit.
Es gibt in dem Ordner Rome-TW/Data/UI/Unit einen Unterordner mit der Bezeichnung construction.
Hier finden sich eine Menge Einheitenicons, die das Spiel nicht verwendet. Wahrscheinlich sind es frühere Entwürfe, die dann nicht mehr gelöscht wurden.
Wie man Einheitenicons umtauscht
hier
Als letzten Schritt muss die neue Einheit noch in die Datei
Rome-TW/data/export_descr_buildings eingearbeitet werden. Die einheit soll ja im Spiel auch gebaut werden können. Dies geschieht folgendermassen:
recruit "barb infantry dacian" 0 requires factions { dacia, }
recruit "warband spear german" 0 requires factions { germans, }
recruit "barb horse archers scythian" 0 requires factions { scythia, }
In der Datei den Eintrag für warband_german_spear kopieren, einfügen und umbenennen.
Unter welchem Gebäude man in einträgt, ist egal, es ginge auch unter einem Tempel. Allerdings sollte man bei den Tempeleinheiten aufpassen, dass die Nation, die über die Einheit verfügt, auch diese Art von Tempel bauen kann.
Wichtig ist auch, dass wird eine Einheit einem Gebäude zugewiesen, und dieses Gebäude hat noch nachfolgende upgrade Stufen, dann muss die Einheit auch hier eingefügt werden.
Auch dann, wenn die betreffende Nation das Gebäude nicht mehr upgraden kann.
z.B. die Germanen können im Spiel, (wie alle barbaren) ihre Städte ja nur bis zur dritten stufe ausbauen. (6000 Einwohner)
Wenn die neue Einheit ab der zweiten Ausbaustufe der Kasernen (ich glaube, das entspricht den Versammlungshallen) ausgebildet werden können.
dann hat der Eintrag in der export_descr_buildings
logischerweise zum ersten Mal unter dem Eintrag
militia_barracks requires factions { barbarian, ct_carthage, eastern, parthia, egyptian, greek, roman, } zu erfolgen. Das entspricht im Spiel den Kasernen in der zweiten Ausbaustufe.
Wenn man es so belässt, dann kann man in der Kampagne, sobald man die Kasernen´zur entsprechenden Stufe ausgebaut hat, die neue einheit bauen. Rüstet man seine Kasernen dann zur nächsten Stufe auf, wird sie aus dem beumenü wieder verschwinden. Darum immer den Eintrag in allen nachfolgenden Upgradestufen vornehmen.
Auch wenn die Germanen keine Kasernen der vierten und fünften Stufe bauen können, sie jhaben aber die Möglichkeit, eine Stadt zu erobern, die solche Kasernen bereits besitzt.
Der Eintrag in der
Rome-TW/data/export_descr_buildings sieht dann so aus.
recruit "barb infantry dacian" 0 requires factions { dacia, } 0
recruit "warband spear german" requires factions { germans, }
recruit "warband spear
men german" requires factions { germans, }
recruit "barb horse archers scythian" 0 requires factions { scythia, }
Das war es, die Germanen können nun zwei Arten von Speerträgern ausbilden, Phalanxe und normale Speerträger. Auch die KI wird davon Gebrauch machen.
Das war jetzt noch recht einfach, schwieriger wird es, wenn auch Model und Texturen getauscht werden sollen.
Die 3 D Modelle sehen aus wie die Einheiten im spiel, nur nicht "bemalt", also ganz weiss. Die "Bemalung" erfolgt über Texturen im TGA.DDS Format. Dazu später.
Es kann also nicht jede Textur für jede Einheit verwendet werden. z.B. Phalanxeinheiten mit spitzen Helmen. Weise ich einem solchen Modell nun eine Textur einer Einheit ohne Helm zu, dann sieht das reichlich komisch aus. Man könnte aber ein gutes Fantasygame draus machen.
Was sich aber z.B. sehr gut anbietet, ist das Modell des germanischen Nachträubers zusammen mit der Textur der gallischen Schwertkämpfer. Daraus entsteht dann ein gallischer Axtkämpfer.
Rome-TW/data/export_descr_unit
Der Eintrag der Nachträuber sieht so aus. Kopieren, einfügen...
type barb night raiders german
dictionary night_raiders_german ; Night Raiders
category infantry
class heavy
voice_type Medium_1
soldier barb_night_raider, 40, 0, 1.2
attributes sea_faring, hide_forest, frighten_foot, hardy
formation 1.2, 1.2, 2.4, 2.4, 4, square
stat_health 1, 0
stat_pri 14, 8, no, 0, 0, melee, blade, piercing, axe, 25 ,1
stat_pri_attr no
stat_sec 0, 0, no, 0, 0, no, no, no, none, 25 ,1
stat_sec_attr no
stat_pri_armour 3, 2, 5, leather
stat_sec_armour 0, 0, flesh
stat_heat 3
stat_ground 2, -2, 3, 2
stat_mental 10, impetuous, untrained
stat_charge_dist 40
stat_fire_delay 0
stat_food 60, 300
stat_cost 2, 540, 130, 60, 90, 540
ownership germans
und wie folgt verändern.
-type/name
-dictionary
-soldier
-ownership
type
warband axe gaul
dictionary
warband_axe_gaul ; Night Raiders
category infantry
class heavy
voice_type Medium_1
soldier
warband_axe_gaul , 40, 0, 1.2
attributes sea_faring, hide_forest, frighten_foot, hardy
formation 1.2, 1.2, 2.4, 2.4, 4, square
stat_health 1, 0
stat_pri 14, 8, no, 0, 0, melee, blade, piercing, axe, 25 ,1
stat_pri_attr no
stat_sec 0, 0, no, 0, 0, no, no, no, none, 25 ,1
stat_sec_attr no
stat_pri_armour 3, 2, 5, leather
stat_sec_armour 0, 0, flesh
stat_heat 3
stat_ground 2, -2, 3, 2
stat_mental 10, impetuous, untrained
stat_charge_dist 40
stat_fire_delay 0
stat_food 60, 300
stat_cost 2, 540, 130, 60, 90, 540
ownership
gauls
sonstige attribute können nach belieben verändert werden.
Der Eintrag in der
Rome-TW/data/export_descr_unit_enums
muss dann so aussehen:
warband_axe_gaul
warband_axe_gaul_descr
warband_axe_gaul_descr_short
Die Textdatei wird ebenfalls entsprechend verändert
Nachdem es sich um eine neue Kombination von Model und Textur handelt, muss auch die
descr_model_battle entsprechend geändert werden.
Jetzt habe ich fast schon wieder 10000 Zeichen, weiter gehts unten
This post has been edited 1 times, last edit by "wolkenstein" (Jan 16th 2005, 5:40pm)