好々爺の電脳遊戯録

PCゲームに関してプレイ日記(ログ)やmod、周辺ツールのことなど書いていこうかな、と。

SkyrimSE英語版(1.5.3 CC対応)を日本語化するためのメモ

[2017/10/10 追記]
『一番確実簡単なSkyrim Special Edition 1.53の英語版日本語化』で検索するとお求めの答えはあります。

直接リンクはしないので、上記キーワードで検索してね。
この記事は、当方の記憶の断片として残しておく。

[2017/10/07 追記]
ココに書いたことで、メニュー等の文字化けは解消できるかもしれない。
しかし、ゲーム内アイテムなど日本語化が不十分である。
その解消には、SSETranstarorなどで翻訳ファイルを自作して対応するしかない。


ひっそりと、公式有料MOD対応(クリエイションクラブ)のためのアップデートが行われて、英語版は ver. 1.5.3 に上がった。
同時に期間限定(日本時間で2017/10/04~2017/10/10いっぱいぐらい?)でのサバイバルモードMOD無料配布が行われている。

SKSE64がアルファ版で配布が始まった矢先のことで、各種Modderも対応に追われている感じ。

さて、日本語版は更新されたのか?、というと相変わらず放置されっぱなし。
[2017/10/05 追記]
英語版1.5.3 の裏で、日本語版は1.4.4(?)になった様子。

では、英語版の日本語化は従来のままでいいのか、というとそうもいかず。
クリエイションクラブやらサバイバルモードなどのために調整が入った部分を取り込まないと文字化け(通称豆腐(□))が生じる。

そんなわけで、最新英語版 ver. 1.5.3 の日本語化についてザックリとした手順をメモしておく。

[2017/10/05 追記]
従来の日本語化のままでは、一部アイテム名が表示されない事象があるとのこと。
現時点では、SSETranstatorなどを使い、英日変換辞書構築してから自動翻訳を行い、そのデータを使用することで回避するしかないらしい。

1. SkyrimSE日本語版のSkyrim - Patch.basから取り出すファイル一覧

従来の字幕などの日本語訳は、英語版に含まれている。
そのため、そちらから抜き取ることにする。(日本語版から抜き取っても同じ)
あと、音声も日本語化する場合は、Skyrim - Voices_jp0.bsaも忘れずに。

# 書物表示用UI
interface\book.swf

# ゲーム内日本語フォント設定とフォントファイル
interface\fontconfig.txt
interface\fonts_en.swf

# ゲーム内メニューの日本語訳
interface\translate_japanese.txt

2. SkyrimSE英語版のSkyrim - Patch.basから取り出すファイル一覧

従来の字幕などの日本語訳は、こちらから抜き取る。
[2017/10/06 追記]
日本語訳のデータ自体は従来のモノと同じ。
そのため、アイテム名が表示されない問題が解決できるわけではない。
単に抜き出すのを日本語版で行うか、英語版で行うかが変わっただけ。

# ゲーム内フォント設定とフォントファイル(クリエイションクラブ向けの設定がある)
interface\fontconfig.txt
interface\fonts_en.swf

# ゲーム内メニュー
interface\translate_english.txt

# セリフなどの日本語訳
strings\dawnguard_japanese.dlstrings
strings\dawnguard_japanese.ilstrings
strings\dawnguard_japanese.strings
strings\dragonborn_japanese.dlstrings
strings\dragonborn_japanese.ilstrings
strings\dragonborn_japanese.strings
strings\hearthfires_japanese.dlstrings
strings\hearthfires_japanese.ilstrings
strings\hearthfires_japanese.strings
strings\skyrim_japanese.dlstrings
strings\skyrim_japanese.ilstrings
strings\skyrim_japanese.strings
strings\update_japanese.dlstrings
strings\update_japanese.ilstrings
strings\update_japanese.strings

3. メニュー周りの文字列対応と文字化け防止のための書き換え

やることは、二つ。

  • fontconfig.txtのマージ
    フォントの文字化け防止のために日本語版fonts_en.swffonts_jp.swfのようにファイル名を変えて両方参照できるようにする。
    あとは、日本語版fontconfig.txt と英語版fontconfig.txt を混ぜ合わせる。

[2017/10/06 追記]
文字コードは、UTF8(BOM無し)で保存すること。
文字コードを維持するテキストエディタで編集する限りは問題ない)

[2017/10/05 追記]
以下の例では、validNameCharsの後半を削っている。
日本語版 v1.4.4、英語版v1.5.3 もvalidNameCharsは後半に記号文字列などを含んでいる。
個人的には、日本語フォントを指定する箇所以外は書き換えない方がいいと思う。

変更例: (英語版v.1.5.3 の fontconfig.txt に対する変更)
fontlib "Interface\fonts_console.swf"
fontlib "Interface\fonts_en.swf"
fontlib "Interface\fonts_jp.swf"  ← 追加する(日本語版の fonts_en.swf をリネームしたモノ)
map "$ConsoleFont" = "Arial" Normal
map "$StartMenuFont" = "Skyrim_JP_EveryFont" Normal  ← 変更する
map "$DialogueFont" = "Skyrim_JP_EveryFont" Normal  ← 変更する
map "$EverywhereFont" = "Skyrim_JP_EveryFont" Normal  ← 変更する
map "$EverywhereBoldFont" = "Skyrim_JP_EveryFont" Normal  ← 変更する
map "$EverywhereMediumFont" = "Skyrim_JP_EveryFont" Normal  ← 変更する
map "$DragonFont" = "Dragon_script" Normal
map "$SkyrimBooks" = "Skyrim_JP_BookFont" Normal  ← 変更する
map "$HandwrittenFont" = "Skyrim_JP_HandWriteFont" Normal  ← 変更する
map "$HandwrittenBold" = "Skyrim_JP_HandWriteFont" Normal  ← 変更する
map "$FalmerFont" = "Falmer" Normal
map "$DwemerFont" = "Dwemer" Normal
map "$DaedricFont" = "Daedric" Normal
map "$MageScriptFont" = "Mage Script" Normal
map "$SkyrimSymbolsFont" = "SkyrimSymbols" Normal
map "$SkyrimBooks_UnreadableFont" = "SkyrimBooks_Unreadable" Normal
map "$CClub_Font" = "Eurostile LT Std" Roman
map "$CClub_Font_Bold" = "Eurostile LT Std" Demi
map "ControllerButtons" = "Controller  Buttons" Normal
map "ControllerButtonsInverted" = "Controller  Buttons inverted" Normal
validNameChars "`1234567890-=!@#$^&():_+QWERTYUIOP[]ASDFGHJKL;ZXCVBNM,./qwertyuiop{}asdfghjkl;zxcvbnm?|"  ←これ以降にある文字も残すのがよい
  • translate_english.txttranslate_japanese.txt のマージ
    メニューで、$hogehoge を適切な文字列に変換するための処置。 translate_english.txtに対して、translate_japanese.txtで和訳されている部分を置き換えておく。
    気になるなら、他の部分も自分で和訳する。

[2017/10/06 追記]
コメントで指摘があったように、テキストエディタ等で編集した場合、文字コードUnicode(UTF16LE(BOM付))で保存すること。
先に公開しているPowerShellスクリプトで生成されたモノを編集する場合も同様に。
なお、PowerShellスクリプトで生成されたファイルを名前だけ変更して、そのまま使う場合は文字コード周りを意識しなくてよい。
PowerShellのデフォルト文字コードUnicodeのため。)

[2017/10/05 追記]
別記事に、マージ用のPowerShellスクリプトを公開した。

4. 日本語化に必要なファイルを所定の場所へ配置する

あとは、従来と同じようにこれまでに準備したファイルに対して、ファイル名変更を施すなどする。
その後、所定の場所に置いて、Skyrim.iniを書き換えれば英語版の日本語化はおしまい。

[2017/10/06追記]
CreationClub対応のためなのか、従来の方法で日本語版のstringsを流用しただけではアイテム名などが欠けてしまうらしい。
冒頭に追記したように、SSETranstator などで英語版v.1.5.3のenglish_*stringsを用いて、japanese_*strings を自動変換してあげるとうまくいくらしい。

既に英語版を日本語化しているなら、フォント指定とメニュー文字列の変換表(translate_lang.txt)を整えれば問題ないと思われる。