Как исправить сохранения игроков на сервере Palworld

На выделенных серверах Palword возникает проблема при переносе данных с Linux на Windows или наоборот: игроки видят экран создания персонажа, несмотря на наличие сохраненных файлов. Это происходит потому, что сервер присваивает разные GUID игрокам для каждой операционной системы. Решение, описанное ниже, заключается в использовании скрипта на Python и редактора файлов .sav из Unreal Engine для ручного переключения GUID каждого затронутого игрока, что фактически восстанавливает их сохранения. Этот процесс также можно выполнить, если повреждено только одно сохранение, что может произойти после обновления игры или сбоя сервера.

Требование

Для работы скриптов, используемых в этом руководстве, требуется Python версии 3.10 или выше. 

Примечание

Это исправление носит экспериментальный характер. Могут возникнуть многочисленные ошибки, включая потерю данных. Для предотвращения потери важных файлов рекомендуется создавать локальные резервные копии.


1. Войдите в панель управления Masspas .

2. Перейдите на вкладку «Файлы» .
BHFiles.webp

3. Найдите следующую директорию: ./home/container/Pal/Saved/SaveGames/0/[World]/Players
Palworld_DirPlayers.webp

4. Если после переноса все игроки не могут войти в своих персонажей, необходимо найти старый и новый аккаунты каждого игрока . Это можно сделать, проверив фильтр «Дата изменения» в файле игрока после его входа в систему или создания персонажа.GUID
Palworld_DateModified.webp

Примечание

Чтобы найти старый GUID игрока после переноса сервера, попросите его войти на предыдущий сервер. Если не все сохранения игроков потеряны или перенос не произошел, старый GUID пострадавшего игрока можно найти, попросив всех остальных игроков войти на сервер и записав самый старый файл.

5. После того, как вы запишете затронутые файлы сохранений и укажете, кому они принадлежат, остановите сервер.
BHStop.webp

6. Перейдите на вкладку «Файлы» .
BHFiles.webp

7. Найдите следующую директорию: ./home/container/Pal/Saved/SaveGames/0
Palworld_Dir0.webp

8. Скачайте папку .World
Palworld_DownloadWorld.webp

9. Переименуйте эту же папку, чтобы создать резервную копию.
Palworld_RenameWorld.webp

10. Перейдите на страницу исправления ошибок Palworld Host Save Fix и выберите Code > Download ZIP .
Palworld_GithubDownload.webp

11. Загрузите инструмент uesave-rs для нужной операционной системы.
Palworld_UESave.webp

12. Распакуйте все загруженные файлы в новую временную папку.
Palworld_ExtractUESave.webp

13. В папке нажмите и выберите «Открыть окно PowerShell здесь» , чтобы открыть командное окно в этой папке.Shift + Right Click
Palworld_WorldPowerShell.webp

Примечание

Если эта опция не отображается, убедитесь, что никакие файлы не выбраны, и щелкните правой кнопкой мыши в пустой области папки.

14. Выполните следующую команду:python gui.py
Palworld_PowershellPython.webp

15. В разделе uesave выберите «Обзор» и выберите файл.uesave.exe
Palworld_PythonUESave.webp
Palworld_PythonUESaveBrowse.webp

16. В разделе «Сохранить папку» выберите «Обзор» и выберите папку из шага 8.World
Palworld_PythonSaveFolder.webp
Palworld_PythonSaveFolderBrowse.webp

17. Для каждого затронутого игрока выберите новый GUID его нового персонажа и старый GUID его старого персонажа, а затем поставьте галочку в поле « Исправление гильдии» .
Palworld_PythonOldNewGUID.webp

18. После завершения нажмите кнопку «Выполнить команду» и подтвердите предупреждение, нажав клавишу на клавиатуре.Enter
Palworld_PythonRun.webp

19. Подождите несколько минут, пока исправления применятся к сохранению, и подтвердите действие после завершения.
Palworld_PythonFinish.webp

Примечание

Повторите шаги 17-19 для каждого игрока на сервере, которого затронула эта проблема.

20. После применения всех исправлений вернитесь в панель управления Masspas .

21. Перейдите на вкладку «Файлы» .
BHFiles.webp

22. Найдите следующую директорию: ./home/container/Pal/Saved/SaveGames/0
Palworld_Dir0.webp

23. Загрузите обновленную папку World.
BHFilesDrag.webp

24. Запустите сервер. Все затронутые персонажи смогут войти в систему.
BHStart.webp

Примечание

Если игрок по-прежнему не может войти в систему или прогресс одного игрока заменяется прогрессом другого, убедитесь, что введенные старый и новый GUID принадлежат правильному игроку и не были случайно перепутаны.


Как установить Python

1. Откройте любое окно командной строки .
Palworld_Cmd.webp

2. Введите следующую команду:Python
Palworld_CmdPython.webp

3. Если версия Python не найдена, будет открыт магазин Windows . Загрузка из магазина предоставит Python необходимый доступ.
Palworld_CmdPythonDownload.webp