DuskPort

Dusk Gyro Aim & Mouse Aim — Complete Settings Guide

Configure gyro aim or mouse aim in Dusk. All 10 input settings explained verbatim from the source code, with platform-specific recommendations.

Published 2026-05-10

Dusk supports both gyro aim (motion-based aiming via a gyro-equipped controller) and mouse aim (added in v1.0.0-rc.1). This is one of the headline upgrades over the original GameCube release — bow and slingshot aiming with modern precision controls.

This guide is verified against src/dusk/ui/settings.cpp on the main branch — every setting name and helpText is verbatim from the source.


Where the settings live

Settings → Input → Gyro

That section contains 10 distinct settings (verified verbatim):

  1. Gyro Input MethodSensor or Mouse
  2. Gyro Aim — toggle
  3. Gyro Rollgoal — toggle
  4. Gyro Pitch Sensitivity — slider
  5. Gyro Yaw Sensitivity — slider
  6. Rollgoal Sensitivity — slider
  7. Gyro Deadband — slider
  8. Gyro Smoothing — slider
  9. Invert Gyro Pitch — toggle
  10. Invert Gyro Yaw — toggle

Gyro Input Method — Sensor vs Mouse

This is the most important toggle. Two modes:

Sensor mode

Reads motion data directly from the controller’s gyroscope/IMU. Fast, low-latency, no translation layer. This is what you want with:

  • DualShock 4 / DualSense
  • Switch Pro Controller
  • 8BitDo Pro 2 / Ultimate
  • Steam Deck (LCD or OLED)
  • Any other controller with native gyro

Mouse mode (added v1.0.0-rc.1)

Treats whatever input is configured as a virtual mouse and uses mouse movement as the aim signal. This was added in the v1.0.0-rc.1 release notes (verbatim):

“Added Mouse input for ‘gyro source’ (mouse aiming)”

Use mouse mode when:

  • You want literal mouse aim (PC + keyboard/mouse setup)
  • You’re routing gyro through Steam Input’s “gyro to mouse” feature (e.g., on Steam Deck if you prefer that workflow)
  • A controller’s gyro doesn’t expose itself to Dusk natively but Steam Input can read it

⚠️ Don’t use both at once. If you enable native sensor mode in Dusk and also enable Steam Input’s gyro-to-mouse for the same controller, the inputs fight each other.


Per-platform recommendations

Windows desktop (no Steam involvement)

  • Sensor mode — DualShock / DualSense / Pro Controller / 8BitDo Pro 2 connect via Bluetooth or USB and Dusk reads gyro directly
  • Mouse mode — for keyboard + mouse players

Windows desktop (via Steam)

  • Sensor mode if you want native low-latency
  • Mouse mode if you’ve already invested in a Steam Input gyro-to-mouse profile

macOS

  • Sensor mode for DualShock 4/5, Switch Pro Controller (iOS 16+ and macOS 13+ support it)
  • Mouse mode for keyboard+mouse, BUT note keyboard binding is currently broken on macOS (#830)

Linux desktop

  • Sensor mode — Linux’s hid-nintendo and hid-playstation kernel modules expose gyro to userspace; Dusk picks it up

Steam Deck

  • Sensor mode for the Deck’s native IMU — recommended
  • Don’t double up with Steam Input gyro-to-mouse

Android

  • Sensor mode — Bluetooth controllers with gyro (8BitDo Pro 2, DualSense) work
  • The phone’s own gyro is not currently used as input source

iOS

  • Sensor mode — DualShock 4/5 paired via Bluetooth, Switch Pro Controller via Bluetooth (iOS 16+), and 8BitDo Pro 2

Each setting explained

Gyro Aim (toggle)

The master switch. Off = no gyro influence on aim. On = gyro contributes to aim direction.

You’ll only see gyro effects when actually aiming (bow, slingshot, hawkeye, etc.) — Dusk doesn’t apply gyro to camera or movement during normal play.

Gyro Rollgoal (toggle)

“Rollgoal” refers to the marble/ball-rolling minigame (Plumm’s village minigame, the rolling stages). This toggle enables gyro for that specific minigame.

Gyro Pitch Sensitivity (slider)

How fast vertical aim moves in response to gyro tilt up/down. Higher = faster.

Gyro Yaw Sensitivity (slider)

How fast horizontal aim moves in response to gyro turn left/right.

Rollgoal Sensitivity (slider)

Independent sensitivity for the rolling minigame (so you can have, e.g., low pitch/yaw sensitivity for archery, but high sensitivity for the minigame).

Gyro Deadband (slider)

The minimum amount of gyro motion that registers as input. Higher = ignores small hand jitter; lower = more responsive but pickier. Set this if your aim drifts slightly when standing still.

Gyro Smoothing (slider)

How much Dusk smooths input over time. Higher = stable but laggy; lower = responsive but noisy.

Invert Gyro Pitch / Yaw (toggles)

Flip the corresponding axis. Useful if your preferred motion direction differs from the default.


These are reasonable defaults — adjust to taste:

SettingStarting value
Gyro Input MethodSensor (or Mouse for keyboard+mouse)
Gyro AimOn
Gyro RollgoalOn (if you’re going to play that minigame)
Gyro Pitch Sensitivity50%
Gyro Yaw Sensitivity50%
Rollgoal Sensitivity50%
Gyro Deadband10–20% (raise if drift, lower if missing small motions)
Gyro Smoothing20% (lower if you want twitch precision)
Invert Gyro PitchOff
Invert Gyro YawOff

These are guidelines, not measurements — TwilitRealm hasn’t published a recommended preset.


Mouse aim setup (PC keyboard + mouse)

If you want to play Dusk like a PC FPS:

  1. Settings → Input → Gyro → Gyro Input MethodMouse
  2. Settings → Input → Gyro → Gyro Aim → On
  3. Bind aim/fire to your mouse buttons via Settings → Input → Controller → Configure Controller (the keyboard/mouse binding system added in v0.6.2)
  4. Adjust Gyro Pitch / Yaw Sensitivity to taste — these become mouse sensitivities in Mouse mode

⚠️ macOS keyboard binding is broken at v1.0.0 (#830). Use a controller until patched.


Common gyro issues and fixes

Aim drifts when standing still

Increase Gyro Deadband. If still drifting, your controller’s gyro may need calibration — check the controller’s manufacturer firmware tools.

Aim feels jittery / oversensitive

Increase Gyro Smoothing and decrease Pitch/Yaw Sensitivity.

Aim feels laggy

Decrease Gyro Smoothing.

Gyro doesn’t respond at all

  • Make sure Gyro Input Method is set to Sensor (not Mouse)
  • Make sure Gyro Aim is toggled on
  • Verify your controller’s gyro is recognized by your OS — try a gyro-supported game outside Dusk to confirm
  • On Steam Deck specifically: don’t have Steam Input gyro-to-mouse enabled for the same controller

Gyro works but only sometimes

Gyro typically activates only during aim (bow/slingshot). It doesn’t move the camera during normal play. Confirm you’re holding the aim button.

Gyro on iPhone via Bluetooth controller

The DualShock 4/5 expose gyro to iOS only on iOS 13+. The Switch Pro Controller exposes gyro on iOS 16+. Older devices won’t have native gyro support.

Gyro feels different in different rooms

Gyro readings can be affected by the controller’s resting position when paired. If you’ve moved between locations, repair the controller.


Settings paths summary (verified verbatim from source)

GoalPath
Switch between gyro and mouse aimSettings → Input → Gyro → Gyro Input Method
Master toggle gyro on/offSettings → Input → Gyro → Gyro Aim
Gyro for rolling minigameSettings → Input → Gyro → Gyro Rollgoal
Tune gyro vertical speedSettings → Input → Gyro → Gyro Pitch Sensitivity
Tune gyro horizontal speedSettings → Input → Gyro → Gyro Yaw Sensitivity
Reduce hand-jitter inputSettings → Input → Gyro → Gyro Deadband
Smooth out gyro responseSettings → Input → Gyro → Gyro Smoothing
Flip gyro verticalSettings → Input → Gyro → Invert Gyro Pitch
Flip gyro horizontalSettings → Input → Gyro → Invert Gyro Yaw


Last updated: 2026-05-10. Settings tree verified against src/dusk/ui/settings.cpp on main branch.

← Pillar guide · All features