✨ What is RarityChests?
RarityChests adds 5 tiers of treasure chests to Minecraft 1.21.1 (NeoForge): Copper → Iron → Emerald → Diamond → Netherite. They spawn naturally in the world, glow in the dark, and each one holds a unique loot — no two chests ever contain the same items.
To open one you need the matching rarity key. Keys have limited uses, can be crafted, found in chests, or given by admins. Fully configurable, no recompile needed.
🎮 Features
- 🗝️ 5 chest tiers + 5 matching keys (copper/iron/emerald/diamond/netherite)
- 🌍 Hybrid spawn system: new chunks + around players (each toggleable)
- 🎲 Unique loot per chest: 1–5 different items rolled from a JSON table (1 file per tier)
- 🔑 Keys with limited uses per tier (e.g. copper = 5, netherite = 1), craftable
- 🔄 Respawn system: looted chests respawn elsewhere after a configurable delay (global + per dimension, in seconds)
- 💨 Despawn: chests vanish X seconds after closing, with effects
- 📦 Placeable chests (v1.1+): permanent key↔loot dispensers — every player rolls their own personal loot (modes: once / cooldown / unlimited)
- 📣 Server broadcast on Diamond/Netherite finds (toggleable)
- 🌐 English + French included, auto-reloading config, admin commands
🕹️ How to play
- Explore — chests glow and emit particles when they spawn.
- Bring the key of the same tier (check uses in the tooltip).
- Right-click to open: your unique 1–5 item loot is generated.
- The key loses 1 use. Get new keys by crafting, from chest loot (each tier can drop the next key), or
/rc givekey. - Looted chest disappears → a new one respawns elsewhere after the delay.
⚙️ Configuration
Everything lives in config/raritychests-common.toml (auto-reloads on save, auto-recreated with defaults if deleted, auto-formatted for readability):
- Spawn on/off + rates, rarity weights, dimension allowlist
- Respawn delay in seconds (global + per-dimension override)
- Despawn timer, key required per tier + uses per key
- Chest/key display names, particles, sounds, broadcasts
- Placed-chest loot mode (
once/cooldown/unlimited)
🎁 Loot tables
One JSON file per chest in config/raritychests/loot/ (copper.json … netherite.json), reloaded live with /rc reload. Any vanilla or modded item:
{
"rolls": { "min": 1, "max": 5 },
"uniquePick": true,
"items": [
{ "id": "minecraft:diamond", "min": 1, "max": 3, "chance": 0.9 },
{ "id": "raritychests:netherite_key", "min": 1, "max": 1, "chance": 0.12 }
]
}
⌨️ Admin commands (/rc, permission 2)
| Command | Effect |
|---|---|
/rc or /rc help |
Show help |
/rc spawn <tier> [x y z] |
Spawn a chest |
/rc givekey <tier> [player] [count] |
Give fresh keys |
/rc locate <tier> |
Nearest chest of that tier |
/rc list |
Active chests + pending respawns |
/rc reload |
Reload loot JSON tables |
/rc clear [dimension] |
Remove active chests (no drop, no respawn) |
/rc resetloot <x> <y> <z> |
Reset a placed chest (loot + players forgotten) |
📦 Requirements
- Minecraft 1.21.1 + NeoForge 21.1.249 (or newer 21.1.x)
- Java 21
- ⚠️ Same .jar, same version on server AND client (NeoForge 1.21 has no server-only mode for mods adding blocks/items)
❓ FAQ
Players get kicked instantly / "registry data" error?
They must install the same RarityChests .jar in their modpack (see Requirements).
I deleted the config, everything broke?
No — raritychests-common.toml is recreated with defaults on next start.
Can I use modded items in loot?
Yes: "othermod:super_sword". Unknown ids are skipped with a console warning, never a crash.
🇫🇷 Version française
✨ C'est quoi RarityChests ?
RarityChests ajoute 5 tiers de coffres au trésor dans Minecraft 1.21.1 (NeoForge) : Cuivre → Fer → Émeraude → Diamant → Netherite. Ils apparaissent naturellement dans le monde, brillent dans le noir, et chacun contient un butin unique — deux coffres n'ont jamais le même contenu.
Pour en ouvrir un, il faut la clé de la même rareté. Les clés ont des usages limités, se craftent, se trouvent dans les coffres ou se donnent via commande admin. 100 % configurable, sans recompiler.
🎮 Fonctionnalités
- 🗝️ 5 tiers de coffres + 5 clés assorties (cuivre/fer/émeraude/diamant/netherite)
- 🌍 Spawn hybride : nouveaux chunks + autour des joueurs (chaque système activable séparément)
- 🎲 Loot unique par coffre : 1 à 5 objets différents tirés d'une table JSON (1 fichier par tier)
- 🔑 Clés à usages limités par tier (ex : cuivre = 5, netherite = 1), craftables
- 🔄 Système de respawn : les coffres pillés réapparaissent ailleurs après un délai configurable (global + par dimension, en secondes)
- 💨 Disparition : les coffres s'évanouissent X secondes après fermeture, avec effets
- 📦 Coffres posés (v1.1+) : distributeurs permanents clé↔loot — chaque joueur tire son propre butin personnel (modes : once / cooldown / unlimited)
- 📣 Annonce serveur lors des trouvailles Diamant/Netherite (désactivable)
- 🌐 Anglais + français inclus, config rechargée à chaud, commandes admin
🕹️ Comment jouer
- Explore — les coffres brillent et émettent des particules à leur apparition.
- Prévois la clé du même tier (usages restants dans l'infobulle).
- Clic droit pour ouvrir : ton butin unique de 1 à 5 objets est généré.
- La clé perd 1 usage. Nouvelles clés via craft, butin des coffres (chaque tier peut donner la clé du suivant) ou
/rc givekey. - Le coffre pillé disparaît → un nouveau réapparaît ailleurs après le délai.
⚙️ Configuration
Tout se règle dans config/raritychests-common.toml (rechargé à chaque sauvegarde, recréé avec les défauts si supprimé, mis en forme automatiquement) :
- Spawn on/off + taux, poids des raretés, dimensions autorisées
- Délai de respawn en secondes (global + surcharge par dimension)
- Timer de disparition, clé requise par tier + usages par clé
- Noms d'affichage coffres/clés, particules, sons, annonces
- Mode loot des coffres posés (
once/cooldown/unlimited)
🎁 Tables de loot
Un fichier JSON par coffre dans config/raritychests/loot/ (copper.json … netherite.json), rechargé en jeu avec /rc reload. N'importe quel objet vanilla ou moddé :
{
"rolls": { "min": 1, "max": 5 },
"uniquePick": true,
"items": [
{ "id": "minecraft:diamond", "min": 1, "max": 3, "chance": 0.9 },
{ "id": "raritychests:netherite_key", "min": 1, "max": 1, "chance": 0.12 }
]
}
⌨️ Commandes admin (/rc, permission 2)
| Commande | Effet |
|---|---|
/rc ou /rc help |
Affiche l'aide |
/rc spawn <tier> [x y z] |
Fait apparaître un coffre |
/rc givekey <tier> [joueur] [nombre] |
Donne des clés neuves |
/rc locate <tier> |
Coffre le plus proche de ce tier |
/rc list |
Coffres actifs + respawns en attente |
/rc reload |
Recharge les tables de loot JSON |
/rc clear [dimension] |
Supprime les coffres actifs (sans drop, sans respawn) |
/rc resetloot <x> <y> <z> |
Réinitialise un coffre posé (loot + joueurs oubliés) |
📦 Prérequis
- Minecraft 1.21.1 + NeoForge 21.1.249 (ou 21.1.x plus récent)
- Java 21
- ⚠️ Même .jar, même version côté serveur ET client (NeoForge 1.21 ne permet plus le mode serveur-only pour les mods ajoutant blocs/objets)
❓ FAQ
Les joueurs sont kick instantanément / erreur « registry data » ?
Ils doivent installer le même .jar RarityChests dans leur modpack (voir Prérequis).
J'ai supprimé la config, tout est cassé ?
Non — raritychests-common.toml est recréé avec les défauts au prochain démarrage.
Je peux mettre des objets moddés dans le loot ?
Oui : "othermod:epee_op". Les ids inconnus sont ignorés avec un avertissement console, jamais de crash.

