app.racethesky.course

racethesky.app

Documentation

A racing course built in the Race the Sky editor, published by its designer into their own repo. The course belongs to whoever drew it: it outlives any gallery, contest, or leaderboard that happens to index it, and can be played from this record alone.

main record

A racing course built in the Race the Sky editor, published by its designer into their own repo. The course belongs to whoever drew it: it outlives any gallery, contest, or leaderboard that happens to index it, and can be played from this record alone.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

Client-reported time the course was published.

def string Required

The course itself: a JSON-encoded CourseDef object holding the control-point geometry, wall width, satellite placement, boost strips, bridges and lap count. Carried as an encoded string rather than structured fields because the geometry is fractional and Lexicon has no float type — rounding it would silently alter how the course races. The format is documented at https://github.com/twilightscapes/racethesky/blob/main/docs/TECHNICAL.md and is the same object the game's editor exports and imports through the clipboard.

maxLength: 20000 bytes
kind string Optional

Course family. A circuit is a closed lap; baja is a one-run side-scrolling dune course. Absent means circuit.

Known values: circuit, baja
laps integer Optional

Laps a full run of this course takes. Mirrors the value inside def, surfaced here so an indexer needn't parse the geometry.

minimum: 1maximum: 9
name string Required

The designer's name for the course, as it appears in-game.

maxLength: 64 bytes
night boolean Optional

Whether the course races after dark. Mirrors the value inside def.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "name",
      "def",
      "createdAt"
    ],
    "properties": {
      "def": {
        "type": "string",
        "maxLength": 20000,
        "description": "The course itself: a JSON-encoded CourseDef object holding the control-point geometry, wall width, satellite placement, boost strips, bridges and lap count. Carried as an encoded string rather than structured fields because the geometry is fractional and Lexicon has no float type — rounding it would silently alter how the course races. The format is documented at https://github.com/twilightscapes/racethesky/blob/main/docs/TECHNICAL.md and is the same object the game's editor exports and imports through the clipboard."
      },
      "kind": {
        "type": "string",
        "description": "Course family. A circuit is a closed lap; baja is a one-run side-scrolling dune course. Absent means circuit.",
        "knownValues": [
          "circuit",
          "baja"
        ]
      },
      "laps": {
        "type": "integer",
        "maximum": 9,
        "minimum": 1,
        "description": "Laps a full run of this course takes. Mirrors the value inside def, surfaced here so an indexer needn't parse the geometry."
      },
      "name": {
        "type": "string",
        "maxLength": 64,
        "description": "The designer's name for the course, as it appears in-game."
      },
      "night": {
        "type": "boolean",
        "description": "Whether the course races after dark. Mirrors the value inside def."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "Client-reported time the course was published."
      }
    }
  },
  "description": "A racing course built in the Race the Sky editor, published by its designer into their own repo. The course belongs to whoever drew it: it outlives any gallery, contest, or leaderboard that happens to index it, and can be played from this record alone."
}

Lexicon Garden

@