All versions
1.3.5
Release
Easter Holidays 1.3.55 months ago 22
Compatibility
Minecraft: Java Edition
1.21.x
Platforms
Folia
Paper
Purpur
Spigot
Changes
[1.3.5] - 2026-06-03
Bug Fixes
Daily Quests
- Fixed Quest Progress Not Persisting (Reward Duplication): Daily quest progress was kept only in memory and lost on restart. The empty shutdown block has been replaced with real persistence to
dailyquests.yml. On load, only entries dated today are restored, which prevents re-claiming rewards after a restart and stops the in-memory map from growing unbounded over time. - Fixed Quests Not Reloading:
/easter reloadnow reloads quest definitions from config (DailyQuestManager.reload()was never called).
Themed Mobs
- Fixed Particle Timer Leak (Easter Chick & Rainbow Sheep): The repeating particle/color timers were never cancelled when the entity died. On Paper/Spigot (where entity tasks are not auto-retired) this leaked a repeating task per spawned mob. Timers now cancel themselves on death, and
cleanup()cancels any remaining sheep timers.
Update Checker
- Added Server-Compatibility Filter: The checker no longer reports updates that are incompatible with the running server. The Modrinth query now filters by the server's Minecraft version (
game_versions) and a Bukkit-family loader (loaders). - Pick Highest Version Instead of Newest-Published: Selects the highest
version_numberacross all compatible versions instead of just the first array element. - Fixed Resource Leak:
BufferedReaderis now closed via try-with-resources and theHttpURLConnectionis disconnected in afinallyblock.
Shutdown & Thread-Safety
- Removed Blocking Sleep on Main Thread:
AchievementManager.close()no longer callsThread.sleep(1000); the existing latch already guarantees all async saves complete. - Fixed Non-Thread-Safe Map:
TimedEventManager.activeEventsis now aConcurrentHashMap(accessed from both scheduler and main thread).
Misc
- Cleanup Log Accuracy:
EasterEggLauncherManager.cleanup()reported the count after clearing (always "0"); it now reports the actual number.
Improvements
- Language Files Are Now Merged, Not Overwritten:
messages_de.yml/messages_en.ymlpreviously overwrote admin customizations on every start. They are now merged: existing values are kept and only missing keys are added from the JAR defaults. - Removed Dead Code & Stray File: Removed the unused
saveResourceIfAbsent()helper and a stray Windows reserved-namenulfile from the repository root.
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:Oq4iSVvg:omC9SM6p"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Oq4iSVvg:omC9SM6p"
}
