Ores come back. Worlds stay alive.
A clean, server-friendly ore regeneration mod for NeoForge 1.21.1
Tired of traveling 10,000 blocks for diamonds because your spawn chunks are mined out?
Ore Resurgence quietly brings naturally generated ores back to life in chunks players have actually explored — after a configurable amount of real-world time. By default, 14 days after a chunk is first discovered, its ores can regenerate exactly where they would have naturally spawned.
No magic blocks. No player bases turning into diamond houses. Just natural-looking veins, at the right heights, in the right stone.
It was built for real servers: large worlds, modpacks, restarts, offline periods, and hundreds of thousands of chunks.
Server-side only — players don't need to install anything.
For Players:
For Server Owners & Modpack Makers:
August 31, 10:00 PM.It remembers everything through restarts and crashes, and it never force-loads chunks to do it. If no one visits a chunk, it just waits.
Your stone house will stay a stone house. The mod only replaces natural stone, deepslate, netherrack and other host rocks — never chests, furnaces, machines, or any block with an inventory.
This isn't just coal_ore and diamond_ore.
c:ores tag. If a mod adds mythril_ore correctly, it's supported instantly — no update needed.*_ore blocks and ancient_debris.And if you want control, you have it.
Want to watch the magic?
Use the new boss-bar overlay:
/oregenui on — Show live progress (per-player, no OP needed)/oregenui off — Hide it/oregen ui — OP toggle versionWhen active, a boss bar at the top of your screen shows:
Regenerating Overworld [12, -45] — Queue: 18 | Tracked: 4,821 | +14 ores
Perfect for testing or just satisfying curiosity. Toggle it on and off anytime.
Everything lives in config/oreregen-server.toml (and world/serverconfig/). No restart needed for most changes — just /oregen reload.
Popular tweaks:
# How long before ores can return?
regeneration_interval_days = 14
# Need to test quickly? Use seconds instead of days
test_mode = false
test_interval_seconds = 60
# How aggressive should it be per tick?
max_chunks_per_tick = 5
# Which dimensions?
mode = "ALL" # or WHITELIST / BLACKLIST
blacklist = ["minecraft:the_end"]
# Existing worlds?
existing_chunk_policy = "REGISTER_ON_PLAYER_VISIT"
# Fine-tune each ore: 1.0 = full, 0.5 = half, 0.0 = off
rates = ["minecraft:diamond_ore=1.0", "minecraft:ancient_debris=0.5", "mythrilmod:mythril_ore=1.0"]
All main commands need OP (level 2). The UI toggle is available to everyone via /oregenui.
| Command | What it does |
|---|---|
/oregen status |
Overall health: tracked, eligible, queued, supported ores, next regeneration |
/oregen scan |
Breakdown per dimension |
/oregen regenerate |
Force current chunk to regenerate now |
/oregen regenerate 5 |
Force a 11x11 area (great for testing) |
/oregen chunk status |
Details for the chunk you're standing in |
/oregen chunk force |
Force this one chunk overdue & queue it |
/oregen reload |
Reload config & re-scan ores |
/oregen reset |
Destructive — forgets all tracked chunks |
/oregenui on/off |
Toggle the live boss-bar UI |
Pro-tip for testing: Set test_mode = true and test_interval_seconds = 60, then /oregen regenerate 0 and watch the UI!
Requires: Minecraft 1.21.1, NeoForge 21.1.235+, Java 21
Installation:
oreresurgence-1.0.0.jar into your mods folder on the server only.Compatible with:
Will it eat my base? No. It only replaces natural host rocks and skips any block with an inventory, plus it avoids exposed/thin walls. Your stone house is safe.
Does it work if my server is offline for days? Yes. It uses real-world time, not in-game ticks. If a chunk was due on Sept 10 and you were offline until Sept 20, it will be queued as overdue the moment someone visits.
My modded ore isn't regenerating?
Make sure the mod adds it to the c:ores tag (most do) and that its block name ends in _ore. If needed, add it to the rates list and set it to 1.0, then /oregen reload.
I ran /oregen regenerate 100 and the server lagged!
Radius 100 = 40,401 chunks. That's huge on purpose — it will take many minutes and unloaded chunks will show as "Queued" until visited. Use 5 or 10 for testing.
Keep your world mining-friendly — forever.
Made for communities that want to explore without end.