EA
Easter Holidays
1.3.6Transform your server into an Easter event with egg hunts, rare bunnies, stats, bosses, quests, and more.
1.3.6latestEaster Holidays 1.3.6Jun 17, 2026 [1.3.6] - 2026-06-17
Bug Fixes
#### Region / Land Protection - Block-Changing Features Now Respect Any Protection Plugin (Dominion, Towny, Lands, GriefDefender, ...): Carrot gardens and bunny hop pads modified the world via directsetType()calls, which fire no Bukkit event — so protection plugins never saw them. Only WorldGuard and GriefPrevention were checked, via plugin-specific reflection, meaning claims from any other protection plugin (e.g. Dominion) were silently ignored (reported case: an Easter Bunny turning protected stone into farmland). Block placement now runs through a new genericRegionIntegration.canPlace(...)check that fires a syntheticBlockPlaceEventand honors its cancellation. Because virtually every land-protection plugin listens to that event, all of them are now respected at once — without adding any of them as a dependency. - Bunny Hop Pads Had No Protection Check At All:spawnHopPad()placed its block without ever consultingRegionIntegration. It now performs the generic protection check before placing. - Carrot Gardens Check Per Block: Protection is now evaluated for each block of the garden, so a claim covering only part of the spawn area is handled correctly instead of all-or-nothing.1.3.5Easter Holidays 1.3.5Jun 3, 2026 [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 todailyquests.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, andcleanup()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 highestversion_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 unusedsaveResourceIfAbsent()helper and a stray Windows reserved-namenulfile from the repository root.1.3.4Easter Holidays 1.3.4May 10, 2026 [1.3.4] - 2026-05-10
Bug Fixes
#### Folia Compatibility - Fixed Folia Cleanup Thread-Safety: All cleanup methods (/easter cleanup,/easter off, plugin shutdown) now usescheduler.runForEntity()/scheduler.runAtLocation()instead of accessing entities directly from the command thread. FixesIllegalStateExceptionon Folia servers. -EasterEggManager,EasterBunnyManager,ThemedMobManager- Entity access via entity scheduler -EasterBossManager- ChangedrunAtLocationtorunForEntityfor entity removal -CarrotGardenManager,BunnyHopPadManager- Block operations via location scheduler -BunnyHopChallengeManager- Player potion effects via entity scheduler - Fixed Folia Scoreboard Crash:initializeDamageScoreboard()inEasterBossManagerthrewUnsupportedOperationExceptionon Folia. Scoreboard API is now wrapped in try-catch and gracefully disabled on Folia servers. - Fixed Folia Scoreboard Reset Crash:handleBossDeath()andspawnBoss()scoreboard operations now wrapped for Folia compatibility. #### Easter Boss - Fixed BossBar NPE & Duplicate Update: Removed duplicatesetProgress()call without null-check instartBossAI()that caused NPE when BossBar was disabled. - Fixed BossBar Cleanup NPE: Added null-check beforebossBar.removeAll()in cleanup. - Fixed Damage Sidebar Persisting After `/easter killboss` and `/easter off`:cleanup()did not reset player scoreboards - onlyhandleBossDeath()(natural death) did. Sidebar now properly removed on all cleanup paths. - Added Missing BossBar Config: AddedeasterBoss.bossBarsection (enabled, color, style, range) to default config - values were used in code but never exposed in config.yml. #### Easter Egg Cleanup - Fixed Eggs Not Being Removed on `/easter off`: Cleanup checkeditem.getCustomName()(entity name) but Easter Eggs only have a display name on the ItemStack, not on the entity. Now correctly checksitem.getItemStack().getItemMeta().getDisplayName(). - Fixed Language-Dependent Cleanup: Cleanup only matched English name "Easter Egg" but not German "Osterei". Now checks both languages plus the active language file dynamically. #### Bunny Hop Pads - Fixed Placement: Hop pad now spawns on top of the block the player is looking at (target block + 1) instead of replacing a block or spawning at the player's feet. Checks for free space above target block. - Fixed Invalid Block Type: Changed defaultblockTypefromLIGHT_BLUE_SLAB(does not exist) toLIGHT_BLUE_CONCRETE. - Fixed Extreme Boost Power: Changed defaultboostPowerfrom50.0to3.0(reasonable value). #### Commands & Events - Fixed Event "parade" Not Recognized: Added"parade"as alias for"bunny-parade"in command handler and tab-completion.Improvements
#### Easter Title GUI - Improved Locked Title Display: Locked titles now show the title name (grayed out), the unlock requirement, and a visual progress bar instead of just "??? Locked". - Added Progress Tracking: Each locked title shows current progress (e.g.,|||||||||| 12/25) based on the player's egg/bunny stats.1.3.3Easter Holidays 1.3.3Apr 29, 2026 [1.3.3] - 2026-04-29
Bug Fixes
- Fixed Folia Scheduler Crash:EasterBasketManagerused the Bukkit Scheduler (runTaskTimerAsynchronously,runTaskAsynchronously) which throwsUnsupportedOperationExceptionon Folia. Replaced withFoliaSchedulerHelperfor full Folia compatibility.1.3.2Easter Holidays 1.3.2Apr 22, 2026 [1.3.2] - 2026-04-22
New Features
#### In-Game Loot Table Management - New Admin Command:/easter drops- Manage loot tables and egg type chances without editing config files - Supports tiers:common,rare,legendary,boss(Easter Boss loot) -/easter drops list <tier>- View all items in a loot table -/easter drops add <tier> <MATERIAL:amount>- Add items to a loot table -/easter drops remove <tier> <index>- Remove items by index number -/easter drops chance- View current egg type spawn chances -/easter drops chance <type> <percent>- Set spawn chance for normal/golden/diamond/ eggs - Permission:easter.admin.drops- Changes are saved to config.yml immediately (no restart required) - Full tab-completion for all sub-commands and arguments #### Configurable Egg Type Chances - Egg type spawn chances are now configurable via config.yml instead of hardcoded -easterEggs.typeChances.normal(default: 94%) -easterEggs.typeChances.golden(default: 5%) -easterEggs.typeChances.diamond(default: 1%) - Warning when total doesn't add up to 100%1.3.1Easter Holidays 1.3.1Apr 21, 2026 [1.3.1] - 2026-04-21
New Features
#### Give Loot Command - New Admin Command:/easter giveloot <player> <tier>- Give loot rewards to players via command - Supports tiers:common,rare,legendary,boss- Uses the configured loot tables from config.yml - Gives a random item from the selected tier - Alias:/easter loot- Permission:easter.admin.giveloot- Full tab-completion for player names and tiers - Multi-language support (EN/DE)Bug Fixes
#### Easter Boss & Region Protection - Fixed Boss Invincibility Exploit in GriefPrevention Claims: Players could claim the land where the Easter Boss spawned, making it invincible to anyone except the claim owner - AddedHIGHESTpriority event handler that bypasses region protection for Easter Boss damage - All players can now damage the Easter Boss regardless of claim ownership - Prevents the exploit where players claim land under the boss to grief other players #### Title System - Fixed Race Condition on Player Load: Title data is now initialized synchronously before async database load, preventing data loss when players interact with the title GUI immediately after joining - Fixed Single Title Unlock Bug:updateTitle()now unlocks ALL titles a player qualifies for, not just the highest one. Previously, a player with 500 eggs would only get "Epic Egg Hunter" but not the lower-tier titles - Fixed Thread Safety Issues:TitleData.selectedTitleis nowvolatile, andunlockedTitlesuses a thread-safeConcurrentHashMap.newKeySet()instead of a regularHashSet- Fixed Potential NullPointerExceptions: Added null checks forItemMetain title GUI creation (both title items and clear button) - Fixed Fragile GUI Lock Detection: Title GUI now checksMaterial.GRAY_DYEinstead of checking display name for "Locked" text, which failed with non-English languages - Fixed Shutdown Data Loss Risk: ReplacedThread.sleep(2000)withCompletableFuture.allOf().get(5s)to properly wait for all async save operations to complete #### Command System - Added `/easter title select none` and `/easter title select clear`: Players can now remove their title via command instead of only through the GUI #### Database Repair - Added `titles.db` to `/easter dbrepair`: Title database is now included in all repair operations (check, fix, backup) alongside statistics and basketsImprovements
- Invalid Title Logging:parseTitles()now logs a warning when encountering unknown title entries in the database instead of silently skipping them1.3.0Easter Holidays 1.3.0Apr 6, 2026 [1.3.0] - 2026-04-06
#### Command System - Tab-Completion: Added missing commands to auto-complete - Added aliases:Bug Fixes
lb,topfor leaderboard - Added aliases:repairdbfor dbrepair - Added aliases:jukeboxfor music - Added resource pack commands:pack,resourcepack,texturepack- All commands now properly appear in tab-completion #### Leaderboard System - Fixed "Unknown User" Bug: Players in leaderboard now show correct names - Automatically resolves player names using Bukkit OfflinePlayer API - Updates database with resolved names to prevent future issues - Handles old database entries with missing or invalid names - Improved name resolution for offline players #### Easter Basket System - Fixed Item Loss Bug: Items no longer disappear from baskets - Added backup mechanism during save operations - Improved transaction handling with proper rollback on errors - Added auto-save every 5 minutes for modified baskets - Asynchronous saving to prevent main thread blocking - Better error handling and recovery - Fixed race conditions during inventory close events
- Database Operations: More robust error handling and logging - Performance: Asynchronous basket saving reduces server lagImprovements
- Updated plugin.yml: Complete command documentation with all aliases - Improved help text: Added all command variations and optionsDocumentation
1.2.9Easter Holidays 1.2.9Apr 5, 2026 [1.2.9] - 2026-04-05
#### Boss Damage Tracking System - Live Damage Scoreboard: Shows top 5 damage dealers during boss fights - Real-time updates with damage values and percentages - Automatically displayed to players within 50-block radius - Clean, color-coded display on the sidebar - "Waiting for combat..." message before first damage - Configurable viaNew Features
easterBoss.damageTracking.scoreboard- Post-Battle Damage Report: Detailed chat report when boss is defeated - Complete damage breakdown for all participants - Percentage-based damage distribution - Top 10 damage dealers displayed with rankings (configurable) - Medal system (Gold/Silver/Bronze) for top 3 players - MVP System: Special recognition for the highest damage dealer - MVP announcement broadcast to all players - Special title animation and sound effects for MVP - Unique rewards for top damage dealer - Fully configurable (broadcast, animation, sounds) - Multi-Language Support: Full EN/DE translations for all damage tracking features #### Boss Sound Configuration - Customizable Sound Settings: All boss sounds are now configurable - Spawn sound (volume, pitch, enable/disable) - Death sound (volume, pitch, enable/disable) - Attack sounds (volume, pitch, enable/disable) - Volume Control: Set volume from 0.0 to 2.0 for each sound type - New config section:
easterBoss.soundssounds: spawn: enabled: true volume: 2.0 # 0.0-2.0 pitch: 0.5 # 0.0-2.0
#### Configuration System - Enhanced ConfigMigrator: Now correctly compares full version numbers (1.2.8 vs 1.2.9) - Automatic Config Updates: New settings are added without losing existing configuration - Better Migration Detection: Explicitly checks for all new config sections - Improved Logging: Shows exactly which config options were added during migration #### Damage Tracking Accuracy - Overkill Protection: Damage is correctly capped at boss's remaining health - Environmental Damage Tracking: Fire, fall damage, etc. now properly tracked - TNT Damage Attribution: TNT damage is now credited to the player who placed it - Event Priority Fix: Uses MONITOR priority for accurate final damage values #### Scoreboard Display - Immediate Display: Scoreboard shows instantly when boss spawns - Better Player Detection: Improved range detection for showing/hiding scoreboard - Consistent Updates: Fixed timing issues with scoreboard updates - Automatic Cleanup: Scoreboard properly removed when players leave rangeImprovements
- Fixed ConfigMigrator not detecting version changes properlyBug Fixes
- Added value clamping for all sound volumes (0.0-2.0 range) - Improved debug logging for sound settings and damage tracking - Better thread safety for damage tracking maps - Optimized scoreboard update frequency (configurable)Technical Changes
1.2.8Easter Holidays 1.2.8Apr 5, 2026 [1.2.8] - 2026-04-05
#### Configurable Permission System - Flexible Feature Permissions: Server admins can now control which features require permissions - Per-Feature Configuration: Each feature (hoppad, launcher, trail, etc.) can be made public or restricted - Added newNew Features
permissionssection in config.yml:
- Live Reload: Permission changes take effect withpermissions: requirePermissionFor: hoppad: false # Everyone can use hop pads! launcher: true # Requires permission/easter reload- no restart needed - Backwards Compatible: All existing permissions continue to work as before - Added comprehensive permission documentation inPERMISSIONS_GUIDE.md#### Automatic Configuration Migration - No More Config Deletion! Updates automatically add new config options without losing existing settings - Smart Migration: Only missing options are added, existing values are preserved - Automatic Backups: Creates backup before any migration (config.yml.backup) - Backup Rotation: Maintains only 2 backups to keep plugin folder clean: -config.yml.backup- Latest backup -config.yml.backup.old- Previous backup - Version Tracking: Config version tracked at file end with prominent warning - Detailed Logging: Shows exactly which options were added during migration - Old timestamped backups are automatically cleaned up
#### Configuration - Config Version Location: Moved to end of file with clear warning message:Improvements
- Better Organization: Permission settings grouped logically in config - Cleaner Updates: Future plugin updates won't require config deletion# ============================================================================ # WARNING: DO NOT MODIFY THE CONFIG VERSION! # This is used for automatic configuration updates. # ============================================================================ config-version: "1.2.8"
- AddedDocumentation
PERMISSIONS_GUIDE.md- Complete guide for the new permission system - AddedCONFIG_MIGRATION.md- Technical details about automatic config updates - Updated examples showing how to configure permissions for different server types
- AddedTechnical
PermissionManagerclass for centralized permission handling - AddedConfigMigratorclass for automatic configuration updates - Improved config file I/O operations for reliable migration - Migration runs automatically on plugin startup when needed1.2.7Easter Holidays 1.2.7Apr 3, 2026 [1.2.7] - 2026-04-03
#### Fixed - Critical: Easter Basket Item Duplication Bug - Fixed a critical exploit allowing players to duplicate items from Easter Baskets - AddedSecurity & Bug Fixes
EasterBasketGUIListenerto properly handle inventory interactions - Players can no longer remove items from the basket GUI (view-only mode) - Exchange button functionality preserved and working correctly - Prevents all forms of item extraction including click and drag events - Fixed issue where player's own inventory became unusable in basket GUI - Boss Spawn & Boss Bar Issues - Fixed boss repeatedly attempting to spawn in protected regions - Added region protection checks tofindSafeSpawnLocation()method - Fixed orphaned boss bars appearing without actual boss - Added cleanup routine for dead bosses and their boss bars - Boss spawn timer now resets when spawn fails due to region protection - Fixed Purpur compatibility: Boss now spawns on correct regional thread - Fixed boss spawn warning timer running repeatedly instead of once (changed runGlobalTimer to runGlobalTaskLater) - Easter Basket Improvements - Items are now individually removable from basket while preventing duplication - Basket contents sync on inventory close to prevent item loss - Exchange button (slot 26) remains protected - Full item management support: take, place, and organize items freely - Boss Entity Removal on Folia/Purpur - Fixed/easter killbosscommand not removing boss entities on Folia/Purpur servers - Boss entity removal now runs on the correct regional thread -/easter offcommand now properly cleans up all boss entities - Boss removal is now thread-safe across all server platforms #### Compatibility - Server Platform Support: - Fixed thread-safety issue preventing boss spawns on Purpur servers - Boss entity spawning now uses proper regional thread execution - Fixed Folia chunk access error: findSafeSpawnLocation now runs on regional thread - Full compatibility with Paper, Spigot, Purpur, and Folia #### Known Issues (Non-Critical) - FoliaLib 0-tick Warning: Harmless informational warning about 0-tick delays being auto-corrected to 1 tick - Does not affect functionality - FoliaLib handles this automatically - Can be suppressed via config if desired - JOML Unsafe Deprecation Warning: Server startup warning about sun.misc.Unsafe::objectFieldOffset - NOT caused by EasterHolidays - comes from Minecraft's JOML library - Does not affect plugin functionality - Will be resolved by Mojang/JOML maintainers in future releases #### Security - Inventory Protection: - Easter Basket GUI is now fully protected against manipulation - All inventory click and drag events are properly cancelled - Ensures basket contents remain synchronized with database - Player inventory remains fully functional while viewing basket1.2.6Easter Holidays 1.2.6Apr 2, 2026 [1.2.6] - 2026-04-02
#### Added - Boss Fall Damage Protection: - Easter Boss is now immune to fall damage - Prevents boss from dying to environmental damage during jump attacks - Group Loot System: - All players who dealt damage to the boss receive rewards - Damage tracking system for fair loot distribution - Rewards include Golden Carrots, Enchanted Golden Apple, Diamonds, and Emeralds - Special effects (Regeneration, Strength, Speed, Jump Boost, Luck) for all participants #### Fixed - Boss Respawn Timer: - Fixed immediate boss respawn after death - Properly enforces 60-minute minimum interval between spawns - Added multiple safeguards against timer bypass -Boss Improvements & Combat System
lastBossSpawncorrectly initialized and maintained - Boss Health Configuration: - Fixed health value exceeding Minecraft's 1024 limit - Server config properly set to 1000 health - Default config set to 500 for safety - Boss Bar Management: - Boss bar properly removed on boss death - Fixed potential memory leaks from lingering boss bars - Complete Region Protection Integration: - All Easter features (Eggs, Bunnies, Carrot Gardens, Boss) now respect WorldGuard and GriefPrevention protected areas - Configurable viaregionIntegrationsettings withallowInClaims: false#### Changed - Boss Death Rewards: - Changed from killer-only to all damage dealers - More cooperative gameplay experience - Encourages teamwork in boss fights1.2.5Easter Holidays 1.2.5Mar 29, 2026 [1.2.5] - 2026-03-29
#### Added - PlaceholderAPI Support for Titles: -Critical Folia Fix & Title System Improvements
%easter_title%- Returns player's selected title with color codes -%easter_title_raw%- Returns title without color codes - Can be used in scoreboards, holograms, and other plugins - Note: Direct chat integration removed due to Minecraft 1.19+ signed chat limitations - Resource Pack Tips Configuration: - AddedresourcePackTips.enabledandresourcePackTips.showOnStartupoptions - Tips are now enabled by default as requested #### Changed - Title System: - Titles are now earned through achievements (collecting eggs/catching bunnies) - 11 different titles from "Ei-Finder" to "LEGENDÄRER Eier-Meister" - GUI selection via/easter title guiwith German translations - Automatic title unlocking based on statistics - Chat integration removed - Minecraft's signed chat system (1.19+) blocks message modifications #### Fixed - Critical Folia Threading Bug: FixedIllegalStateException: Recursive updateon player quit - Removed recursivestatsCache.put()calls insidecomputeIfAbsentin StatisticsManager - Changed player data saving to async operations in PlayerQuitListener - Prevents ConcurrentHashMap violations in Folia's strict threading model - Affects Folia 1.21.11+ and potentially Paper under high load #### Changed - PlayerQuitListener: Now saves statistics and titles asynchronously for better performance - StatisticsManager: Fixed loadPlayerStats to not modify cache during computeIfAbsent1.2.4Easter Holidays 1.2.4Mar 27, 2026 [1.2.4] - 2026-03-27
#### Added - Full Multi-World Support: Easter features can now run in multiple worlds simultaneously - Configure viaMulti-World Support & Critical Fixes
easterWorldslist in config.yml - Support for "ALL" to enable in every world - LegacyeasterWorldconfig still supported for backwards compatibility - Helper Methods: NewisEasterWorld()andgetEasterWorlds()methods in main class - Status Command Update:/easter statusnow shows all configured Easter worlds - Debug Mode:/easter debugcommand shows detailed world configuration and player tracking status - Resource Pack Tip: OPs receive a one-time notification about the EggLauncher resource pack on first login after server start #### Changed - EasterEggManager: Now spawns eggs in all configured worlds - EasterBunnyManager: Spawns bunnies across all configured worlds with per-world limits - CarrotGardenManager: Manages gardens per-world with individual world limits - ThemedMobManager: Spawns Easter Chicks and Rainbow Sheep in all configured worlds - Per-world limits for both mob types - Rainbow Sheep counting now per-world instead of global #### Fixed - FoliaLib Update: Updated from 0.4.3 to 0.4.4 to fix task wrapping exception - Fixes:IllegalArgumentException: The nativeTask provided must be a BukkitTask- Improves compatibility with Paper/Spigot servers - Multi-World Support: Fixed issue where only the first world ineasterWorldslist was working - PlayerJoinListener now checks if player's world is an Easter world before starting features - Added PlayerWorldChangeListener to handle players moving between worlds - Easter features now properly start/stop when players enter/leave Easter worlds - Prevents unnecessary task scheduling in non-Easter worlds - Cleanup Command: Fixed/easter offnot cleaning up entities in unloaded worlds - All cleanup methods now iterate through configured Easter worlds only - Entities in unloaded worlds are skipped with debug messages - Cleanup now works correctly across all configured worlds regardless of player location - Mob Cleanup: Fixed themed mobs not being removed after server restart - Changed from exact name matching to substring matching for emoji compatibility - Properly handles custom names with special characters #### Dependencies - FoliaLib: 0.4.3 → 0.4.4 (Critical bug fixes for task wrapping) #### Resource Pack Integration - Changed default item fromEGGtoSTICKfor resource pack compatibility - Added/easter packcommand for resource pack information - Integrated with EggLauncher Resource Pack (https://modrinth.com/resourcepack/egglauchner) - Pre-configured CustomModelData values for the pack #### Configuration Example ```yamlMulti-world support
easterWorlds: - "world" - "world_nether" - "creative"OR
easterWorlds: "ALL"Resource pack ready config
easterEggs: itemMaterial: "STICK" customModelData: common: "4-5" # egg1, egg2 models rare: "2-3" # egg3, egg4 models legendary: "6-7" # egg5, egg6 models easterEggLauncher: itemMaterial: "STICK" customModelData: 1 # osterblaster_3000 model1.2.3Easter Holidays 1.2.3Mar 22, 2026 [1.2.3] - 2026-03-22
#### Added - New Admin Command:Testing & Admin Features
/easter spawnegg [type]- Manually spawn eggs for testing - Supports types: normal, golden, diamond, random - Alias:/easter egg [type]- Permission:easter.admin.spawnegg- Eggs spawn 2 blocks in front of player with 1 second pickup delay - Perfect for testing Custom Model Data and resource packs - New Launcher Command:/easter launcher infinite- Toggle infinite ammo for admins - Permission:easter.admin.launcher.infinite- Must be explicitly enabled per player (not active by default) - Shows status message when toggled on/off - Only works if player has permission AND has it enabled #### Fixed - Plugin Persistence: Fixed plugin turning off after server restart - Config Persistence: Only saves default config if none exists - CustomModelData Parsing: Fixed range parsing issues with invalid ranges - Egg Pickup: Added pickup delay to prevent instant collection when spawning eggs - Debug Output: Enhanced debug messages for CustomModelData configuration1.2.2Easter Holidays 1.2.2Mar 21, 2026 [1.2.2] - 2026-03-21
#### Changed - Updated SQLite JDBC: Upgraded from 3.45.0.0 to 3.51.3.0 for better performance and security - Fixed bStats Plugin ID: Changed from placeholder to actual ID - Code Cleanup: Removed unused hardcoded CustomModelData values from EggType enum #### Added - Resource Pack Template: Complete template with English documentation for community resource pack creatorsMaintenance Update
1.2.1Easter Holidays 1.2.1Mar 8, 2026 [1.2.1] - 2026-03-08
#### Database & Performance - Fixed NullPointerException in StatisticsManager:Bug Fixes - Critical Stability Improvements
getStats()now automatically loads player stats if not in cache - Replaced Thread.sleep() in AchievementManager: Now usesCountDownLatchwith 5-second timeout for proper async shutdown - Migrated to HikariCP Connection Pooling: All database managers now use connection pooling for better concurrency -EasterBasketManager: Migrated from single connection to HikariCP -EasterTitleManager: Migrated from single connection to HikariCP - Prevents SQLite lock issues and improves multi-threaded performance #### Null Safety - Added null-checks in PlayerJoinListener: Prevents NPE when managers fail to initialize - Added null-checks in PlayerQuitListener: Safe cleanup even if managers are unavailable #### Performance Optimizations - Optimized distance calculations in EasterEggManager: Changed fromdistance()todistanceSquared()to avoid expensive sqrt operations - Improved config parsing error handling: - Added validation for CustomModelData ranges - Added proper error logging for invalid configuration values - Prevents silent failures in config parsing
- All database managers now consistently use HikariCP for connection pooling - Improved error logging across all managers - Better resource cleanup during plugin shutdown - Thread-safe shutdown procedures with proper timeout handlingTechnical Improvements
1.2.0Easter Holidays 1.2.0Jan 6, 2026 Initial Modrinth release (v1.2.0) - Egg hunt system with multiple egg types and loot tiers - Rare Easter bunnies with rewards and broadcasts - SQLite stats + leaderboards - Achievements and event system - Carrot gardens, challenges, themed mobs, and an Easter boss fight - Time-limited events, region integration, baskets, daily quests, titles, hop pads, and egg launcher - Multi-platform scheduling with Folia support
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta