So als erstes wollen wir eine neue Mech-Einheit mit sämtlichen Eigenschaften wie Kosten, Bewegung etc. erschaffen.
Dazu öffnen wir mit ModBuddy die "CIV5Units.xml" unter SteamBLABLA/Sid Meier's Civilization 5/Assets/DLC/Expansion/Gameplay/XML/Units/...
Wenn du nicht God&Kings besitzt, dann ist die CIV5Units.xml unter Assets/Gameplay/XML/Units/... zu finden.
Wenn die Datei geöffnet ist und du sie vor dir siehst, kommen folgende Schritte:
1. Schritt: Suche mit der Suchfunktion oder mit der Suchleiste das Wort: UNITCLASS_MECH
--> Dies ist die Mech-Einheit aus der Vanilla. Die soll uns einfach helfen, wie sie definiert ist.
Das sieht dann so aus:
<Row>
<Class>UNITCLASS_MECH</Class>
<Type>UNIT_MECH</Type>
<PrereqTech>TECH_NUCLEAR_FUSION</PrereqTech>
<Combat>150</Combat>
<Cost>425</Cost>
<Moves>5</Moves>
<CombatClass>UNITCOMBAT_ARMOR</CombatClass>
<Domain>DOMAIN_LAND</Domain>
<DefaultUnitAI>UNITAI_ATTACK</DefaultUnitAI>
<Description>TXT_KEY_UNIT_MECH</Description>
<Civilopedia>TXT_KEY_CIVILOPEDIA_UNITS_MODERN_MECH_TEXT</Civilopedia>
<Strategy>TXT_KEY_UNIT_MECH_STRATEGY</Strategy>
<Help>TXT_KEY_UNIT_HELP_MECH</Help>
<MilitarySupport>true</MilitarySupport>
<MilitaryProduction>true</MilitaryProduction>
<Pillage>true</Pillage>
<IgnoreBuildingDefense>true</IgnoreBuildingDefense>
<Mechanized>true</Mechanized>
<AdvancedStartCost>80</AdvancedStartCost>
<XPValueAttack>3</XPValueAttack>
<XPValueDefense>3</XPValueDefense>
<UnitArtInfo>ART_DEF_UNIT_MECH</UnitArtInfo>
<UnitFlagIconOffset>83</UnitFlagIconOffset>
<IconAtlas>UNIT_ATLAS_2</IconAtlas>
<PortraitIndex>36</PortraitIndex>
<MoveRate>ROBOT</MoveRate>
</Row>
2. Schritt: Wir kopieren den gesamten Kram der Vanilla-Mech-Einheit und platzieren sie einfach drunter.
Wichtig: die <Row>'s müssen auch kopiert werden.
Jetzt haben wir also zweimal die Vanilla-Mech-Einheit hintereinander. Bringt uns ja jetzt nicht sonderlich viel....also
3. Schritt: In der zweiten Zeile der V-M-E steht: <Type>UNIT_MECH</Type>
Das "UNIT_MECH" ändern wir einfach mal in "UNIT_MECH_NEU", da wir ja aus der kopierten V-M-E unsere eigene Einheit machen wollen.
In <Description>TXT_KEY_UNIT_MECH</Description> ändern wir das Innere zu "TXT_KEY_UNIT_MECH_NEU"
In <UnitArtInfo>ART_DEF_UNIT_MECH</UnitArtInfo> ändern wir das Innere zu "ART_DEF_UNIT_MECH_NEU"
4. Schritt: Der Rest kann unverändert bleiben, da wir uns ja an den V-M-E orientieren wollen. Doch natürlich kannst du
die Baukosten oder die Bewegungsrate usw. beliebig anpassen.
5. Schritt: Wir suchen mit der Suchfunktion diesmal das Wort: unit_mech
Wir suchen solang, bis wir folgendes vor Augen haben:
<Row>
<UnitType>UNIT_MECH</UnitType>
<UnitAIType>UNITAI_ATTACK</UnitAIType>
</Row>
<Row>
<UnitType>UNIT_MECH</UnitType>
<UnitAIType>UNITAI_FAST_ATTACK</UnitAIType>
</Row>
6. Schritt: Diese zwei Bausteine kopieren wir ebenfalls und setzen sie direkt darunter.
Aus den zwei "UNIT_MECH" werden dann aber bei dem kopierten Quelltext ein "UNIT_MECH_NEU"
7. Schritt: Wir suchen erneut nach dem Wort: Unit_mech
und finden dann folgendes:
<Row>
<UnitType>UNIT_MECH</UnitType>
<FlavorType>FLAVOR_OFFENSE</FlavorType>
<Flavor>25</Flavor>
</Row>
<Row>
<UnitType>UNIT_MECH</UnitType>
<FlavorType>FLAVOR_DEFENSE</FlavorType>
<Flavor>15</Flavor>
</Row>
<Row>
<UnitType>UNIT_MECH</UnitType>
<FlavorType>FLAVOR_MOBILE</FlavorType>
<Flavor>6</Flavor>
</Row>
8. Schritt: Wiedereinmal kopieren wir alles, setzen es darunter und benennen "UNIT_MECH" zu "UNIT_MECH_NEU"
9. Schritt: Nochmal bitte das Wort suchen und dann das sehen:
<Row>
<UnitType>UNIT_MECH</UnitType>
<PromotionType>PROMOTION_NO_DEFENSIVE_BONUSES</PromotionType>
</Row>
<Row>
<UnitType>UNIT_MECH</UnitType>
<PromotionType>PROMOTION_CAN_MOVE_AFTER_ATTACKING</PromotionType>
</Row>
10. Schritt: Kopieren und Umbenennen.
Natürlich kannst du der Einheit ganz andere "Promotions" bzw. kostenlose "Beförderungen" geben.
11. Schritt: Nochmal suchen und das finden:
<Row>
<UnitType>UNIT_MECH</UnitType>
<ResourceType>RESOURCE_URANIUM</ResourceType>
</Row>
12. Schritt: Kopieren und Umbenennen. Genauso wie davor kannst du die Resource beliebig ändern oder diesen Baukasten entfernen, damit die Einheit keine Resource benötigt.
13. Abspeichern und die Datei schließen.
_________________________________
Jetzt öffnen wir im selben Ordner die "CIV5UnitClasses.xml" und suchen den Eintrag "unitclass_mech", um das zu sehen:
<Row>
<Type>UNITCLASS_MECH</Type>
<Description>TXT_KEY_UNIT_MECH</Description>
<DefaultUnit>UNIT_MECH</DefaultUnit>
</Row>
Wie zuvor kopieren wir den Eintrag und platzieren ihn darunter.
Aus <DefaultUnit>UNIT_MECH</DefaultUnit> machen wir im Inneren dann "UNIT_MECH_NEU".
Abspeichern und Schließen.
_________________________________________________
So, jetzt haben wir unsre Einheit bürokratisch erstellt. Auch wenn sie nur ein Abklatsch der V-M-E ist und nichts besonderes hat.
Nun muss unsere erstellte Einheit noch eine Textur und ein Model kriegen, damit es ingame überhaupt zu sehen.
Wir gehen dazu in Sid Meier's Civilization 5/Assets/Units/... und öffnen die Datei "Civ5ArtDefines_Units.xml"
Dann suchen wir nach "unit_mech" und finden das:
<!-- UNIT_MECH ********************************************************* -->
<UnitArtInfo>
<Type>ART_DEF_UNIT_MECH</Type>
<Formation>Vehicle</Formation>
<DamageStates>1</DamageStates>
<UnitMemberArt>
<MemberType>ART_DEF_UNIT_MEMBER_MECH</MemberType>
<MemberCount>1</MemberCount>
</UnitMemberArt>
</UnitArtInfo>
1. Schritt: Im Inneren von <Type>ART_DEF_UNIT_MECH</Type> machen "ART_DEF_UNIT_MECH"
2. Schritt: Im Inneren von <MemberType>ART_DEF_UNIT_MEMBER_MECH</MemberType> machen "ART_DEF_MEMBER_MECH_NEU"
3. Schritt: In <MemberCount>1</MemberCount> setzen wir den Wert auf "3", damit 3 Einheiten, anstatt nur eine unterwegs ist.
4. Schritt: Abspeichern und Schließen
__________________________________________________
Jetzt öffnen wir im selben Ordner die Datei "Civ5ArtDefines_UnitMembers.xml" und sehen das sehr ausführliche:
<!-- UNIT_MECH ********************************************************* -->
<UnitMemberArtInfo>
<Type>ART_DEF_UNIT_MEMBER_MECH</Type>
<fScale>0.12</fScale>
<Granny>Assets/Units/Mech/Mech.fxsxml</Granny>
<Combat>
<Defaults>ART_DEF_TEMPLATE_BASE</Defaults>
<fMoveRadius>5.0</fMoveRadius>
<bReformBeforeCombat>1</bReformBeforeCombat>
<bHasShortRangedAttack>1</bHasShortRangedAttack>
<bHasStationaryMelee>1</bHasStationaryMelee>
<fRangedAttackRadius>72.0</fRangedAttackRadius>
<fTargetHeight>12.0</fTargetHeight>
<Weapon>
<Weapon>
<ID>ART_DEF_VEFFECT_MECH_ROCKET_PROJECTILE</ID>
<fVisKillStrengthMin>5.0</fVisKillStrengthMin>
<fVisKillStrengthMax>12.0</fVisKillStrengthMax>
<fProjectileSpeed>5.3</fProjectileSpeed>
<WeaponTypeTag>EXPLOSIVE</WeaponTypeTag>
<WeaponTypeSoundOverrideTag>EXPLOSION20POUND</WeaponTypeSoundOverrideTag>
</Weapon>
<Weapon>
<ID>ART_DEF_VEFFECT_TRAIL_RAILGUN_PROJ</ID>
<fProjectileSpeed>5.3</fProjectileSpeed>
<WeaponTypeTag>EXPLOSIVE</WeaponTypeTag>
<WeaponTypeSoundOverrideTag>RAILGUN</WeaponTypeSoundOverrideTag>
</Weapon>
</Weapon>
<Weapon>
<Usage>Vs_City</Usage>
<fVisKillStrengthMin>5.0</fVisKillStrengthMin>
<fVisKillStrengthMax>12.0</fVisKillStrengthMax>
<fProjectileSpeed>5.3</fProjectileSpeed>
<WeaponTypeTag>EXPLOSIVE</WeaponTypeTag>
<WeaponTypeSoundOverrideTag>EXPLOSION20POUND</WeaponTypeSoundOverrideTag>
</Weapon>
</Combat>
<MaterialTypeTag>METAL</MaterialTypeTag>
<MaterialTypeSoundOverrideTag>METALLRG</MaterialTypeSoundOverrideTag>
</UnitMemberArtInfo>
Den ganzen Kram müssen wir wiedereinmal kopieren und darunter setzen.
1. Schritt: Im Inneren von <Type>ART_DEF_UNIT_MEMBER_MECH</Type> machen wir "ART_DEF_MEMBER_MECH_NEU"
2. Schritt: Im Inneren von <Granny>Assets/Units/Mech/Mech.fxsxml</Granny> packen wir folgendes: "Assets/Units/AdMecInf.fxsxml"
3. Schritt: Jetzt müssen wir die 4 Dateien der runtergeladenen Mod-Einheit in "Assets/Units/..." packen, sodass das Spiel sie finden kann.
______________________________________________
So dann sollte alles klappen. Ich habe leider nicht die Zeit gehabt in die Mod-Datei der Mech-Einheit zu schauen.
Du müssten die Eigenschaften der Einheit selbst ändern....so wie sie dir gefallen soll.