diff --git a/README.md b/README.md index e69de29..ce7d220 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,110 @@ +# πŸ“¦ Datapacks & Dev-World Overview + +## πŸŽ’ 1. `datapacks/` β€” Minecraft’s Built-In Modding System + +Datapacks are Minecraft’s **official way to add custom game logic** without installing mods. +They allow you to create: + +- 🍲 Recipes +- 🎁 Loot tables +- πŸ—Ί Structures +- βš™οΈ Commands/functions +- 🌌 Dimensions +- πŸ† Advancements +- 🌱 Worldgen features +- πŸ‘Ύ Mob behavior (via loot/function triggers) + +Datapacks live inside: + +``` +world/datapacks/ +``` + +(or inside any other world folder you choose). + +### πŸ“ Example Structure + +``` +world/ + datapacks/ + my_custom_pack/ + pack.mcmeta + data/ + minecraft/ + mypack/ +``` + +### ⚑ How Datapacks Work + +- When the server starts, Minecraft **automatically loads** all datapacks in that folder. +- You can reload them live with: + +``` +/reload +``` + +### 🧠 Why Track Datapacks in Git? + +Because datapacks are basically **tiny mods made from text files**, Git gives you: + +- Full version control +- Rollbacks for bad experiments +- A safe way to iterate +- Easy syncing between machines +- A complete history of every change + +> **Note:** Minecraft 1.1 did not support datapacks yet β€” but this structure is useful for future worlds or modern servers. + +--- + +## 🌍 2. `dev-world/` β€” A Safe Testing Sandbox + +`dev-world/` is **not** a built-in Minecraft feature. +It’s a folder **you create** to safely test changes without risking the real world. + +### 🎯 Purpose + +Use this sandbox world to test: + +- Dangerous commands +- Datapack functionality +- Worldgen changes +- NBT edits +- Anything experimental + +### πŸ“ Example Structure + +``` +dev-world/ + level.dat + region/ + playerdata/ +``` + +This mirrors your real `world/` folder. + +### πŸ’‘ Why a Dev World? + +- Reset it instantly +- Duplicate it whenever needed +- Safely break anything +- Prototype new features +- Avoid griefing or corrupting the main world + +### πŸ”§ How to Use `dev-world/` + +In your `server.properties`, set: + +``` +level-name=dev-world +``` + +Start the server β†’ it loads the dev world. + +When you're finished testing, switch back: + +``` +level-name=world +``` + +---