RaceTracks
Build layouts, place track instances, and run timed race sessions.
RaceTracks is a Fabric/Cobblemon server-side Mod that introduces Race Tracks, and racing Sessions that run on top of Tracks.
It includes:
Track authoring and placement tools.
Session modes: Free Run, Qualifying, and Race.
SQLite-backed lap/session persistence.
Leaderboards (currently layout-scoped).
Optional PlaceholderAPI and HoloDisplays integrations.
Requirements
Core:
Minecraft
1.21.1Fabric server (Arclight not tested)Cobblemon
Rib (Roanoke Library Mod)
Soft Dependencies:
PlaceholderAPI (
placeholder-apimod): required for%racetracks:lb ...%placeholders.HoloDisplays (
holodisplaysmod): required for/racetracks holograms ...runtime functionality.
Basic Concepts
Track Layouts
Versioned templates for a track
Store track objects like Checkpoints, Boundaries, etc, relative to some position (similar to WorldEdit Schematics)
Saved under
config/RaceTrack/Layouts/<layoutId>/v<version>.json.Altering a track layout increments the version: leaderboards etc are scoped to a version (so if you change the track, old times don't count)
Track Layouts are used so that you can place multiple physical tracks in the world - RaceTracks is designed to allow a session to run across multiple (identical layout wise) physical tracks in the world, so you can split players.
It's also handy as they can be easily shared, copied, pasted, across different servers, without needing to be exported/imported.
Track Instances
Real placements of a layout in a world.
Stores and uses absolute coordinates for track objects like Checkpoints, Boundaries, etc.
Saved under
config/RaceTrack/Instances/<instanceId>.json.Only one active session can run per instance at a time.
This is the "real track" - referred to throughout RaceTracks as an "instance". Sessions run on instances.
Sessions
Runtime timing engines attached to an instance.
Modes:
FREERUN: unlimited hot laps.QUALIFYING: unlimited laps with qualifying standings.RACE: fixed lap-count race with finishing order.
Sessions sit on top of instances and handle timing, positioning, have results, etc.
Without a session, no timing is done, laps aren't considered.
Docs Index
Quick Start
Use /racetracks session status to monitor active sessions.
Last updated