パルワールドのセーブデータ:保存場所とバックアップ、復元の手順
パルワールドの専用サーバーがワールドのセーブをどこに置くか、何をコピーすれば完全なバックアップになるか、プレイヤーデータを失わずに復元する手順、そして別のマシンへワールドを移す際の注意点をまとめました。
パルワールドではセーブデータの破損が珍しい事故ではありません。メモリ不足で OS にサーバープロセスを止められた、電源が落ちた、書き込みの最中にクラッシュした——どれも数か月動かしたワールドが開かなくなる原因になります。しかもこのゲームには巻き戻し機能がありません。壊れたセーブは壊れたままです。
だからパルワールドではバックアップが他の多くのゲームより重い意味を持ちます。この記事ではセーブの保存場所、完全なバックアップに何が含まれるか、そして正しい復元手順を扱います。
セーブデータの実際の場所
サーバーのインストール先(構築手順どおりなら ~/palworld)から辿ります。
Pal/Saved/SaveGames/0/<WorldID>/
<WorldID> は 32 桁の十六進文字列で、サーバーの初回起動時に生成されます。**このディレクトリ名は飾りではありません。**後半の移行の節で要になります。
中身は次のとおりです。
| ファイル | 入っているもの |
|---|---|
Level.sav | ワールド本体。地形の変更、すべての建築物、拠点、配置したパル。最も大きく、長く遊んだワールドなら数百 MB は普通です |
LevelMeta.sav | ワールドのメタデータ |
WorldOption.sav | ワールド設定のスナップショット |
Players/ | **プレイヤーごとに一つの .sav。**ファイル名はそのプレイヤーの UID です |
完全なバックアップに含まれるもの
<WorldID>/ ディレクトリ全体です。一つも欠けてはいけません。
この節が記事の核心です。よくある失敗はバックアップを取らないことではなく、取ったのに不完全なことだからです。ネット上の手順の多くが Level.sav にしか触れていないため、その一ファイルだけを持っている方が非常に多いのです。
Level.sav だけのバックアップから戻したときに起きるのは「少し足りない」ではありません。**全員が新規キャラクターになります。**ワールドはあり、拠点もあり、パルもいます。しかしそれらの拠点は存在しない UID のものになっていて、誰も自分のキャラクターを取り戻せません。レベルも技能も所持品も消えたまま、ワールドだけが無傷に見えます。半分のバックアップは無いより厄介です。あると思っていたぶんだけ損をします。
Players/ も必ず一緒にコピーしてください。
稼働中にバックアップを取ると何が起きるか
書きかけのセーブを掴みます。
サーバーは一定間隔で自動保存し、Level.sav は数百 MB の大きなファイルで、その書き込みは不可分ではありません。書いている最中にコピーすれば、前半は新しいデータ、後半は古いデータというファイルになります。多くの場合は読み込めず、稀に読み込めてもワールドの状態が微妙に壊れています。
正しい手順は一つだけです。
# 1. サーバーを停止する
# 2. <WorldID>/ ディレクトリ全体をコピーする
# 3. サーバーを起動する
信頼できるバックアップのために数十秒止める。この取引はセーブが実際に壊れた日に清算されます。
どうしても止められない場合の次善策は、RCON で Save を送り、完了直後にコピーすることです。ただしこれは書き込みと衝突する確率を下げるだけで、無くすものではありません。停止してのバックアップと同等には扱わないでください。
復元の手順
順番を誤るとプレイヤーデータを失うので、この順で行います。
- **サーバーを停止します。**動かしたまま差し替えると、プロセスのメモリ上にある内容が次の自動保存で上書きしてしまいます
- **今あるセーブも先にコピーして退避します。**壊れていると思っていてもです。復元自体が失敗することもあり、そのとき戻れる先はこれだけです
- バックアップの
<WorldID>/ディレクトリで既存のものを置き換えます - **ディレクトリ名を照合します。**バックアップと現在の名前が違う場合は次の節へ
- サーバーを起動し、拠点とキャラクターの両方があることを確認します
飛ばされがちで、そして後悔しやすいのが 2 番です。
別のマシンへ移す
移行には復元にはない問題が一つ増えます。新しいマシンは初回起動時に自前の <WorldID> を生成するため、バックアップのものと一致しません。
どのワールドディレクトリを読み込むかは、次のファイルで決まります。
Pal/Saved/Config/LinuxServer/GameUserSettings.ini
この中の DedicatedServerName= が、SaveGames/0/ 配下で探しに行くディレクトリ名です。したがって移行の方法は二つあり、どちらか一方を選びます。
- 設定を変える:
DedicatedServerName=をバックアップのディレクトリ名にする - ディレクトリ名を変える:バックアップのディレクトリを新しいマシンが生成した名前に改名する
どちらでも構いませんが、**両方やってはいけません。**食い違った結果サーバーはセーブが無いと判断し、まっさらなワールドを新規生成します。古いワールドはすぐ隣に無傷で残ったままです。見た目は「セーブが消えた」ですが、実際には見つけられていないだけです。
よくある質問
Level.sav だけバックアップすれば足りますか。 足りません。Players/ には各プレイヤーのキャラクターデータが入っていて、これが無いと復元後に全員が新規キャラクターになります。<WorldID>/ ディレクトリを丸ごとコピーしてください。
サーバーを止めずにセーブをコピーしてもいいですか。 おすすめしません。自動保存の書き込みは不可分ではなく、書き込み中にコピーすると半端なファイルを掴みます。信頼できるバックアップのために数十秒止める価値はあります。
復元したらサーバーが新しいワールドを作りました。古いセーブは消えましたか。 ほぼ消えていません。ディレクトリ名が合っていないだけです。GameUserSettings.ini の DedicatedServerName= と SaveGames/0/ 配下のディレクトリ名を一致させてください。直すのはどちらか一方だけです。
この工程が後回しにされる理由
バックアップは性質上、今日やりたいことの後ろに回ります。即座の見返りが無く、価値が出るのは事故の日だけで、その日は前もって分からないからです。
本当の問題は怠慢ではなく、自分で覚えていなければならないことです。毎週手で実行し、サーバーを止め、数百 MB をコピーする手順は、三回続けば良いほうです。そしてセーブの破損は、ワールドが数か月動いてバックアップがとうに止まっている頃を狙ったように起こります。
| 取得日時 | サイズ | 種別 | 操作 |
|---|---|---|---|
| 2時間前 | 412.6 MB | 自動 | |
| 4時間前 | 410.2 MB | 自動 | |
| 6時間前 | 398.1 MB | 手動 |
直近 3 件のバックアップのみ表示しています。
KeepWorlds のパルワールド専用サーバーは決まった間隔で自動バックアップを取り、直近の数世代を保持します。コピーするのは Players/ を含むワールドディレクトリ全体なので、復元は一覧から選ぶ操作になります。ワールドの容量に効く設定を知りたい場合はワールド設定の全項目解説をどうぞ。
他の言語で読む
自分で運用しない方法もあります
ゲームとプランを選ぶだけで、専有マシン上にサーバーが立ち上がります。バックアップ、アップデート、期限のお知らせはこちらで対応いたします。
対応ゲームを見る