Skip to content

Input & Platform Support

FatherNoTimeGames edited this page Oct 9, 2026 · 2 revisions

Input & Platform Support

Target Input Philosophy

The game is designed controller-first, but must also support:

  • Touch input on Android.
  • Bluetooth keyboard input.
  • Mouse input during desktop development.

All gameplay actions should be routed through Godot InputMap actions, not hard-coded keys or buttons.

Screen Orientation

Current direction:

  • Sensor-based rotation is allowed.
  • The game must support portrait and landscape.
  • Portrait is important because the developer prefers playing phone games in portrait.
  • Battle UI and menu UI must be designed to reflow between orientations.
  • The prototype will be designed landscape-first.

Core Input Rules

  1. No gameplay action may depend on hover.
  2. All menus must be navigable by controller/keyboard focus.
  3. All touch interactions should be tap-based for the prototype.
  4. Touch targets must be large enough for mobile.
  5. The same command must work across input types.
  6. UI must not break when orientation changes.

Expected Input Contexts

Battle Command Menu

  • Navigate commands, Confirm, Cancel, Switch pages.

Target Selection

  • Navigate valid targets, Confirm target, Cancel, Touch tap to select.

Battle Summary

  • Confirm/continue, Switch summary sections.

Safe Room / Hub Menus

  • Navigate, Switch tabs, Confirm, Cancel.

Proposed Base InputMap Actions

Action Name Controller Keyboard Touch
ui_accept Gamepad South Enter / Space Tap button
ui_cancel Gamepad East Escape / Backspace Tap cancel / Android back
ui_up D-Pad Up / Left Stick Up / W Direct tap
ui_down D-Pad Down / Left Stick Down / S Direct tap
ui_left D-Pad Left / Left Stick Left / A Direct tap
ui_right D-Pad Right / Left Stick Right / D Direct tap
battle_prev_page Left Shoulder Q / PageUp / M Tap left tab
battle_next_page Right Shoulder E / PageDown / N Tap right tab
pause_menu Start / Menu Escape Pause button
camera_preset_toggle Right Stick Click / Select C / Tab Camera button

What Next/Previous Page Do?

Confirmed behavior:

battle_next_page and battle_prev_page are general UI tab/page navigation actions.

They are used whenever a UI screen has multiple pages, tabs, or grouped panels.

In Battle

  • Switch command pages.
  • Switch target groups (Enemies vs Allies).
  • Switch battle info panels (Timeline, Status, Log).
  • Switch Battle Summary sections.

In Safe Room / Hub

  • Switch major menu tabs (Party, Equipment, Skills, Stash, Shop, etc.).

In Prototype

  • Reserved for switching Battle Summary sections if tabbed.
  • Disabled when there is only one page.

Touch Input Direction

Current direction:

  • Direct tap is the primary touch interaction.
  • Target selection uses tap-to-select, then Confirm.

Related pages:

Clone this wiki locally