文明6部門創建教程 文明6創建魔法兵種全流程詳解
文明6部門修改 文明6創建一個魔法兵種全流程詳解
創建部門並設定屬性
首先打開Sid Meier's Civilization VI\Base\Assets\Gameplay\Data下的Units.xml
下面所有紅字部分都是我們需要添加的代碼,就不再一一指明了。
首先我們再<Types>下創建一個新部門wizard
搜索<Types>
<Types>
<Row Type="UNIT_WIZARD" Kind="KIND_UNIT"/>
<!-- Civilian-->
<Row Type="UNIT_SETTLER" Kind="KIND_UNIT"/>
<Row Type="UNIT_BUILDER" Kind="KIND_UNIT"/>
<Row Type="UNIT_TRADER" Kind="KIND_UNIT"/>
<Row Type="UNIT_MISSIONARY" Kind="KIND_UNIT"/>
<Row Type="UNIT_APOSTLE" Kind="KIND_UNIT"/>
然後寫入AI
搜索<UnitAiInfos>,這裡添加的是和普通的遠程部門一樣的AI。
<UnitAiInfos>
<Row UnitType="UNIT_WIZARD" AiType="UNITAI_COMBAT"/>
<Row UnitType="UNIT_WIZARD" AiType="UNITTYPE_RANGED"/>
<Row UnitType="UNIT_WIZARD" AiType="UNITTYPE_LAND_COMBAT"/>
<!-- Civilian-->
<Row UnitType="UNIT_SETTLER" AiType="UNITAI_SETTLE"/>
<Row UnitType="UNIT_SETTLER" AiType="UNITTYPE_CIVILIAN"/>
<Row UnitType="UNIT_BUILDER" AiType="UNITAI_BUILD"/>
<Row UnitType="UNIT_BUILDER" AiType="UNITTYPE_CIVILIAN"/>
<Row UnitType="UNIT_TRADER" AiType="UNITTYPE_CIVILIAN"/>
然後選擇替代兵種
搜索<UnitReplaces>,這裡我沒有添加任何代碼,因為不打算用它來替代任何部門。有需要的同學按照下面的格式添加,藍色字體部分為特色部門,綠色字體部分為需要替代的普通部門。
<UnitReplaces>
<Row CivUniqueUnitType="UNIT_GREEK_HOPLITE" ReplacesUnitType="UNIT_SPEARMAN"/>
<Row CivUniqueUnitType="UNIT_EGYPTIAN_CHARIOT_ARCHER"
ReplacesUnitType="UNIT_HEAVY_CHARIOT"/>
<Row CivUniqueUnitType="UNIT_SPANISH_CONQUISTADOR" ReplacesUnitType="UNIT_MUSKETMAN"/>
<Row CivUniqueUnitType="UNIT_ROMAN_LEGION" ReplacesUnitType="UNIT_SWORDSMAN"/>
添加部門類型
搜索<TypeTags>
<TypeTags>
<Row Type="UNIT_WIZARD" Tag="CLASS_RANGED"/>
<Row Type="UNIT_BARBARIAN_HORSEMAN" Tag="CLASS_LIGHT_CAVALRY"/>
<Row Type="UNIT_BARBARIAN_HORSE_ARCHER" Tag="CLASS_RANGED_CAVALRY"/>
<Row Type="UNIT_SCOUT" Tag="CLASS_RECON"/>
<Row Type="UNIT_SCOUT" Tag="CLASS_REVEAL_STEALTH"/>
<Row Type="UNIT_RANGER" Tag="CLASS_RECON"/>
<Row Type="UNIT_WARRIOR" Tag="CLASS_MELEE"/>
<Row Type="UNIT_SWORDSMAN" Tag="CLASS_MELEE"/>
<Row Type="UNIT_MUSKETMAN" Tag="CLASS_MELEE"/>
然後就是添加具體的部門數據了,搜索<Units>
<Units>
<Row UnitType="UNIT_WIZARD" BaseMoves="2" Cost="50" AdvisorType="ADVISOR_CONQUEST"
BaseSightRange="2" ZoneOfControl="false" Domain="DOMAIN_LAND"
FormationClass="FORMATION_CLASS_LAND_COMBAT" Name="LOC_UNIT_WIZARD_NAME"
Description="LOC_UNIT_WIZARD_DESCRIPTION" PurchaseYield="YIELD_GOLD"
PromotionClass="ROMOTION_CLASS_RANGED" Maintenance="1" Combat="15" RangedCombat="25" Range="2"
PrereqTech="TECH_ARCHERY" MandatoryObsoleteTech="TECH_BALLISTICS"/>
<Row UnitType="UNIT_SETTLER" BaseMoves="2" Cost="80" AdvisorType="ADVISOR_GENERIC"
BaseSightRange="3" ZoneOfControl="false" Domain="DOMAIN_LAND"
FormationClass="FORMATION_CLASS_CIVILIAN" FoundCity="true" PopulationCost="1" PrereqPopulation="2"
Name="LOC_UNIT_SETTLER_NAME" Description="LOC_UNIT_SETTLER_DESCRIPTION" CanCapture="False"
CostProgressionModel="COST_PROGRESSION_PREVIOUS_COPIES" CostProgressionParam1="20"
PurchaseYield="YIELD_GOLD" PseudoYieldType="SEUDOYIELD_UNIT_SETTLER"/>
<Row UnitType="UNIT_BUILDER" BaseMoves="2" Cost="50" AdvisorType="ADVISOR_GENERIC"
BaseSightRange="2" ZoneOfControl="false" Domain="DOMAIN_LAND"
FormationClass="FORMATION_CLASS_CIVILIAN" Name="LOC_UNIT_BUILDER_NAME"
Description="LOC_UNIT_BUILDER_DESCRIPTION" CanCapture="False"
CostProgressionModel="COST_PROGRESSION_PREVIOUS_COPIES" CostProgressionParam1="4"
PurchaseYield="YIELD_GOLD" BuildCharges="3"/>
<Row UnitType="UNIT_TRADER" BaseMoves="2" IgnoreMoves="true" Cost="40"
AdvisorType="ADVISOR_GENERIC" BaseSightRange="2" ZoneOfControl="false" Domain="DOMAIN_LAND"
FormationClass="FORMATION_CLASS_CIVILIAN" Name="LOC_UNIT_TRADER_NAME"
Description="LOC_UNIT_TRADER_DESCRIPTION" CanCapture="False"
CostProgressionModel="COST_PROGRESSION_GAME_PROGRESS" CostProgressionParam1="400"
PurchaseYield="YIELD_GOLD" PseudoYieldType="SEUDOYIELD_UNIT_TRADE" MakeTradeRoute="true" PrereqCivic="CIVIC_FOREIGN_TRADE"/>
這裡的數據比較多,來一一說明一下。
UnitType="UNIT_WIZARD"這裡不用多說,這行代碼是哪個部門就靠它來識別了
BaseMoves="2"移動力為2
Cost="50"生產消耗的錘子為50
AdvisorType="ADVISOR_CONQUEST"這裡應該影響的是顧問建議的類型,沒啥用
BaseSightRange="2"視野範圍為2
ZoneOfControl="false"是否有ZOC,也就是遊戲裡走到近戰部門邊上會不能繼續移動,遠程部門一般沒有ZOC功能。如果需要
帶有ZOC則把"false"改成“ture”
Domain="DOMAIN_LAND"表示這是一個陸地部門
FormationClass="FORMATION_CLASS_LAND_COMBAT"表示這是一個陸軍戰鬥部門
Name="LOC_UNIT_WIZARD_NAME" 部門名稱,可以在對應的語言翻譯檔案裡關聯,比如漢化就是需要對應這個名稱
Description="LOC_UNIT_WIZARD_DESCRIPTION" 部門簡介,作用同上,建造列表上面的說明。
PurchaseYield="YIELD_GOLD"可以用金錢購買的意思,需要需要改成用信仰購買的話把"YIELD_GOLD"改成"YIELD_FAITH"
PromotionClass="ROMOTION_CLASS_RANGED"部門晉升類型,就是部門更新後可以選擇的那個列表,這裡是遠程部門和弓箭手一樣的類型。
Maintenance="1"維護費為1
Combat="15" 部門的戰鬥力為15,對於遠程部門來講就是防禦力,近戰部門進攻防禦都靠他
RangedCombat="25"遠程攻擊力位25
Range="2" 射程2,一般來講只有遠程部門需要它
PrereqTech="TECH_ARCHERY"前提科技弓箭,為啥?因為這段文字完全是從弓箭手那裡複製過來的。。。不需要的可以直接刪除前提科技則開局即可建造
MandatoryObsoleteTech="TECH_BALLISTICS"過時科技,同上
如需要添加為某個文明的特色部門,則需要在加上TraitType="XXXXX",這裡的XXXX指的是對應文明的或者領袖的特性,不是讓你寫5個X,當然你也可以完全寫個新的特性然後加到某個文明、城邦甚至小野都可以。
如需要添加需求的資源類型,則需要在裡面機上StrategicResource="XXXXX"同上這裡不是讓你寫5個X,而是某種資源的代碼...不寫則表示不需要戰略資源。
接著添加部門更新資訊,搜索<UnitUpgrades>,這裡是更新成弩手。。。需要更新成別的兵種可以DIY
<UnitUpgrades>
<Row Unit="UNIT_WIZARD" UpgradeUnit="UNIT_CROSSBOWMAN"/>
<!--Recon-->
<Row Unit="UNIT_SCOUT" UpgradeUnit="UNIT_RANGER"/>
<!--Melee-->
<Row Unit="UNIT_WARRIOR" UpgradeUnit="UNIT_SWORDSMAN"/>
<Row Unit="UNIT_SWORDSMAN" UpgradeUnit="UNIT_MUSKETMAN"/>
<Row Unit="UNIT_MUSKETMAN" UpgradeUnit="UNIT_INFANTRY"/>
<Row Unit="UNIT_SPEARMAN" UpgradeUnit="UNIT_PIKEMAN"/>
<Row Unit="UNIT_PIKEMAN" UpgradeUnit="UNIT_AT_CREW"/>
如果需要添加建築資訊,比如需要寺廟才能建造,搜索<Unit_BuildingPrereqs>
<Unit_BuildingPrereqs>
<Row Unit="UNIT_WIZARD" PrereqBuilding="BUILDING_TEMPLE"/>
<Row Unit="UNIT_MISSIONARY" PrereqBuilding="BUILDING_SHRINE"/>
<Row Unit="UNIT_APOSTLE" PrereqBuilding="BUILDING_TEMPLE"/>
<Row Unit="UNIT_APOSTLE" PrereqBuilding="BUILDING_STAVE_CHURCH"/>
<Row Unit="UNIT_INQUISITOR" PrereqBuilding="BUILDING_TEMPLE"/>
<Row Unit="UNIT_INQUISITOR" PrereqBuilding="BUILDING_STAVE_CHURCH"/>
<Row Unit="UNIT_MILITARY_ENGINEER" PrereqBuilding="BUILDING_ARMORY"/>
<Row Unit="UNIT_ARCHAEOLOGIST" PrereqBuilding="BUILDING_MUSEUM_ARTIFACT" NumSupported="1"/>
</Unit_BuildingPrereqs>
到這裡units.xml就修改完了,這個時候這個部門已經存在於你的遊戲裡了,只是還沒有制定模型、圖示、對應的漢化部門名稱。所以我們繼續
下面是找到D:\Sid Meier's Civilization VI\Base\Assets\Text\Translations,如果你需要改簡體中文的,打開Vanilla_zh_Hans_CN.xml,其他語言請打開對應檔案
<GameData>
<LocalizedText>
<Replace Tag="LOC_UNIT_WIZARD_NAME" Language="zh_Hans_CN">
<Text>魔法師</Text>
</Replace>
<Replace Tag="LOC_UNIT_WIZARD_DESCRIPTION" Language="zh_Hans_CN">
<Text>用魔法戰鬥的遠程部門</Text>
</Replace>
<Replace Tag="LOC_BUILDING_TLACHTLI_NAME" Language="zh_Hans_CN">
<Text>蹴球場</Text>
</Replace>
<Replace Tag="LOC_BUILDING_HUEY_TEOCALLI_NAME" Language="zh_Hans_CN">
<Text>休伊神廟</Text>
</Replace>
想改成什麽名字可以自行替換。