Skip to content

Latest commit

ย 

History

History
639 lines (510 loc) ยท 26.1 KB

File metadata and controls

639 lines (510 loc) ยท 26.1 KB

๐ŸŽฎ Black Trigram (ํ‘๊ด˜) - Complete Controls Reference

๐Ÿ” ISMS Alignment: This document follows Hack23 Secure Development Policy documentation requirements.

Version: 0.5.37
Last Updated: January 2026
Status: โœ… Production Ready

This document is the single source of truth for all game controls in Black Trigram. It describes the currently implemented control scheme and clearly marks planned future enhancements.


๐Ÿ“‹ Quick Reference

Desktop Controls (Currently Implemented)

Action Key(s) Korean Description
Stance 1 - โ˜ฐ Geon 1 ๊ฑด (Heaven) Bone-striking force
Stance 2 - โ˜ฑ Tae 2 ํƒœ (Lake) Joint manipulation
Stance 3 - โ˜ฒ Li 3 ๋ฆฌ (Fire) Precise nerve strikes
Stance 4 - โ˜ณ Jin 4 ์ง„ (Thunder) Stunning techniques
Stance 5 - โ˜ด Son 5 ์† (Wind) Continuous pressure
Stance 6 - โ˜ต Gam 6 ๊ฐ (Water) Flow and adaptation
Stance 7 - โ˜ถ Gan 7 ๊ฐ„ (Mountain) Defensive mastery
Stance 8 - โ˜ท Gon 8 ๊ณค (Earth) Grounding techniques
Technique 1-10 Q E R T Y F G Z X C ๊ธฐ์ˆ  ์‹คํ–‰ Execute archetype techniques (3-10 available)
Movement W A S D or Arrow Keys ์ด๋™ 8-directional tactical positioning
Attack Space ๊ณต๊ฒฉ Execute current stance technique
Block/Guard B ๋ฐฉ์–ด Defensive positioning and blocks
Vital Points Overlay V ๊ธ‰์†Œ ํ‘œ์‹œ Toggle anatomical targeting overlay
Pause Menu ESC or M ์ผ์‹œ์ •์ง€ Pause game / Return to menu

โœ… NEW: Zero-Conflict Control Scheme (Current Version):

In v0.5.37, all currently implemented controls avoid conflicts: technique keys (Q-E-R-T-Y-F-G-Z-X-C) are positioned around WASD for easy reach with your left hand while keeping WASD free for movement.

  • Techniques (now): Use keys around WASD (Q, E, R, T, Y, F, G, Z, X, C)
  • Movement: WASD remains fully functional
  • No browser conflicts: No function keys or Ctrl shortcuts
  • Ergonomic: All keys within easy reach of left hand
  • โš ๏ธ Future Note: The planned Advanced Footwork System (NOT YET IMPLEMENTED) proposes using X for Swap Front Foot and Z for Short Step. In that future update, technique bindings for Z/X may be remapped to avoid conflicts; refer to this document's version header for the active scheme.

Mobile Controls (Touch Screen)

Control Location Korean Description
Virtual D-Pad Bottom-Left (200px from bottom) ๊ฐ€์ƒ ๋ฐฉํ–ฅํ‚ค 8-directional movement (140x140px)
Attack Button Bottom-Right (200px from bottom) ๊ณต๊ฒฉ ๋ฒ„ํŠผ Gold โšก button (80x80px)
Block Button Bottom-Right (200px from bottom) ๋ฐฉ์–ด ๋ฒ„ํŠผ Blue ๐Ÿ›ก๏ธ button (70x70px)
Stance Wheel Right-Center ์ž์„ธ ์„ ํƒ Circular 8-trigram selector (200px)
Swipe Right โ†’ Anywhere ์ „์ง„ Advance toward opponent
Swipe Left โ† Anywhere ํ›„ํ‡ด Retreat from opponent
Swipe Up โ†‘ Anywhere ์ƒ๋‹จ ๊ณต๊ฒฉ High attack execution
Swipe Down โ†“ Anywhere ํ•˜๋‹จ ๊ณต๊ฒฉ Low attack execution
Two-Finger Tap Anywhere ๊ธ‰์†Œ ๋ชจ๋“œ Toggle vital point targeting mode

๐Ÿ†• Enhanced Mobile Layout (v0.6.15+):

  • Improved Visibility: On-screen D-Pad and action buttons are positioned 200px from the bottom edge so they don't cover the combat arena.
  • TechniqueBar Positioning: TechniqueBar is positioned closer to the bottom edge at 20px (mobile) / 30px (desktop) to maximize arena visibility while remaining easily reachable.
  • No Overlap: Clear separation between TechniqueBar, on-screen mobile controls (D-Pad / action buttons), and the "Back to Menu" button.
  • Portrait Mode: Full functionality in vertical orientation
  • Touch Targets: Minimum 48px for accessibility compliance (WCAG 2.1 Level AA)
  • Z-Index Layering: On-screen mobile controls (z-index 50) > TechniqueBar (45) > HUD (40)

๐ŸŽฏ Detailed Control Specifications

1. Eight Trigram Stance System (ํŒ”๊ด˜ ์ฒด๊ณ„)

The core of Black Trigram combat is the Eight Trigrams stance system from the I Ching (ๆ˜“็ถ“). Each stance has unique combat properties and techniques.

โ˜ฐ 1: Geon (๊ฑด - Heaven)

  • Korean Name: ๊ฑด (Geon)
  • English: Heaven
  • Technique: ์ฒœ๋‘ฅ๋ฒฝ๋ ฅ (Thunder Strike)
  • Combat Focus: ๊ณจ๊ฒฉํƒ€๊ฒฉ (Bone-striking force)
  • Effects: Fractures, structural damage
  • Philosophy: Direct overwhelming power from above

โ˜ฑ 2: Tae (ํƒœ - Lake)

  • Korean Name: ํƒœ (Tae)
  • English: Lake
  • Technique: ์œ ์ˆ˜์—ฐํƒ€ (Flowing Strike)
  • Combat Focus: ๊ด€์ ˆ์กฐ์ž‘ (Joint manipulation)
  • Effects: Dislocations, mobility loss
  • Philosophy: Fluid redirection like water

โ˜ฒ 3: Li (๋ฆฌ - Fire)

  • Korean Name: ๋ฆฌ (Li)
  • English: Fire
  • Technique: ํ™”์—ผ์ง€์ฐฝ (Fire Spear)
  • Combat Focus: ์ •๋ฐ€์‹ ๊ฒฝํƒ€๊ฒฉ (Precise nerve strikes)
  • Effects: Temporary paralysis, numbness
  • Philosophy: Precise burning intensity

โ˜ณ 4: Jin (์ง„ - Thunder)

  • Korean Name: ์ง„ (Jin)
  • English: Thunder
  • Technique: ๋ฒฝ๋ ฅ์ผ์„ฌ (Lightning Strike)
  • Combat Focus: ๊ธฐ์ ˆ๊ธฐ๋ฒ• (Stunning techniques)
  • Effects: Disorientation, knockouts
  • Philosophy: Explosive shocking power

โ˜ด 5: Son (์† - Wind)

  • Korean Name: ์† (Son)
  • English: Wind
  • Technique: ์„ ํ’์—ฐ๊ฒฉ (Whirlwind Combo)
  • Combat Focus: ์ง€์†์••๋ฐ• (Continuous pressure)
  • Effects: Gradual incapacitation
  • Philosophy: Persistent grinding assault

โ˜ต 6: Gam (๊ฐ - Water)

  • Korean Name: ๊ฐ (Gam)
  • English: Water
  • Technique: ์ˆ˜๋ฅ˜๋ฐ˜๊ฒฉ (Flowing Counter)
  • Combat Focus: ์ ์‘๋ฐ˜๊ฒฉ (Adaptive counters)
  • Effects: Flow reversals, escapes
  • Philosophy: Adaptive formless response

โ˜ถ 7: Gan (๊ฐ„ - Mountain)

  • Korean Name: ๊ฐ„ (Gan)
  • English: Mountain
  • Technique: ๋ฐ˜์„๋ฐฉ์–ด (Rock Defense)
  • Combat Focus: ๋ฐฉ์–ด์ „๋ฌธ (Defensive mastery)
  • Effects: Blocks, deflections, counters
  • Philosophy: Immovable defensive positioning

โ˜ท 8: Gon (๊ณค - Earth)

  • Korean Name: ๊ณค (Gon)
  • English: Earth
  • Technique: ๋Œ€์ง€ํฌ์˜น (Earth Embrace)
  • Combat Focus: ์ง€๋ฉด์ œ์•• (Ground control)
  • Effects: Throws, takedowns, locks
  • Philosophy: Grounding and overwhelming mass

2. Archetype Technique System (๊ธฐ์ˆ  ์ฒด๊ณ„)

Implementation: Q-E-R-T-Y-F-G-Z-X-C keys execute archetype-specific combat techniques (3-10 per archetype)

Each player archetype has unique techniques that reflect their combat philosophy. These techniques are more powerful than basic attacks but require Ki and Stamina resources.

Technique Properties

  • Keyboard Shortcuts: Q E R T Y F G Z X C (up to 10 techniques)
  • Resource Cost: Varies by technique (8-35 stamina, 10-35 Ki)
  • Cooldown: 4-12 seconds depending on power level
  • Damage: 25-55 base damage (higher than basic attacks)
  • Stance Requirement: Some techniques require specific trigram stances
  • Zero Conflicts: Keys positioned around WASD for easy access without interfering with movement

Archetype Technique Examples

๋ฌด์‚ฌ (Musa) - Traditional Warrior
Key Technique Korean Damage Cost Stance Description
Q Thunder Strike ์ฒœ๋‘ฅ๋ฒฝ๋ ฅ 25-35 30๐Ÿ”‹ 20โšก โ˜ฐ Geon Strike with power of heaven
T Iron Defense ์ฒ ๋ฒฝ๋ฐฉ์–ด 0-5 20๐Ÿ”‹ 15โšก โ˜ถ Gan Immovable defensive stance
E Dragon Fist ์šฉ๊ถŒ 30-40 35๐Ÿ”‹ 25โšก Any Pierce through with dragon's might
R Mountain Breaker ํŒŒ์‚ฐ๊ฒฉ 35-50 40๐Ÿ”‹ 30โšก โ˜ฐ Geon Devastating blow that shatters mountains
์•”์‚ด์ž (Amsalja) - Shadow Assassin
Key Technique Korean Damage Cost Stance Description
Q Shadow Strike ์•”์˜๊ฒฉ 20-35 25๐Ÿ”‹ 20โšก โ˜ฒ Li Strike vital points with shadow speed
T Nerve Strike ์‹ ๊ฒฝํƒ€ 15-25 30๐Ÿ”‹ 25โšก Any Paralyze with precise nerve strikes
E Deadly Precision ์น˜๋ช…์ •๋ฐ€ 25-45 35๐Ÿ”‹ 30โšก โ˜ฒ Li Attack critical points with perfect accuracy
R Silent Death ๋ฌด์Œ์‚ด 40-60 45๐Ÿ”‹ 35โšก Any Deliver a silent, lethal strike

Technique Execution Flow

  1. Select Stance (1-8) - Choose trigram stance for bonuses
  2. Check Resources - Ensure sufficient Stamina (๐Ÿ”‹) and Ki (โšก)
  3. Press Technique Key (Q-E-R-T-Y-F-G-Z-X-C) - Execute the technique
  4. Cooldown Period - Wait 4-12 seconds before reusing (varies by technique)
  5. Resource Regeneration - Stamina and Ki regenerate over time

Note: Only the first 10 techniques per archetype are assigned keyboard shortcuts. Additional techniques (if any) can be accessed via mouse/touch on the technique bar.

Technique UI Indicators

  • Technique Bar: Displays available techniques with icons and shortcuts
  • Green Indicator: Technique ready to use
  • Red Indicator: Insufficient resources or on cooldown
  • Cooldown Timer: Shows remaining time before technique available
  • Resource Costs: Displays ๐Ÿ”‹ stamina and โšก Ki requirements

โœ… Zero-Conflict Design

New Control Scheme Eliminates ALL Conflicts:

  • Q, E, R, T, Y: Top row keys around WASD
  • F, G: Middle row keys near left hand
  • Z, X, C: Bottom row keys under left hand
  • Result: No interference with WASD movement, no browser shortcuts, no function keys

Left Hand Layout:

[1][2][3][4][5][6][7][8]  โ† Stances
   [Q][W][E][R][T][Y]     โ† Techniques (Q,E,R,T,Y) + Movement (W)
    [A][S][D][F][G]       โ† Movement (A,S,D) + Techniques (F,G)
     [Z][X][C][V][B]      โ† Techniques (Z,X,C) + Vital Points (V) + Block (B)
      [Space]             โ† Attack

3. Movement Controls (์ด๋™ ์กฐ์ž‘)

3.1 Basic Movement

WASD or Arrow Keys - 8-directional movement

  • W / โ†‘: Forward | ์ „์ง„ (Jeonjin)
  • S / โ†“: Backward | ํ›„ํ‡ด (Hutoe)
  • A / โ†: Left | ์ขŒ (Jwa)
  • D / โ†’: Right | ์šฐ (U)
  • Diagonals: Combine keys for 45ยฐ angles | ๋Œ€๊ฐ์„  ์ด๋™ (Daegakseon Idong)

3.2 Tactical Steps (์ „์ˆ ๋ณด๋ฒ• - Shift+WASD)

Shift + WASD - Precise 30cm tactical repositioning (18 frames, 300ms)

Tactical steps execute committed footwork movements for positional advantage:

Input Direction Korean Distance Duration
Shift+W Forward Step ์ „์ง„๋ณด๋ฒ• 30cm 300ms
Shift+S Retreat Step ํ›„ํ‡ด๋ณด๋ฒ• 30cm 300ms
Shift+A Left Step ์ขŒ์ธก๋ฉด๋ณด๋ฒ• 30cm 300ms
Shift+D Right Step ์šฐ์ธก๋ฉด๋ณด๋ฒ• 30cm 300ms
Shift+W+A Forward-Left ์ „์ขŒ์ธก๋ณด๋ฒ• 30cm 300ms
Shift+W+D Forward-Right ์ „์šฐ์ธก๋ณด๋ฒ• 30cm 300ms
Shift+S+A Back-Left ํ›„์ขŒ์ธก๋ณด๋ฒ• 30cm 300ms
Shift+S+D Back-Right ํ›„์šฐ์ธก๋ณด๋ฒ• 30cm 300ms

Tactical Step Properties:

  • โœ… Non-interruptible: Committed movement (Priority 5)
  • โœ… Guard maintained: Fighting stance preserved
  • โœ… Stamina cost: 5 stamina per step
  • โœ… Precise distance: Exactly 30cm (one foot width)

3.3 Advanced Footwork Patterns (๋ณด๋ฒ• ์ฒด๊ณ„ - Ctrl+WASD)

Ctrl + WASD - Specialized Korean martial arts footwork patterns

Advanced footwork adds 4 distinct movement patterns for tactical combat positioning:

Circular Steps (์›ํ˜•๋ณด - Wonhyeongbo) โœ… IMPLEMENTED

Lateral movement while maintaining guard facing forward.

Input Pattern Korean Distance Duration
Ctrl+A Circular Left ์›ํ˜•๋ณด ์ขŒ 30cm lateral 300ms (18 frames)
Ctrl+D Circular Right ์›ํ˜•๋ณด ์šฐ 30cm lateral 300ms (18 frames)

Circular Step Properties:

  • ๐ŸŽฏ Maintains guard facing: Body stays oriented toward opponent
  • โšก Non-interruptible: Committed footwork (Priority 5)
  • ๐Ÿฅ‹ Tactical advantage: Circle around opponent while keeping guard
  • ๐Ÿ“Š Same distance as tactical steps: 30cm movement
Slide Steps (๋ฏธ๋„๋Ÿผ๋ณด - Mikkeureombo) โœ… IMPLEMENTED

Both feet move together without weight transfer.

Input Pattern Korean Distance Duration
Ctrl+W Slide Forward ๋ฏธ๋„๋Ÿผ๋ณด ์ „ 30cm 200ms (12 frames)
Ctrl+S Slide Back ๋ฏธ๋„๋Ÿผ๋ณด ํ›„ 30cm 200ms (12 frames)

Slide Step Properties:

  • ๐Ÿƒ Faster than tactical steps: 200ms vs 300ms
  • ๐Ÿ”„ Interruptible: Can be canceled (Priority 4)
  • โš–๏ธ Stable base: Both feet move together
  • ๐ŸŽฏ Good for spacing: Quick in/out without commitment
Pivot Rotations (์ถ•์กฑํšŒ์ „ - Chukjok Hoejeon) โณ PENDING CONTROLS

90ยฐ rotation on planted foot for angle changes.

Input Pattern Korean Rotation Duration
Future Enhancement Pivot Left ์ถ•์กฑํšŒ์ „ ์ขŒ 90ยฐ counter-clockwise 250ms (15 frames)
Future Enhancement Pivot Right ์ถ•์กฑํšŒ์ „ ์šฐ 90ยฐ clockwise 250ms (15 frames)

Pivot Properties:

  • ๐Ÿ”„ Fast direction change: 90ยฐ rotation in 250ms
  • ๐ŸŽฏ Planted foot stays: One foot is pivot point
  • โšก Non-interruptible: Committed rotation (Priority 5)
  • ๐Ÿฅ‹ Tactical repositioning: Change facing without retreating
  • โš ๏ธ Status: Skeletal animations complete, keyboard controls pending
Shuffle Step (์„ž์Œ๋ณด - Seokkeumbo) โณ PENDING CONTROLS

Quick 15cm micro-adjustment for fine positioning.

Input Pattern Korean Distance Duration
Future Enhancement Shuffle ์„ž์Œ๋ณด 15cm omnidirectional 100ms (6 frames)

Shuffle Properties:

  • โšก Fastest footwork: Only 100ms (6 frames)
  • ๐ŸŽฏ Micro-adjustment: Half the distance of other steps (15cm)
  • ๐Ÿ”„ Fully interruptible: Can cancel anytime (Priority 3)
  • ๐Ÿƒ Fine-tuning: Perfect for precise positioning
  • โš ๏ธ Status: Skeletal animations complete, keyboard controls pending
Footwork Pattern Comparison
Pattern Korean Frames Duration Distance Priority Interruptible Use Case
Tactical Step ์ „์ˆ ๋ณด๋ฒ• 18 300ms 30cm 5 โŒ Standard repositioning
Circular ์›ํ˜•๋ณด 18 300ms 30cm 5 โŒ Lateral while maintaining guard
Pivot ์ถ•์กฑํšŒ์ „ 15 250ms 90ยฐ 5 โŒ Fast angle changes โš ๏ธ Controls pending
Slide ๋ฏธ๋„๋Ÿผ๋ณด 12 200ms 30cm 4 โœ… Quick in/out spacing
Shuffle ์„ž์Œ๋ณด 6 100ms 15cm 3 โœ… Micro-adjustments โš ๏ธ Controls pending

Movement Control Philosophy:

  • Regular WASD: Continuous movement, no commitment
  • Shift+WASD: Tactical steps with commitment (30cm)
  • Ctrl+A/D: Circular footwork (lateral movement)
  • Ctrl+W/S: Slide footwork (quick spacing)
  • Note: Pivot and Shuffle controls TBD (animations ready, awaiting keybinding)

Current Implementation: Simple 8-directional movement on arena grid

Keys Action Description
W or โ†‘ Move Up/North Move one grid cell north
A or โ† Move Left/West Move one grid cell west
S or โ†“ Move Down/South Move one grid cell south
D or โ†’ Move Right/East Move one grid cell east
W+A or โ†– Move Northwest Diagonal movement northwest
W+D or โ†— Move Northeast Diagonal movement northeast
S+A or โ†™ Move Southwest Diagonal movement southwest
S+D or โ†˜ Move Southeast Diagonal movement southeast

Movement Properties:

  • Speed varies by stance (fast stances: Geon/Son, slow stances: Gon/Jin)
  • Stamina cost: 5-7 per cell moved
  • Animation: 8-10 frames per movement
  • Boundaries: Octagonal arena with out-of-bounds detection

3. Combat Actions (์ „ํˆฌ ์กฐ์ž‘)

Attack (Space)

  • Key: Spacebar
  • Korean: ๊ณต๊ฒฉ (Gonggyeok)
  • Function: Execute the current stance's primary technique
  • Properties:
    • Damage determined by stance and vital point targeting
    • Stamina cost: 8-15 depending on technique
    • Animation frames: 12-20
    • Range: Melee (adjacent cells)
    • Can be blocked or parried

Block/Guard (B)

  • Key: B
  • Korean: ๋ฐฉ์–ด (Bang-eo)
  • Function: Enter defensive guard position
  • Properties:
    • Reduces incoming damage by stance-specific percentage
    • Stamina cost: 3 (tap) or 2/sec (hold)
    • Vital Resistance Bonus: +15-30% depending on stance
    • Best stances for blocking: Gan (Mountain), Gon (Earth)

4. Special Features (ํŠน์ˆ˜ ๊ธฐ๋Šฅ)

Vital Points Overlay (V)

  • Key: V
  • Korean: ๊ธ‰์†Œ ํ‘œ์‹œ (Geupso Pyosi)
  • Function: Toggle anatomical vital point overlay
  • Features:
    • Shows all 70 authentic vital points
    • Filter by severity (Lethal, Critical, Major, Moderate, Minor)
    • Filter by body region (Head, Torso, Arms, Legs)
    • Search by Korean or English name
    • Scale adjustment (0.5x - 2.0x)
    • Label toggle
    • Animation toggle

Pause/Menu (ESC or M)

  • Keys: ESC or M
  • Korean: ์ผ์‹œ์ •์ง€ (Ilsijeongji)
  • Function: Pause game or return to menu
  • Options in Pause Menu:
    • Resume (๋‹ค์‹œ ์‹œ์ž‘)
    • Restart Match (์žฌ์‹œํ•ฉ)
    • Return to Menu (๋ฉ”๋‰ด๋กœ ๋Œ์•„๊ฐ€๊ธฐ)
    • Audio Volume Controls

5. Mobile Touch Controls (๋ชจ๋ฐ”์ผ ํ„ฐ์น˜ ์กฐ์ž‘)

Black Trigram provides comprehensive touch controls optimized for mobile devices (375x667px and larger).

Virtual D-Pad (๊ฐ€์ƒ ๋ฐฉํ–ฅํ‚ค)

  • Location: Bottom-left corner
  • Size: 140x140px total, 48x48px buttons
  • Function: 8-directional movement
  • Safe Area: 34px from bottom for iOS/Android notches
  • Haptic Feedback: Light vibration (10ms) on direction press

Action Buttons (ํ–‰๋™ ๋ฒ„ํŠผ)

  • Location: Bottom-right corner
  • Attack Button:
    • Size: 80x80px
    • Icon: โšก (Gold)
    • Function: Execute stance technique
    • Haptic: Medium vibration (50ms)
  • Block Button:
    • Size: 70x70px
    • Icon: ๐Ÿ›ก๏ธ (Blue)
    • Function: Activate guard
    • Haptic: Medium vibration (50ms)

Stance Wheel (์ž์„ธ ํœ )

  • Location: Bottom-center
  • Size: 200px diameter when expanded
  • Function: Select one of 8 trigram stances
  • Layout: Circular with 8 trigram symbols
  • Activation: Tap to expand, tap symbol to select
  • Korean Names: ๊ฑด ํƒœ ๋ฆฌ ์ง„ ์† ๊ฐ ๊ฐ„ ๊ณค
  • Haptic: Light vibration (10ms) on selection

Gesture Controls (์ œ์Šค์ฒ˜ ์กฐ์ž‘)

  • Swipe Right (โ†’): Advance/forward dash
  • Swipe Left (โ†): Retreat/backward dash
  • Swipe Up (โ†‘): High attack/jump attack
  • Swipe Down (โ†“): Low attack/sweep
  • Two-Finger Tap: Toggle vital point overlay

Mobile Haptic Feedback

  • Light (10ms): Menu navigation, D-pad movement
  • Medium (50ms): Attack execution, block activation
  • Heavy (100ms): Critical hits, vital point strikes, match events

๐Ÿšง Future Control Enhancements (Planned)

The following controls are documented in game-design.md but NOT YET IMPLEMENTED. They are planned for future releases.

Advanced Footwork System (PLANNED)

Swap Front Foot (X)

  • Status: ๐Ÿšง Not Implemented
  • Key: X
  • Function: Mirror stance by swapping which foot is forward
  • Properties:
    • Stamina cost: 2
    • Frames: 6
    • No position change
    • Changes attack/defense angles

Short Step (Z + Arrow)

  • Status: ๐Ÿšง Not Implemented
  • Keys: Z + Direction Arrow
  • Function: Move one cell while keeping current front foot forward
  • Properties:
    • Stamina cost: 5
    • Frames: 10
    • No auto-pivot
    • Maintains attack angle

Step & Swap (X + Arrow)

  • Status: ๐Ÿšง Not Implemented
  • Keys: X + Direction Arrow
  • Function: Mirror foot, then move one cell
  • Properties:
    • Stamina cost: 10
    • Frames: 14
    • Changes both position and foot
    • Full orientation change

Advanced Attack System (PLANNED)

Directional Attacks (PLANNED)

  • Space + โ†‘: Front-leg kick (12 stamina, 16 frames)
  • Space + โ†: Front-elbow strike (10 stamina, 14 frames)
  • Space + โ†“: Front-knee strike (10 stamina, 14 frames)
  • Space + โ†’: Back-hand strike (9 stamina, 13 frames)

Rotational Backcast (PLANNED)

  • Keys: Space then โ†“ in same frame
  • Function: 180ยฐ pivot + spinning back strike
  • Properties:
    • Stamina cost: 15
    • Frames: 20 (10 pivot + 10 strike)
    • Full position reversal

Queued Attacks (PLANNED)

  • Keys: Hold Space+Arrow during movement
  • Function: Queue attack to execute immediately after movement lands
  • Properties:
    • Reduces reaction time
    • Enables smooth combos

โš™๏ธ Control Customization

Current State

  • Controls are hardcoded with defaults defined in src/utils/controlMapping.ts
  • No in-game customization UI currently available
  • LocalStorage persistence implemented but not exposed to users

Planned Customization Features

  • In-game control remapping UI
  • Preset control schemes (Classic, FPS-style, Fighting Game)
  • Gamepad support with customization
  • Control conflict detection and resolution
  • Export/import control configurations

๐ŸŽฎ Control Design Philosophy

Principles

  1. Accessibility First: All actions available via keyboard, mouse, touch, and gamepad
  2. No Hidden Inputs: All controls clearly documented and discoverable
  3. Muscle Memory: Consistent key positions across all screens
  4. Cultural Respect: Korean terminology and philosophy integrated authentically
  5. 60fps Responsive: All inputs processed at 60Hz with minimal latency

Korean Martial Arts Integration

  • 8 Stances based on I Ching trigrams (ํŒ”๊ด˜)
  • 70 Vital Points from Korean martial arts anatomy (๊ธ‰์†Œ)
  • Authentic Techniques with Korean and English names
  • Philosophy-Driven: Each stance embodies a natural element's combat principle

๐Ÿ“ฑ Platform-Specific Notes

Desktop

  • โœ… Full keyboard support
  • โœ… Mouse support for menus
  • โš ๏ธ Gamepad support planned but not implemented
  • Target: 60fps at 1920x1080

Mobile

  • โœ… Touch controls (375x667px minimum)
  • โœ… Gesture recognition
  • โœ… Haptic feedback
  • โœ… Safe area aware (iOS/Android notches)
  • Target: 30-60fps on mid-range devices

Tablet

  • โœ… Touch controls scaled for larger screens
  • โœ… Landscape and portrait modes
  • โš ๏ธ Stylus support planned
  • Target: 60fps at 1024x768+

๐Ÿงช Testing Controls

Manual Testing Checklist

  • All 8 stances accessible via 1-8 keys
  • WASD and Arrow keys both work for movement
  • Spacebar executes attacks in all stances
  • B key activates block in all stances
  • V key toggles vital points overlay
  • ESC and M both open pause menu
  • Mobile D-pad responds to all 8 directions
  • Mobile attack/block buttons responsive
  • Mobile stance wheel selects all 8 stances
  • Gesture recognition works (swipes, two-finger tap)
  • Haptic feedback triggers correctly

Automated Testing

  • Control mapping tests: src/utils/controlMapping.test.ts
  • Keyboard controls tests: src/hooks/useKeyboardControls.test.ts
  • Combat controls tests: src/components/combat/components/CombatControlsPanel.test.tsx
  • Mobile controls tests: src/components/mobile/ActionButtons.test.tsx

๐Ÿ“– References

Code Implementation

  • Control Mapping: src/utils/controlMapping.ts
  • Combat Controls: src/systems/types.ts (line 744: COMBAT_CONTROLS)
  • Keyboard Hooks: src/hooks/useKeyboardControls.ts
  • Mobile Controls: src/components/mobile/*
  • Controls Screen: src/components/screens/controls/ControlsScreen3D.tsx

Documentation

  • Game Design: game-design.md (lines 939-1133: Combat Controls & Stamina)
  • README Controls: README.md (lines 213-287: Combat Controls section)
  • Game Status: game-status.md (Overall implementation: 7.9/10)

Testing

  • E2E Controls Test: cypress/e2e/screens/controls-screen.cy.ts
  • Combat Screen Test: cypress/e2e/screens/combat-screen.cy.ts
  • Unit Tests: Multiple files in src/ directories

๐Ÿ“ Version History

Version Date Changes
0.5.44 Jan 2026 โœ… FIXED: Arrow key bug - ArrowUp now moves UP, ArrowDown moves DOWN (inverted forward mapping). Enhanced ControlsScreen with complete documentation including techniques, movement, and special features.
0.5.37 Jan 2026 Zero-conflict control redesign: Technique keys changed from Q-W-E-R-T-Y-U-I-O-P to Q-E-R-T-Y-F-G-Z-X-C to eliminate WASD movement conflicts
0.5.37 Jan 2026 Initial comprehensive controls documentation
0.5.36 Dec 2025 Vital points overlay (V key) implemented
0.5.30 Nov 2025 Mobile touch controls complete
0.5.20 Oct 2025 Eight trigram stances finalized

๐Ÿ’ก Tips for Players

Combat Effectiveness

  • Master Stances: Each trigram has strengths against specific body regions
  • Mix Movement: Don't just face-tank - positioning matters
  • Block Timing: Tap B right before impact for bonus resistance
  • Vital Points: Press V to study anatomy and target critical zones
  • Stance Cycling: 1-8 keys cycle quickly - find your flow

Mobile Players

  • Two-Handed: Use D-pad with left thumb, buttons with right
  • Swipe Combos: Combine swipes with button taps for variety
  • Stance Wheel: Master quick taps - don't hold the wheel open
  • Haptics: Feel the feedback - it tells you when inputs register

ํ‘๊ด˜์˜ ๊ธธ์„ ๊ฑธ์–ด๋ผ - Walk the Path of the Black Trigram

๐Ÿฅ‹ Master the controls. Master the combat. Master the art. ๐Ÿฅ‹