
Ice Boat Racing
A powerful plugin for your ice boat races
Список изменений
IceBoatRacing v2.0-BETA
A major update focused on multi-race support, a brand-new auto-trace checkpoint system, and a big pass on stability, translations, and race-finish feedback. This is a BETA release — core features are implemented and playable, but some older systems are still being polished and re-tested.
✨ Major Features
🏁 Multi-Race System
IBR now supports multiple simultaneous races instead of a single global race.
- New
Raceclass: every race (checkpoints, cars, sectors, data) is now scoped to its own race instance instead of being global. RaceManagercan load, save, and manage many races at once.- Cars, checkpoints, and sectors are all race-aware.
- Races can be started/ended/prepared directly from
Race.java, without needing to go throughRaceManager.
🧙 RaceCreator: Guided Race Setup
A new guided, step-by-step process for creating a race from scratch, replacing manual/scattered setup steps.
🛰️ Auto-Trace Checkpoint System
A brand new way to place checkpoints — record a lap and let IBR trace the track for you instead of manually placing every checkpoint with a wand.
- Full language/config support for auto-trace messages.
- Integrated directly into the
RaceCreatorguided flow. - New
/checkpoint view <Race>command to visualize all checkpoints of a race.
🌍 Localization
- Full French (
fr_FR) and English (en_US) language files, including translated error and ranking messages. - Auto-trace and checkpoint messages now support the language config system.
🏆 Ranking & Finish Stats
- Races now send a full ranking when they end, with proper error handling/logging.
- Players get a personal stats message when they finish a race, including best sector times (fixed a bug where these previously wouldn't display correctly).
🚤 Cars
- Added support for chest boat cars.
- Prevented players from creating more than one car per race.
- Fixed cars not deleting properly (config path bug).
- Fixed the car listener not stopping cars from moving before a race starts.
- Cars are now removed before respawning to prevent duplicate boats.
- Improved handling of cars when a player disconnects and reconnects mid-race (start location, logging, etc.).
🏎️ Races
- Races now automatically end when the last racer disconnects.
- Racing gamemode is now enforced and configurable, along with
spectateOnFinish, viaconfig.yml. - Added
/race setLapCount. - Added support for players disconnecting and reconnecting during an active race.
- Players can now skip a checkpoint if needed.
- Fixed
/race deletereading from the wrong race list. - Fixed race name lookups not supporting spaces.
🛠️ General / Technical
- Migrated the project from Maven to Gradle.
- Plugin version in
build.gradle.ktsis now kept in sync withpaper-plugin.yml. - Rewrote
README.md. - Added automatic reload when a world loads.
- Various dev quality-of-life improvements.
- Numerous bug fixes and project warning cleanups throughout (checkpoint/car commands, tab completion, sidebar scoring, sector/finish messages, and more).
📝 Notes
This is a BETA build — auto-trace and several reworked systems are still being play-tested. Feedback and bug reports are very welcome!
