Skip to content

Race Track Entities

P3rlE edited this page Oct 3, 2026 · 1 revision

Race Track Entities

These entities turn a map into a race track. All of them except bot_path_node are brush entities: create a brush, select it, and turn it into the entity.

Lap tracks

rally_startfinish

The combined start/finish line of a lap track. Place one brush across the full width of the track.

Key Description
laps Default lap count for this track. Used when the server has laplimit 0.

rally_checkpoint

Checkpoints make sure drivers really complete the lap. They also drive the position calculation, split times and the distance-to-go display.

Key Description
number Required. Order of the checkpoint in driving direction, starting at 1. Every checkpoint needs a unique number.
target Optional. Points to a target_position whose origin and angles are used as the checkpoint's reference point.
Spawnflag Effect
(none) Plays the checkpoint sound
1 Plays the checkpoint sound
2 Shows a message with the driver's position
3 Sound and message
4 Silent

How numbering works: with N checkpoints, number them 1 … N. The rally_startfinish is counted automatically as the final checkpoint of the lap. When the track is raced in reverse, the order is mirrored automatically, so you don't need a second set of checkpoints.

💡 Put checkpoints where shortcuts would otherwise be possible, and space them fairly evenly. The track length shown in the HUD is calculated from the distances between them.

Sprint (A-to-B) tracks

A sprint track has a separate start and finish instead of a rally_startfinish.

Entity Description
rally_start Start line. Turns the map into a sprint track, so laps are forced to 1.
rally_finish Finish line. Drivers finish here after passing all checkpoints.

Use rally_checkpoint entities in between as usual. In the .arena file, list q3r_sprint in type.

Track variants

One map can contain up to three track lengths and can be raced in reverse. The server picks the variant with g_trackLength (0/1/2) and g_trackReversed.

Worldspawn keys for variants

Key Default Description
allowShortTrack 1 Variant 0 is available
allowMediumTrack 1 Variant 1 is available
allowLongTrack 1 Variant 2 is available
reversable 0 1 allows the track to be raced in reverse

If the server asks for a length the map doesn't allow, the next allowed one is used.

Per-entity filter keys

You can add these keys to any entity that exists at runtime: checkpoints, spawn points, items, triggers, func_static walls, and so on. They decide whether the entity spawns:

Key Example The entity spawns…
onlyTrackLength "01" …only on the listed lengths (0 short, 1 medium, 2 long). Default "012".
notreversed "1" …only when the track is not reversed
notforward "1" …only when the track is reversed
gametype "racing derby" …only in the listed modes
notsingle "1" …not in Single Player
notteam "1" …not in team modes
notfree "1" …not in non-team modes

Names for gametype: racing, racing_dm, sprint, single, derby, lcs, elimination, dm, team, team_racing, team_racing_dm, ctf, ctf4, domination, koth. Ghost Race uses racing.

⚠️ World brushes and light entities are compiled into the BSP and can't be switched per variant. Barriers that should only exist in some variants must be brush entities such as func_static.

Typical use: func_static barriers that close off the long section get onlyTrackLength "01", and the checkpoints of the long section get onlyTrackLength "2". Make sure the checkpoint numbers form a gap-free sequence for every variant.

Other useful entities

trigger_fuel

A refuelling zone. Cars inside it are refilled continuously.

Key Default Description
rate 10 Fuel units per second
max — Fill up to this level (default: full tank)

rally_sun

A point entity that sets the sun direction for the cars' dynamic lighting.

info_observer_spot

Camera positions for spectators.

Worldspawn keys

Key Default Description
gravity 1400 World gravity (Quake III uses 800)
enableDust 0 1 enables dust effects
enableSnow 0 1 enables snow effects
enableBreath 0 1 enables breath effects
reflectionImage textures/reflect/chrometest2 Environment map for car paint reflections
music — Background music
message — Map name shown while loading
allowShortTrack / allowMediumTrack / allowLongTrack 1 See track variants
reversable 0 See track variants

Next steps

Clone this wiki locally