[Terraria]TmodLoaderでmodを導入した世界の「ワールドの読み込み失敗」の修復
[この文章の主目的]
TerrariaでTmodLoaderを使ってmodを導入したワールドが正常に保存できていると思われるにもかかわらず、読み込み時に「ワールドの読み込み失敗」が発生する場合の対処
(全てのワールドが読み込めるようになるとは限りません)
[注意]
修復作業前にセーブデータのバックアップを!
[対象バージョン]
Terraria 1.3.5.2
TmodLoader v0.10.1.4
OS Windows7
[結論]
NBTExplorerで該当するworldデータの.twldファイルを開いて、containersの中にあるitemFramesの項を消す
上画像のカーソルのある部分を消せばよい
上記の作業により、
アイテムフレーム(itemFrames)の中身にmod特有のアイテムが入っているもの(のみ)を消しているので、
中に入れたmod特有のアイテムは消えてしまうが、
ワールドが読み込めなくなることに比べれば被害は軽微
ちなみにバニラ(元々のテラリア)のアイテムが入っているフレームの中身は上記作業では消えない
アイテムフレーム(itemFrames)
[経緯]
テラリアのセーブデータが読み込めなくなった。
セーブ時は何の問題もなくセーブが完了しており、ゲームやOSも異常終了しておらず、データそのものは正常にセーブされていると考えられた。
tmodloaderを利用して幾つかのmodを入れており、そのどれかが原因であることはほぼ間違いなかった。
調べた結果アイテムフレーム(itemFrames)にmod特有のアイテムを貼り付けた事が原因だと判明した。
このような表示が出て読み込みに失敗する
[修復作業手順]
【1】tmodloaderのセーブデータは通常 [ドキュメント] -.> [MyGames] -> [Terraria] -> [Modloader] -> [Worlds]にあるのでその中にある全てのファイルを適当な場所にバックアップする。
【2】修復したい世界の名前の.twldファイル(.wldではない)をNBTExplorerで開く。
【3】containersの中にあるitemFramesの項を消す
カーソルでitemFramesの項を選んで×を押せば消える
【4】データを保存する
以上。
これは、恐らくitemFramesがmodのアイテムに対応していないことが原因だと思われる
そこでそのデータを消してやればよいのだが、そのデータは.twldファイル内にNBT形式で記録されており、minecraft用のNBTExplorerを使って編集してやれば消すことができる
[備考・問題の箇所の見つけ方]
まず始めにワールドデータのバックアップを取る(最重要!!)
.twldファイルをほかの場所に移動してからワールドをロードしてみる
それでロードできればmod(.twld)が原因だと特定できる
.twldを元に戻し、バックアップしてある.wldデータをWorldsフォルダに上書きコピーする。
なぜ上書きコピーするかというと、.twldが存在しない状態でワールドを読み込むと、modデータの無い状態に.wldデータが書き換えられてしまうから。
次ににNBTExplorerを使って.twld内のデータを1項目ずつ削除しながらワールドを起動する
(項目を削除した際はセーブを忘れずに)
起動できたら削除した項目が起動失敗の原因だと特定できる
今回の起動失敗はこの方法で発見できた