Custom Track Tutorial

Introduction

 * Due to this wiki's efforts for accuracy of information, this page is protected so that only administrators can edit it. However, if you would like to make an edit, use this page's Discussion page or contact an administrator on discord.
 * Help for specific issues that you may experience should be asked in the Double Crew server.
 * It is highly recommended that you read all relevant readme files and documentations, as well as look to see what vanilla does, before asking (potentially annoying) questions. Those files and pages contain more details about programs and file formats than would be reasonable to include here.
 * The tutorial has been split into various subpages. Links to all subpages can be found in this page, or in the blue box at the bottom.

Important notes

 * “Vanilla” refers to an original, unedited / unmodded file from the game.
 * When in doubt, copy from vanilla. This applies to just about everything here.
 * If you already have a program to edit a certain kind of file, that’s great for you, but if you run into difficulty with those problems, this guide won’t help you.
 * A lot of the programs listed give out error messages when something goes wrong - always check for an error message

 A note about the track-making process: Making a custom track is anything but a waterfall process, rather it is incredibly iterative. While aiming to completely finish the graphical model before starting on the collision is admirable, that aspiration is unfortunately unreasonable. Don’t worry if you find yourself going back to previous steps, everyone does that, and so will you.

Choosing a Course Slot
In terms of crashes, there are no restrictions for any course to be placed over a specific slot. Additionally, players of a track are able to switch around which slot your track goes on at will. Most of the time, they will not switch slots. There are two main factors to consider when choosing a course slot.
 * Particle Effects
 * The particle effects that your track has is determined by the sound id of the course.
 * Sound id is not tied to the slot, but in order to avoid conflicts with other custom tracks that a user might want to play at the same time, it is better to keep sound ids vanilla.
 * Theme
 * Sometimes, players expect certain custom track with a certain theme to replace vanilla tracks with a similar theme. For example, a space or rainbow track might go over Rainbow Road.

An Introduction to Course.arc Files
In Filesystem/Course, there are many different .arc files. Each of these contain the files for a course. Each course (except for Luigi Circuit) has two variants. For example, there is Peach.arc and PeachL.arc. The non-L courses are those that load in single screen mode, including Time Trial and 1-player Grand Prix mode. The L-courses are loaded in split screen mode, like multiplayer and LAN modes. There are no special .arc files for Mirror mode. The Mini .arc files are the battle maps.

BMD
.bmd files are visual model files. They are what a player sees. See the BMD tutorial page for instructions on how to make a .bmd file.

BCO
.bco files are collision model files. They are what a player drives on. See the BCO tutorial page for instructions on how to make a .bco file.

BOL
.bol files are course data. They define startpoints, checkpoints, enemy routes, and more. See the BOL tutorial page for instructions on how to make a .bol file.

Minimap BTI
.bti files are used for all textures in the game, including the minimap. The minimap appears on the HUD, and it shows the layout of the course as well as the player's position on it. See the minimap tutorial page for instructions on how to make the necessary .bti file.

Course Animations
Animations are used to make tracks more dynamic. There are many different types of animations. See the animations tutorial page for instructions on how to make any desired course animations files.

GHT
.ght files are used for staff ghosts. Once players have gotten a certain time on time trial mode for a course, they can race against the staff ghost. See the GHT tutorial page for instructions on how to make a .ght file.

AST
.ast files are used for course background music. They are what a player hears. See the AST tutorial page for instructions on how to make an .ast file.

Additional BTI
There are additional image files for each course, like the course name, the course thumbnail, and the course icons. See the additional images tutorial page for instructions on how to make the course-specific image files.

CT Release
Releasing a track allows others to play on it. While there are other sites for mod releases, this tutorial will focus on how to release specifically on this wiki. See the page release tutorial page for instructions on how to release a custom track on this wiki.