【1.15.2対応】ワールドに入れなくなった時の対処法

昨日、私がコマンドで遊んでいたときに、ついうっかりエンティティを大量に召喚するコマンドを打ってしまいました。そしてマイクラが固まり、タイトルへ戻ろうとするも保存に5分もかかり...
ワールドに入れなくなってしまいました。
今回はそのときに使った対処法を紹介します。
素人がいろいろ考えた結果なので、すべての事例に効果があるとは思いませんが、参考になれば幸いです。
当ブログはこちらの方法を実行して何が起きても責任を取りません。ご了承ください。

バックアップを取る

マイクラに限った話ではありませんが、ゲームに何らかの不具合が起き、起動などが出来なくなればまずバックアップを取りましょう。
この場合はワールドに入れなくなっただけなので、ワールドをバックアップすればいいです。
ワールドは、特にいじっていなければ
.minecraft/saves/ワールド名(新規ワールド)/
にあるのでこのフォルダをどこかにコピーして保存しましょう。
.minecraftの場所が分からない時は、Minecraftのランチャーを使えばすぐにわかります。
起動構成から、壊れたワールドのセッションを編集する
ゲームディレクトリを参照し、出てきたフォルダが.minecraft。

先人の知恵

マインクラフトてんやわんや開拓記によると、データの壊れ方は二種類あって、
  • level.datというファイルが壊れており、ワールド一覧に表示されなかったりワールドに入れなくなったりする。
  • 地形のデータが壊れており、チャンクがすっぽり抜けたり、すごく重くなったり、エンティティが大量に発生したりする。
どのように壊れたかによって対処法が分かれるそうです。
leve.datが壊れた場合は、リンク先のサイトを参考にして治すとよいと思います。

私もこのサイトを参考にしたのですが、地形データが壊れた場合MCEDITという外部ツールを使おうと書いてありました。
しかし、MCEDITは1.12.2までしか対応しておらず、最新バージョンでは使えません。
というわけで今回は別のソフトを使用しました。

MCA Selector

MCA Selectorは視覚的にワールドのチャンクやセクションの編集・コピペができるツールです。
今回はこれをつかってエンティティをチャンクもろとも消し去ります。
MODなどである一つのブロックが原因で入れない場合は、こちらの記事を参考にするとよいと思います。あとで紹介するNBT Explolerでブロックを削除する方法です。
使い方を誤るとワールドのデータが消えたりするのでバックアップを取って使いましょう。
まずはこれをインストールします。配布先公式のインストールガイド
後日インストール方法の記事を書きます。
Ctrl+O
MCA Selectorを開けたら、File-->openから.minecraft/saves/ワールド名/region/のフォルダを開きます。
セクションが表示されない
すると、このようにワールドの地図が表示されます。私の場合は壊れているチャンクが含まれているセクションが表示されませんでしたが...
ここから、頑張って原因となるチャンクを探し、それを削除します。
左クリックでチャンク選択、右クリックでチャンク選択解除です。
チャンク編集できなかったの図
私のように、セクションが表示されない場合は、
Tools->Edit Chunksでそのチャンクの情報を見ることができます。それを使うとわかるかもしれません。
私の場合、壊れたチャンクは読み込めませんでした。そんな悪いチャンクはどんどんけしちゃおうねぇ。
Section->Deleted Selected chunksからチャンク削除
Selection-->Delete selected chunksから選択したチャンクを削除することができます。
成功したの図
チャンクを消すとセクションが正常に読み込まれ、表示されました!
今回の騒動で気づいたのですが...なんと、スポーンの近くにピリジャーの前哨基地がありました!
村もあったしそこそこ神seedかもしれない...
ワールド読み込めました
やったぜ。

NBTExplorer

NBTExplorerは、ワールドの内部データを見ることができるツールです。
今回、プレイヤーのいるチャンクが壊れたとわかっていたので、こちらのツールを使ってプレイヤーの座標を調べました。ちなみにシード値なども調べられます。
こちらも使い方を誤ると永遠にワールドに入れなくなったり、異常気象が起きたりするので、必ずバックアップを取って使いましょう。
まずはこれをインストールします。Windows/linux版の配布先はこちらです。
拡張子が普通は.msiの物をダウンロードすれば問題ないと思います。実行してウィザードに従いインストールしましょう。
管理者権限がない場合は.zipの物をダウンロードし、適当な場所に展開し、中にあるNBTExplorer.exeから実行できます。
なお、このソフトを実行するには.NET Framework 2.0以上が必要です。
ないと表示された場合はおとなしくインストールしましょう。

linuxの場合

linux内でwindowsのソフトを実行するmono-coreとmono-winformsがあれば実行できるそうです。使い方は各自ググること。

Macの場合

minecraft公式フォーラムからMac版がダウンロードできます。
私はMacを持っていないのでどのように実行するか全くわかりません。困ったらPCに詳しい知人に聞いてください。

level.dat

NBTExplorerをインストールできましたか?
できたら、NBTExplorerを実行し、File-->Openから、.minecraft/saves/ワールド名/playerdata/xxx.datを開きましょう。xxxはプレイヤーのUUIDです。
プレイヤーのUUIDは、NameMCで自分のプレイヤーIDを検索して自分のページを開けばわかります。
UUIDを見ればわかる

するとこのようなわけわからん画面が出てくると思います。
その中からPosをクリックすると、プレイヤーがいた場所がわかります。
これをメモしました。

【追記】後日談

この後、ワールドで建築をしてみたのですが、妙に重たくて1tickも長かったのでワールド丸ごとWorldEditでコピーして同じシードのワールドに貼り付けました。
この方法だと何かしらのバグが残るようです。

コメント