上の写真の中央のキャラ、チアトップスを着ているのですが、いつもと違います。
そう、胸に何も文字が書かれていません。
今回は、既存のコーデをもとに、形などは変えず、表面のテクスチャだけを張り替えたコーデを作るという、お手軽MODの作り方について。
広告
MODを作ることになったきっかけ。
まずはこちらの写真は、ゲームにはじめから収録されている、チアトップスです。
ご存知のとおり、胸に「cheers!」の文字が書かれています。
今回作りたいキャラはへそ出しのイメージで、トップスの形としてはこのチアトップスが理想的です。
しかし、コーデのどの部分のカラーを変更しても、文字を消すことができませんでした。
チアガールをイメージしたキャラではないので、この文字がどうしてもジャマです。
なお、胸にリボンをつけるなど、アクセサリで文字をごまかす方法もあります。
しかし、胸にアクセ装着はもう他のキャラで実行済みで、あまりネタ被りさせたくありません。
また、クールなイメージにしたかったので、大きなリボンではちょっとキュートすぎます。
よって、今回の文字なしチアトップスを作るに至ったのです。
形まで変えてしまうのは3D製作の知識が必要になりそうで、今の私にはまだ出来そうにありませんが、テクスチャ張り替えだけならもしかしてすぐできるかも。
必要なツール。
Releases · enimaroah/SB3Utility · GitHub
コイカツにおけるMOD製作には、この「SB3Utility」が必要になります。
上記サイトから最新バージョンをダウンロードしましょう。
現時点では「SB3UGS_v1.15.2.7z」が最新版のダウンロードリンクとなります。
コーデのデータの仕組み。
キャラクタ用のコーデは、下記の3つのunity3dによって1つのコーデが成り立っています。
一つのunity3dの中に、複数のコーデの情報が含まれていることもあります。
これら3つのデータであることを把握しておきましょう。
その各ファイルのパスを記載します。
コイカツ本体のルートフォルダからの相対パスとなります。
コーデ一覧に登録するためのデータ。
Koikatu\abdata\list\characustom
コーデそのものの形やテクスチャのデータ。
Koikatu\abdata\chara
コーデ一覧に載せるサムネイルのデータ。
Koikatu\abdata\chara\thumb
listのunity3dを作成する。
今回はまったく1からMODを作るのではなく、既存コーデをもとに改造していくことになるので、すでに存在するデータをコピーして作業を行っていくことになります。
一覧に登録されていないと、キャラにコーデを着せること自体ができないので、一覧登録のデータから作成します。
まず、下記のパスのファイルをコピーして、お好きな名前に変えます。
Koikatu\abdata\list\characustom\00.unity3d
この「00.unity3d」に、多数のコーデ情報が収録されており、その中にチアトップスもあります。
今回は「muro_cheer_no_text.unity3d」に名前を変えておきます。
そしてそのファイルを「SB3Utility」で開きましょう。
画面左下の「MonoB & Other」タブから、「co_top_00」を見つけて、ダブルクリックします。
すると画面中央に、このファイル内に存在するトップスの各データがずらっと表示されます。
その中から、チアトップスのデータを見つけます。
「MainAB」タブはコーデのテクスチャ情報などがあるファイルのパスであり、「MainData」はさらにそのファイルの中のどの名前のデータを読み込むかを決めています。
上の写真の場合は「chara/co_top_00.unity3d」の中にある「p_o_top_cheer」というチアトップスのデータを読み込むことになります。
このあと、co_top_00もコピーして別ファイルにしたあと改造するので、「MainAB」のパスを「chara/muro_cheer_no_text.unity3d」と変えておきます。
これで、co_top_00の中にあるp_o_top_cheerではなく、muro_cheer_no_textの中のmuro_cheer_no_textを参照することになりました。
また、画面を右にスクロールしていくと、「ThumbAB」という値があり、こちらは一覧のサムネイルのデータのパスとなります。
同様の手順でパスを書き換えましょう。
そしてもう一つ書き換え忘れてはいけないのが、一番左端の「ID」。
IDはトップス同士では絶対に重複してはいけません。
今回作りたい文字なしチアトップスは、通常のチアトップスと別アイテム扱いにするので、当然IDを別の値に書き換えます。
今回は「66401」としておきます。5桁までOKのようです。
コーデの名前もわかりやすく変えておきましょう。
チアトップスの情報の書き換えは終わりましたが、このままでは他のコーデのデータが重複したままです。
つまり、書き換えたチアトップス以外は、コピー元になったco_top_00にあるコーデと重複していることになるので、削除しておきます。
ほったらかしだと、ID被りも発生しますし、データ容量も圧迫してしまいます。
画面真ん中の一覧からデータを消すには、コーデを選択している状態でDelキーです。
すると、このファイルの中に残っているトップスのデータは、チアトップスだけになりました。
そして画面左下のタブでは、トップス以外のコーデの情報が残っています。
「co_top_00」と「list/characustom/00.unity3d」以外を削除して、トップス以外のデータはないことにします。
左下のタブからデータを消す場合は、「Assets」→「Attention!」→「Remove」となります。
不要なデータを削除したあとのイメージは、こんな感じです。
画面左下のタブ内のデータの名前も編集前のままなので、renameで変更しておきます。
最後に、どのファイルでも共通して行う必要のある作業ですが、各ファイルにはCABinet(s)という、IDみたいなものが付与されています。
CABinet(s)の値が重複していると、ゲーム内で正常に読み込めなくなるので、重複しない値に変更しておきます。
[HS] Random String Generator – Roy12 Mods
なお、なんて値を入れたらいいか迷うときは、上記リンクにある「Random String Generator」を使いましょう。
同じイリュージョン製ゲームであるハニーセレクト向けとなっていますが、コイカツでも大丈夫です。
(リンク先はハニーセレクトによる水着の女性のスクショが出てくるので、リンクを開く際はいちおう周りに注意。)
このツールで出力された値をコピーすればOKです。
以上の作業の実行後、Ctrl+Sで上書きして完了です。
なお、原因は不明ですが、abdataフォルダ外にファイルをコピーしてから作業していると、保存に失敗することがあります。
abdataフォルダのまま作業した方がいいかもしれません。
テクスチャを張り替える。
コーデ一覧に登録する作業は終わったので、今度は新規コーデ本体に関するデータを作っていきます。
Koikatu\abdata\chara\co_top_00.unity3d
もとのチアトップスがあるデータは上記パスであり、これをコピーして作業を行います。
これもファイル名は「muro_cheer_no_text.unity3d」にしておきます。
listフォルダにあったものと重複した名前で構いません。
(でも、別の名前の方がわかりやすかったかも。)
ファイルを開いたら、画面左下のタブを「Img」に切り替えて、名前に「cf_top_cheers_d_」が付くデータを探します。
複数見つかりますが、末尾が「mc」のものはカラー情報が反映される部分を表すもの、「t」はベースとなるテクスチャでしょうか。
そして「low」が付くものは、本編で遊んでいるときのみ適用されるテクスチャとなります。
キャラが複数表示されるので負荷軽減のためか、lowは若干画質が落ちています。
今回は、この既存のテクスチャから文字の部分を消して、テクスチャを差し替える作業をします。
よって、まずはテクスチャのデータを抜き出さないといけません。
抜き出したいテクスチャを選択し、「Assets」→「Export」を実行することで、ddsという拡張子の画像ファイルとして保存できます。
ただ、ddsなんて拡張子、普段は見ることなんてありません。
NVIDIA Texture Tools for Adobe Photoshop | NVIDIA Developer
Photoshopですら標準では対応しておらず、上記サイトからPhotoshop用のプラグインをダウンロードすることになります。
(ddsの編集自体はお好きなアプリで行って構いませんが、今回はPhotoshopにしておきます。)
プラグインの更新日付が2013年で止まっていますが、CC 2019でも問題なく使用できます。
プラグインの導入方法や、ファイルのオープン・保存の手順、文字の消し方はここでは割愛。
テクスチャを書き換えて、ddsファイルを上書きしましょう。
また、ファイル名はSB3UtilityのImgタブ内の、差し替えたいテクスチャ名と同じにしておきましょう。
再度SB3Utilityに戻って、「Assets」→「Replace Files…」を実行して、ddsを読み込むことで、ファイル名と同じテクスチャを差し替えることができます。
同様の手順で、差し替えが必要なテクスチャをすべて差し替えていきましょう。
テクスチャ差し替え後、「MonoB & Other」タブから「chara/co_top_00.unity3d」を「chara/muro_cheer_no_text.unity3d」にrename。
あと、CABinet(s)の値も、他のファイルと被らない値に変更しておきましょう。
そして上書き保存すれば完了です。
ただ、このファイルはあまりにも重いので、必要ないデータを削除しておくべきなのですが、「Animator」タブ内のデータを削除するのはなぜか不可能。
また、どれがチアトップスに必要なファイルで、どれが不要なのか判断しづらいので、見極め方はまた別の記事にしたいと思います。
サムネイルのデータも差し替える。
ここまで来たら、もうほとんど手順は同じなので、ざっと流れを紹介。
Koikatu\abdata\chara\thumb\co_top_00.unity3d
上記パスのファイルの名前を「muro_cheer_no_text.unity3d」に変えて、ファイルを開きます。
あとはもう、Imgタブの画像をエクスポート&差し替え、そしてチアトップスに関係ないデータを削除して上書きです。
CABinet(s)の値書き換えも忘れずに。
以上、3点のファイルの作成により、テクスチャが変わったコーデが、ゲーム内のアイテム一覧に新しく追加されているはずです。
この手順を覚えておけば、文字を消すだけでなく、好き勝手にイラストを入れることもできそうですね。