Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

5.0KB

Game Design Document — Skirmish

Commodore 64 | Single-Screen Strategy Skirmish


1. High Concept

Skirmish is a turn-based tactical game where the player commands 3–4 units on a single-screen grid to defeat an enemy army. Each turn, the player moves one unit, then all enemy units act via AI. The game ends when either the player or enemy is eliminated.

Target player: You (learning 6502 assembly + game systems design)
Duration: 15–30 min per playthrough
Tone: Minimal, abstract, focused on strategy


2. Core Mechanics

2.1 Grid & Movement

  • Playfield: 8×8 grid (64 cells)
  • Each cell: 1 sprite maximum (unit or obstacle)
  • Player units (color 1): 3 units, start at left side
  • Enemy units (color 2): 3 units, start at right side
  • Movement: Each player unit can move 1–2 cells per turn (no diagonal, or allow 8-directional)

2.2 Combat

  • Attack: Unit attacks adjacent enemy (no projectiles yet)
  • Damage: 1 HP per hit; units die at 0 HP
  • Defense: Simple: no mitigation. (Optional: units can “defend” to reduce damage next turn)
  • Range: Melee only (adjacent cells)

2.3 Turn Order

  1. Player phase: Select active unit → move OR attack → advance turn
  2. Enemy phase: Each enemy AI acts once (move toward nearest player unit, or attack if adjacent)
  3. Check: Win/lose condition
  4. Repeat

2.4 Win & Lose Conditions

  • Win: Eliminate all enemy units (player score: turns survived)
  • Lose: All player units eliminated (game over)
  • No time limit: Skirmish ends when one army is destroyed

3. Player Experience

Single Turn (High Level)

  1. Player sees 8×8 grid with 6 units, each labeled with HP
  2. Player selects a unit (highlight it, show valid moves)
  3. Player moves the unit or confirms an attack
  4. Enemy units move and attack simultaneously (or sequentially, player watches)
  5. Feedback: HP updates, units die and vanish
  6. Next turn or game end

Feedback & Clarity

  • Cursor/highlight: Show selected unit in white or inverted video
  • Valid moves: Highlight reachable cells (optional: show with different color)
  • Damage/death: Flash sprite or simple removal
  • Text: “PLAYER 1” / “ENEMY 1” labels; HP display (optional: on-screen or in status line)
  • Audio: Simple beep for move, different tone for attack/death (SID optional for MVP)

4. Scope & Assets

4.1 Sprites

  • Player unit: 1 sprite design (3 copies, different color)
  • Enemy unit: 1 sprite design (3 copies, different color)
  • Optional selection indicator: White box or highlight (can be software-rendered text)

4.2 Map/Tiles

  • Option A (Simple): Solid color background, 8×8 grid drawn with text or thin lines
  • Option B (Nice): Simple tile-based floor (grass/stone pattern)
  • No scrolling, no complex collision tiles

4.3 Text & UI

  • Status line: “YOUR TURN” / “ENEMY TURN” / “YOU WIN” / “GAME OVER”
  • Unit display: Sprite label + HP in top-left corner
  • Selection: Text prompt “SELECT UNIT: 1–3” or directional highlight

4.4 Audio

  • MVP: None or single-tone beeps via SID register write
  • Nice-to-have: Attack sound, death sound, win/lose fanfare (SID notes, not music yet)

5. Rules Summary (Cheat Sheet)

Action Cost Effect
Move unit 1 turn Occupies new cell
Attack enemy 1 turn Adjacent only, 1 HP damage
End turn All enemies act
Unit reaches 0 HP Unit removed from grid

6. AI Behavior (Enemy Logic)

Each enemy unit, on its turn:

  1. Find closest player unit (using Manhattan distance)
  2. If adjacent: Attack it
  3. Else: Move 1 step toward it (greedy: move horizontally or vertically closer)
  4. Tie-break: If two closest units, pick the one closest to the grid center (tie-break)

This creates simple but engaging enemy behavior with minimal CPU cost.


7. Technical Constraints (C64-Specific)

  • Resolution: 320×200 (standard NTSC, 280×192 on PAL)
  • Grid rendering: Text or sprite-based; ideally ~40×25 cells → small cell size
  • Sprites: 3 player + 3 enemy + 1 selection cursor = 7 max (can multiplex if needed)
  • Memory: Code + zero-page state + game state array fits in ~8 KB
  • No sound initially: Skip SID; add it after mechanics work

8. Success Criteria (MVP)

  • Grid draws on screen, shows 6 units
  • Player can select and move a unit (no collision yet)
  • Enemy units move toward player
  • Attack damage and death work
  • Win/lose detection functional
  • Game is playable end-to-end in <30 min

9. Future Enhancements (Post-MVP)

  • Obstacles/walls on grid
  • Ranged attacks
  • Special abilities (e.g., “defend” or “heal”)
  • Multiple waves of enemies
  • Score/leaderboard
  • SID audio (music, sfx)
  • Difficulty levels

10. References & Inspiration

  • Chess/Checkers: Simple grid, turn order
  • Tactics Ogre / Fire Emblem: Turn-based tactical structure (scaled down)
  • Worms / Cannon Fodder: Unit-focused combat (simplified)

Powered by TurnKey Linux.