- Fixed channel command accepting names longer than 128 characters
- Changed render order of pings to always render behind other UI elements
- Added validation for config on startup (trims long channel names)
- Added localization entries for client commands
- Revised the project structure for easier cross loader development with Architectury
- Improved compatibility by replacing mixins with event listeners
- Fixed UI alignment for parity across versions
- Added ability to change ping icon via resource packs (visit Customizing the Ping Icon for more info)
- Added option to adjust ping size (adjustable between 40% and 300%)
- Added hidden config entry to change raycast distance (for compatibility)
- Added correction period, which replaces pings sent in quick succession (adjustable between 0.1s and 5s)
- Added server-sided channel handling to forward pings only to players on the same channel (used to be client filtered)
- Converted the codebase to Java, removing the Kotlin language dependencies
- Fixed pings not clearing when switching worlds or dimensions