
MoonBreak
Lightweight Custom Block and Tool API simulating vanilla breaking behaviour
Оцените первым
40
0
Список изменений
Compatibility: 26.x - Java 25
Version 1.2.1-beta comes with a lot of stability improvements, a persistence overhaul and a whole lot of other bug fixes.
WARNING: Registration of any kind must now always happen during STARTUP. Attempting to register entries later could lead to data loss and unexpected behaviour!
Key Features
- Overall Stability Improvements
- Overhaul of Block Persistence
- Increased Storage Efficiency
Full Changelog
Changes
- Completely refactored
CustomBlockLoaderto increase performance and eliminate block saving issues - Redesigned the chunk index to
ChunkIndexStorage - Made remaining data wiping actively load chunks at a rate scaled to server performance
- Switched PDC storage format from
Stringtobyte[]list - Refactored
CustomBlockManagerImplto support the newCustomBlockLoaderrequirements and madeplacedBlocksworld-dependent - Added
WorldChunkKeyandChunkBlockKeyfor world-dependent storage and optimized lookups - Added
ChunkBlockEntryDataTypefor easier binary block data read/write operations on chunks - Added
ResourceRegistry#isRegisteredmethod - Switched inactivity checks to Unix timestamps instead of tick increments and increased the delay to 120 seconds
- Split pre- and post-block break hooks into two separate event listeners (
NORMAL&MONITORpriorities) - Added new
/breakspeedcommand (with permissions) to set or reset break speeds - Display a block save overview and correctly clear remaining data upon plugin disable
- Updated JavaDocs to clarify that event modifications in post-break hooks are forbidden
Bug Fixes
- Fixed overwrite issues when registering entries with duplicate keys in
ResourceRegistry - Fixed unregistered blocks being placeable
- Fixed chunk data not being wiped correctly
- Fixed data loss on plugin disable by adding synchronous chunk index saving
- Fixed charset mismatches and non-thread-safe fields
- Fixed block saving for blocks located in unloaded worlds
- Fixed block data loading/saving breaking on invalid values (now skips invalid entries gracefully)
- Fixed broken activity checks and deduplicated overlapping activity methods
- Fixed break speed attribute calculation order, simplified formulas, and made calculations independent of base speed to avoid nullifying other modifiers/effects
- Fixed break speed modifiers not being removed on plugin disable by switching to transient modifiers
- Fixed Aqua Affinity checks applying underwater debuffs incorrectly
- Fixed
PlayerBreakBlockListenerignoring the cancelled event state - Fixed display name and lore being overwritten when passing
baseMetaor recreatingItemStacks - Fixed a reverse chunk coordinate bit extraction in
ThrottledWipeTask - Fixed the chunk index potentially clearing upon plugin enable at
STARTUP
Refactoring & Cleanup
- Moved
CustomBlockLoadertodev.lunaa.moonbreak.block.storage - Reduced saving overhead for block data and chunk index entries
- Removed
CustomBlockManagerImpl#stripLocation(replaced byWorldChunkKeyandChunkBlockKey) - Removed
PlayerJoinListeneras it is no longer required for break speed modifiers - Improved overall logging quality
Файлы
moonbreak-1.2.1.jar(80.68 KiB)
ОсновнойМетаданные
Канал релиза
Beta
Номер версии
1.2.1
Загрузчики
Paper
Версии игры
26.1–26.1.2
Загрузок
19
Дата публикации
09.09.2026
