Редактор level.dat для PocketMine-MP и Bedrock

Поддерживаются Minecraft Bedrock Edition и Java Edition, а также все их серверные ядра, популярные и редкие: Vanilla, Paper, Spigot, Purpur, Folia, Fabric, Forge, NeoForge, Mohist, Sponge, Bedrock Dedicated Server, PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly, Endstone, LeviLamina и остальные. Полный список.

Серверы Bedrock — PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly и официальный Bedrock Dedicated Server — читают одинаковый little-endian level.dat с 8-байтовым заголовком из worlds/<World>/. Измените название скопированного мира, спавн или игровые правила либо проверьте версию последней записи.

PocketMine-MPNukkitPowerNukkitXCloudburstBedrock Dedicated ServerDragonflyEndstoneWaterdogPE

Перетащите worlds/<World>/level.dat сюда

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · дампы чанков

Проблема одинаковых названий миров

После копирования worlds/hub в worlds/hub2 консоль, менеджер миров и плагины могут называть оба мира hub. Имя папки изменилось, но LevelName внутри level.dat осталось прежним.

Это влияет не только на отображение. Плагины, находящие миры по внутреннему имени — телепорты, настройки для отдельных миров и защита регионов, — могут выбрать неверный мир, а команды управления становятся неоднозначными. Исправьте тег: редактор перейдёт к LevelName и откроет его для изменения.

  1. Остановите сервер. Запущенный сервер перезапишет level.dat при сохранении и отменит изменение.
  2. Скачайте worlds/<World>/level.dat по SFTP или через файловый менеджер панели.
  3. Откройте его в редакторе, задайте новое значение LevelName и сохраните.
  4. Загрузите файл поверх исходного, сохранив старый как резервную копию.
  5. Запустите сервер и проверьте строку консоли о загруженных мирах.

Особенности серверных ядер

ЯдроПуть к мируПримечания
PocketMine-MP (PM5)worlds/<World>/Мир по умолчанию задаётся параметром level-name в server.properties. Это имя папки, а LevelName — внутреннее название мира.
Nukkit / PowerNukkitXworlds/<World>/Тот же формат Bedrock; PNX хранит рядом собственные файлы настроек.
Bedrock Dedicated Serverworlds/<World>/Параметр level-name в server.properties выбирает папку; версия хранилища в заголовке обычно равна 10.
Cloudburst / Dragonflyworlds/<World>/Читают тот же level.dat; Dragonfly может хранить дополнительные данные в своей базе.
WaterdogPE, Geyser—Прокси не хранят миры; NBT проходит через них по сети в сетевом формате.

Безопасная работа на боевом сервере

  • Создайте резервную копию всей папки мира, а не только level.dat. Только полная копия позволяет отменить неудачное изменение.
  • Не редактируйте работающий мир по SFTP. Остановите сервер, скачайте файл, измените и загрузите обратно. Правка открытого сервером файла может привести к его обрезанию.
  • Копируете мир для нового режима? Сразу измените LevelName, прежде чем сервер увидит копию, чтобы неверное имя не попало в кеш.
  • Проверьте панель файла после загрузки. Она показывает формат и версию хранилища. Если Bedrock-файл определяется не как Bedrock level.dat, выбран неверный или повреждённый файл.

Частые вопросы

PocketMine-MP использует тот же level.dat, что и Bedrock?

Да. PocketMine-MP реализует формат мира Bedrock, поэтому его level.dat содержит little-endian NBT с 8-байтовым заголовком той же структуры, что у сервера Vanilla Bedrock.

Почему два мира имеют одинаковое имя в консоли?

Оба мира скопированы из одной папки и содержат одинаковый LevelName. Имя папки и тег независимы; измените тег.

Можно переименовать мир без перезапуска сервера?

Нет. Мир находится в памяти и перезаписывается при сохранении, поэтому изменение на работающем сервере будет потеряно. Остановите сервер, измените файл и запустите снова.

Редактор работает с Nukkit и PowerNukkitX?

Да: формат, путь к файлу и порядок действий совпадают.

Как преобразовать мир Bedrock в Java?

NBT-редактора для этого недостаточно. Порядок байтов — лишь одно различие; структура тегов, палитры блоков и хранение чанков полностью различаются. Используйте специальный конвертер, а затем исправьте оставшиеся метаданные здесь.

Связанные инструменты