Catan

Phase 1: Board generation, tiles, numbers and resource model

Build hex-grid map, resource tiles, number tokens and probability logic.

  • Generate randomized valid layout
  • Represent resources, ports
  • Assign number tokens

Functional Output: A complete logical board with all tiles, resources and numbers correctly placed.


Phase 2: GUI foundation and interactive map rendering

Create full visual board, clickable hexes, nodes and edges.

  • Render hex tiles
  • Highlight buildable spots
  • Display resources/numbers

Functional Output: A functional GUI showing the map with interactive selection areas.


Phase 3: Player setup, resource distribution and turn structure

Implement player initialization, dice rolling, resource collection and turn phases.

  • Manage players/hands
  • Generate dice results
  • Distribute resources

Functional Output: Players receive correct resources each turn and complete full phase cycles.


Phase 4: Building, roads, settlements, cities and rule enforcement

Integrate construction logic with GUI, including placement restrictions and adjacency rules.

  • Validate building locations
  • Track longest road
  • Update resource costs

Functional Output: Players can legally build and upgrade structures with correct rule checks.


Phase 5: Trading, robber mechanics and development cards

Add full trading, robber movement and development card system.

  • Implement bank/player trades
  • Enforce robber placement
  • Execute card effects

Functional Output: Trading flows correctly, robber actions work, and card effects execute reliably.


Phase 6: Victory points, AI opponent, saving and polish

Add scoring logic, an AI with simple heuristics, persistence and UI improvements.

  • Track victory points
  • Implement basic AI
  • Save/load sessions

Functional Output: Matches progress to victory with functioning AI, persistent states and smooth interface.