Files
2025-11-22 23:36:35 +00:00

111 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 📦 Datapacks & Dev-World Overview
## 🎒 1. `datapacks/` — Minecrafts Built-In Modding System
Datapacks are Minecrafts **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.
Its 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
```
---