個人的なゲーム状況
私がMinecraftをする場合、基本的にはハードモードで実施する。
プレイヤーが死ねば、復活ポイントで再活動できるのが基本だが、たかがゲームだと思っているため、復活できないモードで遊んでいる。
ゲームを始める前や序盤は、その考えから変わらない。
しかし、ゲームが進むにつれて、一からやり直す気力がなくなってくる。
ゆえに、セーブデータを作って、やり直しポイントを自分で作った。
準備物
- AutoHotKey (バックアップ実施用のバックグラウンドソフトウェア)
- テキストファイル (バックアップを作成するための目次)
- Minecraft本体 (当たり前)
以下、AutoHotKeyを前提に動くバックアップソースコード
起動方法は、Win+Alt+s
の組合せでバックアップが行われる。
# !s::
; 注意:ディレクトリ名にスペースがついている場合,圧縮されない.
; そして,2GB以上は,きっと圧縮できないだろう.
minecraftSaveFile := % A_ScriptDir . "¥savedataMinecraft.txt"
todayYYYYMMDD := A_YYYY A_MM A_DD
Loop, Read, %minecraftSaveFile%
{
; コマンドプロンプトからzipは作成できないようだ.
; http://q.hatena.ne.jp/1184648250
Run, PowerShell -Command "Remove-Item ¥"‾¥Desktop¥%A_LoopReadLine%%todayYYYYMMDD%.zip¥" -Force"
Run, PowerShell -Command "Compress-Archive -Path ¥"%A_AppData%¥.minecraft¥saves¥%A_LoopReadLine%¥" -Destination ¥"‾¥Desktop¥%A_LoopReadLine%%todayYYYYMMDD%.zip¥""
}
return
バックアップ用のテキストファイルの用意
今回は、ソースコード上にファイル名をべた書きしている。
savedataMinecraft.txt
このファイルに、ワールド名を記載する。
正確に表現するならば、savesディレクトリ配下に配置されるディレクトリ名を記載する。
このテキストファイルの配置場所は、ソースファイルと同じ場所に置けばいい。
※注意点:ワールドを作成するときの名前に、スペースを付けた場合、動かない問題が残されている。
スペース付きのディレクトリをPowerShell単体では認識するのだが、AutoHotKeyをかました場合動かないため、なかなか原因を突き止められず、今のところ放置している。
また、きっと2GB以上のデータは保存できない(PowerShellに問題がある)。こればかりは、対応可能な圧縮ソフトウェアを使う必要があるだろう。私の信念としては、できる限りWindows標準装備で実装したい思いがあるため、圧縮ソフトまで考慮しなかった。
すでに、AutoHotKeyを使っているわけだし・・・。
結構重要なことなのだが、遊びながらバックアップを動かすことは出来ない("おまけ"に画像有り)。ファイルをゲームがつかんでいるためだと思われる(私の環境では失敗した)。もしかしたら強制的に動かせるのかもしれないが・・・。
バックアップファイル
デスクトップ上に配置されるはず・・・。
ワールド名に続けて、バックアップ年月日が追加した状態の名前になっている。
拡張子はzip
だ。
例)新規ワールド20180727.zip
以上.
おまけ
数年前に作ったバックアッププログラムは、WindowsOSで動かなかった。
minecraftのセーブデータを管理するPerlプログラム
Mac専用なのだろう・・・。
以下の状態ではバックアップできない(PowerShellが動きはするが・・・)。
さらにおまけ
復元は手動でお願いします。