記事投稿の練習を兼ねて、プレーンテキストでも書けそうな内容をチョイス。
ゲームインストールフォルダー下の構成を俺視点・俺知識で説明してみます。
フォルダーやファイルは散発的な話題は見かけるけれどもまとまった情報は見かけない気がしたので。
サンシャイン準拠で記述します。
注意:すべてのフォルダー・ファイルを網羅していません。
インストールフォルダー直下
コイカツはUnityで動いているので、基本的なフォルダー・ファイル構成はUnityの形式そのままです。
青地=MOD環境のみ
| フォルダ・ファイル名 | 内容 |
| [UTILITY] KKManager | ツール KKManagerのフォルダー *1 |
| abdata | ゲームで使用するデータを格納 (Unity:AssetBundle) *2 |
| BepInEx | プログラム系MOD関連を格納 *3 |
| CharaStudio_Data | CHARA STUDIOのプログラム系を格納 |
| DefaultData | プリセットキャラ、特典のコーデ等(KKSのみ)*4 |
| KoikatsuSunshine_Data | ゲーム本編のプログラム系を格納 *3 |
| KoikatsuSunshine_VR_Data | 公式VRのプログラム系を格納 *3 |
| manual | ゲーム本編のプレイマニュアル *5 |
| manual_s | CHARA STUDIOのプレイマニュアル *5 |
| manual_v | 公式VRのプレイマニュアル *5 |
| manual_vt | VRシアターのプレイマニュアル *5 |
| mods | zipmod格納フォルダー *6 |
| UserData | キャラカードとか(後述) |
| VRTheater_Data | VRシアターのプログラム系を格納 *3 |
| CharaStudio.exe | CHARA STUDIO実行ファイル |
| doorstop_config.ini | BepInEx動作設定 *7 |
| InitSetting.exe | ゲームランチャー(HFpatch入れるとHFランチャーに置き換わる) |
| KoikatsuSunshine.exe | ゲーム本編実行ファイル |
| KoikatsuSunshine_VR.exe | 公式VR実行ファイル |
| output_log.txt | BepInEx/Unityのログファイル *8 |
| VRTheater.exe | VRシアター実行ファイル |
- MOD/プラグイン/ゲームカードマネージメントツール KKManager はここにある必要はなく好きな場所に置け初回起動時に自動認識できない場合にゲームフォルダーを手動設定する形です。HFpatchをインストールした場合はここに配置されます
- abdata : ゲームで使われるパーツ/音声/マップ等々あらゆるデータはアセットバンドルとしてこの下に格納されています。ハードMODでパーツ系をいじる場合はこの中を書き換えます
- XXX_Data : “_Data”とあるけどここがゲーム実行プログラムのフォルダーで、Managed\Assembly-CSharp.dll が本体です。ハードMODでプログラム系をいじる場合はここを書き換えます
- DefaultData : 初代コイカツではプリセットキャラやイリュ製コーデ等もUserData下にありましたが、サンシャインではこちらに分けられました
- manualXXX : 各種マニュアルが格納されています、ランチャーからも開けます。皆さん、質問前にマニュアル読んでね
- mods : Sideloaderはゲーム起動時にmodsフォルダー下をサブフォルダーを含めてフルスキャンして*.zip, *.zipmodを読み込みます。なので好きな名前でサブフォルダー掘ってzipmod整理して良いですよ
- doorstop_config.ini : 時々「バニラに戻すならBepInExフォルダーをリネームすれば良い」と見かけますが、より正式にはこいつをいじってください、理由は中を見ればわかる
- output_log.txt : MOD環境の人は今日はこれだけは覚えてください、このファイルに動作状況が記録されます。動作おかしくなった、xxが読み込まれない等あればこのファイルにエラー等が記録されているので、何かあった時はまず最初にこのファイルの中身を調べてください
BepInExフォルダー
MODのプラグイン系格納フォルダー
| フォルダ・ファイル名 | 内容 |
| config | プラグインの設定ファイルを格納。”GUID名”.cfgが各設定ファイルで直接書き換えても有効だが、F1>Plugin Settingsで設定した方が良い。なんかのプラグインの動きがおかしい時はその設定ファイルを削除すると治ることもある |
| core | BepInExの基幹dll群 |
| LauncherEN | HFpが置き換えるランチャー。結構前にここに移動した。Chara.pngを置き換えるとキャラ変更できるよ |
| patchers | patcher系を格納、こちらに配置するプラグインもあるのでドキュメントで格納場所を確認のこと |
| plugins | プラグイン系のMODを格納、サブフォルダーを含めて全dllが認識されるので好きにサブフォルダー掘って整理可 |
| Translation | XUnity.AutoTranslatorが使用する翻訳データ |
| LogOutput.log | BepInのログファイル。でも動作状況確認はoutput_log.txtでした方が良いです |
UserDataフォルダー
スタジオやらん勢なのでスタジオ系がさっぱりわかりませぬ、スマヌ
| フォルダ・ファイル名 | 内容 |
| AnimationLoader | AnimationLoader体位名設定xmlがあるので、体位名を変更したい時はここをいじる |
| audio | スタジオ用? |
| bg | キャラメの背景画像 |
| cap | ゲーム本編でキャプった画像 |
| cardframe | キャラカードのフレーム画像:Front=前面、Back=背面 |
| chara | キャラカード |
| config | system.xml : F1>音声以外の設定、背景色等を数値設定したい時はこいつを直接弄る。一番下のFPSをTrueにするとゲーム画面左上にFPS値が表示されるようになる
voice.xml : F1>音声のとこの設定 |
| coordinate | コーディネートカード |
| Custom | カラープリセットとカスタムシーン(?) 一部のプラグインがこのフォルダーを使用する |
| frame | スタジオのフレーム? |
| LauncherEN | HFpが置き換えるランチャーの旧位置、今はBepInEx下に移動したのでだいぶ古い環境でなければ消していいはず |
| MaterialEditor | MaterialEditorの出力フォルダー(位置設定可能) *1 |
| Overlays | OverlayModの出力フォルダー(位置設定可能) *1 |
| pattern | スタジオ用? |
| pattern_thumb | スタジオ用? |
| save | セーブデーター |
| studio | スタジオのSD(とポーズ?) スタジオとVRシアターの設定ファイルもここ |
| system | userinfo.dat : サンシャインで追加されたuserIDが入ってる |
| VRSetting | VRSetting.xml : 公式VRの設定ファイル *2 |
| setup.xml | ランチャーの設定ファイル |
- MaterialEditor,Overlays : プラグイン設計としてはここは出力用のフォルダーです。入力時は位置指定窓が開いてPC内のどこでも指定可能&前回の位置を覚える仕様なので、自分がキャラメで使うパーツ整理フォルダーをどっかに作っておくのが良いと思います。
- VRSetting.xml : 公式VRはゲーム内で設定ができないので、設定変更するにはこのファイルを直接書き換える必要があります。
VR系の情報は別機会にまとめるつもりなので1個だけ。公式VRで女の子の大きさに違和感を覚えたらvrscaleの値を変更しましょう(KKならscale)。この値を変えると世界のスケールが変更され結果としてキャラの大きさも変わります。女の子を大きくしたければ値を「下げる」、小さくしたければ値を「上げる」(感覚と逆です)
VRmod(MaingameVR, stadioVR, KKS_VR)でのここ相当の値は”1″なのでデフォで女の子はかなり小さめです、変更方法はまた別途
というわけでUserDataフォルダーにはバニラで使われる ゲームインストール時に固定化されていない=ゲーム実行で変更されうるファイルと一部のMOD(プラグイン)用のデータが格納されています。なので、バニラであればUserDataフォルダーをバックアップしておき別PCに再インストール時等にUserDataを書き戻せば前の環境に戻ります。
なぜこの位置にあるかというと、ゲーム本編、スタジオ、公式VRは全く別のアプリケーションとして動作しますがキャラカード等は共通で使用するために同じパスでアクセスしたかったのだと思います。
プログラム的には UserData classのPath でアクセスします、こんな感じ
path = UserData.Path + “Custom/voice/otameshi.ogg

