例として一番単純な区域(建造物がないもの)である近郊部の置き換えユニーク区域を作ります。
近郊部の効果に加え、工業地帯に接すると生産力+2の能力を付与します。
(これもすでに公開しているMODで・・・)
ユニークユニットでやったように新しくxmlファイルを作ります。
ファイル名は「NewLeader_District.xml」としてください。作ったらPropertyへの登録をお忘れなく。
内容は近郊部の定義をコピーして書き換えます。
近郊部の定義名は「DISTRICT_NEIGHBORHOOD」です。
<?xml version="1.0" encoding="utf-8"?> <GameInfo> <Types> <Row Type="DISTRICT_hogehoge" Kind="KIND_DISTRICT"/> </Types> <DistrictReplaces> <Row CivUniqueDistrictType="DISTRICT_hogehoge" ReplacesDistrictType="DISTRICT_NEIGHBORHOOD"/> </DistrictReplaces> <Districts> <Row DistrictType="DISTRICT_hogehoge" Name="LOC_DISTRICT_hogehoge_NAME" Description="LOC_DISTRICT_hogehoge_DESCRIPTION" PrereqCivic="CIVIC_URBANIZATION" PlunderType="PLUNDER_GOLD" PlunderAmount="50" AdvisorType="ADVISOR_GENERIC" Cost="54" CostProgressionModel="COST_PROGRESSION_GAME_PROGRESS" CostProgressionParam1="1000" RequiresPlacement="true" RequiresPopulation="false" OnePerCity="false" Aqueduct="false" NoAdjacentCity="false" InternalOnly="false" ZOC="true" CaptureRemovesBuildings="false" CaptureRemovesCityDefenses="false" MilitaryDomain="NO_DOMAIN" Housing="5" CityStrengthModifier="2" TraitType="TRAIT_LEADER_DISTRICT_hogehoge"/> </Districts> <District_Adjacencies> <Row DistrictType="DISTRICT_hogehoge" YieldChangeId="IndustrialZone_Production"/> </District_Adjacencies> <Adjacency_YieldChanges> <Row ID="IndustrialZone_Production" Description="LOC_DISTRICT_INDUSTRIAL_ZONE_PRODUCTION" YieldType="YIELD_PRODUCTION" YieldChange="2" TilesRequired="1" AdjacentDistrict="DISTRICT_INDUSTRIAL_ZONE"/> </Adjacency_YieldChanges> </GameInfo>
Types:区域の親定義
DistrictReplace:何の区域の置き換えにするか
Districts:区域の詳細設定
Name | 区域名。別ファイルに中身を書きます |
Description | 区域の説明。別ファイルに中身を書きます |
PrereqCivic | 解禁社会制度 |
PlunderType | 略奪で得られるボーナス |
PlunderAmount | 略奪時のボーナス量 |
AdvisorType | 助言者設定 |
Cost | 建設コスト |
CostProgressionModel | コストの上昇モデル? |
CostProgressionParam1 | コストの上昇値? |
RequiresPlacement | 建設に領地が必要かどうか。通常はtrueです。(例外で都市だけはfalseになっています) |
RequiresPopulation | 建設に人口が必要かどうか。キャンパスなど一定の人口が必要なものはtrueになっています。 |
OnePerCity | 1都市に1つかどうか。近郊部など無制限に作れる区域はfalseです。 |
Aqueduct | 不明。用水路などがtrueなので真水を供給するかどうか??? |
NoAdjacentCity | 都心に隣接できるかどうか。falseだと隣接できます。兵営はここがtrueになっています。 |
InternalOnly | わかりません・・・ |
ZOC | ZOCの発生の有無。trueで発生。 |
CaptureRemovesBuildings | trueの場合、この区域のユニットは直接攻撃できない。兵営と都心がtrueになっています。 |
CaptureRemovesCityDefenses | 不明ですがおそらく都心専用。他はfalseになっています。 |
MilitaryDomain | 区域を設置したタイルでの戦闘時になんのドメインに所属することになるか??? |
Housing | 住宅への加算値 |
TraitType | 所属特性(ユニークにするなら必須) |
District_Adjacencies:区域の隣接ボーナスの親定義
Adjacency_YieldChanges:区域の隣接ボーナスの詳細設定
ID | District_Adjacenciesで作成したIDを指定 |
Description | 隣接ボーナスの説明 |
YieldType | 得られるボーナスの種類 |
YieldChange | 得られるボーナスの値 |
TilesRequired | ボーナスを得るために必要なタイルの数 |
AdjacentDistrict | ボーナスを得るための隣接区域 |
区域のアイコンに必要なのは256,128,80,50,38,32のサイズのものになります。
ですが・・・
今回は既存の近郊部のアイコンを使いまわす方法を記載します。
使いまわす場合はIconDefinitionsへ使いたいアイコンの記述をバニラ(区域の場合はIcons_Districts.xml)からコピーしてきて、Nameを書き変えるだけです。
・ ・ ・ <Row Name="ICON_DISTRICT_hogehoge" Atlas="ICON_ATLAS_DISTRICTS" Index="10"/> </IconDefinitions> </GameData>