Некоторые MC Yuba, возможно, сталкивались с этой проблемой.
Если сервер не управляется в течение определенного периода времени или на сервере переключается проверка подлинности и пиратства, данные игрока будут потеряны.
Вот пример: Предположим, мой игровой идентификатор — MGSLANGFENG. Я получил много вещей на сервере, когда сервер был аутентифицирован, но после того, как сервер был переключен в автономный режим для проверки, когда я снова зашел на сервер, все пропало.
Это как-то связано с тем, как сервер MC хранит данные игроков.
Давайте сначала поговорим о том, как сервер mc хранит пользовательские данные.
Сначала после входа на сервер ваше имя будет преобразовано в uuid (или ваш id соответствует уникальному uuid), а затем сервер сгенерирует два файла в формате uuid.dat и uuid.dat_old в world/playerdata. папка.
Эти два файла — ваши данные на сервере.
Ладно, к этому моменту мы примерно понимаем, как сервер хранит наши данные.
Так что же происходит, когда пользовательские данные теряются?
На самом деле это легко объяснить. Самая распространенная ситуация — переключение онлайн- и офлайн-метода проверки сервера.
Когда мы выбираем онлайн-проверку, uuid сохраненных данных нашего игрока является единственным uuid, соответствующим нашему официальному имени.
Когда мы переключимся в автономный режим и снова войдем на сервер, новый uuid будет сгенерирован случайным образом.
Поскольку uuid разный, соответствующие файлы, которые мы читаем после входа на сервер, также различаются, что приводит к «потере» данных игрока.
Не совсем понял? Здесь мы приводим пример
Предполагая, что наш идентификатор — MGSLANGFENG, uuid должен быть
e2095569-482b-4810-ab0c-1f3f545ff10a
Правильно, при нормальных обстоятельствах два файла, сохраненные на сервере, должны быть одинаковыми.
e2095569-482b-4810-ab0c-1f3f545ff10a.dat
e2095569-482b-4810-ab0c-1f3f545ff10a.dat_old
Когда мы заходим на сервер, сервер прочитает файл e2095569-482b-4810-ab0c-1f3f545ff10a.dat, содержащий наши данные.
Однако, когда мы переключимся в автономный режим, uuid изменится. Когда мы снова войдем на сервер, uuid может стать другим.
b5f24146-66ea-4a08-a434-416760e33bed
Затем будут созданы два новых файла данных.
b5f24146-66ea-4a08-a434-416760e33bed.dat
b5f24146-66ea-4a08-a434-416760e33bed.dat_old
В данный момент мы читаем файл b5f24146-66ea-4a08-a434-416760e33bed.dat. Это новый пустой файл, который, по нашему мнению, приведет к потере данных.
На самом деле одна идея по восстановлению очень проста, просто замените uuid в имени файла старого uuid на новый.
Но сложность в том, как узнать старый uuid и новый uuid.
Здесь есть два метода
Самый прямой способ — прочитать журнал. Каждый раз, когда вы заходите на сервер, вам будут напоминать ваш идентификатор, uuid и ваш IP-адрес. Затем вы сможете запомнить старый и новый uuid, а затем заменить их вручную.
Конечно, некоторые основные терминалы сейчас могут не отображать uuid, поэтому вам нужно использовать второй метод.
То есть прочитать файл данных напрямую
Инструмент, который мы здесь используем,
https://irath96.github.io/webNBT/
Его можно открыть прямо онлайн для просмотра, редактирования и изменения, что более удобно.
После того, как мы откроем наш dat-файл, мы по некоторым признакам судим, какому пользователю он принадлежит (это не обязательно так, идентификатор игрока может храниться в папке dat некоторых сервисов), а затем заменяем его. мы можем восстановить данные, перезапустив сервер.
Для получения более подробной информации перейдите на сайт minecraft. wikiПроверятьhttps://zh.minecraft.wiki/w/%E7%8E%A9%E5%AE%B6%E5%AD%98%E5%82%A8%E6%A0%BC%E5%BC%8F?variant=zh-cn