112 lines
1.8 KiB
Markdown
112 lines
1.8 KiB
Markdown
🎒 1. datapacks/ — Minecraft’s built-in modding system
|
||
|
||
Datapacks are Minecraft's official way to add game logic without mods.
|
||
They let you create custom:
|
||
|
||
Recipes
|
||
|
||
Loot tables
|
||
|
||
Structures
|
||
|
||
Commands/functions
|
||
|
||
Dimensions
|
||
|
||
Advancements
|
||
|
||
Worldgen features
|
||
|
||
Mobs (via loot, behavior triggers, etc.)
|
||
|
||
They live inside:
|
||
|
||
world/datapacks/
|
||
|
||
|
||
or in a custom world folder of your choice.
|
||
|
||
Example structure:
|
||
|
||
world/
|
||
datapacks/
|
||
my_custom_pack/
|
||
pack.mcmeta
|
||
data/
|
||
minecraft/
|
||
mypack/
|
||
|
||
|
||
How they work:
|
||
|
||
When the server starts, Minecraft automatically loads all datapacks in that folder.
|
||
|
||
You can reload them live with:
|
||
|
||
|
||
/reload
|
||
|
||
Why track them in Git?
|
||
|
||
Because datapacks are basically tiny “mods” made out of text files.
|
||
Git lets you:
|
||
|
||
Version your changes
|
||
|
||
Roll back bad ideas
|
||
|
||
Experiment
|
||
|
||
Collaborate
|
||
|
||
Deploy from laptop → server instantly
|
||
|
||
Keep a history of your custom world logic
|
||
|
||
For a Vanilla 1.1 server, datapacks didn’t exist yet — BUT if you're doing a modern-style organization or planning forward, Git still handles it well.
|
||
|
||
|
||
|
||
🌍 2. dev-world/ — A safe test world
|
||
|
||
This is NOT a built-in Minecraft feature — it’s a practice/testing world folder that YOU create.
|
||
|
||
Purpose:
|
||
👉 To test datapacks, commands, NBT edits, worldgen changes, and dangerous experiments without ruining the real world.
|
||
|
||
What it looks like:
|
||
|
||
dev-world/
|
||
level.dat
|
||
region/
|
||
playerdata/
|
||
|
||
|
||
Basically the same as your real world/, but:
|
||
|
||
You can reset it anytime
|
||
|
||
You can duplicate it
|
||
|
||
You can try insane commands
|
||
|
||
You can prototype datapack functionality
|
||
|
||
You can test structures/commands with no consequences
|
||
|
||
How to use it:
|
||
|
||
You temporarily point your server to use dev-world instead of world.
|
||
|
||
In server.properties:
|
||
level-name=dev-world
|
||
|
||
|
||
|
||
|
||
Start the server → it loads the dev world.
|
||
When you’re done testing, switch back:
|
||
|
||
level-name=world
|
||
|