Java: строки внутри GameRules
В Java Edition путь Data → GameRules содержит по одному TAG_String на правило с точным именем из /gamerule. Значение записывается текстом: "true", "false" или числом. Отсутствующие правила используют значения по умолчанию; добавление строки с правильным именем действует как команда.
| Правило | Значение | Эффект |
keepInventory | "true" | Сохранять предметы после смерти |
doDaylightCycle | "false" | Остановить смену времени суток |
doWeatherCycle | "false" | Остановить смену погоды |
mobGriefing | "false" | Запретить криперам и эндерменам менять блоки |
doMobSpawning | "false" | Остановить естественный спавн мобов |
doFireTick | "false" | Остановить распространение огня |
commandBlockOutput | "false" | Скрыть сообщения командных блоков в чате |
randomTickSpeed | "3" | Скорость роста растений и распространения огня |
playersSleepingPercentage | "50" | Доля игроков для пропуска ночи |
spawnRadius | "10" | Радиус области спавна |
Регистр важен. Тег keepinventory в Java не совпадает с keepInventory и будет проигнорирован.
Bedrock не объединяет правила. Каждое логическое правило — TAG_Byte со значением 1 или 0 в корне level.dat: keepinventory, domobspawning, domobloot, dodaylightcycle, doweathercycle, mobgriefing, firedamage, falldamage, drowningdamage, pvp, showcoordinates, commandblockoutput, sendcommandfeedback, naturalregeneration, tntexplodes, respawnblocksexplode, showdeathmessages, doimmediaterespawn. Числовые правила randomtickspeed и functioncommandlimit имеют тип TAG_Int.
Если правила нет, добавьте тег правильного типа: Byte для переключателя или Int для числа. Тег неверного типа игнорируется либо мешает загрузке.
Когда файл удобнее команды
- Читы выключены, и вы не хотите включать их ради одной команды.
- Мир не загружается: правило вроде
doImmediateRespawn можно задать до первого входа.
- Готовится шаблон мира для нескольких серверов, и правила должны попасть во все копии.
- Плагин изменил правило, и нужно проверить фактически сохранённое значение.
- Массовая правка: несколько правил в нескольких мирах быстрее менять в файлах.
Перед изменением level.dat остановите сервер: работающий мир перезапишет файл и отменит изменения.