ハニセレ2活動日誌 第8日目『Mod作成方法 その2 Studioアイテムmodの作成』

ハニセレ2活動日誌 第8日目『Mod作成方法 その2 Studioアイテムmodの作成』

前書きと言い訳と注意点

「コイカツ!サンシャイン」が公式で公開されているご時世に周回遅れではありますが、HoneySelect2でのmod作成方法を解説する記事の2回目です。

本記事では「StudioNeo2用アイテムmodの作成」を扱います。

キャラクタースキンや、服飾、マップ等の作成には使えない内容になると思われますのでご注意ください。

また厳密に言うと『解説』というより私の環境ではこの手順・方法で作成していますよ。という紹介です。

というのも公式は当然として、ネット界隈を眺めてもHoneySelect2のmod作成に関しては殆ど情報がないため自分自身でアレコレ試行錯誤した上での手順・方法の記述になっています。

そのため、『検証足らず』『余計な操作』『そもそも間違い』『環境によっては使えない』といった情報が含まれている可能性がありますので、あらかじめご了承ください。

なお記事本文はなるべく読み間違い・勘違いが発生しないよう努めて冗長に書いていますので、鬱陶しい部分も多々あるかと思いますが、この点もご了承ください。

Mod作成方法

Studioアイテムmodの作成ですが、3Dデータの準備さえ出来ていればSB3UとCSVファイルを弄るだけの内容になります。

最初は取っつきにくいかもしれませんが、操作方法を覚えるとわりと簡単にmodが出来ます。

本記事では手前味噌で恐縮ですが自作の『ちゃぶ台』を使って解説を行います。

必要なもの

・基本的には当サイトのハニセレ2活動日誌 第3日目『Mod作成方法 その1』で紹介しているものと同じものを使用していきます。

・3DCGも自作しちゃおうという意欲的な方は上記の記事では使わなかったBlenderも使用しますのでご用意をお願いします(当サイトでは大した解説はできませんけど)。

手順1.使用する3DCGを用意する

この手順では、Studioアイテム化する3DCGを用意について説明します。

本記事では3DCGのファイル形式は『FBX』を使用しています。
他にも使用できる形式はいくつかあるようなのですが、FBXしか使ったことがないので他はわかりません

※詳しく理解しきれてはいないのですが、3DCGデータは『FBX』以外に『テクスチャ』や『ノーマルマップ』などのデータ(jpg,pngなど)が付随しているはずなのでこれら一式を用意しましょう。
例)
私が自作した3DCGデータの一式は以下のファイルで構成されています(多分ファイル数はもっと減らせるはずなのですが、理解度が足りなくて結構多くなっています)。
・chabudai.fbx
・asi_color_new.png
・asi_normal_new.png
・gawa_color_new.png
・gawa_normal_new.png
・tenban_color_new.png
・tenban_normal_new.png

①すでに持っているという場合
FBX形式のファイルであれば手順2に進んでいただいて結構です。
形式が違う場合は別途ファイルのご用意をお願いします。

②自作は勘弁という場合
3DCGを用意しましょうと言われて、「わかったすぐ作るわ」と答えられる人はなかなかいないと思います。
そういった場合は『3dcg 無料素材』とかで検索すると無料(有料もある)で手に入れられたりするので探してみましょう。

こことかhttps://www.turbosquid.com/探すと色々なデータがあって勉強にもなるし楽しいです。

③わかった作るという場合
既に技術をお持ちの方は問題ないでしょう。

これからBlenderを使ってみるんだぜという方。
その心意気やヨシ。

私が参考にした動画があるのですが、本記事で解説を始めると長くなるのでこちらは一旦別記事にします。

3DCGの用意が出来たら手順2へ進みましょう。

手順2.『unity3d』ファイルを用意する

この手順では、3DCGを格納する『unity3d』ファイルの作成について説明します。

作業を始める前に当サイトでの解説におけるルールを1個だけ決めておきます。

SB3U各パーツの名称ですが、以下のように呼びます。
①左ウィンドウ
②中央ウィンドウ
③右ウィンドウ
④画像系ウィンドウ
※頭悪そうな名前で恐縮ですが、どこの話をしているのか伝わればいい程度なのでこれでいきます。

ファイルを作成しますと言っても基本は、HoneySelect2に元から格納されているデータを流用します。

HS2の『abdata』フォルダ配下にある『chara』フォルダに遷移しましょう。
例)D:\illusion\HoneySelect2\abdata\chara

このフォルダの中にある『etc.unity3d』を使用します。

SB3Uを起動し、『etc.unity3d』をドラッグアンドドロップします。
下図の赤枠ように『etc.unity3d』『P_dummy』という表示が出ます。

『File』>『CABinet(s)』の値を変更して保存します。
デフォルトで『CAB-』から始まる計37桁の文字が入っていますが、この値はファイル毎にユニークな値でなければならないので値を書き換えてしまいます。
『CAB-mylogomod00000000000000000000001』こんな感じです。
未検証ですが『CAB-』は必須で、残り33桁も適当で良いので必須と思われます。
Cabinet(s)を書き換える

CAB番号の変更が終わったら、『etc.unity3d』というファイルは今後も別のmod作成をする場合に利用するファイルなので、上書きなどをしないように別名でファイル保存します。
ファイルの名称は、後々必要になる情報なので区別のつきやすい名前にします。今回は『chabudai.unity3d』と命名しました。

ここまで出来たら、一旦×ボタンでファイルを閉じて、別名保存したファイルをSB3Uへドラッグアンドドロップして開き直します。

※ファイル内の名称関係を変更した際にそのまま作業を続けるとファイルが壊れる現象(おま環?)が発生したための開き直しです。あとでもう一回くらい開き直しがあります。

次に作成した『chabudai.unity3d』に、バニラのデータを格納します。
現状、SB3U上ではゼロからデータを作成することができないため、バニラのデータをコピーしてきて格納しそれを編集していきます。

HS2の『abdata』フォルダ配下にある『studio』フォルダに遷移しましょう。
例)D:\illusion\HoneySelect2\abdata\studio
拡張子『unity3d』のファイルが沢山ありますのでその中から適当なファイルをSB3Uにドラッグアンドドロップします。

※もしかしたらコピペ元は『chara』フォルダ以下のファイルでも良いかもしれませんが(未検証)、studioアイテムmodの作成なので『studio』フォルダの方が適当であろうと考えて使用しています。

色々中身を覗いた結果、個人的に『12.unity3d』が使いやすかったのでこれを使用します。
①コピー元のファイル(12.unity3d)をSB3Uにドラッグアンドドロップする。
②タブをコピー元のファイル(12.unity3d)に切り替える(ドラッグアンドドロップの時点で自動で切り替わっているはず)。
③コピーするデータを選択する(画像では見切れてしまっていますが、一番上にあるデータ『o_ai_mi_recycle00b_00』を選択しています)。
④③が選択されている状態で『Assets』内の『Mark/Unmark for Copying』をクリックする。
⑤タブをペースト先のファイル(chabudai)に切り替える。
⑥『Assets』内の『Paste All Marked』をクリックする。
⑦ダイアログが表示されるので『Paste』をクリックする。
⑧コピペ元として開いた『12.unity3d』はもう使いませんので、閉じてしまいましょう(誤ってこのファイルを編集してしまうと取り返しがつきません)。
これでコピペ作業は完了です。

手順2最後の作業として、『chabudai.unity3d』にコピペしてきたデータの名前を変更します。
⑨左側ウィンドウの『o_ai_mi_recycle00b_00』をダブルクリックします。
⑩中央ウィンドウにデータが表示されるので、『o_ai_mi_recycle00b_00』をクリックします。
⑪右ウィンドウの『Frame』タブが選択状態になるので、『Transform Name』の中身を編集します。

『Transform Name』も後々重要な情報になるので区別のつきやすい名前にします。今回は『chabudai』と命名しました。

ここまで出来たら、『File』>『Save.unity3d』の手順でここまでの作業を保存してから×ボタンでファイルを閉じて、もう一度ファイルを開き直します(上の手順で書いたファイル破損を避けるための開き直しです)。

手順2はこれで以上になります。

手順3.3DCGデータを格納する

手順2までに作ったファイルに、手順1で用意した3DCGデータを格納します。

①手順1で用意した3DCGデータ(FBX,jpg,pngなど)ファイルをSB3Uにドラッグアンドドロップします。
使用しているデータによって差異があると思いますが、下図のようになります。

②chabudai.fbxタブのImportedMeshを中央ウィンドウの『Animator』へドラッグアンドドロップします(下図参照)。

ダイアログが出てくるので、下図のように設定し『OK & Continue Automatically』をクリックします(『OK』をクリックしても問題ないですが、複数データがある場合は自動の方が楽です)。

※設定内容に関しては正直あんまり意味わかっていません(笑)。
いろいろチェックを変えて試したら上手くいった設定がこれでした。
まあ、上手くいってから考えてみると、今行っている作業はバニラデータを上書きする作業になるので、ReplaceやCreate,Convertなどを選ぶんやろうなぁと想像はできますが細かい理屈はわかりません。

③chabudai.fbxタブのImportedMaterialを中央ウィンドウの『Material』へドラッグアンドドロップします。
こちらはダイアログ等の表示なく処理が完了すると思います。
※ドラッグアンドドロップする前に『Material』の中身を消去しているとエラーになります。SB3Uでは『Material』が空の場合にデータを入れることはできないので注意しましょう。

④chabudai.fbxタブのImportedTextureを中央ウィンドウの『Texture』へドラッグアンドドロップします。
Textureに関しては用意した3DCGデータによっては使用しない場合があります(私が用意したデータでは使用しないのでドラッグアンドドロップしません)。

⑤Imageタブのファイルを選択した状態で、右ウィンドウのTextureタブにある『Add Image』をクリックします。

処理が終わると中央ウィンドウ『Texture』の中に名前が表示されるようになります。
間違って余計なTextureを入れてしまったとか、バニラのTextureはいらないという場合は、上でクリックした『Add Image』の右に『Remove』があるので消したいTextureを選んでクリックしてやれば削除されます。

3DCGデータの格納は以上になりますので、次の手順4に進みましょう。

手順4.格納したMesh・Material・Textureを紐づける

この手順では、格納したMesh・Material・Textureを紐づけてMeshに色が表示されるようにします。

中央ウィンドウの『Mesh』タブで任意のNameを選択すると、Meshが表示されます(『Object Tree』タブでも見れます)がMaterial・Textureとの紐づけがされていないため期待した色が表示されていないはずです。
なので、各種情報を紐づけていきます。

①中央ウィンドウ『Object Tree』タブの『MeshRender』を選択します。
②右ウィンドウ『Mesh』タブが自動で表示されるはずなので、Mesh PathIDを『(none)』に変更します。
これでバニラのMeshが表示されなくなります。本当はこのバニラMeshはもういらないので削除してしまいたいのですが、これを削除するとMaterialも消滅してしまいこのファイル自体が使い物にならなくなるので非表示にします。

③中央ウィンドウの『Material』タブで任意のMaterialを選択します。
④右ウィンドウの『Material』タブが自動で開くので『Texture PathID』に必要なTextureを設定します。

どれに何を設定するのかですが、不明点が多いのでわかっている部分のみ説明します。
BumpMap:NomalmapまたはBumpMapを設定する。
MainTex:完成系の色が設定されているファイル?Textureファイル?を設定する。→にわか過ぎてどういう名称が正しいのかわかってません(汗)。ここにファイルを設定するとMeshにTextureが表示されます。

※他の設定項目ですがそれらしいファイルを設定してもパッと見変化がわからなかったので、どういったファイルを設定すべきかはわかっていません。この辺大事なところだとは思うんですけどね、まだあんまり試せていないのでスミマセン。

⑤Materilが複数ある場合は④と同様の要領で設定を行う。
⑥中央ウィンドウの『Material』タブで任意のMeshを選択します。
⑦右ウィンドウの『Mesh』タブが自動で開くので『Submeshes』に、手順④で設定したMaterialを設定します。

『Submeshes』にMaterialが設定できると、画像系ウィンドウのMesh表示が変更されるので意図した姿になっているのか確認しながら作業をしましょう。
意図していない姿が表示されているのであれば、どこかの工程でミスっているので手順を戻って確認です。
⑧残りのMeshも⑦と同様の作業を行う。

※バニラから持ってきたMeshに関しては、使用しないので設定不要です。

すべてのMeshでTextureが正しく表示されれば手順4は終了です。
データを保存し、次の作業に移りましょう。

手順5.『zipmod』を作成する

手順5では、フォルダ構成とCSVファイルを作成しmodの作成を完了させます。

フォルダ構成、ファイル名、CSVの記載内容のすべてがStudioにアイテムを表示させるのに必須の情報と言っても過言ではないので間違わないように注意しましょう。
どこか一文字間違うだけでアウトと思ってもらって概ね差し支えないです。
やり直しは何度でもきくので、ミスったらすべてが水の泡とかではありませんけどね。

下図のようなzipmodになるフォルダ構成を作成します。

画像が見えない場合は、画像をダウンロードしてご確認ください。
・第1階層
フォルダ名に関しては例としてhogehogeとしていますが何でもいいです。zipmod作成時の利便性を考えると最終的なmod名に設定したほうが楽です。(例:chabudai)
・第2階層
manifest.xmlですがテキストエディタで作成でOKです(画像は以前の記事で使用した画像を転用してます)。
注意点としては、2バイト文字(漢字、ひらがな、カタカナ)の使用はNGです。アイテムがStudioに表示されなくなります。
※画像じゃなく本文を載せたいのですが、仕様上記載が難しかったので画像にしています。
マニフェストファイル
・第3階層
(任意)と記載されているフォルダは好きな名前にしてください。ここも含めて任意の箇所が合計3か所ありますが、すべて共通の内容を入力します。一つでも間違うとアイテムがStudioに表示されません。
・第4階層
画像では例として『chabudai.unity3d』というファイル名称になっていますが、ここにはご自身で作成した『〇×△.unity3d』ファイルを格納してください。
・第5階層
(第3階層と同じです)
・第6階層
3種類のCSVファイルを格納します。
どれもファイル名称とファイル内の情報が密接に関わっている部分になります。間違い安いところでもあるので注意しましょう。

①ItemCategory_AA_BBBBB.csv

並び順:0を入れます。他の値でもいいかもですが、0が安全だと思います。
カテゴリー番号:ここの値がCSVのファイル名「AA」の部分に入ります。任意のバニラ・modを含めたすべてのファイルと競合しない二桁の値を入れます。競合に関してグループ番号も加味されるのでテキトーで良いと思います。
名称:studioに表示される名称です。任意。日本語も使用OKです。

②ItemGroup_(任意).csv

並び順:0を入れます。他の値でもいいかもですが、0が安全だと思います。
グループ番号:ここの値がCSVのファイル名「BBBBB」の部分に入ります。任意のバニラ・modを含めたすべてのファイルと競合しない二桁の値を入れます。競合に関してカテゴリー番号も加味されるのでテキトーで良いと思います。
名称:studioに表示される名称です。任意。日本語も使用OKです。

③ItemList_CC_BBBBB_AA.csv

管理番号:0を入れます。他の値でもいいかもですが、0が安全だと思います
大きい項目名:ここの値がCSVのファイル名「BBBBB」の部分に入ります。任意のバニラ・modを含めたすべてのファイルと競合しない二桁の値を入れます。競合に関してカテゴリー番号も加味されるのでテキトーで良いと思います。グループ番号と同一です。
中間項目:ここの値がCSVのファイル名「AA」の部分に入ります。任意のバニラ・modを含めたすべてのファイルと競合しない二桁の値を入れます。競合に関してグループ番号も加味されるのでテキトーで良いと思います。カテゴリー番号と同一です。
名称:studioに表示される名称です。任意。日本語も使用OKです。
マニフェスト:abdataと入れてください
バンドルパス:(第3階層で任意に決めたフォルダ名)/(作成した〇×△.unity3d) というフォルダパスを記載してください。
ファイルパス:手順2の⑪で『Transform Name』に設定した名称を入力してください。(私の場合はchabudaiになります)
子の接続先:空白で良いようです。現状どういうデータが必要か不明です。
ファイル名のCC:不明です。とりあえず「00」としておけば動作します。

これで、mod作成に必要なファイル・フォルダの用意ができました。

最後にzipmodに圧縮します。
作成した『abdata』『manifest.xml』を一緒に選択して7zipで圧縮します。
※画像は以前の記事から転用しています。
7zipで圧縮

ファイル名の拡張子を『zipmod』にします。圧縮後に変更するとmodが機能しない場合があるそうです。
アーカイブ形式を『zip』にします。
圧縮レベルを『無圧縮』にします。
設定が終わったら『OK』を押しましょう。
圧縮とは言っていますが『無圧縮』なので実際には圧縮されていません。一つにまとめているだけですね。
※無圧縮以外に設定しても動きますが、ゲームの読み込みが遅くなるらしいです。実際やってみましたが違いは体感できませんでしたが、念のため無圧縮にしておきましょう。
※画像は以前の記事から転用しています。
無圧縮する

後は実際にゲーム画面に表示されれば一連の作業はおしまいになります。
表示されなければどこかで間違いがあるはずです。

とはいえ、お疲れまでした!

独り言

Studioアイテムmodの作成は『キャラクター』『服関係』『MAP』と比較すると一番簡単じゃないのかなって思ってます。

なので初めてmod作ろうって人はここから始めたほうがいいかもしれません。SB3Uの操作もなんとなく見えてくると思うので。

それにしても、もうね疲れた。あー疲れた。