3.1 KiB
Quickstart
Quickstart is a developer convenience feature that allows the user to start a new game from the title screen, skipping the Main Menu and the Birch/Oak intros. In Emerald the player is immediately dropped into the opening truck sequence while in FRLG the player is warped straight into their room.
NOTE: Quickstart is a development only feature and is therefore automatically disabled on release builds.
Details
Quickstart is enabled by default. It can be turned off using the provided configuration option. It is automatically disabled in release builds.
To use Quickstart press SELECT from the title screen to immediately start a new game. The player's name is set to the English canon name (and in FRLG the rival as well). The player's gender is chosen randomly (this can be configured).
Player Names
| Game | Male | Female |
|---|---|---|
| Emerald | BRENDAN | MAY |
| FRLG | RED | LEAF |
The FRLG Rival is named BLUE.
Hud Element
When Quickstart is enabled a small HUD element is shown on the title screen (this can be disabled). This is displayed as a 64x32 sprite at the top-right corner of the screen. The image dimensions are only 64x16 however but the GBA does not support sprites of those dimensions.
Source File : graphics/quickstart/quickstart_hud.png
The same sprite is used for Fire Red, Leaf Green and Emerald. Each game has it's own palette in the graphics/quickstart/ directory.
Configuration
The configuration options are briefly covered below.
| Option | Values | Usage |
|---|---|---|
ENABLE_QUICKSTART |
TRUE / FALSE |
Enables quickstart in dev builds. Always disabled in release builds. |
QUICKSTART_HUD |
TRUE / FALSE |
Shows a small HUD when quickstart is enabled. No effect otherwise. |
QUICKSTART_GENDER |
GENDER_MALE, GENDER_FEMALE, GENDER_RANDOM |
Sets player gender for quickstart.RANDOM = 50% chance for MALE/FEMALE. |
QUICKSTART_HUD_XQUICKSTART_HUD_Y |
s16 Coordinates |
X & Y Coordinate for the HUD element sprite |
Public Functions
The interface of the Quickstart feature has been kept minimal. It exposes only two functions.
CreateQuickstartHud
void CreateQuickstartHud(void);
Initializes and places a small HUD element on screen. Coordinates specifed in config
Only has an effect when quickstart is enabled.
Quickstart
void Quickstart(void);
Starts a new game from the title screen when called.
Integration
The aforementioned functions may be of use for integrating this feature into custom title screens. Adding calls to the appropriate function gated with a check should suffice.
// For the HUD
if (QUICKSTART && QUICKSTART_HUD)
CreateQuickstartHud();
// To trigger Quickstart
if (QUICKSTART && JOY_NEW(SELECT_BUTTON))
Quickstart();
