Stardew Valleyの1.5アプデで翻訳を直して欲しい白玉です。
相変わらずのStardew Valley、SVEの翻訳は全く進まずもっぱら普通に遊んでます。
そして気になるのがイベントのエキサイト翻訳っぷり。
口調違いでは済まされないレベルなのが気になる…気になるよ!
ってことで修正するMODを作ることにしました。
とはいえ、MODを公開するのは色々面倒なのでメモ的に作り方をのせておこうと思います。 (MODの弄り方がある程度分からないと厳しいかも)
注意!
PC版のStardew Valley、ポートレートはSHIE'S PORTRAITS at Stardew Valleyと、一部キャラクターにGigi's Hi-Res Portraits mod for All Characters at Stardew Valleyをお借りしています。
UIはOvergrown Flowery Interfaceです。
モバイル版については分かりませんのであしからず…
①修正したいイベントを探し出す
まずは修正するために本体からイベント一覧を探します。
これは本体のローカルファイル内にあるContent→Data→Eventsの中にあり、キャラクターごと…ではなく発生する場所で分かれて入っています。
色々な言語ファイルとまとめて入っているので、「JP」とかで検索してまとめて別の場所にコピーするとやりやすいかと。
そうして抜いてきたイベントデータですが、Stardew Valleyのファイルは基本的に「xnb」形式でそのままだと読めません。
そのため、専用の解凍アプリケーション「XQuartz」を使って読めるようにします。
リンクはここ→Releases · LeonBlade/xnbcli · GitHub
※インストール方法や使い方は各自で調べてください…
上手いこと「json」形式のファイルを取り出せたら、あとは修正したいイベントの場所が書かれたファイルから該当箇所の記述を抜き出します。
例としてキャロラインのお茶イベントでいうと、イベントの発生場所はサンルームなので「Sunroom.ja-JP.json」を開きます。
色々記述はありますが、必要なのはcontentの次にある数字が先頭にある行だけ。
今回でいうと「 "719926~」の行を丸ごとコピー。(下にある}は要らない)
回答によってイベント分岐するやつは2行とかあると思うので、その場合は両方コピーします。(3行あっても同じ)
抜き出したものを任意のテキストエディタなどで見てみると、謎の文字列(キャラクターの動き用の記述)と一緒にエキサイトした日本語が書かれているはず。
他を絶対に消さないようにこの日本語部分だけを自分の好きなように意訳なり翻訳なりして修正しておきましょう。
英語のままになっている部分も修正すれば反映されるので「speak キャラ名」もしくは「AboveHead キャラ名」で検索して後に続く文字列を確認しておくと良いかもしれません。
※画像で載せた方が早いとはいえ、本体のコード的な部分ということで問題があると困るので文章だけで許してほしい…
②MODの骨組みを作る
修正が効くようにCPで読み込むMODを作るので、適当なMOD名を付けたフォルダを作ります。
今回はCP読み込みということが分かりやすく、他MODで書き換えがあった場合に上書きしてもらえるように[CP]A JP Fixとしました。(MODはAから順に読み込んでる)
次にMODとして認識してもらえるようにmanifest.jsonを作ります。
中身は以下の通り。
多分ContentPackForから先のUnique ID以外、:後ろの自分で記述する部分は適当でも大丈夫だと思います。
ただしUnique ID部分だけ注意が必要で決まった文字(英数字と一部の記号)以外があると、エラーでMODが反映されなくなります。
全部入力し終わったらファイル名をmanifest.jsonにして保存しておきましょう。
(日本語がないから文字コードはSJISでも大丈夫、心配ならUTF-8にしておくと確実)
これで本体以外は完成しました!
※MODは入れたくない!でも修正したいという人は元のjsonを書き換えてxnbに再パッケージすればいける…?(絶対にバックアップをとってください)
③イベントを修正するための本体ファイルを作る
ここまで来たらいよいよ本体作りです。
…といっても画像を足したり、新しい要素を足すわけではないので作るファイルはcontent.jsonの一つだけになります。
内容は以下の通り。
とりあえず一つ修正して様子を見たかったのでこれだけ。
//Sunroom EVENTは今後イベントを足していくと迷子になりそうなので、メモとして入れているだけです。(//文字列は読み込まれないので)
※任意でつけてもつけなくてもな部分は//Sunroom EVENTだけであり、その前の{はつけてください。
events/○○については、編集したイベントに合わせて○○部分を変えればOK。(牧場の外イベントならFarmとか…イベントを取り出したファイル名を入れる)
あとは編集したイベントの行を貼り付けて、ちゃんとカッコで閉じていけば完成。
ファイル名をcontent.jsonにして文字コードをUTF-8(絶対に忘れずに)して保存しましょう。
そうするとMODフォルダの中身はこうなるはず。
無事に完成したら、本体のModsフォルダに完成した自作MODを入れて起動!
ちゃんと反映されていたらイベントの内容が修正されていると思います。
あとは書き換えたいイベントの数だけ同じ作業をするだけです。
{から},までをコピペしてイベント場所と内容部分だけ書き換えれば早い…かな?
読み込む最中にエラーが起きる場合、大体が},や}もしくは"の付け忘れなので、エラーログを参考に探し出しましょう。(編集するときにちゃんとJsonエディタorテキストエディタのjsonモードを使うと教えてもらえる)
おまけ
今回書き換えたのはイベントでしたが、同様の方法でダイアログ(日常会話)も書き換えられます。
行う場合は、イベントと同じように該当キャラのダイアログ部分を取り出し、「Target」部分を「Characters/Dialogue/キャラ名」とします。
あとは修正した行を貼り付けるだけで終わり。(結婚可能キャラの場合、独身時と結婚後でファイルが違うのだけ注意)
これはイベント書き換えと一緒に記載しても大丈夫なので、新たにMODを作る必要はありません。
まとめ
以外と簡単にMODは作れるし、修正できて良かった…というのが率直な感想です。
ただ、問題の一つである映画館のダイアログ系統が解凍できなくて修正出来ず。
今回扱ったキャロラインイベントも妄想?に浸る切り替え一枚絵部分の記載が見つからず、書き換えられませんでした…
まあ色々問題は残りつつも、自分が楽しむ用としては十分なのでここまでにしておきます。