Voxel Shop beta is live. Expect occasional bugs. Learn more  
WildRegeneration icon

WildRegeneration 2.0.0

Regenerate the Wilderness, Regenerate at Lands unclaim

WildRegeneration
Regenerate inactive wilderness and restore saved areas.
Wiki | Discord


After a few months, a survival world starts to show its age: abandoned buildings, mining pits and damaged terrain. WildRegeneration automatically regenerates wilderness chunks once players have left them untouched for a time you choose. You decide which worlds to include and what should come back, including ores and loot in structure chests.

You can also save an area as a snapshot and restore it later. This is useful for builds you want to keep, event areas you need to reset, or changes you might want to undo. Snapshots are managed in an in-game menu.

Using Lands? WildRegeneration can regenerate unclaimed land and restore rented areas when the rental ends.


village-comparison.jpg
Before: a village damaged by lava and fire. After: the same village restored with WildRegeneration.


Automatic wilderness regeneration
WildRegeneration remembers when players last interacted with a chunk. Breaking blocks, placing blocks and opening doors are examples of interactions that reset its timer. Simply walking through does not.

Once a chunk has been untouched for long enough, it enters the regeneration queue. The built-in engine recreates its terrain using the world's seed and generator. You can configure each world separately, so a resource world and your main survival world can use different settings.


  1. Inactivity timer: Set how long a chunk must remain untouched before it regenerates.
  2. Active hours: Run automatic regeneration throughout the day or limit it to selected hours.
  3. Queue settings: Choose how many chunks to process per cycle and the time between cycles.
  4. Loaded chunks only: Leave unloaded chunks pending until they are loaded again, if you prefer.



Lands: unclaims and rental resets
Regenerate land after unclaiming. WildRegeneration can regenerate chunks when they are unclaimed or a land is deleted in Lands. A configurable grace period gives players time to use the area: interacting with an unclaimed chunk during that period cancels its pending unclaim regeneration.

Restore rented areas when the rental ends. Lands can use WildRegeneration snapshots to return a rented area to its saved state after the rental ends. This restores the saved area instead of replacing it with freshly generated terrain, so the rental can keep its prepared layout. Enable the rental reset behavior in Lands to use this integration.

Keep existing claims protected. Lands claims and WorldGuard regions are excluded from automatic wilderness regeneration. With Lands, you can also leave a configurable buffer of wilderness chunks around claims. This buffer applies to ordinary wilderness regeneration, not to regeneration triggered by unclaiming.

Lands and WorldGuard are optional. You can use WildRegeneration on its own as well.

Snapshots and the in-game menu
Regeneration recreates terrain. A snapshot restores an area you saved earlier. If you want to bring back a player-built house or reset an arena to its prepared layout, take a snapshot first.

Snapshots save blocks, container contents, signs and other block entity data, and biomes. They are restored at their original location. Mobs and other entities are not saved.


snapshot-menu.jpg
View a snapshot's details and choose what to do with it.


From the menu, you can:


  1. Restore a snapshot after confirming the action.
  2. Teleport to its area or show the boundaries with particles.
  3. Restore with empty containers instead of restoring their saved contents.
  4. Filter snapshots by your own, players' or plugins' snapshots.
  5. Move snapshots to the trash and recover them before their retention period ends.


Permissions let you give staff access to their own snapshots, other players' snapshots and plugin-owned snapshots separately.

Creating a snapshot
[LIST=1]Run /wr selection. Left-click a block for the first corner and right-click for the second.Use /wr selection expand if you want to include the full world height.Run /wr snapshot create to save the area.
[/LIST]
Open /wr snapshot to manage saved areas. You can also use /wr view to show a saved area's boundaries.


area-selection.jpg
The selection display shows when both corners are set.


While an area is being restored
Players are temporarily kept out of areas being regenerated or restored. Block breaking, placement and interaction inside the area are restricted until the job finishes. Authorized staff can use a bypass permission to enter.

Progress bars show how the work is going. Nearby players can see the area's boundaries, with particles marking completed chunks and a visual effect when the job finishes.


restore-progress.jpg
A snapshot restore in progress.


If the server stops during a registered snapshot restore, it resumes after the next startup. Deleted managed snapshots remain recoverable from the trash until the configured retention period ends.

Ores and chest loot
Regenerating terrain can also replenish resources. You choose whether that suits your server, separately for each world.


  1. Ores: Bring ores back with the terrain, or replace them with the surrounding base stone.
  2. Structure containers: Allow regenerated chests to have loot again, or leave them empty.


These settings work with the built-in regeneration engine. The optional WorldEdit and FastAsyncWorldEdit providers do not support them.

Performance settings
Regeneration and snapshot restores spread their work over multiple server ticks. You can set a shared time budget for work on the main thread and limit how many chunks are generated and compared at once. If ticks take longer than the configured threshold, the budget is reduced.

Chunk comparisons run off the main thread, and only blocks that differ are written. The automatic queue also lets you adjust the processing rate and active hours. Performance depends on your hardware, world generator, area size and other server activity.

Installation and configuration
WildRegeneration requires Java 25 or higher and supports Spigot and Paper. WorldEdit and FastAsyncWorldEdit are not required.
[LIST=1]Stop your Spigot or Paper server and place the WildRegeneration JAR in its plugins folder.Start the server to generate its configuration files.Edit worlds.yml to choose your worlds, inactivity delays, claim buffer and ore/loot settings.Edit config.yml for the queue, active hours, performance settings and snapshots.Restart the server to apply the changes.
[/LIST]
SQLite is used by default; MySQL is optional. Messages and menus can be customized in the locale files. You can also configure snapshot size limits, cleanup and trash retention.

Custom world generators may not be compatible with terrain regeneration. Test your generator before enabling automatic regeneration. WorldEdit and FastAsyncWorldEdit are available as optional providers if the built-in engine does not work with your generator, but compatibility is not guaranteed with those either. Snapshots always use WildRegeneration's own engine.

A note about world generation
Terrain regeneration uses your current Minecraft version and generator settings. Chunks originally generated with a different version or configuration may look different afterwards. Small generation differences can occur even with matching settings. Use snapshots for areas whose saved block state you want to restore, and keep regular world backups.

Developer API
Other plugins can use the API to regenerate chunks or cuboid areas, create and update snapshots, restore them and track progress. For example, a plugin can save an area when a rental starts and restore it when the rental ends. Plugins using PluginFramework can access WildRegeneration through the framework's regeneration integration.


Questions or need help setting it up?
Wiki | Discord
Owned
Ready to download
This resource is already attached to your account. You can download the latest file any time.