Log In  

Cart #mot_grandprix_editor-2 | 2021-10-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

This is the track editor for Mot's Grand Prix

I don't recommend running this in browser as you cannot save/load tracks - anything you build will be lost.
Rather download the file and run it in Pico-8 itself.

You will also need to download the main game and run it in Pico-8 in order to race on any tracks you create.

This editor requires a keyboard and mouse.

Existing tracks

You can download the tracks from the existing game from this Google Drive folder. Place them in your carts folder (next to the editor) then select "Load" from the editor hamburger menu (top right) to load them.

Basic usage

IMPORTANT: There are known bugs that will crash the editor, so save often!

  • Use the arrow keys to scroll along the track.
  • Use the hamburger menu (top right) to load save and export tracks.
  • The "New" menu creates new stages, curves and items (described in detail further down).
  • Click "Drive" to drive on the track (select "Editor" from the pause menu to return to the editor).
  • Select things by clicking on them. You can then edit their properties, or delete them by clicking "-".
  • After making a change you usually have to click "Update" (bottom right) to update the visual model (I didn't have enough tokens to make this automatic).

Track format

The basic components of a race track are:

  • Stages
  • Curves
  • Items


Are used to partition the race track. Every track must have at least one stage.
The advantage of having multiple stages is that their curves and items are stored independently of the other stages, so if you modify the curves in a stage you only need to fixup the positions of the background items within that stage. Also they can help you keep track of what part of the track you are working on.

Click "New->Stage" to add a new stage. The new stage will be inserted immediately after the current stage.

The current stage is displayed top-left underneath the menu bar.

You can click on the name to edit it. Or click "-" to delete it.
Deleting a stage deletes all its curves and background items, so be careful.


Curves define the shape of the race track, i.e. the corners, straights, hills, valleys etc.
Note: Despite the name a "curve" doesn't have to actually curve. It can be completely straight.

Click on the race track itself to select a curve.

Click "New->Curve" to add a new curve.
If a curve is already selected, the new curve will be inserted immediately before it in the current stage.
If no curve is selected, the new curve will be added to the end of the current stage.
To delete the curve, select it and click the "-" button next to the curve (NOT the one next to the stage!)

Edit the curves properties to modify it.
Most properties are edited using sliders. Drag with the left mouse for small increments and right mouse for large.
Remember to click "Update" to see the result of a change.

  • Length = Length of the curve in units (units are about 4-10 meters long - scale isn't very accurate in this game)
  • Turn = How sharply the road turns. 0 is straight, negative values turn left, positive turn right.
    For reference the hairpin turn in "Suzuka" is -0.32, which is close to the limit of how sharply cars can corner in this game.
  • Pitch = Vertical gradient. 0 is flat, -1 is up 45 degrees, 1 is down 45 degrees.
    Pitch is an optional property. Tick the tick-box to enable it. If omitted the pitch from the previous curve will be used.
    Pitch is linearly interpolated. The value you set is actually the pitch at the end of the current curve. It will smoothly transition from the previous pitch to that value across the curve.
  • Left/Right = Define the horizontal range, i.e. how far left/right cars can go without crashing into a barrier.
    The left and right barriers are visually represented by the "L Barrier" and "R Barrier" settings below. It's a good idea to set these - otherwise the player will simply crash into an invisible barrier.
    The road is 8 units wide, so the "Left" usually is -4 or less, and right 4 or greater, although they can be set to -3/3 to clip into the gravelly region of the road. The AI cars expect the full width of the road to be available though, so be careful when doing this.
    Left/right are also optional, linearly interpolated properties.
  • L Barrier/R Barrier = Define the visual left and right barriers. Each one is a list of item types that will be repeated. Tick the tick box to specify the barrier type, then click "[New]" to add an item type.
    Select the item type from the list (use the mouse wheel to scroll). Make sure to only select item types starting with "Barrier_" (I didn't have enough tokens to automatically filter the list).
    Generally it makes sense to use just one barrier types, or combine "Barrier_Fence" with one of the other types.
    L Barrier/R Barrier are optional.
  • Trees = Generate random trees on the left/right side of the map.
    This is a list of horizontal positions to place the trees at trees' horizontal positions vary randomly by a few units as well.
    Trees are optional.


Items are background items, like stadiums, buildings, signs. They don't affect gameplay, but make the track look more alive.
Click on a background item to select it.
You can also use the "<" and ">" buttons to cycle through the items in a stage (useful if you accidentally place one in a position where it is never visible and can't be selected normally).
Click "New->Item" to create a new item, then select the item type from the list (mouse wheel to scroll).
The item will be created in the current stage, a few units in front of the camera.
To delete the item, click the "-" button next to it.

Background items have 3 properties representing their position relative to the race track.

  • X = Horizontal position relative to the race track (negative = left, positive = right)
  • Y = Vertical position relative to the ground (negative = up, positive = down)
  • Z = Distance along track from start of stage.

Other properties

You can also edit the sky and ground colours by selecting "Properties" in the hamburger menu.

Generated content

The following items are generated automatically and cannot be edited:

  • Race track shoulder things (I tried to Google for the proper name, but only found things that stop horses from biting your shoulders...)
  • Distance to turn signs
  • Racing line markers


To race on your track in the actual game, you need to export it:

  1. Click "Export" in the hamburger menu. This will copy a string to the clipboard.
  2. Open up "Mot's Grand Prix" in Pico-8.
  3. Open tab 8.
  4. Choose a track to replace (there isn't enough compressed space left to add any more).
  5. Replace the string for one of the existing tracks. Be sure to switch to "Puny font" mode (press Ctrl+P) before pasting from the clipboard.
  6. Optionally edit the "finline" variable to set the finish line distance.
  7. If you want to change the track name on the start screen, edit the "tracknames" variable in tab 1.

Your track should now be in the game.

P#97963 2021-09-30 23:37 ( Edited 2021-10-09 11:58)

Some of the tracks you added with updates to the game aren't in your editor folder yet... Spa, Monza, and Hockenheim

P#111625 2022-05-10 17:52

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2024-04-15 07:20:29 | 0.011s | Q:14