Modifier les règles de jeu dans level.dat

Compatible avec Minecraft Bedrock Edition et Java Edition, ainsi qu'avec tous leurs logiciels serveur, courants ou non : Vanilla, Paper, Spigot, Purpur, Folia, Fabric, Forge, NeoForge, Mohist, Sponge, Bedrock Dedicated Server, PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly, Endstone, LeviLamina et les autres. Liste complète.

Les règles de jeu sont stockées dans level.dat. Vous pouvez donc les modifier sans charger le monde ni activer les commandes de triche, notamment si le monde ne démarre pas, si la triche est désactivée ou si vous préparez une copie avant l'arrivée des joueurs. Java les regroupe dans un composé GameRules sous forme de chaînes ; Bedrock place chaque règle dans sa propre balise Byte en minuscules à la racine.

keepInventorydoDaylightCyclemobGriefingcommandBlockOutputrandomTickSpeed

Déposez level.dat ici

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · extractions de chunks

Java : un composé GameRules de chaînes

Dans Java Edition, Data → GameRules contient une balise TAG_String par règle, avec le nom exact utilisé par /gamerule et la valeur écrite sous forme de texte : "true", "false" ou un nombre. Les règles jamais définies dans le monde sont simplement absentes et reprennent leur valeur par défaut. Ajouter la balise avec le bon nom et une valeur String produit le même effet que la commande.

RègleValeurEffet
keepInventory"true"Conserver les objets après la mort
doDaylightCycle"false"Figer l'heure de la journée
doWeatherCycle"false"Figer la météo
mobGriefing"false"Empêcher les creepers et endermen de modifier les blocs
doMobSpawning"false"Arrêter l'apparition naturelle des créatures
doFireTick"false"Empêcher le feu de se propager
commandBlockOutput"false"Masquer les messages des blocs de commande dans le chat
randomTickSpeed"3"Vitesse de croissance des cultures et de propagation du feu
playersSleepingPercentage"50"Part des joueurs nécessaire pour passer la nuit
spawnRadius"10"Étendue de la zone d'apparition

La casse est importante. keepinventory dans un fichier Java n'est pas la même balise que keepInventory et sera ignorée.

Bedrock : balises Byte individuelles en minuscules

Bedrock ne regroupe pas les règles. Chacune est une balise TAG_Byte à la racine de level.dat, dont le nom est en minuscules et la valeur 1 ou 0 : keepinventory, domobspawning, domobloot, dodaylightcycle, doweathercycle, mobgriefing, firedamage, falldamage, drowningdamage, pvp, showcoordinates, commandblockoutput, sendcommandfeedback, naturalregeneration, tntexplodes, respawnblocksexplode, showdeathmessages, doimmediaterespawn. Les règles numériques telles que randomtickspeed et functioncommandlimit sont plutôt des balises TAG_Int.

Pour définir une règle absente, ajoutez une balise du bon type : Byte pour une option binaire, Int pour un nombre. Une règle enregistrée avec le mauvais type est ignorée ou empêche le chargement.

Cas où modifier le fichier est préférable

  • Les commandes de triche sont désactivées et vous ne voulez pas les activer temporairement pour exécuter une seule commande.
  • Le monde ne se charge pas : une règle telle que doImmediateRespawn peut être définie avant la première connexion.
  • Vous préparez un monde modèle destiné à plusieurs serveurs et souhaitez intégrer les règles à chaque copie.
  • Un plugin a modifié une règle et vous voulez voir la valeur réellement stockée plutôt que celle indiquée par une commande.
  • Modifications en série. Définir une douzaine de règles dans plusieurs mondes est plus rapide dans les fichiers que dans le chat.

Arrêtez d'abord le serveur, comme pour toute modification de level.dat : un monde actif réécrit le fichier à la sauvegarde et annule le changement.

Questions fréquentes

Pourquoi ma règle de jeu est-elle une chaîne dans Java ?

Java stocke toutes les règles de jeu sous forme de chaînes, y compris les booléens et les nombres. Écrivez "true", pas un octet de valeur 1.

Pourquoi s'agit-il d'un Byte dans Bedrock ?

Bedrock stocke les options binaires dans des balises Byte à la racine et les règles numériques sous forme d'Int. Il n'existe aucun composé GameRules.

Une règle est totalement absente du fichier.

Cela signifie qu'elle utilise sa valeur par défaut. Ajoutez la balise avec le nom exact et le bon type ; le monde utilisera alors votre valeur.

Les règles de jeu sont-elles copiées avec le dossier du monde ?

Oui. Elles se trouvent dans level.dat ; un monde copié en hérite donc, tout comme il conserve son ancien nom de monde.

Outils associés