Tags
Creators
Details
1.0.1
Compatibility
Changes
Version 1.0.1 - Major Update š New Features
- Grace Period Persistence Across Server Restarts
Description: Grace period state now persists through server restarts and crashes Implementation: Both graceActive status and graceEndTime are saved to config file Benefit: No more lost grace periods when server restarts unexpectedly 2. Auto-Start on Server Startup
Description: Configurable automatic grace period start when server loads Configuration: auto-start: true/false - Enable/disable auto-start auto-start-duration-seconds: 120 - Duration for auto-started grace period Benefit: Perfect for server resets or scheduled maintenance periods 3. Countdown Broadcast System
Description: Automatic countdown announcements during final 10 seconds Implementation: Broadcasts "Grace ends in X second(s)!" messages Benefit: Players get clear warning before PVP enables 4. Enhanced Entity Protection
Description: Configurable entity blocking system (placeholder) Implementation: Framework for future entity-specific blocking configuration Benefit: Flexible protection beyond just player vs player combat š Critical Bug Fixes
- Memory Leak Prevention
Issue: HashMap<Player, Long> caused memory leaks as players logged out Fix: Changed to HashMap<UUID, Long> using player UUIDs instead of Player objects Impact: Eliminates memory buildup over time, improves server stability 2. Refined Wolf Protection Logic
Issue: All wolves were protected, including wild wolves unrelated to PVP Fix: Now only protects tamed wolves owned by players Implementation: Uses wolf.isTamed() && wolf.getOwner() instanceof Player checks Impact: More targeted protection that doesn't interfere with normal gameplay 3. Grace State Synchronization
Issue: Potential desync between memory state and saved state Fix: Immediate config save when grace period starts Impact: Prevents state loss between command execution and server shutdown 4. Negative Time Display Prevention
Issue: Grace timer could display negative seconds Fix: Added bounds checking in formatTime() method Impact: Cleaner, more professional time displays š§ Technical Improvements
- Enhanced Command Sender Handling
Change: Replaced string-based console detection with ConsoleCommandSender instanceof check Benefit: More reliable and maintainable console command handling 2. Improved Config Management
Change: Reduced unnecessary config saves to prevent overwriting user changes Benefit: Better preservation of custom configuration settings 3. Action Bar Integration
Feature: Grace period remaining time displayed above experience bar Benefit: Constant visual reminder for players during grace period 4. Message Cooldown System
Enhancement: 5-second cooldown on PVP disabled messages Benefit: Prevents message spam when players rapidly attack during grace
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:Yp18gs4n:B9UH986s"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Yp18gs4n:B9UH986s"
}

