111 lines
2.1 KiB
Markdown
111 lines
2.1 KiB
Markdown
# 📦 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
|
||
```
|
||
|
||
---
|