Skip to main content

Controls Reference

Complete guide to controlling your spacecraft in R-Type J.A.M.E.S.

๐ŸŽฎ Input Devicesโ€‹

R-Type J.A.M.E.S. supports multiple input devices:

  • โœ… Keyboard (Primary, fully supported)
  • โœ… Gamepad (Xbox, PlayStation, Generic USB controllers)
  • ๐Ÿšง Mouse (Planned for menu navigation)

โŒจ๏ธ Keyboard Controlsโ€‹

Default Keybindingsโ€‹

ActionPrimary KeyAlternative KeyDescription
Move Upโ†‘WMove ship upward
Move Downโ†“SMove ship downward
Move Leftโ†AMove ship left
Move Rightโ†’DMove ship right
FireSpace-Fire primary weapon
Charge ShotHold Space-Charge and release for powerful shot
Pause/MenuEscPPause game or open menu

Movement Characteristicsโ€‹

  • Speed: Constant movement speed (no acceleration)
  • Precision: Pixel-perfect control for dodging
  • Diagonal Movement: Combine directional keys for diagonal movement
  • Boundary Limits: Automatic screen edge prevention
Pro Tip

Use WASD for movement if you're more comfortable with FPS-style controls. Both arrow keys and WASD work simultaneously!

Settingsโ€‹

You can modify a lot of settings, like :

  • bigger text
  • input remapping
  • gameplay changes (difficulty settings, rule changes...)

Planned Configuration Fileโ€‹

Controls will be configurable via config/controls.json:

{
"keyboard": {
"move_up": ["Up", "W"],
"move_down": ["Down", "S"],
"move_left": ["Left", "A"],
"move_right": ["Right", "D"],
"fire": ["Space"],
"pause": ["Escape", "P"]
},
"gamepad": {
"move": "LeftStick",
"fire": "ButtonA",
"pause": "Start"
}
}

๐ŸŽฏ Movement Guideโ€‹

Basic Movementโ€‹

       โ†‘ (Up)
|
โ†โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ†’
(Left) (Right)
|
โ†“ (Down)

Diagonal Movementโ€‹

Combine two directional keys for diagonal movement:

  โ†– (Up+Left)    โ†— (Up+Right)




โ†™ (Down+Left) โ†˜ (Down+Right)

Speed: Diagonal movement maintains the same speed as cardinal directions (normalized vectors).

Screen Boundariesโ€‹

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ โ† Playfield Boundary โ†’ โ”‚
โ”‚ โ”‚
โ”‚ ๐Ÿš€ Your Ship โ”‚
โ”‚ โ”‚
โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
  • You cannot move outside the visible playfield
  • Movement is automatically clamped to screen edges
  • No "wrapping" around screen edges

๐Ÿ”ซ Firing Mechanicsโ€‹

Rapid Fireโ€‹

Press and release Space repeatedly for rapid fire:

  • Fire Rate: Limited by weapon cooldown
  • Projectile Speed: Fast, straight trajectory
  • Damage: Standard damage per shot
Player: โ–‘โ–‘โ–ถ Space Space Space
Output: ๐Ÿš€ โ”€โ†’ โ”€โ†’ โ”€โ†’

Charge Shot (Planned Feature)โ€‹

Hold Space to charge, release to fire:

  1. Press and Hold Space
  2. Visual Indicator: Ship glows/charges
  3. Release when fully charged
  4. Powerful Blast: Deals 3x damage
Player: โ–‘โ–‘โ–ถ Hold Space (1s)
Charge: ๐Ÿš€ โœงโœฆโœฆโœฆ (charging)
Release: ๐Ÿš€ โ”โ”โ”โ–ถ (powerful shot)
Charge Time

While charging, you cannot fire regular shots. Plan your charge timing carefully!

โธ๏ธ Pause Menuโ€‹

Press Esc to pause the game:

Pause Menu Optionsโ€‹

  • Resume: Return to game
  • Settings (Coming Soon): Adjust volume, graphics
  • Quit to Menu: Return to main menu
  • Quit Game: Exit application
Multiplayer Behavior

In multiplayer, pausing only affects your local view. The server and other players continue running. Use this for brief breaks only.

๐ŸŽ›๏ธ Advanced Control Techniquesโ€‹

Dodgingโ€‹

  • Predictive Movement: Watch enemy bullet trajectories
  • Perpendicular Dodging: Move perpendicular to incoming projectiles
  • Safe Zones: Learn enemy spawn patterns to position optimally

Kitingโ€‹

  • Backward Fire: Fire while moving backward to maintain distance
  • Circle Strafing: Move in circles around slow enemies
  • Hit and Run: Attack, then retreat to safety

Precision Movementโ€‹

For tight corridors and bullet hell sections:

  • Use small, controlled taps on directional keys
  • Avoid holding keys continuously
  • Practice feathering inputs for micro-adjustments

๐Ÿ”ง Troubleshooting Controlsโ€‹

Keyboard Not Respondingโ€‹

  1. Check Focus: Click on the game window to ensure it has focus
  2. Test Keys: Try alternate keys (WASD if arrows don't work)
  3. Restart: Close and relaunch the client

Gamepad Not Detectedโ€‹

  1. Connect First: Plug in controller before launching game
  2. Check USB: Try different USB port
  3. Driver Update: Ensure controller drivers are installed
  4. Test Tool: Use jstest-gtk (Linux) or joy.cpl (Windows) to verify controller works

Input Lagโ€‹

If you experience input lag:

  • V-Sync: Disable V-Sync if enabled
  • Polling Rate: Ensure controller has standard polling rate
  • CPU Load: Close background applications
  • Network: In multiplayer, check network latency

Multiple Inputsโ€‹

If multiple inputs register from one press:

  • Sticky Keys: Disable OS sticky keys feature
  • Controller Calibration: Recalibrate controller in OS settings
  • Clean Keyboard: Physical debris may cause key bounce

๐Ÿ“ฑ Platform-Specific Notesโ€‹

Linuxโ€‹

  • Controllers may require xboxdrv or SDL for proper detection
  • Some keyboards may have key repeat enabled in OS - this is normal
  • Use evtest to verify controller input events

Windowsโ€‹

  • Xbox controllers work natively
  • PlayStation controllers require DS4Windows or similar drivers
  • Generic controllers require DirectInput drivers

macOS (Coming Soon)โ€‹

  • Support planned for future releases
  • Will use native macOS input APIs

๐ŸŽฎ Control Layout Visual Referenceโ€‹

Keyboard Layoutโ€‹

โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”          โ”Œโ”€โ”€โ”€โ”€โ”€โ”
โ”‚ W โ”‚ โ”‚ โ”‚ โ”‚ โ†‘ โ”‚
โ”‚ โ†‘ โ”‚ โ”‚ โ”‚ OR โ”‚ โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ค โ”œโ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ A โ”‚ S โ”‚ D โ”‚ โ”‚โ† โ†“ โ†’โ”‚
โ”‚ โ† โ”‚ โ†“ โ”‚ โ†’ โ”‚ โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”˜

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ SPACE โ”‚ = Fire
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Gamepad Layoutโ€‹

      Start
[โธ]

[โ†‘] โ•ญโ”€โ”€โ”€โ”€โ”€โ•ฎ
[โ†] [โ†“] [โ†’] โ”‚ ส˜ โ”‚ = Left Stick
โ•ฐโ”€โ”€โ”€โ”€โ”€โ•ฏ

[Y]
[X] [B]
[A] โ† Fire

Last Updated: January 2026