Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/HarbourMasters/Starship/llms.txt

Use this file to discover all available pages before exploring further.

Starship ships with a default keyboard layout that mirrors the original N64 controller and exposes a full in-game Input Editor — powered by libultraship — so every binding can be remapped to suit your playstyle without editing any files by hand.

Default Keyboard Layout

The table below shows how each N64 button maps to the keyboard out of the box.
N64 ButtonKeyboard Key
AX
BC
ZZ
StartSpace
Analog stickW A S D
C buttonsArrow keys
D-PadT F G H
The keyboard layout is a starting point. All bindings — including analog stick directions and C buttons — can be remapped freely through the Input Editor.

Keyboard Shortcuts

The following global shortcuts are active at all times, regardless of the current menu state.
KeyAction
F1Toggle the menu bar
F4Reset the game to boot state
F11Toggle fullscreen
TabToggle alternate asset pack

Controller Support

Starship uses libultraship’s SDL2-based controller input layer, which means any gamepad recognised by SDL2 — including Xbox, PlayStation, and Switch Pro controllers — works out of the box. The default SDL2 button mapping is:
N64 ButtonSDL2 Gamepad Input
ASouth button (A / Cross)
BWest button (X / Square)
StartStart / Menu
C-LeftRight trigger (axis)
C-DownLeft trigger (axis)
C-UpRight stick up
C-RightRight stick right
RRight shoulder
ZLeft shoulder
D-PadD-Pad (all four directions)
If your controller is not auto-detected you can use the Input Editor to add custom SDL2 button and axis bindings manually.

Remapping Inputs with the Input Editor

The Input Editor window lets you remap every N64 button to any keyboard key, gamepad button, or analog axis.

Opening the Input Editor

  1. Press F1 to show the menu bar.
  2. Navigate to Settings → Controller.
  3. Select Controller Mapping to open the Input Editor window.

Using the Input Editor

  • Each N64 button row shows the currently bound keyboard key or controller input.
  • Click the binding field for any button and press the desired key or move the desired axis to reassign it.
  • Bindings are saved automatically to starship.cfg.json and persist across sessions.

Controller Navigation

When Menubar Controller Navigation is enabled (gControlNav), the D-pad navigates menu bar items, A selects, and X grabs focus on the menu bar.
Menubar Controller Navigation disables in-game controller inputs while the menu bar is visible. Disable it if you need full controller access during gameplay.

Invert Y Axis

The Invert Y Axis option (gInvertYAxis) can be toggled from Settings → Controller to invert the vertical axis used for vehicle control.

Build docs developers (and LLMs) love