Ocarina Recomp Wiki / Controllers

Ocarina Recomp & Hookshot controller setup

Every button, menu key and remapping option for the three projects, with layouts for Xbox, DualSense, 8BitDo and Steam Deck players.

  • SDL controllers
  • Keyboard + mouse
  • Rebinding
  • Rumble
Advertisement

Which controllers work

All three projects read controllers through SDL, so wired and wireless Xbox, PlayStation, 8BitDo, GameSir and Switch Pro pads work out of the box, alongside keyboard and mouse. Hookshot moved to sdl2-compat on SDL 3.4.20 in no-visual-studio, which adds more controllers including the Steam Controller.

ControllerWhy it suits these ports
Xbox Wireless ControllerStandard XInput layout; Ocarina Recomp’s auto layout treats it as xbox (south A, east B); rumble and impulse triggers supported.
Sony DualSenseRumble you can feel in Hookshot (since foliage-linux-updater); cross acts as A in the Xbox layout.
8BitDo Ultimate 2 BluetoothMade for Switch and Windows. If A/B feel swapped, choose nintendo or xbox as Ocarina Recomp’s Button layout, or rebind on Hookshot’s Controls page.
GameSir Cyclone 2PC and Switch pad with an Xbox-style layout; works as a standard SDL controller.

As an Amazon Associate, this site earns from qualifying purchases. Controller links go to Amazon; this site is not connected with the projects or the controller makers.

Ocarina Recomp controls

Input comes from the first SDL3 gamepad, the keyboard and the mouse, merged into one Switch controller. The controls page is inherited from TotK Recomp, so some setting names keep the TOTK_ prefix and live in totk.ini.

Switch buttonGamepad (Nintendo layout, by position)Keyboard and mouse
Left stickLeft stickW A S D
Right stick (camera)Right stickMouse; arrow keys
AEast buttonE
BSouth buttonLeft Shift
XNorth buttonSpace
YWest buttonLeft mouse button
L / RShouldersQ / R
ZL / ZRTriggers (over 50%)Right mouse button, Z / F, X
Plus / MinusStart / BackTab / M
D-padD-pad1 2 3 4
KeyGamepadAction
F1 or EscMinus + PlusOpen or close the settings menu
F10L3 + R3Performance overlay: off, frame rate, full panel
F11—Borderless fullscreen on or off

Button layout (Controls tab, or pad_layout): nintendo by position; xbox by label (south A); auto (default) picks per pad; xbox_prompts keeps positions and swaps the on-screen letters to match an Xbox pad after a restart.

Remapping: the Controls tab lists every Switch button with two key cells and a controller cell. Select a cell, press A or Enter, then the new input. It writes lines such as bind_A = pad:south, key:E to totk.ini; back paddles (lpaddle1 …) of Elite, DualSense Edge or Steam controllers can be bound too.

Hookshot controls

On the keyboard, W A S D move and the arrow keys turn the camera. Insert opens the menu (Home, or Select + Start, on a pad); Alt+Enter toggles fullscreen. In the menu the D-pad chooses and changes, the bottom face button changes too, and the right one closes it.

The Controls page (since no-visual-studio) rebinds every Switch button on gamepad and keyboard: choose a button and a column, press Enter or the bottom face button, then the new input; Delete clears it. It saves to hookshot_options.ini, where you can also write pad_a=0 or key_a=69,13 by hand:

pad_ valueGamepad input (by position)
0Bottom face button
1Right face button
2Left face button
3Top face button
4Select / Back
5Home
6Start
7, 8Stick presses
9, 10Shoulder buttons
11–14D-pad up, down, left, right
15, 16Triggers
-1None

key_ values are one or two Windows virtual-key codes in decimal (69 = E, 13 = Enter). Button names are a b x y l r zl zr plus minus ls rs left up right down.

Advertisement

TriAevum controls

  • Esc or R3 opens the in-game menu while the game keeps running: D-pad or sticks to move, A to select, B to go back, LB/RB for tabs.
  • F1 shows every setting; F2 temporarily disables the added graphics effects.
  • Keyboard/mouse and controller inputs are configurable, with a free camera and photo mode.

Steam Deck and Steam Input

TriAevum’s README recommends adding the AppImage as a non-Steam game and using Steam Input’s Gamepad layout without Proton. The same approach suits Hookshot’s AppImage (--play starts the built game directly). Neither project reports a test on a physical Deck yet; prepare and build in Desktop Mode.

Fixing common controller problems

ProblemFix
Controller not detectedConnect it before starting the game; on Windows close other programs that take exclusive control (some overlays do). Hookshot fixed a crash at boot with a controller connected (amd-shared-memory).
A/B or X/Y swappedOcarina Recomp: change Button layout. Hookshot: rebind on the Controls page. Some GuliKit pads report swapped buttons; Ocarina Recomp’s controls guide gives the bind_ lines.
Camera too slow with the mouseOcarina Recomp: Esc releases the cursor; mouse camera settings are in the menu. Hookshot: arrow keys or the right stick.
Steam overlay remaps buttonsTurn Steam Input on or off for that shortcut so only one layer translates the pad.
Advertisement

Frequently asked questions

What is the best controller for Ocarina Recomp and Hookshot?

Any pad SDL recognises works. An Xbox Wireless Controller needs no setup on Windows; a DualSense adds rumble in Hookshot; an 8BitDo Ultimate 2 Bluetooth suits players who also use it on a Switch. Keyboard and mouse are supported too.

How do I open the menu with a controller?

Hookshot: Home, or Select and Start together. Ocarina Recomp: Minus and Plus together (F1 or Esc on the keyboard). TriAevum: R3 (Esc on the keyboard), F1 for every setting.

A and B are swapped on my controller. How do I fix it?

In Ocarina Recomp, set the Button layout row on the Controls tab: nintendo (by position), xbox (by label), auto, or xbox_prompts. In Hookshot, open the Insert menu’s Controls page and rebind, or edit pad_a / pad_b in hookshot_options.ini.

Does rumble work?

Hookshot added rumble for DualSense, Xbox and other SDL controllers in foliage-linux-updater. Ocarina Recomp supports rumble with adjustable strength (TOTK_RUMBLE_STRENGTH, 0–300%, default 130) and Xbox impulse triggers (TOTK_RUMBLE_TRIGGERS=1).

Can I play with the controller while another window has focus?

Hookshot: yes, since no-visual-studio the controller keeps working in the background (#359). Ocarina Recomp: keys and mouse count only while the game window is in front.