Tags
Creators
Details
2.4.0-beta.1
Compatibility
Changes
Starting from version 1.21, due to changes in chunk generation mechanics, Paper dropped support for the CraftWorld.regenerateChunk() method. As a result, using NatureRevive on 1.21+ required reliance on FastAsyncWorldEdit (FAWE) as an auxiliary tool. However, FAWE regeneration causes substantial performance overhead and has virtually abandoned Folia support. Although I created an optimized fork, it remained inconvenient—and for 26.X versions, Folia support was non-existent. Consequently, I continued searching for a viable solution (briefly mentioned in version 2.2.1).
After taking a deep dive into the original Bukkit engine method, I realized it was essentially an enhanced variation of ChunkGenerator + Seed. I believed it was possible to reproduce this behavior on 1.21+, which led to the creation of 2.4.0-beta.1!
You can now select the InPlace regeneration engine without needing FAWE installed. It utilizes the game's native chunk generation pipeline supplemented by NatureRevive's content injections (such as vanilla structures, loot chests, etc.) to regenerate chunks in the most efficient, safe, and stable manner possible. However, the Paper team abandoning this method in 1.21 means it is not something a solo developer can fully maintain overnight. With every game update, ChunkGenerator + Seed mechanics or my custom injected content may undergo underlying changes. Therefore, version 2.4.0 is currently released as a beta. I welcome servers running different versions to help test and complete the InPlace engine implementation.
(Currently tested and confirmed functional only on 1.21.1 Paper/Folia)
Important Notes
- Always back up your database and world files before updating NatureRevive.
- Although we have done our best to ensure compatibility with residence/spawn plugins, please make sure to back up your map files prior to updating.
- If you still require FastAsyncWorldEdit, we recommend using this optimized build.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:UawBthbH:wrvkoERf"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:UawBthbH:wrvkoERf"
}

