こんにちは。
第1回は新規国家の追加についてです。
少しずつ複雑になりますが順を追って説明しますので大丈夫です。
前回をご覧になっていない方はこちらをご覧下さい。
サイトリニューアル前に途中まで投稿していた内容です。 今更感がありますが、改めてHoI4のMOD制作方法を解説します。 動作環境 この記事は以下の条件で執筆しています。 Windows/Steam バージョン:[…]
動作環境
この記事は以下の条件で執筆しています。
- Windows/Steam
- バージョン:1.12.14
- DLC
- Together for Victory
- Death or Dishonor
- Waking the Tiger
- Man The Guns
- La Résistance
- Battle for the Bosporus
- No Step Back
- By Blood Alone
新規国家の追加
国別ファイルの作成
※当サイトでは国別ファイルと呼ばせて頂きます。
これは汎用の政治顧問や国家指導者をその地域に沿った(アジアの国ならアジア人風の)ものが出るようにしたり、マップ上で表示される国家の色を設定するファイルです。
- MODフォルダの中にcommonフォルダを作成する。
※…/common - commonフォルダの中にcountriesフォルダを作成する。
※…/common/countries - countriesフォルダの中に国別ファイルを作成する。
※…/common/countries/sarawak.txt※追加する国家名などで大丈夫です。
※他のファイルをコピーして編集しても大丈夫です。 - ファイルを編集する。
graphical_culture = commonwealth_gfx
graphical_culture_2d = commonwealth_2d
項目 | 設定値 | コメント |
---|---|---|
graphical_culture | eastern_european_gfx | 東ヨーロッパ |
western_european_gfx | 西ヨーロッパ | |
middle_eastern_gfx | 中東 | |
southamerican_gfx | 南米 | |
asian_gfx | アジア | |
african_gfx | アフリカ | |
commonwealth_gfx | 英連邦 | |
graphical_culture_2d | eastern_european_2d | 東ヨーロッパ |
western_european_2d | 西ヨーロッパ | |
middle_eastern_2d | 中東 | |
southamerican_2d | 南米 | |
asian_2d | アジア | |
african_2d | アフリカ | |
commonwealth_2d | 英連邦 |
国家タグの追加
国家タグとはアルファベット3文字(ドイツならGER、日本ならJAP)で各国家ごとに定義されており、国家方針やイベントの紐付けなどあらゆる設定に幅広く使用されます。
- commonフォルダの中にcountry_tagsフォルダを作成する。
※…/common/country_tags - country_tagsフォルダの中に01_countries.txtファイルを作成する。
※…/common/country_tags/01_countries.txt
※先頭の番号は00以外なら(他のMODと競合しない限り)大丈夫です。 - ファイルを編集する。
下記を参考に記述して下さい。
※先頭のSARが国家タグです。既存の国家タグと重複しないように注意して下さい。
※countries/の後ろ側は国別ファイルを指定して下さい。
SAR = "countries/sarawak.txt"
色の設定
マップ上に表示される色を設定しましょう。
オリジナルファイルでは国別ファイルとcolorsファイルの両方に色を定義していますので本講座でもそれに準拠しますが、国別ファイルに記述しなくてもcolorsファイルだけで色は設定できます。
※colorsファイルで上書きされます。
graphical_culture = commonwealth_gfx
graphical_culture_2d = commonwealth_2d
color = { 220 190 75 }
colorsファイルにも色の設定を記述しましょう。
オリジナルファイルをコピーして末尾など分かりやすい場所に記述することをおススメします。
- countriesフォルダの中にcolorsファイルをコピーする。
※…/common/countries/colors.txt - ファイルを編集する。
SAR = {
color = rgb { 220 190 75 }
color_ui = rgb { 255 255 255 }
}
項目 | 設定値 | コメント |
---|---|---|
color | RGB(Red Green Blue) | 白色なら{ 255 255 255 } |
color_ui | RGB(Red Green Blue) | 詳細不明 |
国家ファイルの作成
※当サイトでは国家ファイルと呼ばせて頂きます。
首都を始め、初期研究やイデオロギーなどを設定するのが国家ファイルです。
- Modフォルダの中にhistoryフォルダを作成する。
※…/history - historyフォルダの中にcountriesフォルダを作成する。
※…/history/countries - countriesフォルダの中に国家ファイルを作成する。
※…/history/countries/SAR – sarawak.txt
※ファイル名の先頭は国家タグです。
※他のファイルをコピーして編集しても大丈夫です。 - ファイルを編集する。
capital = 333
oob = "SAR_1936"
set_research_slots = 2
set_stability = 0.5
set_war_support = 0.5
set_convoys = 10
set_technology = {
infantry_weapons = 1
}
set_politics = {
ruling_party = neutrality
last_election = "1917.5.17"
election_frequency = 48
elections_allowed = no
}
set_popularities = {
democratic = 0
fascism = 0
communism = 0
neutrality = 100
}
項目 | 設定値 | コメント | |
---|---|---|---|
capital | 州(ステート)ID | 首都に設定する州 | |
oob | ユニットファイル | 初期のユニット | |
set_research_slots | 0~X | 初期の研究スロット | |
set_stability | 0~1(0.5で50%、1で100%) | 初期の安定度 | |
set_war_support | 0~1(0.5で50%、1で100%) | 初期の戦争協力度 | |
set_convoys | 0~X | 初期の輸送船 | |
set_technology | 技術 | ゲーム開始時に研究が完了している技術 | |
set_politics | ruling_party | democratic | 民主主義 |
fascism | ファシズム | ||
communism | 共産主義 | ||
neutrality | 中道主義 | ||
last_election | YYYY.MM.DD | 最後に行った選挙年月日 | |
election_frequency | XX(12で1年、48で4年) | 選挙が行われる間隔 | |
elections_allowed | yes/no | 選挙が行われるかどうか | |
set_popularities | democratic | 0~100(4つ合計で100) | 各イデオロギーの支持率 |
fascism | |||
communism | |||
neutrality |
国家指導者の追加
追加するには「国家ファイルに記述する方法」と「charactersファイルの定義を呼び出す方法」の2種類があります。
前者は簡単に追加できるという点で中小の国家、後者は管理のしやすさという点で大国におススメです。
国家ファイルに記述する方法
下記を参考に記述して下さい。
create_country_leader = {
name = "Vyner Brooke"
desc = "POLITICS_Vyner_Brooke_DESC"
picture = "Portrait_Sawarak_Vyner_Brooke.dds"
expire = "1965.1.1"
ideology = despotism
traits = { }
}
項目 | 設定値 | コメント |
---|---|---|
name | XXXX | 国家指導者の名前 |
desc | XXXX | 国家指導者の説明(マウスを重ねると表示される) ※別途localisationファイルに記述が必要 |
picture(portrait_path) | 画像(ポートレート)ファイル | 他の(自分の国家タグと違う)フォルダに入っている画像を使用する場合はportrait_pathで記述 |
expire | YYYY.MM.DD | 国家指導者が登場しなくなる年月日 |
ideology | XXXX | fascism_ideology、despotismなど ※…/common/ideologies/00_ideologies.txtを参照 |
traits | XXXX | dictator、warrior_codeなど ※…/common/country_leader/00_traits.txtを参照 |
画像(ポートレート)ファイルは156×210のddsファイルです。wikipediaなどからパブリックドメインの画像を用意し、ペイントなどでサイズを加工した後、フリーソフトやWebサービスを利用してddsファイルに変換しましょう。画像が準備できたらModフォルダにgfxフォルダ、その中にleadersフォルダを作成し、画像を使用する国家の国家タグでフォルダを作成します。例えばドイツで使用したければ、…/gfx/leaders/GERとなるようにフォルダを作成し、そのGERフォルダにddsファイルを追加します。
charactersファイルの定義を呼び出す方法
characersファイルに定義した国家指導者や将軍は、「recruit_character」というコードで簡単に呼び出すことが出来ます。一つの名前で国家指導者や将軍、閣僚としても登録でき、国家方針やイベントなどでも呼び出すことが出来るのでコードが煩雑化せずに管理しやすくなります。
- commonフォルダの中にcharactersフォルダを作成する。
※…/common/characters - charactersフォルダの中に国家タグ名のファイルを作成する。
※…/common/characters/SAR.txt - ファイルを編集する。
characters = {
SAR_vyner_brooke = {
name = "Vyner Brooke"
portraits = {
civilian = {
large = GFX_portrait_Vyner_Brooke
}
}
country_leader = {
ideology = despotism
expire = "1965.1.1.1"
traits = { }
id = -1
}
}
}
項目 | 設定値 | コメント |
---|---|---|
name | XXXX | 国家指導者の名前 |
portraits | 画像(ポートレート)ファイル | interfaceフォルダにて定義 ※civilian(army or navy):リーダーのタイプ(今回は国家指導者なのでcivilian) ※large(small):画像サイズ(閣僚などの小さいサイズはsmall) |
expire | YYYY.MM.DD | 国家指導者が登場しなくなる年月日 |
ideology | XXXX | fascism_ideology、despotismなど ※…/common/ideologies/00_ideologies.txtを参照 |
traits | XXXX | dictator、warrior_codeなど ※…/common/country_leader/00_traits.txtを参照 |
画像ファイルを登録しましょう。
interfaceフォルダ内に登録しておけば、簡単に呼び出すことが出来るので煩雑化しません。
- MODフォルダの中にinterfaceフォルダを作成する。
※…/interface/ - interfaceフォルダの中に画像登録用のファイルを作成する。
※…/interface/SAR_leader_portraits.gfx
※ファイル名は何でも大丈夫ですが拡張子に注意して下さい。 - ファイルを編集する。
spriteTypes = {
spriteType = {
name = "GFX_portrait_Vyner_Brooke"
texturefile = "gfx/leaders/SAR/Portrait_Sawarak_Vyner_Brooke.dds"
}
}
それではcharacersファイルに定義した国家指導者を呼び出しましょう。
以下を参考に国家ファイルに記述して下さい。
recruit_character = SAR_vyner_brooke
州(ステート)ファイルの編集
人口、資源、建築物、領有国、中核州、勝利点などを設定するのが州ファイルです。
1.12.14現在は908の州に分割されています。新しく増やすことも出来ますが、今回は編集のみ行います。
- historyフォルダの中にstatesフォルダを作成する。
※…/history/states - 編集するオリジナルファイルをコピーする。
※本MODの場合333-British Borneoをコピーします。
※…/history/states/333-British Borneo.txt - ファイルを編集する。
state = {
id = 333
name = "STATE_333"
manpower = 889800
resources = {
rubber = 40 # was: 72
oil = 12 # was: 18
}
state_category = rural
history = {
owner = SAR
add_core_of = SAR
victory_points = {
7371 1
}
victory_points = {
1208 1
}
buildings = {
infrastructure = 2
industrial_complex = 1
arms_factory = 1
air_base = 1
1208 = {
naval_base = 1
}
7371 = {
naval_base = 2
}
}
}
provinces = {
1208 1306 1335 2117 4216 4282 4338 4396 7358 7371 7387 7443 8091 10143 10199 10212 10240 10269 10285 12171 12186 12228 12283 12905
}
local_supplies = 0.0
}
項目 | 設定値 | コメント |
---|---|---|
id | XXXX | ステートID※変更する必要はありません |
name | XXXX | ステート名※localisationで定義します |
manpower | XXXX | ステートの人口 |
resources | oil(石油) aluminium(アルミニウム) rubber(ゴム) tungsten(タングステン) steel(鋼鉄) chromium(クロム) |
ステートの資源 |
state_category | wasteland(荒れ地) city(都市化した地域) large_city(高密度に都市化した地域) metropolis(大都市化した地域) megalopolis(巨大都市化した地域) town(開発済みの牧歌的地域) large_town(低密度の都市化地域) rural(牧歌的地域) enclave(飛び地) small_island(小島) tiny_island(極小島) pastoral(牧畜地域) |
ステートの種類 |
owner | 国家タグ | ステートの領有国 |
add_core_of | 国家タグ | ステートを中核州とする国家 |
add_claim_by | 国家タグ | ステートを請求している国家 |
set_demilitarized_zone | yes/no | ステートが非武装地帯かどうか |
victory_points | プロヴィンスIDと勝利点 | |
infrastructure | 0~1 | ステートのインフラ |
industrial_complex | 1~X | 民需工場 |
arms_factory | 1~X | 軍需工場 |
dockyard | 1~X | 海軍造船所 |
air_base | 1~10 | 航空基地 |
naval_base | 1~10 | 海軍基地 |
bunker | 1~10 | 陸上要塞 |
coastal_bunker | 1~10 | 沿岸要塞 |
anti_air_building | 1~5 | 対空砲 |
それではゲームを起動して現在の状態を確認してみましょう。
新しい国家が追加されて、指導者も表示されていますね。
国名や政党名の設定
先ほどの画像をご覧下さい。本来はマップ上に表示されている国名が表示されていないことが分かります。右枠の与党も「非同盟/中道主義」と表示されていて、何だか味気ないですよね?これはlocalisationファイルで設定することができます。
※Kaiserreichなどは国家毎にlocalisationファイルを作成していますが、本講座ではオリジナルファイルを基に解説します。
- MODフォルダの中にlocalisationフォルダを作成する。
※…/localisation - localisationフォルダの中にjapaneseフォルダを作成する。
※…/localisation/japanese - japaneseフォルダの中に国名ファイルを作成する。
※…/localisation/japanese/SAR_countries_l_japanese.yml
※XXXX_countries_l_japanese.ymlなど。 - japaneseフォルダの中に政党ファイルを作成する。
※…/localisation/japanese/SAR_parties_l_japanese.yml
※XXXX_parties_l_japanese.ymlなど。
- ファイルを編集する。
では国名ファイルから編集しましょう。
※先頭のl_japanese:は必須です。
※国家タグ_イデオロギー:0 “XXXX”と記述します。
l_japanese:
SAR_fascism:0 "サラワク国"
SAR_fascism_DEF:0 "サラワク国"
SAR_fascism_ADJ:0 "サラワク"
SAR_democratic:0 "サラワク共和国"
SAR_democratic_DEF:0 "サラワク共和国"
SAR_democratic_ADJ:0 "サラワク"
SAR_neutrality:0 "サラワク王国"
SAR_neutrality_DEF:0 "サラワク王国"
SAR_neutrality_ADJ:0 "サラワク"
SAR_communism:0 "サラワク人民共和国"
SAR_communism_DEF:0 "サラワク人民共和国"
SAR_communism_ADJ:0 "サラワク"
次は政党ファイルを編集しましょう。
※先頭のl_japanese:は必須です。
※国家タグ_イデオロギー_party:0 “XXXX”と記述します。
※party_longは省略しない正式名称です。省略して記述することもできます。
l_japanese:
SAR_neutrality_party:0 "ブルック朝"
SAR_neutrality_party_long:0 "ブルック王朝"
それでは確認してみましょう。
無事に表示されました。
国旗の作成と設定
国旗を表示させるには最低限1種類が必要です。ただ1種類だけだと民主主義から共産主義に変わった場合に国旗が変更されないなどのデメリットがあります。
例えば下記の画像では、XXX.tgaという国家タグのみのtgaファイルと民主主義と共産主義用のtgaファイルを準備した場合の表示され方です。この場合、中道主義から共産主義に変わったら国旗が変更されますが、ファシズムなら変更されません。
下記のように各イデオロギー毎に国旗ファイルを準備していれば、その都度イデオロギーに沿った国旗が表示されます。
では国旗を作成してみましょう。こちらも国家指導者の画像と同様にwikipediaなどからパブリックドメインの画像を用意し、ペイントなどでサイズを加工したのち、フリーソフトやWebサービスを利用してtgaファイルに変換しましょう。画像が準備できたらgfxフォルダにflagsフォルダ、flagsフォルダの中にmediumフォルダ、smallフォルダを作成し、その中に画像を移動しましょう。国旗ファイルは1種類毎に大中小の三つが必要です。イデオロギー毎に国旗を作成する場合は4×3の12ファイル必要です。
- gfxフォルダの中にflagsフォルダを作成する。
※…/gfx/flags - flagsフォルダの中に、mediumフォルダ、smallフォルダを作成する。
※…/gfx/flags/medium
※…/gfx/flags/small - 準備した画像を各フォルダに移動する。
下記のように画像を配置します。
- 大:82×52※flagsフォルダへ
- 中:41×26※mediumフォルダへ
- 小:10×7※smallフォルダへ
それでは確認してみましょう。
下記のように表示されていれば大丈夫です。
最後に
第1回はこれで終了です。
皆さんは無事に国家を追加出来ましたか?
もしエラーが出たりした場合はファイル名や拡張子、コード内のカッコ{}が抜けていないかなど確認してみて下さい。