今回は前回公開したMOD「Japan Political Leaders」のメイキング。
開発の動機
そもそもなぜこのMODを作ろうと思ったかというと、こちらの記事の最後にあるように、日本で与党をファシズム政党から変更するとランダム生成指導者になってしまうというのが始まりでした。
その後「Japan Political Fix」というMODをご紹介しましたが、ポートレートが名前と異なる人物のものだったりと少し気になるところがあったため、「これはもう自分で作ってしまったほうが早いかも」と、以前ご紹介した改造方法を元に制作したのが「Japan Political Leaders [JP]」です。
ファイルを書き換える前に
ファイルを書き換える前に、HoI4ランチャーの右上「Mod tools」→「Create Mod」からMODを入れるフォルダと.modファイルを生成しておきましょう。上の画像はHoI4ではなく「Stellaris」のものですが、ボタンの配置や機能はまったく同じです。
これについては、MODを作ろう!「Stellaris」編 第2回をご覧ください。
政治指導者の追加
政治指導者の追加はとても簡単。改造するファイルは、(SteamのHoI4のフォルダ)/history/countriesフォルダ内の、「JAP – Japan.txt」というファイル。これをMOD用フォルダ内に新たに作成したhistory/countriesフォルダにコピーし、create_country_leaderという部分を探してここを書き換えればOKです。
- name:指導者の名称。日本語化MODではここをアルファベットのままにしているのでこのMODでもアルファベット表記ですが、日本語も問題ないようです。
- desc:指導者についての説明文。デフォルトでは設定されていないため、MODでも変更していません。
- picture:指導者のポートレートとして表示する画像ファイルのファイル名を記入します。画像ファイルはgfx/leaders/JAPにあります。
- expire:指導者が登場しなくなる日付。戦争中に死亡した指導者を表現するためのもののようです。登場する日付を設定するものもありそうですが、そちらは不明。
- ideology:指導者がどのイデオロギーの指導者であるかを設定します。以下のもの以外にもありますが、使われていない様子。
- centrism:中立
- liberalism:民主主義
- facism_ideology:ファシズム
- lenism:共産主義
- traits:指導者の特性。設定されていない指導者もかなり多いので、MODでは全員設定していません。
ポートレートの追加
これで指導者は追加できましたが、ポートレートはおそらくランダム生成になってしまうので、ポートレート用の画像を追加しましょう。
このMODではすべてウィキメディア・コモンズの画像を使用しています。これを156×210の大きさに加工し、.ddsファイルとしてgfx/leaders/JAPに入れておきます。ファイル名はなんでも問題ないようですが、「JAP – Japan.txt」のpictureで指定したファイル名と揃える必要があります。
.ddsファイルはペイントでは扱えないファイルですが、Paint.netという画像編集ソフトではこの形式で保存することができます(HoI4の指揮官のポートレート画像も.dds形式ですが、こちらはなぜか開けません。が、指揮官が設定されていないときの画像は開けたりします。このあたりの挙動はよくわかりません)。
20:00追記:コメントにてmipmapという情報がファイルに含まれているかいないかの違いという情報をいただきました。指揮官が設定されていないときの画像には設定されているが、ポートレート画像には設定されておらず、これが原因で読み込めないとのこと。調べたかぎりでは、Paint.netやGIMPではこのあたりをフォローしていないようで、開けないようです。
ここまでくれば、立派に政治指導者が追加できているはずです。
昭和天皇の国民精神化
国民精神の追加は少し面倒です。まず(SteamのHoI4のフォルダ)/common/ideasフォルダ内の、「japan.txt」というファイルをMODフォルダの同じフォルダ階層にコピーします。あとは冒頭に国民精神の記述があるので、ここに記述を書き足します。
このMODではbritain.txtのジョージ5世の記述をコピペし、国家タグなどを書き換えています。
- allowed:この国民精神が利用できる条件を指定するようです。ここでは国家が日本であることを指定しています。
- allowed_civil_war:内戦時にこの国民精神がどこにつくのかを指定しているようです。詳しくは不明。
- removal_cost:除去に必要な政治力。国民精神なので-1と無効化されています。(コメントにて教えていただきました。国民精神はシステム上、政府顧問などと同じ扱いであるため、こうした数値が設定されているとのこと。ありがとうございます)
- traits:国民精神の効果として決まりきったものはtraitsとして記述されるようです。
さらに、history/countriesフォルダ内の、「JAP – Japan.txt」の冒頭に36年スタート時点での国民精神を記載するところがあるので、ここにも追加する国民精神のラベルを記載すればOK。
localisationファイルの記載
次に、localisationフォルダ内の「ideas_l_english.yml」というファイルに国民精神の名称と説明文が記載されているので、ここに設定したラベル(ここでは「hirohito」)を追加し、名称と説明文を記載します。
しかしながら、MODでは前回のコメント欄で教えていただいたreplaceフォルダを使った差分ファイルを追加する方法で記載を追加しています。これは必要な部分のみ記述した差分ファイルをlocalisation/replaceに配置することで、優先的にreplaceフォルダ内の記載を反映させることができるというものです。
2016/12/18追記:新たに追加するラベルしかないので、このファイルをreplaceフォルダに入れる必要は実はありません……。
この方法、とても簡単で更新もしやすく、MOD制作者としては非常にありがたいです。ご紹介いただいた方、本当にありがとうございました。
画像の指定
次に、国民精神としてのアイコン画像を指定します。ゲームフォルダのinterfaceフォルダ内にある「ideas.gfx」というファイルをMODの同じファイル階層にコピーし、この中に上のような記述を追加します。.gfxというあまり見ない拡張子ですが、テキストファイルです。
2016/12/18追記:ideas.gfxでなくとも、.gfxという拡張子で書式さえ合っていればちゃんと動くことが確認できました。したがってideas.gfxを直接書き換えるのではなく、MOD固有の.gfxファイルを用意して書式さえ合わせれば問題なく動作します。
nameでGFX_idea_xxxと指定していますが、このxxxの部分が国民精神のラベルになっていればうまくいくようです。MODではGFX_idea_hirohitoと記載しています。
texturefileが国民精神のアイコンのパスで、この後追加するアイコンファイルのパスと一致させる必要があります。
アイコンの追加
最後に「ideas.gfx」に記載したパスと同じようにファイル名を設定し、アイコン画像を追加します。
私の場合は昭和天皇のポートレートをうまく加工できなかったので、またもやウィキメディア・コモンズから引っ張ってきた菊花紋章で代用しています。アイコンのサイズは色々あるようですが、このファイルは60×68です。
ここまでくれば、昭和天皇が国民精神として追加されているはずです。
政党名・国号の変更
政党名と国号の変更は、localisationファイルの変更だけで終わりです。localisationフォルダ内の「countries_l_english.yml」と「parties_l_english.yml」の中に書き足せばおしまい。
MODではこの2つもreplaceフォルダを使って差分で変更しています。
おまけ:松井石根将軍のダブりの解消
2016/12/16追記:松井石根将軍のダブりはv1.3.0までにバニラで解決されています。
松井石根将軍がダブっているので、MODでは大将のほうを削除しています。これはhistory/countriesフォルダ内の「JAP – Japan.txt」に指揮官の記載があり、ここに松井石根が2人いることで発生していますので、片方を削除すればOKです。
ご紹介したように、「Japan Political Leaders [JP]」ではあまり難しい変更は行っていません。作った印象では「Stellaris」よりもかなりいじりやすく感じました。
このMODは「Historical Portraits」というポートレートをすべて白黒写真にするMODの併用をおすすめしていましたが、なぜか東久邇宮稔彦王のポートレートが白黒写真にならないので、この部分も修正してしまおうかなと考えています。画像を追加するだけですし……。
コメント
お疲れ様です。
.ymlの件がお役に立てたようでよかったです。
私の知っている情報で不明点の部分がありましたので共有させて頂きます。
・ポートレートが開けない問題
HoI4のデフォルト画像では、.ddsにmipmapという情報が含まれているものとそうでないものがあり、unknownには含まれていますがそれ以外(たとえばJAP)には含まれていません。
なので、インポートする際にmipmapを無視する機能があれば読み込むことが出来ます。
・ideasのremoval_costについて
ideasは閣僚や産業についても同じ項目内で設定されているので、ここでのremoval_costは入れ替えを行う際に加算される政治力です。
(電子産業を工業産業に切り替える際に+10政治力が必要で160になる)
ただし、この場合は国民精神のような半恒久的なideasなのでremoval_costは意味を持ちません。
.ymlファイルの件、本当に助かりました。ありがとうございました。
mipmapというのが.ddsファイルにあるのですね。調べてみたところ、Paint.netやGIMPではmipmapを無視して読み込むことはできないようです。
Photoshopのような機能の多いソフトじゃないとmipmapまわりの機能は充実していないのかもしれませんね。
removal_costは政治力のことなのですね。なぜ国民精神でこういうものが設定されているのかわからなかったのですが、ご説明を拝見して腑に落ちました。
たびたび教えていただきまして、重ねてになりますが、本当にありがとうございます。
いつも楽しく見させてもらってます
一つ質問ですが、Modを作った際のエディタ?はどのようなものを使われたのですか?
教えていただけるとありがたいです。
いつもご覧いただきありがとうございます。
テキストはサクラエディタ(http://sakura-editor.sourceforge.net/)、画像はpaint.net(http://forest.watch.impress.co.jp/library/software/paintdotnet/)です。
管理人様、初めまして。いつも楽しく拝見しております。
一つ質問があります。私は現在、架空の新規国家を追加するMODを作成中なんですが、こちらの記事にて紹介されております国家精神を参考に国家精神の作成は出来たんですが、政治顧問と軍司令官や企業の作成がうまく行きません。HOI4のオリジナルのテキストの記載をコピーして見たのですが、何故か認識されません。政治顧問などの作成では何か特別な記載が必要なのでしょうか?アドバイズを頂ければ助かります。よろしくお願いします。
いつもご覧いただきありがとうございます。
私は政治顧問などについての変更を行ったことがないのではっきりとは言えませんが、過去のコメントにもあるように記述内容は国家精神と基本的に同じですので、国家精神が反映されているなら政治顧問なども表示されるはずと思います。
認識されないというのは政治顧問などが誰も表示されないということでしょうか? それともバニラの政治顧問などがそのまま表示されてしまうということでしょうか?
オリジナルのテキストの記載をコピーしたということですから、後者であれば正常な動作かと思いますが、前者であればファイルのエンコードがおかしくなっていることが原因のひとつとして考えられます。
その場合はオリジナルのゲームファイルをMODフォルダにコピーしてそれを変更することで正常に動作する場合があります。
または同じ国についてのファイルが2つ存在するなども考えられます。
いずれにせよ、「認識されない」というのがどういうことかによって対処法が変わってくると思いますが、いかがでしょうか。
こんにちは。昨日、政治顧問に関して質問した者です。ご指摘頂きました「認識できない」状態ですが、私の場合は前者と後者の両方の状態でした。そこで、アドバイスいただきましたエンコードを再度確認しましたところ、記入漏れがありました。やはり単純なミスだったようで、修正を行ったところ、無事認識されるようになりました。ご迷惑とお手数をおかけいたしました。本当に助かりました。ありがとうございました。今後も管理人様の情報を楽しみにしております。
始めまして。初歩的なことで質問させてください。
政党名、国家名変更に関して、「DEF:0」とはなんでしょうか?
DEFが付いていないものとどう違うのでしょうか。
https://hoi4.paradoxwikis.com/Cosmetic_tag_modding#Localisation
このページを読むと、どうやら「_DEF」とついているのはイベントで名称を表示するときにどう表記するかということのようです。
「:0」はどうやらローカライゼーションのバージョンではないかというのはどこかで読みましたが、実際には動作していない部分のようで詳しくはわかりません。
こんにちは。
私は今、Millennium Dawn: Modern Day Modの追加modという形でmodを制作したいと思っているのですが、modの追加modという形でのmodの作り方を教えてください!
https://simulationian.com/2016/07/stellaris-modmaking3/
こちらの記事で触れているdependencies = { “xxx” }という記載を.modファイルに追加すればいいのではないかと思います。これで元のMODと同名のファイルは上書きしてくれるはずです。
おお、ありがとうございます!
後、サクラエディタって神アプリだと思いますw(小並感