Links
Tags
Creators
Details
1.1.0
Compatibility
Changes
FarmweltPlugin v1.0.5 - Major Update: Auto-Reset & Enhanced Safety
๐ What's New
๐ Automatic World Reset System
- Scheduled Resets: Configure automatic world resets with customizable intervals (in days)
- Smart Warnings: Players receive warnings at configurable times before reset (7 days, 3 days, 1 day, 12h, 6h, 3h, 1h)
- Safe Evacuation: All players are automatically teleported to safety before reset
- Multiverse-Core Integration: Seamless world deletion and recreation
- Unified Seed System: One seed for all dimensions (like Singleplayer
/seedcommand) - Admin Controls: New
/resetcommand with subcommands (now, info, reschedule, toggle)
๐ก๏ธ Enhanced Safety Features
No more unsafe spawns! Complete overhaul of teleportation safety checks:
Overworld:
- โ No cave spawns - sky must be visible
- โ No bedrock spawns
- โ No lava nearby
- โ 2 blocks of air above player
- โ Proper ground (no water, no lava)
Nether:
- โ Spawns between Y=32 and Y=120 (avoids bedrock)
- โ 3 blocks of air for safety
- โ Lava check in all directions
- โ Lava-fall protection (checks above player)
- โ Only safe, open platforms
End:
- โ Spawns on outer islands (1000-2000 blocks from center)
- โ NOT on the main island (no Ender Dragon fights!)
- โ Only End Stone platforms (no obsidian pillars)
- โ No bedrock
- โ 3 blocks of air
โ๏ธ Full Configuration System
Two comprehensive config files:
config.yml - Main configuration:
- General settings (debug mode)
- Teleport settings (range, attempts, safety checks)
- Customizable messages (all player messages)
- World reset configuration
- Warning system
worlds.yml - World management:
- Farm world configuration (Overworld, Nether, End)
- Enable/disable individual worlds
- Custom spawn location for
/spawncommand
๐ฌ Customizable Messages
All player-facing messages are now configurable:
- Permission denied messages
- World disabled notifications
- Teleport success messages
- Safe location not found warnings
- Supports placeholders (e.g.,
{world})
๐ฎ New Commands
/reset now - Instantly reset all farm worlds (admin)
/reset info - Show next reset time and configuration
/reset reschedule - Recalculate next reset date
/reset toggle - Enable/disable auto-reset system
๐ Requirements
- Minecraft: 1.21.8 (Paper/Spigot)
- Multiverse-Core: 4.3.12+ (Required!)
- Java: 17+
๐ง Configuration Highlights
Auto-Reset Example
world-reset:
enabled: true
reset-interval-days: 30
random-seed: true
send-warnings: true
Custom Seed (Same for all dimensions)
world-reset:
random-seed: false
seed: 123456789 # One seed for Overworld, Nether & End
Teleport Safety
teleport:
range:
normal: 1000 # -1000 to +1000 for Overworld/Nether
end-min: 1000 # Minimum distance in End
end-max: 2000 # Maximum distance in End
safety:
check-lava-nether: true
lava-check-radius: 1
Custom Messages (Multilingual Support)
messages:
no-permission: "&cYou don't have permission!"
teleport-success: "&7Teleported to {world}&7!"
๐ Bug Fixes
- Fixed unsafe spawn locations
- Fixed players spawning in caves
- Fixed lava spawns in Nether
- Fixed End dragon island spawns
- Improved random location algorithm
๐ Technical Details
- 11 Java classes with clean, documented code
- Config validation with safe defaults
- Performance optimized teleport checks (max 50 attempts)
- Thread-safe reset scheduler (checks hourly)
- Locale support via customizable messages
๐ Upgrading from 1.0.4
- Backup your server
- Replace the JAR file
- Install Multiverse-Core if not already installed
- Start server - new config files will be generated
- Configure
config.ymlandworlds.ymlto your needs
๐ Full Documentation
See the included README.md for complete setup instructions and all configuration options.
Download now and enjoy safe, automated farm worlds with zero maintenance! ๐
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:DGOXAQ9W:AtSNico9"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:DGOXAQ9W:AtSNico9"
}

