アダルトゲームブランドKISSが販売するゲームソフト「カスタムオーダーメイド3D2」の改造wikiです

はじめに

  • 改造は全て自己責任でお願いします。
  • 改造に不安がある場合、ゲームのインストールフォルダを丸ごとコピーしておけば、何かあってもだいたい大丈夫。
    特にセーブデータ・プリセットはMODの影響を受けやすいです。メイドさんのためにも、こまめなバックアップを。
  • 公式の規約を熟読したうえでMODを利用してください。
  • 原則、改造行為は「判る人向け」です。用語説明もサポートもありません。自分で試して・調べて・解決する心意気でどうぞ。

下準備

改造をする前に、次の点を確認しておく。
  • ゲームをインストールしたフォルダ(COM3D2.exeがあるフォルダ。以下「インストールフォルダ」)の場所
  • 改造なしの状態(通称「バニラ」)でゲームが動作すること
  • ゲームのバージョン。ランチャーの右上か、ゲーム中なら「ゲーム情報」から確認しておく
※ゲームのバージョンにより、プラグインが動作しないことがあるので要注意。
 ・出来れば最新にまでアップデートしたいところだが、余り最新でも動作しないプラグインが存在する。
 ・ゲーム本体のアップデートを行っていない場合も新しいプラグインが動作しない。
※アーカイブファイル(.zipや.7z)を解凍できるソフトも用意しておく。

MOD導入の準備 -しばりすの導入

まず、MODを導入するためのMOD(前提MOD)を入れる。

前提MOD

しばりす2
ゲーム本体を書き換えずに非公式MODやプラグインを適用できるMOD(フレームワーク)。
リンク先からダウンロードしておく。

インストール手順

  1. インストールフォルダを開く
  2. ダウンロードしたしばりす2のzipを解凍し、zip内のSybarisフォルダとopengl32.dllをインストールフォルダに移動
  3. Modフォルダが無い場合はついでに作っておく)
  4. ここでゲームを起動。ゲームと一緒にログウィンドウ(黒い画面)が表示されれば成功
    1. ログウィンドウにはインストールしたUnityInjectorプラグイン一覧やエラーなどが表示される
    2. 導入後、起動しなくなった場合は「管理者として実行」あるいはopengl32.dll及びCOM3D2.exeをウィルス対策ソフトの例外に設定することで回避できるケース有り

結果(フォルダとファイルの構成図)

COM3D2(インストールフォルダ)
│  COM3D2.exe
│  〜その他いろいろ〜
│
│  opengl32.dll
│  
├─Mod
└─Sybaris
    │  COM3D2.UnityInjector.Patcher.dll
    │  ExIni.dll
    │  Mono.Cecil.dll
    │  Mono.Cecil.Rocks.dll
    │  Sybaris.Loader.dll
    │  UnityInjector.dll
    │  
    ├─GameData
    └─UnityInjector

旧しばりすからの変更点など


プラグイン導入例

例としてよく使われる しばりす用プラグイン・ReiPatcherレス化プラグイン一式・ExPluginBase を入れてみます。
あらかじめ上の前提MOD(しばりす2)を導入しておいてください。

今回入れるプラグイン

  • ExPluginBase - Assets PluginExt.dll(dllそのままなので保存時に警告がでる可能性があります・UnityInjectorフォルダへ)

※ここのリンクは古いかもしれないので最新版はプラグインページや共用ろだ(CM3D2COM3D2)を確認してください
※各プラグインに付いているReadme.txtにはインストール方法や使用方法などが書かれているので一度は目を通しておきましょう
 (.txtは読み込まれないのでdllと同じ名前にリネームして一緒に置いておくと良いかもしれない)
※ModLoader と ModPriorittToMod は同時にインストールすると高確立でゲームが起動できなくなるので、どちらか片方を選ぶ必要があります。
 COM3D2は両者とも使用できますが、COM3D2.5ではModPriorityToModのみ使用できます。
※CSファイルをDLLファイルへコンパイルするものとなります。プラグイン開発者でも無い限り必要はありませんので、下段に移動しました。

インストール手順

  1. インストールフォルダ(COM3D2.exeがある場所)に導入したSybarisフォルダを開く
  2. ダウンロードしたアーカイブを解凍し、Sybarisフォルダ・UnityInjectorフォルダに各プラグインのReadmeに従ってファイルを配置していく
  3. ゲームを起動し、そのプラグインの説明に従って動作チェック(エディットモードでF5を押すなど)

結果

Sybarisフォルダ
│  CM3D2.Toolkit.dll
│  COM3D2.AutoConverter.Managed.dll
│  COM3D2.AutoConverter.Patcher.dll
│  COM3D2.BodyCategoryAdd.Managed.dll
│  COM3D2.BodyCategoryAdd.Patcher.dll
│  COM3D2.DistortCorrect.Managed.dll
│  COM3D2.DistortCorrect.Patcher.dll
│  COM3D2.ExternalPreset.Managed.dll
│  COM3D2.ExternalPreset.Patcher.dll
│  COM3D2.ExternalSaveData.Managed.dll
│  COM3D2.ExternalSaveData.Patcher.dll
│  COM3D2.FastFade.Patcher.dll
│  COM3D2.MaidVoicePitch.Managed.dll
│  COM3D2.MaidVoicePitch.Patcher.dll
│  COM3D2.ModLoader.Managed.dll
│  COM3D2.ModLoader.Patcher.dll
│  COM3D2.ModMenuAccel.Hook.dll
│  COM3D2.ModMenuAccel.Patcher.dll
│  COM3D2.ModPriorityToMod.Patcher.dll
│  COM3D2.ProcScriptBinIgnore.Patcher.dll
│  COM3D2.QuickEditStart.Managed.dll
│  COM3D2.QuickEditStart.Patcher.dll
│  COM3D2.ThumbSave.Managed.dll
│  COM3D2.ThumbSave.Patcher.dll
│  COM3D2.UnityInjector.Patcher.dll
│  COM3D2.VoiceNormalizer.Managed.dll
│  COM3D2.VoiceNormalizer.Patcher.dll
│  ExIni.dll
│  Mono.Cecil.dll
│  Mono.Cecil.Inject.dll
│  Mono.Cecil.Rocks.dll
│  Sybaris.AutoCompile.Patcher.dll
│  Sybaris.Loader.dll
│  UnityInjector.dll
│  
├─GameData
└─UnityInjector
    │  COM3D2.AddModsSlider.Plugin.dll
    │  COM3D2.ConsistentWindowPosition.Plugin.dll
    │  COM3D2.DistortCorrect.Plugin.dll
    │  COM3D2.EditSceneUndo.Plugin.dll
    │  COM3D2.LogWindow.Plugin.dll
    │  COM3D2.MaidVoicePitch.Plugin.dll
    │  COM3D2.PersonalizedEditSceneSettings.Plugin.dll
    │  COM3D2.SkillCommandShortCut.Plugin.dll
    │  COM3D2.VoiceNormalizer.Plugin.dll
    │  PlanarRealtimeReflection.dll
    │  PluginExt.dll
    │  
    ├─AutoCompile
    └─Config
            MaidVoicePitchSlider.xml
            ModsParam.xml
            PersonalizedEditSceneSettings.ini
            VoiceNormalizerTable.txt
※ ReiPatcherレス化プラグイン一式のオプションフォルダに入っているdllは一つ上の階層に移動(有効化)させています
※ プラグインによっては導入後ゲームを起動するとConfigフォルダに設定ファイルが生成されます

その他

基(UnityInjector)のリンクを張りconfigファイルを読み込む

プラグインの設定ファイルパスがSybaris\UnityInjector\Config以外を参照していても使用する場合の対応方法(無いとも限らないので復元)

シンボリック・リンクを使う
  1. 管理者権限でコマンドプロンプトを起動する
  2. mklink /d "作成するフォルダのパス" "元になるフォルダのパス"を指定 
    1. 例:mklink /d "C:\KISS\COM3D2\UnityInjector" "C:\KISS\COM3D2\Sybaris\UnityInjector"
  3. C:\KISS\COM3D2\UnityInjector <<===>> C:\KISS\COM3D2\Sybaris\UnityInjector のシンボリック リンクが作成されました。と表示されればOK
  4. 最後にシンボリックリンクが作成されたかを確認しましょう。

この方法だと別階層にアクセスリンクを置くので、既定の階層を参照するプラグインと別階層を参照するプラグインがあっても読み込む為管理しやすくなります。
また、シンボリックリンクはショートカットを新規に作るようなものなので削除する場合は直接リンクフォルダを削除するだけでOKです。

よくあるエラー

・コマンドの構文が間違っています。

ダブルクォートが全角だったり、スペースが全角だったり、または入っていない可能性があります。
※上記の例文をメモ帳にコピペして編集すればほぼ失敗は無いと思います。

・既に存在するファイルを作成することは出来ません。

シンボリックリンク(mklink)はいわば、ショートカットを新規に作るようなものです。
なので、同じ名前のフォルダがリンク元にあると上記のエラーになります。そのフォルダの名前を変えてください。
※当方何を勘違いしたのかリンク先(COM3D2フォルダ)に作成するフォルダを用意していたのが原因でこのエラーに悩まされました。(実際はコマンドプロンプトで名前を指定するだけなので事前準備不要)
参照元(https://ossan-gamer.net/windows-symbolic-link-mkli...

CM3D2のMODをCOM3D2と共用する(HDの容量削減)

上記の手順を踏まえてCM3D2のMODをCOM3D2でも読み込むようにする方法 ※全てのMODが使える訳では無いので注意(AutoConvertorプラグイン使用推奨)
スクリプト系(ks csv nei)は基本的に除外する。

シンボリックリンクの作成はコマンドでやる方法以外にもフリーソフトでいろいろあるので活用しよう。

(必要なフォルダのシンボリックリンクを一つずつ作成する手もあるのでお好みで)
事前にKISS\CM3D2\Sybaris\GameData内に任意のフォルダを作成し共用するMODを纏める。(同名のフォルダを指定出来ない為と識別しやすくする為)
  1. 管理者権限でコマンドプロンプトを起動する
  2. mklink /d "作成するフォルダのパス" "元になるフォルダのパス"を指定
    1. 例:mklink /d "C:\KISS\COM3D2/MOD/CM3D2共用" "C:\KISS\CM3D2\Sybaris\GameData\COM3D2共用"

BepInExの導入

「BepInEx」は、Unityゲーム用のプラグインなどのフレームワーク(しばりすと同じ「MODを導入するためのMOD」)。
これを導入することで、「BepInExを必要とするMOD」を利用できるようになる。
ここでは、しばりす2環境にBepInExを追加導入し、両方のプラグインが動作するようにすることを目指す。

必要なもの

インストール手順

  1. インストールフォルダを開く
  2. BepInExのzipを解凍し、zip内のすべて(BepInExフォルダ、changelog.txtdoorstop_config.iniwinhttp.dll)をインストールフォルダに移動
  3. BepInEx.UnityInjectorLoaderのzipを解凍し、zip内のpluginsフォルダをBepInExフォルダの中に移動
  4. BepInEx.SybarisLoader.Patcherのzipを解凍し、zip内のconfigフォルダとpatchersフォルダをBepInExフォルダの中に移動
  5. Sybarisフォルダの中にあるExIni.dll、UnityInjector.dllMono.Cecil.dllSybaris.Loader.dllCOM3D2.UnityInjector.Patcher.dllを削除
  6. インストールフォルダにあるopengl32.dllを削除
  7. ゲームを起動し、タイトル画面まで行ったらそのまま終了する
  8. BepInExフォルダ内のconfigフォルダにある「org.bepinex.plugins.unityinjectorloader.cfg」をテキストエディタ(メモ帳など)で開き、[Paths]の一番下の行の「UnityInjector = UnityInjector」を「UnityInjector = Sybaris\UnityInjector」に書き換えて上書き保存
  9. ゲームを起動し、しばりす用プラグインが動作していれば成功
補足
  • 上記の手順は、上記2がBepInExのインストール、3と4がしばりす互換プラグインの導入、5と6がしばりす2のアンインストール、7と8がしばりす環境と互換性を持たせるための設定変更、となっている。
  • 手順7は一見無意味に思えるが、これで手順8で編集するファイルが自動生成される(手順7を実行しないと手順8のファイルが無い)。
  • 「削除」が不安ならいきなり削除せず、一度デスクトップなどに「移動」させるのがお勧め。これなら失敗しても戻せる。
  • ネット上には「ゲームを起動するとBepInExフォルダ内にconfig.iniが自動で生成される」という解説があるが、BepInExバージョン5.xでは「configフォルダ内にBepInEx.cfgが自動で生成される」という動作になっている模様。
  • BepInExの初期設定では、しばりす2で表示されていたコンソール(黒いログウィンドウ)は表示されない。表示したい場合は、BepInExフォルダ内のconfigフォルダにある「BepInEx.cfg」をテキストエディタで開き、[Logging.Console]の一番下の行の「Enabled = false」を「Enabled = true」に書き換えて上書き保存し、ゲームを起動すればOK。

結果

COM3D2(インストールフォルダ)
│  COM3D2.exe
│  〜その他いろいろ〜
│
│  changelog.txt
│  doorstop_config.ini
│  winhttp.dll
│  
├─BepInEx
│    ├─cache
│    ├─config
│    │   SybarisLoader.cfg
│    │  
│    ├─core
│    │   0Harmony.dll
│    │   0Harmony.xml
│    │   0Harmony20.dll
│    │   BepInEx.dll
│    │   BepInEx.Harmony.dll
│    │   BepInEx.Harmony.xml
│    │   BepInEx.Preloader.dll
│    │   BepInEx.Preloader.xml
│    │   BepInEx.xml
│    │   HarmonyXInterop.dll
│    │   Mono.Cecil.dll
│    │   Mono.Cecil.Mdb.dll
│    │   Mono.Cecil.Pdb.dll
│    │   Mono.Cecil.Rocks.dll
│    │   MonoMod.RuntimeDetour.dll
│    │   MonoMod.RuntimeDetour.xml
│    │   MonoMod.Utils.dll
│    │   MonoMod.Utils.xml
│    │  
│    ├─patchers
│    │   BepInEx.SybarisLoader.Patcher.dll
│    │  
│    └─plugins
│       └─UnityInjectorLoader
│         BepInEx.UnityInjectorLoader.dll
│         ExIni.dll
├─Mod
│
└─Sybaris
     │  Mono.Cecil.Rocks.dll
     │  〜その他いろいろ〜
     │ 
     ├─GameData
     │
     └─UnityInjector

BepinEx用プラグインの導入

BepinEx用のプラグインは、BepinExフォルダ内の「plugins」に置く。

このページへのコメント

BepinExの導入にあたり、インストールフォルダのパスにマルチバイト文字や半角スペースが含まれているとMaidVoicePitch等のプラグインが動作不良を起こすようです。うまく導入できない場合、インストールフォルダごと別の場所に移動させることで改善する場合があります。

2
Posted by 名無し(ID:LqkO6/upig) 2023年07月06日(木) 21:08:55 返信

wikiが生きていると信じてコメントします。

当方技術的なことは全くの素人で、とりあえずガイドに従って必要そうなプラグインやMODを入れて基本的には問題ないんですが、色々入れた後にエディットの「ランダム」を使おうと思ったら、項目自体はあるのですがクリックしても右側に詳細が表示されなくなっていることに気が付きました。 ログウィンドウの方には赤字で「The given key was not present in the dictionary.」と表示されます。

それで入れたプラグインを調べていたら、「EditMenuFilter.Plugin」の中に「// Random は不要なので消す(COM用) DestroyImmediate( go.transform.Find( "Random" ).GetGameObject() );」という箇所があり、おそらくこれが原因なのだろうということまではわかりました。ただ(当たり前かもしれませんが)このプラグインを削除してもランダムの項目は復活せず、どうすれば復活できるか現在悩んでいます。

何か方法があれば教えてもらえると助かります。

1
Posted by 名無し(ID:pwG4B9hLKw) 2023年01月04日(水) 17:26:29 返信数(4) 返信

何をどう調べたのかわかりませんが、
>DestroyImmediate(go.transform.Find("Random").GetGameObject());
は、EditMenuFilterの文字入力欄にランダムボタンは要らないので、EditMenuFilterの文字入力欄をプロフィールの名前入力欄(姓側)をコピーして作成する際に、名前入力欄にあるランダムで名前を付けるボタンを削除する処理ではないでしょうか?
EditMenuFilterにキャラクターをランダム生成する項目を消す機能はないと思います。

1
Posted by 名無し(ID:oBnzwPOtww) 2023年01月05日(木) 14:27:03

返信ありがとうございます。
ではそこに関しては完全に私の勘違いですので忘れてください…
それではこのような不具合が起こる原因は何なのでしょうか?

私が導入したプラグイン、MOD一覧を載せておきます。
・[CM3D2]おちんぽおおおおお
・【COM専用】VibeYourMaid(Ver2.0.5.2)
・AddYotogiSliderForCOM3D2
・body_analkupa
・CameraUtility
・CM3D2.DanceCameraAdjustPlugin_0.2.0.2
・CM3D2.EditMenuFilter.Plugin_1.1.0.1
・CM3D2.EditMenuSelectedAnime.Plugin_1.0.0.1
・CM3D2.GripMovePlugin_0.8.9.4
・CM3D2.QuickKotimite.plugin0.0.0.1
・CM3D2.ShaderChange.Plugin_v0.1.9999
・CM3D2.ThumbSavePlugin_ver2.0.3
・CM3D2.YASDMinus.Plugin_1.0.0.1
・COM3D2.AlwaysColorChangeEx.Plugin-0.3.2.0_for1.48
・COM3D2.AutoConvertorプラグイン_v0036
・COM3D2.BodyCategoryAdd.Plugin_ver1.0.2
・COM3D2.Custom.Nyou.Plugin
・COM3D2.LookYourMaster.Plugin_0.1.0.4
・COM3D2.Marking.Plugin
・COM3D2.Modloader_1.7.2
・COM3D2.NormalizeExcitePlugin
・COM3D2.QuickEditStart.plugin_ver0.1.0.1
・COM3D2.VibeDanceMaid.Plugin_0.0.1
・COM3D2ColorPaletteHelper_0.4.0
・DirectPorori.Plugin-COM3D2v1.55に勝手に対応
・FaceControl_COM3D2
・LOハイポリボディ_v2.0.1_おまけ付き(改)
・MaidVoicePitch.Plugin_GP01FBFaceFix
・ReiPatcherレス化プラグイン一式_220207(オプションからはDistortCorrectのみ導入
・SAGP02Patch
・ShapeAnimator
・sybaris2
・Textures(もけし)
・ご主人様の挿入ピストンに合わせてメイドさんの腹をぽこぽこさせたりあそこをぱくぱくさせるプラグインv0001
・例外もみ消しくん
・PluginExt.dll

0
Posted by 名無し(ID:pwG4B9hLKw) 2023年01月06日(金) 13:40:02

とりあえず少しずつ外して試していくしか?
まず、ModフォルダをどけてModが原因か確認してから、プラグインを半分つづ外していくとか?

参考になるかわからないけど、自環境(2.25.2)ではランダムは動作しているので、以下のプラグインは無実?
※Pluginの属性(UnityInjector.Attributes.PluginNameAttribute)があるものだけ列挙
競合してるとかならわからないけど。

BackgroundCustom 1.0.0
CM3D2 AddModsSlider 0.1.3.5
CM3D2 Consistent Window Position 0.1.4.0
CM3D2 MaidVoicePitch 0.2.17.4
CM3D2 OffScreen 0.3.9.3
CM3D2 PartsEditPlugin 0.1.7.1
CM3D2 PersonalizedEditSceneSettings 0.1.6.1
CM3D2 Skill Command Shortcut 0.1.6.0
CM3D2 VoiceNormalizer 0.1.4.1
COM3D2 AddBoneSlider 0.0.1.15
COM3D2 ChangeDressing 0.1.0.5
COM3D2 FaceControl 0.0.4.0
COM3D2 YotogiUtil 0.0.0.4
COM3D2.AP148Patch.Plugin 0.0.0.0
COM3D2.Atlus 1.0.1.0
COM3D2.Custom.Nyou.Plugin 1.0
COM3D2.DressPainter.Plugin 0.0.0.0
COM3D2.Fusion 1.0.1.0
COM3D2.HarapokoYFv.Plugin 0.0.0.1
COM3D2.LimitBreak2 0.5.16.0
COM3D2.MaidCapture.Plugin 1.0.0.0
COM3D2.MaidRenamer 1.0.1.0
COM3D2.ModFumbler 0.1.1.0
COM3D2.MPNImportExport 0.2.2.0
COM3D2.MTAccUtil.Plugin 0.31.2.24
COM3D2.NeverEndingOrderMaid 1.3.4.0
COM3D2.NPRShader.Plugin 0.9.3.0
COM3D2.Placebo 1.4.7.0
COM3D2.PluginManager.Plugin 0.0.0.0
COM3D2.Promotion.Plugin 4.1.0.0
COM3D2.PropertyFumbler 0.7.11.0
COM3D2.RabbitHack.Plugin 1.2.0.0
COM3D2.SceneCapture.Plugin 0.3.1.30
COM3D2.ShapeFumbler 0.90.150.0
COM3D2.SIP2SExPatch.Plugin 0.0.0.1
COM3D2.SIPPatch.Plugin 0.0.0.0
COM3D2.SKAccUtil.Plugin 0.9.2.14
COM3D2.SkirtLength.Plugin 1.1.0.0
COM3D2.SlimeShader.Plugin 1.0.1.1
COM3D2.StudioExCameraManager.Plugin 2.1.0.0
COM3D2.StudioExCounterTwist.Plugin 0.1.0.0
COM3D2.StudioExFaceManager.Plugin 1.3.0.0
COM3D2.StudioExRelocateSS.Plugin 1.0.2.0
COM3D2.StudioItemPlace.Plugin 1.3.0.0
COM3D2.StudioUnlimitPatch.Plugin 0.0.0.0
Com3d2.ToukaScreenShot.Plugin 0.1.0.2
COM3D2.WindowFumbler 1.3.13.0
COM3D2.ぷるぷる 1.2.3.0
COM3D2.透ケベ 1.1.2.0
COM3D25_ACCex 0.3.7.0
COM3D2X.AirKashizuki 1.0.1.0
COM3D2X.LimitBreak 0.3.3.0
COM3D2X.StudioSaveMoreAndMore 1.1.3.0
COM3D2X.VariousDisabler 1.0.1.0
COM3D2X.YourName 1.0.1.1
CustomResolutionScreenShot 1.2.2
DanceCameraAdujst 0.2.0.2
DanceCameraMotion.Plugin 6.5.2
DanceTransformFix 1.0.0.0
DistortCorrect 0.4.0.5
DynBoneEdit 0.9.7
EditMenuFilter 1.4.1.0
EditMenuSelectedAnime 1.0.0.1
EffekseerPlayerPlugin 0.3.1
FreeModeApp 1.0.0.2
LookAtYourMaid 0.2.0.5
MaidManualSort 1.1.1
Multiple maids 22.2
Shader Change 0.1.9999
ShapeAnimator 0.3.8.3
SmoothAnimUtil Plugin 0.0.0.14
VibeYourMaid 2.0.5.2

・・・誰だかばれるなこれ。

1
Posted by 名無し(ID:I5jAThriKA) 2023年01月06日(金) 20:09:47

わざわざリストアップまでしていただいてありがとうございます。重要な要素を忘れてしまっていましたが私の環境も2.25.2+GP-01, 02, 01Fb導入済みです。

また一度opengl32.dllをリネームしてエディット画面を開いてみたところ、ランダムの項目がしっかり表示されたのでやはりプラグインかMODに原因があるようです。とりあえずアドバイス通りプラグインをつけ外ししつつ確認してみようと思います。
ありがとうございました。

0
Posted by 名無し(ID:pwG4B9hLKw) 2023年01月07日(土) 17:53:01

複数メイド撮影を3d2.5で使う方法ってありますか?
もしくはアプデ後のオダメで使えるようにする方法ってありますか?

0
Posted by 名無し(ID:eUrsEwYmvA) 2022年12月30日(金) 23:33:01 返信

この作業やったら自キャラエディット後に無限ロードするようになりましたヤッタゼ!

0
Posted by 名無し(ID:392kcAw1UQ) 2022年12月18日(日) 01:49:30 返信

これwiki生きてる?

0
Posted by 初心 2022年05月24日(火) 01:08:36 返信数(1) 返信

死んではいない?

1
Posted by 名無し(ID:vF4zzuzhpg) 2022年05月31日(火) 22:36:46

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

どなたでも編集できます