拡張子「.ks」ファイルは夜伽やイベントのスクリプトで使われている。
ここではksファイルの改造方法や、よく使う記述をまとめておく。
スクリプト改造は下手するとゲームの進行や各種フラグ管理に悪影響を及ぼす恐れもある為、
実行する前には必ずセーブデータをバックアップしておく事。
最悪の場合でもセーブデータさえ保存してあれば何とかなるので。
実行する前には必ずセーブデータをバックアップしておく事。
最悪の場合でもセーブデータさえ保存してあれば何とかなるので。
・スクリプトファイル(.ks)は一般的なテキストエディタで編集可能(Windowsのメモ帳など)。
内容は公式イベント用スクリプトファイルを開いて中身を見ればなんとなく把握できる・・・筈。
本格的に編集する場合は.ksファイルの改造支援ツール「しぇるぱ(Shelper)」を使う。
詳細は改造wikiを参照。
COM用のしぇるぱ2|もあるが、更新されていないので不十分。
・COM環境ではModLoaderプラグイン(又はMaidLoaderプラグイン)を導入すれば、MODフォルダ内の.ksファイルの読み込みが可能になる。
公式ファイルと同名のksファイルを用意すれば上書きされる。
厳密には・・・
ModLoaderにはarcファイルの読み込み機能があり、Gamedataフォルダ内と同名のarcファイルを
MODフォルダに入れておけばそれが優先読み込みされる(公式ファイルを上書きできる)。
更に、MODフォルダ内のksファイルをarcに変換して一時的に保存する機能もあるので
MODフォルダ内にksファイルを入れておけば、一時arcファイル内のksの内容が実行される。
ksが直接実行されるわけではないので、ksの内容を変更した際にはゲームを再起動して一時ファイルを再生成しないと更新されない。
一時ファイルはCOM3D2フォルダ直下の「ML_temp」フォルダ内に「ML_temp.arc」として保存されている。
ksファイル数があまりにも多いとゲーム起動時のarcへの変換作業に時間がかかり
起動時間が伸びてしまうので、できるだけ無駄な物は入れないよう注意。
内容は公式イベント用スクリプトファイルを開いて中身を見ればなんとなく把握できる・・・筈。
本格的に編集する場合は.ksファイルの改造支援ツール「しぇるぱ(Shelper)」を使う。
詳細は改造wikiを参照。
COM用のしぇるぱ2|もあるが、更新されていないので不十分。
・COM環境ではModLoaderプラグイン(又はMaidLoaderプラグイン)を導入すれば、MODフォルダ内の.ksファイルの読み込みが可能になる。
公式ファイルと同名のksファイルを用意すれば上書きされる。
厳密には・・・
ModLoaderにはarcファイルの読み込み機能があり、Gamedataフォルダ内と同名のarcファイルを
MODフォルダに入れておけばそれが優先読み込みされる(公式ファイルを上書きできる)。
更に、MODフォルダ内のksファイルをarcに変換して一時的に保存する機能もあるので
MODフォルダ内にksファイルを入れておけば、一時arcファイル内のksの内容が実行される。
ksが直接実行されるわけではないので、ksの内容を変更した際にはゲームを再起動して一時ファイルを再生成しないと更新されない。
一時ファイルはCOM3D2フォルダ直下の「ML_temp」フォルダ内に「ML_temp.arc」として保存されている。
ksファイル数があまりにも多いとゲーム起動時のarcへの変換作業に時間がかかり
起動時間が伸びてしまうので、できるだけ無駄な物は入れないよう注意。
「Gamedata」の「csv.arc」内に、各種リストの.neiファイルが梱包されている。
例えば公式スタジオ用アイテムは「phot_bg_object_list.nei」。
neiファイルはSybaris Arc Editorで内容を参照できる。
リストに見当たらないアイテムは、使用されているイベントのスクリプトを調べる。
よく使いそうなスタジオ用アイテムのリスト
・CM3D2(1.68)のスタジオ用アイテムリスト
・COM3D2(2.3.0)のスタジオ用アイテムリスト
・COM3D2(2.3.0)のデスクアイテムリスト
例えば公式スタジオ用アイテムは「phot_bg_object_list.nei」。
neiファイルはSybaris Arc Editorで内容を参照できる。
リストに見当たらないアイテムは、使用されているイベントのスクリプトを調べる。
よく使いそうなスタジオ用アイテムのリスト
・CM3D2(1.68)のスタジオ用アイテムリスト
・COM3D2(2.3.0)のスタジオ用アイテムリスト
・COM3D2(2.3.0)のデスクアイテムリスト
・メイド番号、カテゴリ、アイテムmenuを指定する。以下はメイド0番に右手用ピンクバイブを持たせる例。
@ItemSet temp maid=0 category=handitem item=crc_HandItemR_VibePink_I_.menu
@AllProcPropSeqStart maid=0 sync
・アイテムの解除もメイド番号を指定する。
@eval exp="tf['メイド番号'] = 0"
@call file="function" label="*アイテム解除"
・手持ちアイテムを手のIKボーンにアタッチする場合、モーションによっては
IKボーンが入っていなかったり角度が合わない場合もあるので注意。
調整の手間はかかるが、IKボーンではなくボディボーンにアタッチすると確実。
任意の箇所に以下のスクリプトと、アイテムの「内部名(src)」「スクリプト内での管理名(name)」「位置(x,y,z)」「角度(rx,ry,rz)」を記述すれば表示される。
管理名は自分で適当に決める。同じ管理名の物は後の指示で上書きされるので、同一アイテムを複数出す場合には違う名前にする。
位置と角度は公式スタジオモードで該当背景にアイテムを配置すれば調べられる。
・アイテム配置例(メイド部屋の床とベッド上にゴムを配置)
@AddPrefabBg src=Odogu_Condom_Close name=ゴム閉1 x=1.100 y=-0.031 z=-1.100 rx=-90 ry=-30 rz=0
@AddPrefabBg src=Odogu_Condom_Close name=ゴム閉2 x=-0.048 y=0.62 z=-1.697 rx=-90 ry=27.58382 rz=0
・消去は管理名だけ指定する
@DelPrefabBg name=ゴム閉1
@DelPrefabBg name=ゴム閉2
・背景用アイテム(大道具、小道具)の全削除
@DelPrefabBgAll
・アイテム呼び出しには少し時間がかかるので、暗転中に呼び出すと良い。
・背景用アイテムの拡大縮小には「@SetPrefabBgTransformData」を使う。
@AddPrefabBg src=nei name=隠しねい人形 x=-0.5 y=0 z=1.59 rx=0 ry=180 rz=0
@SetPrefabBgTransformData name=隠しねい人形 sx=2 sy=2 sz=2
管理名は自分で適当に決める。同じ管理名の物は後の指示で上書きされるので、同一アイテムを複数出す場合には違う名前にする。
位置と角度は公式スタジオモードで該当背景にアイテムを配置すれば調べられる。
・アイテム配置例(メイド部屋の床とベッド上にゴムを配置)
@AddPrefabBg src=Odogu_Condom_Close name=ゴム閉1 x=1.100 y=-0.031 z=-1.100 rx=-90 ry=-30 rz=0
@AddPrefabBg src=Odogu_Condom_Close name=ゴム閉2 x=-0.048 y=0.62 z=-1.697 rx=-90 ry=27.58382 rz=0
・消去は管理名だけ指定する
@DelPrefabBg name=ゴム閉1
@DelPrefabBg name=ゴム閉2
・背景用アイテム(大道具、小道具)の全削除
@DelPrefabBgAll
・アイテム呼び出しには少し時間がかかるので、暗転中に呼び出すと良い。
・背景用アイテムの拡大縮小には「@SetPrefabBgTransformData」を使う。
@AddPrefabBg src=nei name=隠しねい人形 x=-0.5 y=0 z=1.59 rx=0 ry=180 rz=0
@SetPrefabBgTransformData name=隠しねい人形 sx=2 sy=2 sz=2
「三角木馬」の場合
@AddPrefabBg src=Odogu_Sankakumokuba name=三角木馬 x=-0.0 y=0 z=-0.0 rx=-90 ry=0 rz=0
@MovePrefabToChara maid=0 bone="Bip01" name="三角木馬" offsx=0.0 offsy=-0.0 offsz=0.0 time=3000
「拘束騎乗位椅子_男」の場合
@AddPrefabBg src=Odogu_KousokuKijyouiChair name=拘束騎乗位椅子 x=0.0 y=0.0 z=0.0 rx=-90 ry=0 rz=0
@MovePrefabToChara man=0 bone="ManBip" name="拘束騎乗位椅子" offsx=0.0 offsy=-0.5086 offsz=0.0329 time=3000
@AddPrefabBg src=Odogu_Sankakumokuba name=三角木馬 x=-0.0 y=0 z=-0.0 rx=-90 ry=0 rz=0
@MovePrefabToChara maid=0 bone="Bip01" name="三角木馬" offsx=0.0 offsy=-0.0 offsz=0.0 time=3000
「拘束騎乗位椅子_男」の場合
@AddPrefabBg src=Odogu_KousokuKijyouiChair name=拘束騎乗位椅子 x=0.0 y=0.0 z=0.0 rx=-90 ry=0 rz=0
@MovePrefabToChara man=0 bone="ManBip" name="拘束騎乗位椅子" offsx=0.0 offsy=-0.5086 offsz=0.0329 time=3000
・該当箇所に以下のスクリプトとアイテムの「内部名(src)」「スクリプト内での管理名(name)」「位置(x,y,z)」「角度(rx,ry,rz)」を記述。
動画はGamdData内の格納フォルダ名と.ineファイル(動画)名の指定。下記の例はAVパックのムービー。
一般的な動画ファイル(mp4等)の拡張子を「.ine」に変えれば自作動画でも使える。
@AddPrefabBg src=Odogu_ShinShitsumu_Monitor_Night name=モニター x=-2.7 y=0.65 z=-3.7 rx=0 ry=0 rz=0
@ShitsumuRoomMonitoreContro play loop file=GameData/movie_av001/av001_003.ine
動画はGamdData内の格納フォルダ名と.ineファイル(動画)名の指定。下記の例はAVパックのムービー。
一般的な動画ファイル(mp4等)の拡張子を「.ine」に変えれば自作動画でも使える。
@AddPrefabBg src=Odogu_ShinShitsumu_Monitor_Night name=モニター x=-2.7 y=0.65 z=-3.7 rx=0 ry=0 rz=0
@ShitsumuRoomMonitoreContro play loop file=GameData/movie_av001/av001_003.ine
メイド番号、顔menu内の表情ブレンド名、開始前の待機時間(単位はミリ秒=1/1000秒)
・例:「恥ずかしい」の2.3秒後に「まぶたぎゅ」実行
@face maid=0 name=恥ずかしい
@face maid=0 name=まぶたギュ wait=2300
・例:「びっくり」の1秒後に「恥ずかしい」、その1秒後に「まぶたぎゅ」
@face maid=0 name=びっくり
@face maid=0 name=恥ずかしい wait=1000
@face maid=0 name=まぶたギュ wait=2000
命令は上から順に実行されるが、hitretで区切る前の記述は殆ど同時に実行されると考えて良い。
waitは実行タイミングからの待機時間なので、1秒ずつズラす場合はこのような表記となる。
・例:「恥ずかしい」の2.3秒後に「まぶたぎゅ」実行
@face maid=0 name=恥ずかしい
@face maid=0 name=まぶたギュ wait=2300
・例:「びっくり」の1秒後に「恥ずかしい」、その1秒後に「まぶたぎゅ」
@face maid=0 name=びっくり
@face maid=0 name=恥ずかしい wait=1000
@face maid=0 name=まぶたギュ wait=2000
命令は上から順に実行されるが、hitretで区切る前の記述は殆ど同時に実行されると考えて良い。
waitは実行タイミングからの待機時間なので、1秒ずつズラす場合はこのような表記となる。
顔モデルのmenuで設定されているblendset(複数の表情シェイプキーのセット)を呼び出す場合。
blendsetに書かれてない指定をするとエラーが出るので注意。
メイド番号、ブレンドセット名
例
@faceblend maid=0 name=頬3涙1よだれ
blendsetに書かれてない指定をするとエラーが出るので注意。
メイド番号、ブレンドセット名
例
@faceblend maid=0 name=頬3涙1よだれ
表情シェイプキーを個別に呼び出す場合は@FaceBlend2を使う。
メイド番号、表情シェイプキー名(頬[0〜3]・涙[0〜3]・よだれ・玉涙・赤面・ショック)
例:
@FaceBlend2 maid=0 頬2 涙0
@FaceBlend2 maid=0 頬1 涙1 よだれ 玉涙
リセット:
@FaceBlend2 maid=0 reset
メイド番号、表情シェイプキー名(頬[0〜3]・涙[0〜3]・よだれ・玉涙・赤面・ショック)
例:
@FaceBlend2 maid=0 頬2 涙0
@FaceBlend2 maid=0 頬1 涙1 よだれ 玉涙
リセット:
@FaceBlend2 maid=0 reset
表情ブレンドの口開けが控え目なのと、ボイスに合わせた口パクで変化する都合で閉じがちなので
フェラの場面は以下を使うと良い。
@OpenMouth maid=0 open 口を大きく開けたままにする
@OpenMouth maid=0 close 口を閉じる(openの解除)
フェラの場面は以下を使うと良い。
@OpenMouth maid=0 open 口を大きく開けたままにする
@OpenMouth maid=0 close 口を閉じる(openの解除)
・メイドのカメラ注視
@EyeToCamera maid=0 move=無し
@EyeToCamera maid=0 move=顔を向ける
@EyeToCamera maid=0 move=顔をそらす
@EyeToCamera maid=0 move=目だけ向ける
・メイドが指定ボーンを注視する
例:メイド0番が男0番の局部を見る場合
@EyeToTarget maid=0 target=man:0 blend=0 bone="chinko1"
@EyeToCamera maid=0 move=無し
@EyeToCamera maid=0 move=顔を向ける
@EyeToCamera maid=0 move=顔をそらす
@EyeToCamera maid=0 move=目だけ向ける
・メイドが指定ボーンを注視する
例:メイド0番が男0番の局部を見る場合
@EyeToTarget maid=0 target=man:0 blend=0 bone="chinko1"
カメラが注視対象をロックオンした状態になる。
立ちポーズから座り込んで挿入する騎乗位などで使われている。
メイド番号、注視するボーン、注視対象からのオフセット値、時間(ミリ秒)を指定する。
例:0番のメイドの「Bip01 Spine」を注視して5秒間追従する。
@CameraChase maid=0 chase="Bip01 Spine" onece offsx=0.0 offsy=0.3 offsz=0.0 time=5000
例:カメラがメイド0番のボーン「Bip01 Neck」を中心に動く
@CameraChase maid=0 chase="Bip01 Neck" onece offsx=0.0 offsy=-0.05 offsz=0.0 time=0
注視を停止する場合
@CameraChaseStop
立ちポーズから座り込んで挿入する騎乗位などで使われている。
メイド番号、注視するボーン、注視対象からのオフセット値、時間(ミリ秒)を指定する。
例:0番のメイドの「Bip01 Spine」を注視して5秒間追従する。
@CameraChase maid=0 chase="Bip01 Spine" onece offsx=0.0 offsy=0.3 offsz=0.0 time=5000
例:カメラがメイド0番のボーン「Bip01 Neck」を中心に動く
@CameraChase maid=0 chase="Bip01 Neck" onece offsx=0.0 offsy=-0.05 offsz=0.0 time=0
注視を停止する場合
@CameraChaseStop
「COM3D2.ComSh.Plugin」を使えば、その場でのカメラ位置を調べられる(コマンド入力「camera」)。
ただし、マウスホイールでのカメラ移動はカウントされないので
マウスホイール押し込み+キーボードWASDでの移動を使う。
表示される情報の「target」がカメラ位置の座標(x,y,z)。「rotate」が角度(y,xの順に表示されているので注意)
位置はxが左右、yが上下、zが前後。
カメラの画角や注視設定でも見え方が違ってくるので注意。
特に画角が大きい場面は通常プレイとVRプレイで被写体との距離感がかなり違ってしまう。
@Cameraのradius=1.0だと同じくらいの印象になる。1.0以上(広角)だとVRでは近くなり、1.0以下(望遠)では遠くなる。
フェードイン/アウトを挟まずにカメラ位置を変更すると、通常プレイでは問題ないが
VRプレイ時にカメラが正常に切り替わらなくなるので要注意。
ただし、マウスホイールでのカメラ移動はカウントされないので
マウスホイール押し込み+キーボードWASDでの移動を使う。
表示される情報の「target」がカメラ位置の座標(x,y,z)。「rotate」が角度(y,xの順に表示されているので注意)
位置はxが左右、yが上下、zが前後。
カメラの画角や注視設定でも見え方が違ってくるので注意。
特に画角が大きい場面は通常プレイとVRプレイで被写体との距離感がかなり違ってしまう。
@Cameraのradius=1.0だと同じくらいの印象になる。1.0以上(広角)だとVRでは近くなり、1.0以下(望遠)では遠くなる。
フェードイン/アウトを挟まずにカメラ位置を変更すると、通常プレイでは問題ないが
VRプレイ時にカメラが正常に切り替わらなくなるので要注意。
・アタッチ: メイドor男の番号、アタッチ名、ターゲット指定、ターゲットボーン指定、オフセット指定、タイプ指定(位置、角度)
@IKAttachBone Src=man:0 SrcBone="右手" Target=maid:0 TargetBone="_IK_thighR" offsetX=0 offsetY=0 offsetZ=0 attach_type=NewPoint
@IKAttachBone Src=man:0 SrcBone="右手" Target=maid:0 TargetBone="_IK_thighR" offsetX=0 offsetY=0 offsetZ=0 attach_type=Rotate
・アタッチ解除: メイドor男の番号指定、アタッチ名指定
@IKDetach src=maid:0 SrcBone="左手"
@IKDetach src=man:0 SrcBone="右手"
・アタッチ(簡易版):TargetPointで所定の部位名を指定するが、アタッチできる場所が限られる。
@IKAttachPoint Src=man:0 SrcBone="左手" Target=maid:0 TargetObj="body" TargetPoint="乳首左" offsetX=0.1 offsetY=-0.01 offsetZ=0.01
@IKAttachPoint Src=man:0 SrcBone="右手" Target=maid:0 TargetObj="body" TargetPoint="乳首右" offsetX=0.1 offsetY=-0.01 offsetZ=-0.01
胸揺れは物理設定で揺れる物と、物理設定は無効化してモーションで動かす物の2種類がある。
基本的にはモーションの定義ファイルで設定されている。
@BustMove maid=0 move=non :モーションは使わず物理設定で胸揺れ
@BustMove maid=0 move=stop :物理設定の胸揺れを止める
@BustMove maid=0 move=Rstop :右胸だけ物理設定の胸揺れを止める
@BustMove maid=0 move=Lstop :右胸だけ物理設定の胸揺れを止める
基本的にはモーションの定義ファイルで設定されている。
@BustMove maid=0 move=non :モーションは使わず物理設定で胸揺れ
@BustMove maid=0 move=stop :物理設定の胸揺れを止める
@BustMove maid=0 move=Rstop :右胸だけ物理設定の胸揺れを止める
@BustMove maid=0 move=Lstop :右胸だけ物理設定の胸揺れを止める
; //◆「メイド0」カスタム固定、肩、腕
@PropSet temp maid=0 category=UdeScl val=50
@PropSet temp maid=0 category=kata val=50
@AllProcPropSeqStart maid=0 fix ←最後にこれを忘れないように。
@PropSet temp maid=0 category=UdeScl val=50
@PropSet temp maid=0 category=kata val=50
@AllProcPropSeqStart maid=0 fix ←最後にこれを忘れないように。
@eval exp="tf['メイド番号'] = 0"
@call file="function" label="*カスタム固定解除"
@PropReset maid=0 category=KubiScl
@PropReset maid=0 category=UdeScl
@PropReset maid=0 category=DouPer
@PropReset maid=0 category=sintyou
@PropReset maid=0 category=kata
@AllProcPropSeqStart maid=0 sync ←最後にこれを忘れないように。
@call file="function" label="*カスタム固定解除"
@PropReset maid=0 category=KubiScl
@PropReset maid=0 category=UdeScl
@PropReset maid=0 category=DouPer
@PropReset maid=0 category=sintyou
@PropReset maid=0 category=kata
@AllProcPropSeqStart maid=0 sync ←最後にこれを忘れないように。
・ハイポリボディのボテ腹の数値を100にする場合(timeは変化にかかる時間)
@if exp= "IsCRCBody('maid', 0) == true"
@PropSetAnimation maid=0 category=HaraN from=0 to=100 time=1 temp
@endif
他の体型スライダー項目も変更できる(categoryで指定)。
名称は以下を参照。
http://fumble.jp/com3d2/dokuwiki/doku.php?id=appen...
@if exp= "IsCRCBody('maid', 0) == true"
@PropSetAnimation maid=0 category=HaraN from=0 to=100 time=1 temp
@endif
他の体型スライダー項目も変更できる(categoryで指定)。
名称は以下を参照。
http://fumble.jp/com3d2/dokuwiki/doku.php?id=appen...
パーティクルはモーションの定義ファイル内で指定してモーションと一緒に再生する方法と、
イベントスクリプト内に直に書く方法がある。
射精モーションと連動して表示されるパーティクル等は前者。
イベントスクリプト内に直に書く方法がある。
射精モーションと連動して表示されるパーティクル等は前者。
夜伽モーションの定義ファイル内に潮吹きの指定がある
例:立ち愛撫の絶頂モーション定義の場合(sex_tati_aibu.ks)
↓
@Motion maid=0 mot=tati_aibu_zeccyou_f_ONCE_ loop=false blend=0 ←メイドと男の絶頂モーション指定
@Motion man=0 mot=tati_aibu_zeccyou_m_ONCE_ loop=false blend=0
; //絶頂
@wait time=2000
@AddPrefabChara maid=0 src=Particle/pSio2_cm3D2 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0 ←潮吹きパーティクルの指定
@MotionNextAbs maid=0 mot=tati_aibu_zeccyougo_f loop=true ←メイドと男の絶頂後モーション指定
@MotionNextAbs man=0 mot=tati_aibu_zeccyougo_m loop=true
@s
・パーティクルをIKボーンではなくBip01系ボーンにアタッチする場合、ボーン名を「Bip01 Head」と書くと
空白がある為にBip01しか認識されないので「""」で囲んだ記述にする("Bip01 Head"と書く)。
例:立ち愛撫の絶頂モーション定義の場合(sex_tati_aibu.ks)
↓
@Motion maid=0 mot=tati_aibu_zeccyou_f_ONCE_ loop=false blend=0 ←メイドと男の絶頂モーション指定
@Motion man=0 mot=tati_aibu_zeccyou_m_ONCE_ loop=false blend=0
; //絶頂
@wait time=2000
@AddPrefabChara maid=0 src=Particle/pSio2_cm3D2 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0 ←潮吹きパーティクルの指定
@MotionNextAbs maid=0 mot=tati_aibu_zeccyougo_f loop=true ←メイドと男の絶頂後モーション指定
@MotionNextAbs man=0 mot=tati_aibu_zeccyougo_m loop=true
@s
・パーティクルをIKボーンではなくBip01系ボーンにアタッチする場合、ボーン名を「Bip01 Head」と書くと
空白がある為にBip01しか認識されないので「""」で囲んだ記述にする("Bip01 Head"と書く)。
例:ピストン中を配置→ピストン中を消去→ピストン強を配置
(ループするパーティクルの場合は「name=」で管理名を設定して消去する)
@AddPrefabChara maid=0 src=Particle/pPistonNormal_cm3D2 name=ピストン中 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0
@DelPrefabChara maid=0 name=ピストン中
@AddPrefabChara maid=0 src=Particle/pPistonHard_cm3D2 name=ピストン強 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0
・1人のメイドに同一パーティクルは同時に複数使えないようなので(最後に指定した1つだけ表示される)、
「name=」で管理名を付けて別物扱いにして使う。
例:メイド0番の前穴と尻穴に、同時に精液垂れを表示する場合
@AddPrefabChara maid=0 src=Particle/pSeieki_tare name=精液垂れ1 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=0.0 rz=0.0
@AddPrefabChara maid=0 src=Particle/pSeieki_tare name=精液垂れ2 bone=_IK_anal x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=0.0 rz=0.0
(ループするパーティクルの場合は「name=」で管理名を設定して消去する)
@AddPrefabChara maid=0 src=Particle/pPistonNormal_cm3D2 name=ピストン中 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0
@DelPrefabChara maid=0 name=ピストン中
@AddPrefabChara maid=0 src=Particle/pPistonHard_cm3D2 name=ピストン強 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=180.0 rz=0.0
・1人のメイドに同一パーティクルは同時に複数使えないようなので(最後に指定した1つだけ表示される)、
「name=」で管理名を付けて別物扱いにして使う。
例:メイド0番の前穴と尻穴に、同時に精液垂れを表示する場合
@AddPrefabChara maid=0 src=Particle/pSeieki_tare name=精液垂れ1 bone=_IK_vagina x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=0.0 rz=0.0
@AddPrefabChara maid=0 src=Particle/pSeieki_tare name=精液垂れ2 bone=_IK_anal x=0.0 y=-0.0 z=-0.01 rx=0.0 ry=0.0 rz=0.0
・背景に直に配置する例
@AddPrefabBg src=Particle/pYuge_LargeBathRoom name=湯気 x=-5.0 y=0.25 z=-2.30 rx=90.0 ry=0.0 rz=0.0
「Particle/」が不要な場合もある
@AddPrefabBg src=pSteam002_cm3D2 name=湯気 x=0 y=0 z=0 rx=90 ry=0 rz=0
・背景に設置したオブジェクトに付ける例(設置した鍋に湯気パーティクルを付ける)
@AddPrefabBg src=Odogu_Nabe name=鍋 x=-0.224 y=0.8126 z=-0.794 rx=-90 ry=90 rz=0
@AddPrefabBg src=pSteam002_cm3D2 name=鍋2 dest=鍋 x=0 y=0 z=0 rx=90 ry=0 rz=0
・@AddPrefabChara、@AddPrefabBgで設定した管理名を使って消去する
例
@DelPrefabChara name=精液垂れ1
@DelPrefabBg name=湯気
例
@DelPrefabChara name=精液垂れ1
@DelPrefabBg name=湯気
@DelPrefabCharaAll maid=0
・メイド又は男に付けたパーティクルを一括消去する。
maid、manの指定を忘れると「スクリプトのman/maid指定が不正です。」とエラーが発生するので注意。
@DelPrefabBgAll
・背景に配置したパーティクルを一括消去する。
・メイド又は男に付けたパーティクルを一括消去する。
maid、manの指定を忘れると「スクリプトのman/maid指定が不正です。」とエラーが発生するので注意。
@DelPrefabBgAll
・背景に配置したパーティクルを一括消去する。
イベント中に衣装を「del.menu」で消すと、そのメイドのデータが再ロードされるまで元に戻らなくなる。
事前に着用しているのと同じカテゴリのアイテムを呼び出したり、使用中のカテゴリを消す指定のある
アイテムを呼び出した場合も同様(眼鏡着用時にアイマスクを呼び出す等)。
回想モードではモード終了するまで消去アイテムが元に戻らなくなるので、できるだけ「@ItemMask」の
非表示で済ませるか、個別に「@ItemReset」を実行、またはスクリプトの最後で全リセット(後述のカス子リセット)
を実行して元の状態に戻しておく。
事前に着用しているのと同じカテゴリのアイテムを呼び出したり、使用中のカテゴリを消す指定のある
アイテムを呼び出した場合も同様(眼鏡着用時にアイマスクを呼び出す等)。
回想モードではモード終了するまで消去アイテムが元に戻らなくなるので、できるだけ「@ItemMask」の
非表示で済ませるか、個別に「@ItemReset」を実行、またはスクリプトの最後で全リセット(後述のカス子リセット)
を実行して元の状態に戻しておく。
・カテゴリ名は大文字小文字の混在した公式表記を使うので注意。間違っていると動作しない。
例:メイド0番に梅子の水着を着せる場合
@ItemSet temp maid=0 category=mizugi item=Dress285_mizugi_I_.menu
@AllProcPropSeqStart maid=0 sync
例:メイド0番のボトムスを消去する場合(del.menuで消すとmask指定では戻せないので注意)
@ItemSet temp maid=0 category=skirt item=_I_skirt_del.menu
@AllProcPropSeqStart maid=0 sync
例:メイド0番の特定カテゴリをリセットする場合(変更前の初期状態に戻す)
@ItemReset maid=0 category=accHead
@AllProcPropSeqStart maid=0 sync
・@AllProcPropSeqStart maid=0 sync でmenuの変更が適用される。
書き忘れると、次の@AllProcPropSeqStart記述まで適用されないので注意。
複数のmenuの変更をまとめて実行できるが、同カテゴリの物が並んでいる場合は後の物で上書きされる。後述するタトゥーでは要注意。
例:
@ItemSet temp maid=0 category=mizugi item=Dress285_mizugi_I_.menu
@ItemSet temp maid=0 category=skirt item=_I_skirt_del.menu
@AllProcPropSeqStart maid=0 sync
例:衣装のセットメニューを適用する場合
@ItemSet temp maid=0 category=set_mywear item=_I_mywear236_z1.menu
@AllProcPropSeqStart maid=0 sync
例:メイド0番に梅子の水着を着せる場合
@ItemSet temp maid=0 category=mizugi item=Dress285_mizugi_I_.menu
@AllProcPropSeqStart maid=0 sync
例:メイド0番のボトムスを消去する場合(del.menuで消すとmask指定では戻せないので注意)
@ItemSet temp maid=0 category=skirt item=_I_skirt_del.menu
@AllProcPropSeqStart maid=0 sync
例:メイド0番の特定カテゴリをリセットする場合(変更前の初期状態に戻す)
@ItemReset maid=0 category=accHead
@AllProcPropSeqStart maid=0 sync
・@AllProcPropSeqStart maid=0 sync でmenuの変更が適用される。
書き忘れると、次の@AllProcPropSeqStart記述まで適用されないので注意。
複数のmenuの変更をまとめて実行できるが、同カテゴリの物が並んでいる場合は後の物で上書きされる。後述するタトゥーでは要注意。
例:
@ItemSet temp maid=0 category=mizugi item=Dress285_mizugi_I_.menu
@ItemSet temp maid=0 category=skirt item=_I_skirt_del.menu
@AllProcPropSeqStart maid=0 sync
例:衣装のセットメニューを適用する場合
@ItemSet temp maid=0 category=set_mywear item=_I_mywear236_z1.menu
@AllProcPropSeqStart maid=0 sync
イベントスクリプト内でも複数のタトゥーが付けられるが、同じタイミングで付ける場合は
個別に「@AllProcPropSeqStart」の実行が必要なので注意。
例:以下の記述だとtatoo2だけが表示される
@ItemSet temp maid=0 category=accTatoo item=tatoo1_i_.menu
@ItemSet temp maid=0 category=accTatoo item=tatoo2_i_.menu
@AllProcPropSeqStart maid=0 sync
例:以下の記述だとtatoo1とtatoo2の両方が表示される
@ItemSet temp maid=0 category=accTatoo item=tatoo1_i_.menu
@AllProcPropSeqStart maid=0 sync
@ItemSet temp maid=0 category=accTatoo item=tatoo2_i_.menu
@AllProcPropSeqStart maid=0 sync
個別に「@AllProcPropSeqStart」の実行が必要なので注意。
例:以下の記述だとtatoo2だけが表示される
@ItemSet temp maid=0 category=accTatoo item=tatoo1_i_.menu
@ItemSet temp maid=0 category=accTatoo item=tatoo2_i_.menu
@AllProcPropSeqStart maid=0 sync
例:以下の記述だとtatoo1とtatoo2の両方が表示される
@ItemSet temp maid=0 category=accTatoo item=tatoo1_i_.menu
@AllProcPropSeqStart maid=0 sync
@ItemSet temp maid=0 category=accTatoo item=tatoo2_i_.menu
@AllProcPropSeqStart maid=0 sync
・指定するのはカテゴリではなくスロット名なので注意。
スロット名(大文字小文字の混在した公式表記)を書き間違えるとTbodyエラーで進行不能になるので注意。
例:トップス(wear)を非表示にする
@ItemMask maid=0 slot=wear hide=false
例:トップス(wear)を表示する
@ItemMask maid=0 slot=wear hide=true
スロット名(大文字小文字の混在した公式表記)を書き間違えるとTbodyエラーで進行不能になるので注意。
例:トップス(wear)を非表示にする
@ItemMask maid=0 slot=wear hide=false
例:トップス(wear)を表示する
@ItemMask maid=0 slot=wear hide=true
・一度指定すると特定カテゴリ以外は非表示のままになる。
リセットすれば戻る。
残す衣装以外のアイテムは@ItemMaskでの制御が効かなくなり、@ItemSetでの追加も効かないので注意。
細かくアクセ類を表示/非表示したい場合は@ItemMaskModeは使わずに@ItemMaskでスロットを個別に指定する。
・例外なのか、夜伽では@ItemMaskModで一括脱衣させても夜伽のUIから衣装の着脱が行える。
特定の夜伽の初期状態を変更したい場合には有効。
リセットすれば戻る。
残す衣装以外のアイテムは@ItemMaskでの制御が効かなくなり、@ItemSetでの追加も効かないので注意。
細かくアクセ類を表示/非表示したい場合は@ItemMaskModeは使わずに@ItemMaskでスロットを個別に指定する。
全マスク解除 | @ItemMaskMode maid=0 type=None |
下着だけにする | @ItemMaskMode maid=0 type=Underwear |
水着だけにする(靴下も残る) | @ItemMaskMode maid=0 type=Swim |
全裸にする(アクセは消えない) | @ItemMaskMode maid=0 type=Nude |
特定の夜伽の初期状態を変更したい場合には有効。
以下はメイド0番の場合。
・script.arc/general内「function.ks」に、呼び出されて実行する命令がまとめられている。
@call file="function"の元になっている以下の記述を直にしてもOK。
衣装を全てリセット | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*カス子リセット" |
手持ちアイテム解除 | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*アイテム解除" |
施設コスチューム戻し | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*施設コスチューム着替え戻し" |
位置合わせ用のエディット値の固定を解除 | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*カスタム固定解除"" |
痕の削除(レイヤー10〜20,24) テクスチャ合成の精液・蝋燭・鞭・スパンキング | @eval exp="tf['痕メイド'] = 0" @call file=seieki label=*痕削除 |
汗の削除(レイヤー21) テクスチャ合成の汗 | @eval exp="tf['痕メイド'] = 0" @call file=seieki label=*汗_痕削除 |
涎の削除(レイヤー22) テクスチャ合成の涎 | @eval exp="tf['痕メイド'] = 0" @call file=seieki label=*涎_痕削除 |
鼻水の削除(レイヤー23) テクスチャ合成の鼻水 | @eval exp="tf['痕メイド'] = 0" @call file=seieki label=*鼻水_痕削除 |
ローションの削除(レイヤー24) テクスチャ合成のローション | @eval exp="tf['痕メイド'] = 0" @call file=seieki label=*ローション_痕削除 |
表情ブレンドのリセット | @FaceBlend2 maid=0 reset |
表情ブレンド、衣装マスクのリセット ハイポリボディのスクリプトで変更した体型リセット | @MaidReset maid=0 |
イベント内で呼び出して変更したアイテムのリセット (メイド番号とカテゴリを指定) | @ItemReset maid=0 category=wear @AllProcPropSeqStart maid=0 sync |
男の手持ちアイテムのリセット (番号とカテゴリを指定) | @ItemReset man=0 category=handitem @AllProcPropSeqStart maid=0 sync |
目のハイライトOFF | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*ハイライト" |
目のハイライトON | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*ハイライト戻し" |
・script.arc/general内「function.ks」に、呼び出されて実行する命令がまとめられている。
@call file="function"の元になっている以下の記述を直にしてもOK。
「GameData」フォルダの「script.arc」内、sex/yotogi/99_systemの「seieki.ks」で
テクスチャ合成される液や痕の位置と種類が設定されている。
「seieki.ks」以外の自作ファイル名は認識されないので、内容を変更したい場合は
改変した「seieki.ks」をMODフォルダ内に入れて、ModLoaderの機能で上書きする事になる。
テクスチャ合成される液や痕の位置と種類が設定されている。
「seieki.ks」以外の自作ファイル名は認識されないので、内容を変更したい場合は
改変した「seieki.ks」をMODフォルダ内に入れて、ModLoaderの機能で上書きする事になる。
痕種類、痕場所、痕を付けるメイド番号を記述する。表示時間をずらす「痕遅延」もある。
記述の最期には「@call file=seieki label=*痕分岐」を書く。
●必須フラグ
['痕種類']
['痕場所']
['痕メイド']
['痕遅延']=1500 (←表示タイミングを遅らせる場合に使用。時間は任意に設定(ミリ秒))
●痕種類
精液 蝋燭 鞭痕 高温蝋燭 一本鞭痕 スパンキング痕 破瓜 汗 涎 鼻水
●痕場所種類
顔 頬 胸 口元 背中 尻 腹 太股 秘部 頬左
・例:メイド0番のお腹に精液を付ける場合
@eval exp="tf['痕種類'] = '精液'"
@eval exp="tf['痕場所'] = '腹'"
@eval exp="tf['痕メイド'] = 0"
@call file=seieki label=*痕分岐
・例:メイド0番の太股に精液を2秒後に付ける場合(モーションのタイミング合わせ等で時間をズラす)
@eval exp="tf['痕種類'] = '精液'"
@eval exp="tf['痕場所'] = '太股'"
@eval exp="tf['痕メイド'] = 0"
@eval exp="tf['痕遅延'] = 2000"
@call file=seieki label=*痕分岐
記述の最期には「@call file=seieki label=*痕分岐」を書く。
●必須フラグ
['痕種類']
['痕場所']
['痕メイド']
['痕遅延']=1500 (←表示タイミングを遅らせる場合に使用。時間は任意に設定(ミリ秒))
●痕種類
精液 蝋燭 鞭痕 高温蝋燭 一本鞭痕 スパンキング痕 破瓜 汗 涎 鼻水
●痕場所種類
顔 頬 胸 口元 背中 尻 腹 太股 秘部 頬左
・例:メイド0番のお腹に精液を付ける場合
@eval exp="tf['痕種類'] = '精液'"
@eval exp="tf['痕場所'] = '腹'"
@eval exp="tf['痕メイド'] = 0"
@call file=seieki label=*痕分岐
・例:メイド0番の太股に精液を2秒後に付ける場合(モーションのタイミング合わせ等で時間をズラす)
@eval exp="tf['痕種類'] = '精液'"
@eval exp="tf['痕場所'] = '太股'"
@eval exp="tf['痕メイド'] = 0"
@eval exp="tf['痕遅延'] = 2000"
@call file=seieki label=*痕分岐
スカートめくれ前・水着パンツずらし | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*ずらし" |
スカートめくれ後・水着パンツずらし | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*うしろずらし" |
めくれ・ずらし戻し | @eval exp="tf['メイド番号'] = 0" @call file="function" label="*ずらしもどし" |
例外として、イベント内で呼び出した衣装の場合はスクリプトでの「めくれ・ずらし」が効かないので
該当衣装のmekure・zurashiのmenuで直に呼び出す事になる。
・めくれ、ずらしの直接指定(カテゴリ毎に指定できる)
@ItemChange maid=0 category=onepiece name=めくれスカート
@ItemChange maid=0 category=skirt name=めくれスカート
@ItemChange maid=0 category=panz name=パンツずらし
@ItemChange maid=0 category=mizugi name=パンツずらし
@AllProcPropSeqStart maid=0 sync
・@call file="function"の元になっている以下の記述を直にしてもOK。
効果音(SE)とボイスで扱いが少し異なる。
効果音:loop指定した場合、Stopで止めるまで鳴り続ける。「@StopSe file=SE●●●」で個別に停止。「@StopSe」で全SEの停止。
個別にStopする場合、ファイル名の大文字小文字表記が一致していないと認識されないので注意。
ボイス:次のボイスが鳴る際に停止される。ボイスに合わせて口パクが自動で行われる(口パクさせない指定もあり)。
「@talkrepeat」で繰り返し再生される筈だが直接指定は効かないっぽい? 解除は「@TalkRepeatClear」。
夜伽時にメイド0のループボイスを止める「@StopVoice maid=0」というのもある。
ループボイス設定では前のボイスを止めるのに2つセットで使われている。
@TalkRepeatClear
@stopvoice maid=0
効果音:loop指定した場合、Stopで止めるまで鳴り続ける。「@StopSe file=SE●●●」で個別に停止。「@StopSe」で全SEの停止。
個別にStopする場合、ファイル名の大文字小文字表記が一致していないと認識されないので注意。
ボイス:次のボイスが鳴る際に停止される。ボイスに合わせて口パクが自動で行われる(口パクさせない指定もあり)。
「@talkrepeat」で繰り返し再生される筈だが直接指定は効かないっぽい? 解除は「@TalkRepeatClear」。
夜伽時にメイド0のループボイスを止める「@StopVoice maid=0」というのもある。
ループボイス設定では前のボイスを止めるのに2つセットで使われている。
@TalkRepeatClear
@stopvoice maid=0
例:BGM018を1秒(1000ミリ秒)でフェードインさせる場合
@PlayBgm file=BGM018 fade=1000
例:BGMとSEを1秒でフェードアウトさせる場合
@StopBgm fade=1000
@StopSe fade=1000
例:
@PlayBGMRoom fade=200
@PlayBgm file=BGM018 fade=1000
例:BGMとSEを1秒でフェードアウトさせる場合
@StopBgm fade=1000
@StopSe fade=1000
例:
@PlayBGMRoom fade=200
@Play指定の末尾にoldを付ける。
例:CM3D2の「BGM008」をCOM側で鳴らす場合
@PlayBgm file=BGM008 fade=1000 old
・CM3D2時代の追加性格(ヤンデレ、お姉ちゃん、僕っ子、ドS)をCOMで使っている場合、CM3D2側に
追加性格DLCを入れてない事もありえるので、COM側にも各性格用BGMが入っている。
場所は以下のarc内。
sound_ordermaid_001_solo:ヤンデレ
sound_ordermaid_002_solo:お姉ちゃん
sound_ordermaid_003_solo:僕っ子
sound_ordermaid_004_solo:ドS
例:CM3D2の「BGM008」をCOM側で鳴らす場合
@PlayBgm file=BGM008 fade=1000 old
・CM3D2時代の追加性格(ヤンデレ、お姉ちゃん、僕っ子、ドS)をCOMで使っている場合、CM3D2側に
追加性格DLCを入れてない事もありえるので、COM側にも各性格用BGMが入っている。
場所は以下のarc内。
sound_ordermaid_001_solo:ヤンデレ
sound_ordermaid_002_solo:お姉ちゃん
sound_ordermaid_003_solo:僕っ子
sound_ordermaid_004_solo:ドS
しぇるぱ | ボイス検索で調べる。![]() |
COM3D2_音声一覧(GP01,02含む) | 「剣 真@blade_evo」さん作の音声リスト。COMはGP02まで。 |
Sybaris ARC Editor | 検索の種類を「スクリプト」にすればスクリプト内の文章が検索対象になる。 該当スクリプトが表示されたら目当ての音声を目視で探すか、ksを保存してテキストエディター等で中身を検索する。 ![]() |
@talk
表示する文章
@hitret
の順に記述が揃っていないと動作が怪しくなる(音声が鳴らない等)。
入力待機の「@hitret」が抜けていたり、他の命令を挟んでいるとダメ。
例えば・・・
@talk
表示する文章
@talk
表示する文章
他の命令
@hitret
のような配置ではダメ。
基本的には、口パクはボイスに合わせて自動で行われる。
ただしモノローグ指定の場合は口パクしない。
モノローグは@talk命令の末尾に「np」を付ける。
@talk voice=H1_10141 name=[HF] np
(……他でもない、秀一さんが……そう言うのなら……)
@hitret
・テキスト表示なしで音声+口パクを行う場合「@PlayVoice」を使う。
アイドルルートのライブMCの例
@PlayVoice maid=1 voice=H0_MC01 wait
ただしモノローグ指定の場合は口パクしない。
モノローグは@talk命令の末尾に「np」を付ける。
@talk voice=H1_10141 name=[HF] np
(……他でもない、秀一さんが……そう言うのなら……)
@hitret
・テキスト表示なしで音声+口パクを行う場合「@PlayVoice」を使う。
アイドルルートのライブMCの例
@PlayVoice maid=1 voice=H0_MC01 wait
台詞表示の@talkの行に name=●● の形式で名前を書く。
・NPC名など、名前が固定の場合はそのまま書く。(name=秀一 とか)
・プレイヤーが設定したキャラ名を表示したい場合は以下のように書く。
name=[SF] :ご主人様の設定名
name=[HF] :maid=0で呼び出した0番のメイド名。 2人目以降にはメイド番号を付ける。メイド1番は[HF1]、2番は[HF2]。
swap命令で番号を入れ替えている場合は入れ替え後の番号を書く。
・文章中に名前を出す場合は 『こんにちは、[SF]さん』 のように書く。
・NPC名など、名前が固定の場合はそのまま書く。(name=秀一 とか)
・プレイヤーが設定したキャラ名を表示したい場合は以下のように書く。
name=[SF] :ご主人様の設定名
name=[HF] :maid=0で呼び出した0番のメイド名。 2人目以降にはメイド番号を付ける。メイド1番は[HF1]、2番は[HF2]。
swap命令で番号を入れ替えている場合は入れ替え後の番号を書く。
・文章中に名前を出す場合は 『こんにちは、[SF]さん』 のように書く。
・スクリプト「@SetBg file=」で呼び出す背景名は、SybarisArcEditorを使って
Gamedataのscript.arc内の「place_bg.ks」「place.ks」で調べる。
載っていないDLC背景名は各DLCのスクリプトを調べるか、
ゲームプレイ中にComShプラグインのbgコマンドでも調べられる。
Gamedataのscript.arc内の「place_bg.ks」「place.ks」で調べる。
載っていないDLC背景名は各DLCのスクリプトを調べるか、
ゲームプレイ中にComShプラグインのbgコマンドでも調べられる。
・寝転ぶ体位の場合は判定面に触れると髪やスカートが暴れやすくなるので、設定に少し余裕がある方が良い。
夜伽では背景ごとに設定されているが、自分で設定する事も可能。
背景の床とメイドの衝突判定の例
@PhisicsHit maid=0 height=0.6
夜伽では背景ごとに設定されているが、自分で設定する事も可能。
背景の床とメイドの衝突判定の例
@PhisicsHit maid=0 height=0.6
例:男0と1を入れ替える
@CharaActivate man=0 swap=1
man=0はデフォルトで主人公が設定されている。
スワッピング夜伽やNTRイベントでは他の男を0以外の番号に設定してからswap指定で0と入れ替える。
回想モード内ではswap設定がリセットされないので、swapを使った場合は最後に元の状態に戻す指定も行う事。
@CharaActivate man=0 swap=1
man=0はデフォルトで主人公が設定されている。
スワッピング夜伽やNTRイベントでは他の男を0以外の番号に設定してからswap指定で0と入れ替える。
回想モード内ではswap設定がリセットされないので、swapを使った場合は最後に元の状態に戻す指定も行う事。
夜伽のスキル開始時の脱衣リセット処理を無効化するフラグを立てる
@eval exp="tf['夜伽脱衣リセット無効']=true"
夜伽のスキル開始時の脱衣リセット処理を無効化するフラグを折る
@eval exp="tf['夜伽脱衣リセット無効']=false"
@eval exp="tf['夜伽脱衣リセット無効']=true"
夜伽のスキル開始時の脱衣リセット処理を無効化するフラグを折る
@eval exp="tf['夜伽脱衣リセット無効']=false"
スクリプトで識別用に使われる名称
日本語名 | 英語名 | プラグイン名 |
純真で健気な妹系 純真 | Pure | |
クールで寡黙 クーデレ | Cool | |
プライドが高く負けず嫌い ツンデレ | Pride | |
病的な程一途な大和撫子 ヤンデレ | Yandere | ordermade001 |
母性的なお姉ちゃん お姉ちゃん | Anesan | ordermade002 |
健康的でスポーティなボクっ娘 ボクっ娘 | Genki | ordermade003 |
M心を刺激するドS女王様 ドS | Sadist | ordermade004 |
無垢 | Muku | |
真面目 | Majime | |
凜デレ | Rindere | |
文学少女 無口 | Silent | personal_om001 |
小悪魔 | Devilish | personal_om002 |
おしとやか | Ladylike | personal_om003 |
メイド秘書 | Secretary | personal_om004 |
ふわふわ妹 | Sister | personal_om005 |
無愛想 | Curtness | personal_om006 |
お嬢様 | Missy | personal_om007 |
幼馴染 | Childhood | personal_om008 |
ド変態ドM | Masochist | personal_om009 |
腹黒 | Crafty | personal_om010 |
気さくでちょっとエッチなお姉さん | Friendly | personal_om011 |
生真面目で甘え下手な淑女 | Dame | personal_om012 |
ギャル |
コメントをかく