feat(interaction)!: overhaul click detection, add BlockBreak support, and update configs
Completely rewrote the block interaction system to eliminate the need for Interaction Entities and legacy AABB hitboxes, drastically improving performance and reliability.
Interaction Architecture: Implemented a new multi-layered architecture:
Real Block Mode: Uses Bukkit PlayerInteractEvent for blocks within real-block-radius.
Fake Block Mode: Intercepts Netty packets (ServerboundPlayerAction / ServerboundUseItemOn) for distant or fake blocks up to fake-block-radius.
Block Break Mode: Added native support for BlockBreakEvent for accurate block destruction detection.
Config (Tools): Added explicit event type mapping (left_click, right_click, both_click, block_break). Added autoProgress setting for click events. Entities: Fixed ModelEngine support by implementing Marker entity tracking to replace the removed Interaction entities. Optimization: Migrated CacheFactory to the mmoblock-utils shared module and optimized DataCache. Cleanup: Executed a massive cleanup of dead code, old configuration keys, and unused NMS interaction methods.
BREAKING CHANGE: Interaction Entities and AABB raytracing are completely removed.
- The hitbox configuration (width, height) has been removed from block configs and will no longer work.
- Tool configurations must now specify the exact event type (left_click, right_click, both_click, or block_break).
- PlacedBlock.interactionEntityId() has been deleted from the API.
Information
| Published on | August 3, 2026 |
|---|---|
| Downloads | 0 |