Environment をいじる

リングはでかいほうが気持ちも上がる

必須Mod

全部ModAssistantに入ってるのでそろえやすいと思います。あとたぶんだいたいの人は入れてる気がする。

  • SiraUtil

  • Chroma

  • Noodle Extnsions(なくても可)

下準備

ビートセイバーをデスクトップで操作できるようにします。

SteamからBeatSaberのプロパティを選択します。
起動オプションに"fpfc"と入れてください。

これで、デスクトップからBeatSaberを操作できます。
カメラプラスなどのModが入っている場合は操作しずらいかもしれません。
FirstPersonViewに切り替えると操作しやすくなると思います。

基本的な操作は

ASDW - 移動
G - 画面の操作切り替え
R - リロード
P - 曲のポーズ
C - 曲の再生(ポーズ中)
M - メニューに戻る(ポーズ中)
R - リスタート(ポーズ中)

曲の再生中に自由に動けるようになります。

Chromaのログを見れるようにする

Beatsaberのゲームフォルダからjsonファイルを開きます。
Beat Saber\UserData\Beat Saber IPA.json 

次のように設定してModにログを記録させるように設定します。

"CondenseModLogs": false,
"CreateModLogs": true,
"HideMessagesForPerformance": false

次にBeat Saber\UserData\Chroma.jsonへ行き、
次のように設定します。

"PrintEnvironmentEnhancementDebug": true

これで、Beat Saber\Logs\Chroma\_latest.log にクロマのログが記録されるようになります。エンバイロメントをいじる際はこのログからIDを調べるので開いておいてください。

Environmentコマンドを使う

そもそもscuffedwallの使い方がわからないという方は、別の記事を参考にしてください(書くかもしれないし書かないかもしれない)

宝探しをする

Enhancementをいじる流れはこんな感じです。
① ログから動かしたいオブジェクトの名前を調べる。
② idを指定して動かしたり変形したりする
③ ゲーム内で確認する
④ 満足のいくまで修正する

①の目的のオブジェクトを探すことが地味に大変かもしれません。根気よく探しましょう。一応古いですがいろいろなプラットフォームの名前とその説明があるので参考にしてみてください。

コマンドを書く

書き方の例です

1:Environment \\ビートは何でもいい
    id:^BigMirrorEnvironment\.\[0]Environment\.\[18]DoubleColorLaser$ \\Regexの形で書く
    lookupMethod:Regex \\Regex推奨
    position:[8,1.667,39] \\もともとオブジェクトがあった位置からの移動距離
    scale:[10,1,1]\\大きくしたり、伸ばしたり
    track:DoubleColorLaser \\トラックも指定できる
    active:true 

idとlookupmethodは必須です。"R"egexのRを大文字にするのを忘れないでください。

消したい場合は単に active:false と打ち込むだけです。
動かしたり変形させたい場合は、position, scaleを使います。[x,y,z] でパラメータを調整できます。
trackを指定することで、animatetrackで曲中に動かすことが可能になります。ちょっとムズイ。

おそらく一番の難所はidの指定方法なので詳しく書きます。

そもそもRegexってなんだという話ですが難しいので動けばヨシッ!という方のために結論から書きます。

ログはこんな形で出てきます。

[DEBUG @ 16:32:17 | Chroma] BTSEnvironment.[0]Environment.[11]Clouds

[~~]の後に続くここの部分を使います

BTSEnvironment.[0]Environment.[11]Clouds

まず.(ピリオド)と[ ](かっこ)を\(エスケープ)します。

BTSEnvironment\.\[0\]Environment\.\[11\]Clouds

先頭と末尾なら^と$をつけます。

^BTSEnvironment\.\[0\]Environment\.\[11\]Clouds$

もっと詳しく知りたい人は、次の記事を参考にしてください。

\[\d+\] => 任意の桁数の数字

リングなどをまとめて動かしたい場合はカッコ内の数字を任意の数字で一致する形にしておくことでまとめて操作することができます。

参考

やおみんさんの記事datファイルをいじるときに知っておいたほうがいい

scuffedwallのドキュメントこれを読むのが一番早い

さいごに

私もまだよくわかってないことが多いので間違いがあったりうまくいかなかったときは気軽に聞いてください。解決できないかもしれませんが私も勉強したいので共有してくださると幸いです。

この記事が気に入ったらサポートをしてみませんか?