Grid

The playing board for Starcore

🗺️ The Grid

Version: 3.0 | Last Updated: October 27, 2025


Overview

The Grid is the spatial battlefield system. Every card occupies exactly one Tile. Position determines everything: who you can attack, where resources flow, and which effects reach their targets. The grid is broken into your half and your opponents half. The Grid ships with every Base set of Starcore

Grid Structure

The 8×3 Shared Battlefield

    Lane:  1    2    3    4    5    6    7    8
         ┌────┬────┬────┬────┬────┬────┬────┬────┐
    A    │ A1 │ A2 │ A3 │ A4 │ A5 │ A6 │ A7 │ A8 │  Row A
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    B    │ B1 │ B2 │ B3 │ B4 │ B5 │ B6 │ B7 │ B8 │  Row B
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    C    │ C1 │ C2 │ C3 │ C4 │ C5 │ C6 │ C7 │ C8 │  Row C
         └────┴────┴────┴────┴────┴────┴────┴────┘

         PLAYER 1 DEPLOYMENT ZONE (Rows A-C)
         ════════════════════════════════════════
         SHARED BATTLEFIELD - BOTH PLAYERS CAN MOVE HERE
         ════════════════════════════════════════
         PLAYER 2 DEPLOYMENT ZONE (Rows A-C from their perspective)

Total Tiles: 24 (8 Lanes × 3 Rows) Coordinate Format: Row + Lane (e.g., A5, C3, B7)


Zones & Sectors

The playmat introduces strategic regions that help organize the battlefield and provide keywords/effects with clear territorial references.

Zones (Horizontal Divisions)

Zone 1 (Z1): Lanes 1-4 Zone 2 (Z2): Lanes 5-8

    Lane:  1    2    3    4  │  5    6    7    8
         ┌────┬────┬────┬────┼────┬────┬────┬────┐
         │         Z1         │         Z2         │
         └────────────────────┴────────────────────┘

Tactical Use:

  • Keywords can reference zones (e.g., "Bonus if in Z1", "Effect targets all units in Z2")

  • Provides left/right battlefield awareness

  • Simplifies complex targeting patterns

  • Creates strategic value for controlling specific zones


Sectors (Vertical + Horizontal Divisions)

Sectors combine Zone and Row to create smaller tactical regions:

    Lane:  1    2    3    4  │  5    6    7    8
         ┌────┬────┬────┬────┼────┬────┬────┬────┐
    A    │      S1 (Z1+A)     │      S2 (Z2+A)     │
         ├────┬────┬────┬────┼────┬────┬────┬────┤
    B    │      S1 (Z1+B)     │      S2 (Z2+B)     │
         ├────┬────┬────┬────┼────┬────┬────┬────┤
    C    │      S3 (Z1+C)     │      S4 (Z2+C)     │
         └────┴────┴────┴────┴────┴────┴────┴────┘

Sector Mapping:

Sector
Coverage
Tiles
Tactical Role

S1

Z1 + Rows A-B

A1-A4, B1-B4

Left frontline & middle

S2

Z2 + Rows A-B

A5-A8, B5-B8

Right frontline & middle

S3

Z1 + Row C

C1-C4

Left backline

S4

Z2 + Row C

C5-C8

Right backline

Sector-Based Gameplay:

  • "Dominate S1: If you control 3+ tiles in Sector 1, gain +2 DMG"

  • "Sector Sweep: Deal 2 DMG to all units in target Sector"

  • "Fortify S3: Units in S3 gain +1 DEF"

  • Provides intermediate targeting complexity between single tile and full board


Off-Board Areas

The playmat includes dedicated spaces for game components that are NOT part of the battlefield grid:

Primary Off-Board Zones

VOID

  • Location: Bottom left of playmat

  • Purpose: Permanent removal zone for destroyed/exiled cards

  • Rule: Cards in VOID cannot be returned to play (unless specific card effects allow)

  • Visual: Large rounded rectangle area

SCRAPYARD

  • Location: Bottom center-left of playmat

  • Purpose: Discard pile for destroyed units and spent actions

  • Rule: Cards here may be retrievable with effects like "Salvage" or "Reclaim"

  • Visual: Large rounded rectangle area

DECK

  • Location: Bottom center-right of playmat

  • Purpose: Draw pile for unplayed cards

  • Rule: Face-down, shuffle when needed

  • Visual: Large rounded rectangle area

DICE & COUNTERS

  • Location: Bottom right of playmat

  • Purpose: Storage for dice, damage counters, tokens, condition markers

  • Rule: Keep organized for quick access during play

  • Visual: Large rounded rectangle area


Top Zone Area

DICE 1 & 2 / COUNTERS

  • Location: Top left and top right of playmat

  • Purpose: Active die roll area and counters for current turn

  • Rule: Place dice here during attack/defense rolls

  • Visual: Small rounded rectangles on each side

COMMANDERS

  • Location: Top center-left of playmat

  • Purpose: Display area for Commander cards (not deployed yet, or reference)

  • Rule: Your Commander card rests here before/after deployment

  • Visual: Rounded rectangle

DECK (Secondary)

  • Location: Top center of playmat

  • Purpose: Alternative deck placement for easier reach

  • Rule: Optional location based on player preference

  • Visual: Rounded rectangle

SCRAPYARD (Secondary)

  • Location: Top center-right of playmat

  • Purpose: Alternative scrapyard placement

  • Rule: Optional location based on player preference

  • Visual: Rounded rectangle

VOID (Secondary)

  • Location: Top right of playmat

  • Purpose: Alternative void placement

  • Rule: Optional location based on player preference

  • Visual: Rounded rectangle


Quality of Life Features

DRINK HOLDER

  • Location: Bottom right circle

  • Purpose: Keep beverages safe from spills on play area

  • Design Philosophy: Professional playmats should accommodate real play sessions

STARCORE BRANDING

  • Location: Top left and bottom right corners

  • Purpose: Visual identity and orientation guide

  • Design: Clean logo placement that doesn't interfere with gameplay


Board Ownership & Territory

Deployment Zones

  • Player 1's Half: Their side of the 3 rows (visually shown as top half in diagram)

  • Player 2's Half: Their side of the 3 rows (visually shown as bottom half in diagram)

  • Initial Placement Rule: Cards must start on your half of the board (your 3 rows)

  • First Turn Special: Only 2 cards can be placed on turn 1

Shared Battlefield

  • Movement Freedom: Units AND Commanders can move onto opponent's board territory

  • No Permanent Ownership: Territory is fluid - cards can advance across the entire grid

  • Cross-Territory Combat: You can attack and be attacked anywhere on the grid

Example:

Player 1 deploys in their rows A-C
Player 2 deploys in their rows A-C (from their perspective, facing Player 1)
Both players can move units into opponent's territory
The entire 8×3 grid becomes a shared battlefield

Core Components

Tiles

Individual spaces on the Grid. Each Tile:

  • Holds exactly one card (no stacking except Module attachments via linking)

  • Has a unique coordinate (Row + Lane)

  • Can be empty or occupied

  • Part of the shared battlefield

  • Belongs to exactly one Zone and one Sector

Rows (Depth)

Horizontal lines across the battlefield:

Row
Position
Tactical Role

A

Row A

Your front/opponent's back (depending on perspective)

B

Row B

Middle ground, flexible positioning

C

Row C

Your back/opponent's front (depending on perspective)

Note: Row positioning is relative to each player. What's "front" for one player is "back" for their opponent.

Lanes (Width)

Vertical columns across the battlefield:

Lanes
Position
Zone
Tactical Role

1-2

Left side

Z1

Flanking opportunities, S1/S3 dominance

3-4

Center-left

Z1

Main engagement, Z1 control

5-6

Center-right

Z2

Main engagement, Z2 control

7-8

Right side

Z2

Flanking opportunities, S2/S4 dominance


Movement System

Movement Values

Every card has a base movement stat:

  • 0 = Immobile (cannot move)

  • 1 = Standard (move 1 tile per Movement phase)

  • 2 = Fast (move 2 tiles per Movement phase)

Movement Directions

8-Directional Movement:

    [↖] [↑] [↗]
    [←] [X] [→]
    [↙] [↓] [↘]

Units can move in all 8 directions:

  • Orthogonal: Up, Down, Left, Right (4 directions)

  • Diagonal: All 4 diagonal directions

Movement Range Examples:

  • Movement 1: Can move to any of the 8 adjacent tiles

  • Movement 2: Can move up to 2 tiles away in any direction (straight or diagonal)

Zone & Sector Changes:

  • Moving changes which Zone/Sector you occupy

  • Some effects trigger when entering/leaving specific Zones or Sectors

  • Strategic positioning becomes even more valuable with regional bonuses

Movement & Modules

CRITICAL RULE: When a Unit moves, its Modules stay in their original tiles

Example:

Before Movement:
    Lane:  3    4    5
         ┌────┬────┬────┐
    B    │ M  │ U  │    │  M = Module, U = Unit
         └────┴────┴────┘
         (Unit in S1, Zone 1)

After Unit Moves Right:
    Lane:  3    4    5
         ┌────┬────┬────┐
    B    │ M  │    │ U  │  Module stays at B3, Unit moves to B5
         └────┴────┴────┘
         (Unit now in S2, Zone 2!)

Tactical Implications:

  • Modules become anchors for future deployments

  • Modules become targets for opponents

  • Creates risk/reward: advance or maintain buffs?

  • Network topology planning is critical

  • Moving between Zones/Sectors may activate/deactivate regional effects


Adjacency Rules

Two cards are adjacent ONLY when their Tiles share a face.

What Counts as Adjacent

        [✓]
    [✓] [X] [✓]
        [✓]

The card at X is adjacent to the four face-touching tiles (up, down, left, right).

What Does NOT Count

    [✗] [ ] [✗]
    [ ] [X] [ ]
    [✗] [ ] [✗]

The card at X is NOT adjacent to diagonal tiles (marked ✗).

Adjacency by Position

Position Type
Adjacent Tiles
Example

Corner

2

A1 touches A2, B1

Edge

3

A4 touches A3, A5, B4

Interior

4

B4 touches A4, B3, B5, C4

Note: Adjacent cards may be in different Zones or Sectors. Adjacency is purely spatial.


Adjacency Examples

Example 1: Corner Position

    Lane:  1    2    3
         ┌────┬────┬────┐
    A    │ X  │ ✓  │    │
         ├────┼────┼────┤
    B    │ ✓  │ ✗  │    │
         └────┴────┴────┘

Card at A1 (X) is adjacent to:

  • A2 (✓) - right

  • B1 (✓) - down

Not adjacent to: B2 (✗ - diagonal)


Example 2: Edge Position

    Lane:  1    2    3    4
         ┌────┬────┬────┬────┐
    A    │    │ ✓  │    │    │
         ├────┼────┼────┼────┤
    B    │ ✓  │ X  │ ✓  │    │
         └────┴────┴────┴────┘

Card at B2 (X) is adjacent to:

  • A2 (✓) - up

  • B1 (✓) - left

  • B3 (✓) - right

Not adjacent to: A1, A3 (diagonals)


Example 3: Interior Position

    Lane:  3    4    5
         ┌────┬────┬────┐
    A    │    │ ✓  │    │
         ├────┼────┼────┤
    B    │ ✓  │ X  │ ✓  │
         ├────┼────┼────┤
    C    │    │ ✓  │    │
         └────┴────┴────┘

Card at B4 (X) is adjacent to:

  • A4 (✓) - up

  • B3 (✓) - left

  • B5 (✓) - right

  • C4 (✓) - down

Not adjacent to: A3, A5, C3, C5 (all diagonals)


Example 4: Cross-Zone Adjacency

    Lane:  3    4  │  5    6     (Z1 | Z2)
         ┌────┬────┼────┬────┐
    B    │    │ X  │ ✓  │    │
         └────┴────┴────┴────┘

Card at B4 (X, in Z1) is adjacent to:

  • B5 (✓, in Z2) - right (crosses zone boundary)

Zone Adjacency: Cards in different zones CAN be adjacent if they share a face.


The Linking System

Visual: Triangular edges on cards (physical design element) Function: Connect cards into networks for resource flow and module attachment Rule: Links connect when cards are face-adjacent ONLY (no diagonals) Max per card: 4 Links (one per face: up, down, left, right)

    ┌─────────┐
    │    △    │  ← Link (top)
    │◁   X   ▷│  ← Links (left/right)
    │    ▽    │  ← Link (bottom)
    └─────────┘

What Can Be Linked

Links connect three card types:

  • UnitsModules

  • UnitsResources

  • ModulesResources

Face-Only Adjacency (CRITICAL):

  • Links can ONLY connect on the four FACE directions

  • Up, Down, Left, Right = Valid link directions

  • Diagonal = NOT valid for linking

  • Creates puzzle-solving challenges for network placement

Link Range:

  • Adjacent cards only (1 tile away on face)

  • Links break if cards move out of range

  • Links must be re-established after movement breaks them

Cross-Zone/Sector Linking:

  • Links CAN span across Zone boundaries (e.g., B4 → B5 crosses Z1 to Z2)

  • Links CAN span across Sector boundaries

  • This enables strategic network building across the battlefield

Visual Indicators:

  • Physical game includes clear linking indicator tokens

  • Easy to track connections on the board

  • No ambiguity about what is linked to what


Example 1: Simple Resource Link

    Lane:  3    4    5
         ┌────┬────┬────┐
    B    │    │ R  │ U  │  R = Resource (+2 Energy), U = Unit
         └────┴────┴────┘

Link: R —Link→ U
Result: Unit gains +2 damage bonus from direct Resource connection

Example 2: Module Link

    Lane:  3    4    5
         ┌────┬────┬────┐
    A    │    │ U  │    │  U = Unit
         ├────┼────┼────┤
    B    │    │ M  │    │  M = Defensive Module
         └────┴────┴────┘

Link: U —Link→ M (vertical face-adjacent)
Result: Unit gains defensive buff from Module

Example 3: Network Chain

    Lane:  3    4    5    6
         ┌────┬────┬────┬────┐
    C    │ R  │ M  │ M  │ U  │
         └────┴────┴────┴────┘

Link Chain: R —Link→ M —Link→ M —Link→ U
Result: Resource energy flows through Module relay to Unit

Example 4: Cross-Zone Network

    Lane:  3    4  │  5    6     (Z1 | Z2)
         ┌────┬────┼────┬────┐
    C    │ R  │ U  │ M  │ U  │
         └────┴────┴────┴────┘

Link Chain: R —Link→ U (in Z1) —Link→ M (in Z2) —Link→ U (in Z2)
Result: Network spans two zones, strategic value for zone-control effects

Example 5: Broken Link (Unit Moved)

BEFORE Unit Movement:
    Lane:  3    4    5
         ┌────┬────┬────┐
    B    │ M  │ U  │    │  M linked to U
         └────┴────┴────┘

AFTER Unit Movement:
    Lane:  3    4    5
         ┌────┬────┬────┐
    B    │ M  │    │ U  │  Link broken - not face-adjacent
         └────┴────┴────┘

Result: Unit loses Module buff, Module becomes anchor for future placement

Range and Targeting

Range (Row Targeting)

Range determines which rows an effect can reach.

Range Notation:

Notation
Targets

A

Row A only

B

Row B only

C

Row C only

A+B

Rows A and B

A+C

Rows A and C (skip B)

A+B+C

All rows

Example Card:

Sniper Unit
Range: A+C
Attack: 6 DMG

Can target Row A or Row C, but NOT Row B

Width (Lane Targeting)

Width Notation:

Notation
Targets

Lane X

Single lane only

Lane X±1

Target lane plus adjacent lanes

Lane X±2

Target lane plus 2 lanes on each side

Zone 1

All of Lanes 1-4

Zone 2

All of Lanes 5-8

Sector X

All tiles in specified Sector

Example Card:

Artillery Strike
Range: A+B+C
Width: Lane 4±1
Damage: 3

Hits all units in Lanes 3, 4, and 5 across all rows

Example Zone-Based Card:

Zone Bombardment
Range: B+C
Width: Zone 2
Damage: 2

Hits all units in Lanes 5-8 across Rows B and C

Example Sector-Based Card:

Tactical Strike
Range: All
Width: Sector 1
Damage: 4

Hits all units in Sector 1 (Lanes 1-4, Rows A-B)

Combined Targeting Examples

Example 1: Range + Single Lane

Card: Short-Range Rifle
Range: A
Width: Lane 5

    Lane:  3    4    5    6    7
         ┌────┬────┬────┬────┬────┐
    A    │    │    │ ✓  │    │    │  ← Can hit
         ├────┼────┼────┼────┼────┤
    B    │    │    │ ✗  │    │    │  ← Cannot hit
         ├────┼────┼────┼────┼────┤
    C    │    │    │ ✗  │    │    │  ← Cannot hit
         └────┴────┴────┴────┴────┘

Example 2: Range + Width

Card: Flamethrower
Range: A+B
Width: Lane 4±1

    Lane:  2    3    4    5    6
         ┌────┬────┬────┬────┬────┐
    A    │    │ ✓  │ ✓  │ ✓  │    │  ← Can hit
         ├────┼────┼────┼────┼────┤
    B    │    │ ✓  │ ✓  │ ✓  │    │  ← Can hit
         ├────┼────┼────┼────┼────┤
    C    │    │ ✗  │ ✗  │ ✗  │    │  ← Cannot hit
         └────┴────┴────┴────┴────┘

Example 3: Zone Targeting

Card: Zone Suppression
Range: A+B+C
Width: Zone 1

    Lane:  1    2    3    4  │  5    6    7    8
         ┌────┬────┬────┬────┼────┬────┬────┬────┐
    A    │ ✓  │ ✓  │ ✓  │ ✓  │ ✗  │ ✗  │ ✗  │ ✗  │
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    B    │ ✓  │ ✓  │ ✓  │ ✓  │ ✗  │ ✗  │ ✗  │ ✗  │
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    C    │ ✓  │ ✓  │ ✓  │ ✓  │ ✗  │ ✗  │ ✗  │ ✗  │
         └────┴────┴────┴────┴────┴────┴────┴────┘
         
Hits all units in Zone 1 (Lanes 1-4, all rows)

Example 4: Sector Targeting

Card: Sector Bombardment
Range: All
Width: Sector 2

    Lane:  1    2    3    4  │  5    6    7    8
         ┌────┬────┬────┬────┼────┬────┬────┬────┐
    A    │ ✗  │ ✗  │ ✗  │ ✗  │ ✓  │ ✓  │ ✓  │ ✓  │
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    B    │ ✗  │ ✗  │ ✗  │ ✗  │ ✓  │ ✓  │ ✓  │ ✓  │
         ├────┼────┼────┼────┼────┼────┼────┼────┤
    C    │ ✗  │ ✗  │ ✗  │ ✗  │ ✗  │ ✗  │ ✗  │ ✗  │
         └────┴────┴────┴────┴────┴────┴────┴────┘

Hits all units in Sector 2 (Lanes 5-8, Rows A-B only)

Tactical Positioning

Line of Sight (Optional Rule)

Basic Rule: By default, you can target any unit in your Range and Width, regardless of intervening units.

Advanced Pierce Mechanic:

    Your View (from Row C looking at opponent's side):
         ┌────┐
    A    │ ✗  │  ← Enemy front row blocks unless you have Pierce
         ├────┤
    B    │ ✗  │  ← Enemy middle row also blocked
         ├────┤
    C    │ ✓  │  ← Your view of back row (unless opponent has Pierce)
         └────┘

Flanking Opportunities

Attacking from the sides (Lanes 1-2 or 7-8) against center targets (Lanes 3-6) may grant tactical advantages.

Example Card:

Flanking Strike
Keyword: Flank +2

If this Unit attacks from Lane 1-2 or 7-8,
gain +2 DMG against targets in Lanes 3-6.

Zone-Based Flanking:

Cross-Zone Ambush
Keyword: Zone Flank +3

If this Unit attacks from a different Zone than the target,
gain +3 DMG.

Zone Control Strategy

Zone Dominance Effects:

Zone Commander
Keyword: Zone 1 Dominance

While you control 4+ tiles in Zone 1, all your Units in Zone 1 gain +1 DEF.

Sector Lock:

Fortified Position
Keyword: Sector Lock (S3)

Units in Sector 3 cannot be targeted by opponents in Sector 2.

Center Control

Center lanes (3-6) are natural battlegrounds. Controlling these lanes provides:

  • Better positioning options

  • Easier targeting of enemy units

  • More flexible movement paths

  • Access to both Zone 1 and Zone 2 effects


Grid Control Strategy

Deployment Priority

Early Game (Turns 1-3):

  • Deploy Resources in your back rows (safety)

  • Place Units in middle positions (flexibility)

  • Establish Link networks before advancing

  • Consider Zone positioning for regional effects

  • Remember: First turn only 2 cards!

Mid Game (Turns 4-6):

  • Advance Units toward opponent's territory

  • Control center Lanes (3-6) for flexibility

  • Protect your Commander

  • Target opponent's Resource networks

  • Fight for Zone dominance if effects are in play

Late Game (Turns 7+):

  • Push into opponent's deployment zone

  • Use board-wide or Zone/Sector effects

  • Commander strikes for victory (reduce to 0 life)

  • Disrupt opponent's Module anchors

  • Contest Sectors with high-value effects


Physical Implementation

Playmat Requirements

Grid Markings:

  • Clear coordinate labels (A1-C8)

  • Lane numbers (1-8) clearly visible at top AND bottom

  • Row letters (A, B, C) clearly visible on both sides

  • Subtle grid lines for tile boundaries

  • Zone divider (vertical line between Lanes 4-5)

  • Sector labels (S1-S4) for strategic reference

Off-Board Zones:

  • VOID area (bottom left)

  • SCRAPYARD area (bottom center-left)

  • DECK area (bottom center-right)

  • DICE & COUNTERS area (bottom right)

  • Optional duplicate zones at top for player convenience

Recommended Materials:

  • Neoprene rubber (rolls up easily)

  • 24" × 36" size (larger for off-board areas)

  • High-contrast printing for grid visibility

  • Water-resistant coating

  • Professional branding elements

Quality of Life:

  • Drink holder circle to prevent spills

  • Clear visual separation between battlefield and off-board areas

  • Easy-to-read fonts at standard viewing distance


Card Positioning

Orientation Matters:

  • Links must face adjacent cards for connection

  • Card rotation can indicate status (if using tap/exhaust mechanics)

  • Clear placement within tile boundaries

  • Respect Zone/Sector boundaries for visual clarity


Physical Aids

Tokens:

  • Damage counters (for Commander life tracking)

  • Link indicator tokens (show active connections)

  • Resource pool trackers (colored by type)

  • Condition markers (status effects)

  • Zone control markers (to track dominance)

Reference Cards:

  • Adjacency diagram (face-only rule)

  • Range/Width quick reference

  • Movement value guide

  • Link connection rules

  • Zone & Sector map


Digital Implementation Notes

Grid State Tracking

Required Data Structure:

tile_state = {
    "coordinate": "B4",
    "occupied_by": "card_id_12345",
    "owner": "player_1",
    "card_type": "unit",
    "row": "B",
    "lane": 4,
    "zone": 1,  # Z1 (lanes 1-4)
    "sector": 1,  # S1 (Z1 + Rows A-B)
    "face_adjacent_to": ["A4", "B3", "B5", "C4"],
    "linked_to": ["B3", "B5"],  # Active links only
}

Zone & Sector Calculation

def get_zone(lane: int) -> int:
    """
    Determine which zone a lane belongs to.
    Lanes 1-4 = Zone 1
    Lanes 5-8 = Zone 2
    """
    return 1 if lane <= 4 else 2

def get_sector(row: str, lane: int) -> int:
    """
    Determine which sector a tile belongs to.
    S1: Z1 + Rows A-B
    S2: Z2 + Rows A-B
    S3: Z1 + Row C
    S4: Z2 + Row C
    """
    zone = get_zone(lane)
    
    if row in ['A', 'B']:
        return 1 if zone == 1 else 2
    else:  # Row C
        return 3 if zone == 1 else 4

def get_tiles_in_zone(zone: int) -> list[str]:
    """
    Get all tiles in a specific zone.
    """
    lanes = range(1, 5) if zone == 1 else range(5, 9)
    tiles = []
    for row in ['A', 'B', 'C']:
        for lane in lanes:
            tiles.append(f"{row}{lane}")
    return tiles

def get_tiles_in_sector(sector: int) -> list[str]:
    """
    Get all tiles in a specific sector.
    """
    if sector == 1:  # Z1 + A-B
        lanes, rows = range(1, 5), ['A', 'B']
    elif sector == 2:  # Z2 + A-B
        lanes, rows = range(5, 9), ['A', 'B']
    elif sector == 3:  # Z1 + C
        lanes, rows = range(1, 5), ['C']
    else:  # sector == 4, Z2 + C
        lanes, rows = range(5, 9), ['C']
    
    tiles = []
    for row in rows:
        for lane in lanes:
            tiles.append(f"{row}{lane}")
    return tiles

Adjacency Calculation

def get_face_adjacent_tiles(tile: str) -> list[str]:
    """
    Returns list of face-adjacent tiles (no diagonals).
    Input: "B4"
    Output: ["A4", "B3", "B5", "C4"]
    """
    row, lane = tile[0], int(tile[1])
    adjacent = []
    
    # Up (previous row)
    if row != 'A':
        adjacent.append(f"{chr(ord(row)-1)}{lane}")
    
    # Down (next row)
    if row != 'C':
        adjacent.append(f"{chr(ord(row)+1)}{lane}")
    
    # Left (previous lane)
    if lane > 1:
        adjacent.append(f"{row}{lane-1}")
    
    # Right (next lane)
    if lane < 8:
        adjacent.append(f"{row}{lane+1}")
    
    return adjacent

Movement Validation

def can_move_to(from_tile: str, to_tile: str, movement_value: int) -> bool:
    """
    Check if unit can move from one tile to another.
    Supports diagonal movement.
    
    movement_value: 0 (immobile), 1, or 2
    """
    if movement_value == 0:
        return False
    
    from_row, from_lane = from_tile[0], int(from_tile[1])
    to_row, to_lane = to_tile[0], int(to_tile[1])
    
    # Calculate distance (Chebyshev distance for 8-directional)
    row_diff = abs(ord(to_row) - ord(from_row))
    lane_diff = abs(to_lane - from_lane)
    
    distance = max(row_diff, lane_diff)
    
    return distance <= movement_value
def can_link(tile_a: str, tile_b: str) -> bool:
    """
    Check if two tiles can be linked.
    Links require face-adjacency (no diagonals).
    """
    adjacent_tiles = get_face_adjacent_tiles(tile_a)
    return tile_b in adjacent_tiles

Zone Control Tracking

def count_tiles_in_zone(player_id: str, zone: int, board_state: dict) -> int:
    """
    Count how many tiles a player controls in a specific zone.
    Useful for zone dominance effects.
    """
    zone_tiles = get_tiles_in_zone(zone)
    count = 0
    
    for tile in zone_tiles:
        if tile in board_state:
            if board_state[tile].get("owner") == player_id:
                count += 1
    
    return count

def has_zone_dominance(player_id: str, zone: int, board_state: dict, threshold: int = 6) -> bool:
    """
    Check if a player has zone dominance (controls threshold+ tiles in zone).
    Default threshold is 6 out of 12 tiles (50%+ control).
    """
    return count_tiles_in_zone(player_id, zone, board_state) >= threshold

Design Philosophy

Why 8×3?

Not 7×3 (too narrow):

  • Insufficient lane variety

  • Limited tactical options

  • Cramped battlefield

  • Zones would be unbalanced (3.5 lanes each)

Not 10×3 (too wide):

  • Excessive empty space

  • Analysis paralysis

  • Slower gameplay

  • Zones would be too large (5 lanes each)

8×3 is optimal:

  • 8 lanes provide variety

  • 24 tiles = manageable complexity

  • Fast strategic reads

  • Clear tactical zones

  • Fits standard playmat sizes

  • Perfect for 2-zone split (4 lanes each)


Why Zones & Sectors?

Zones provide:

  • Strategic territory control objectives

  • Simplified targeting for area effects

  • Left/right battlefield awareness

  • Mid-level complexity between single-tile and full-board

Sectors provide:

  • Granular regional control

  • Front/back + left/right tactical planning

  • Keyword design space (Sector dominance, Sector lock, etc.)

  • Clear strategic zones for deck archetypes

Balance:

  • Not overwhelming (only 2 Zones, 4 Sectors)

  • Intuitive spatial division

  • Natural extension of existing lane/row system

  • Optional complexity (base game can ignore them, expansions leverage them)


Why Face-Adjacent Only?

Diagonal adjacency creates:

  • Confusing Link paths

  • Ambiguous "next to" meaning

  • Harder physical tracking

  • Visual clutter

Face-adjacent ensures:

  • Crystal-clear adjacency

  • Unambiguous connections

  • Easy physical tracking

  • Intuitive spatial relationships

  • Clean network topology


Why 8-Directional Movement?

Movement can be diagonal, but Links cannot:

  • Movement: Tactical flexibility (8 directions)

  • Links: Strategic clarity (4 directions only)

  • This separation creates depth without confusion

  • Units navigate freely, but networks require planning


Why Off-Board Areas?

Physical playmat needs:

  • Clear separation between battlefield and card zones

  • Organized game state (not cluttered on grid)

  • Professional tournament-ready layout

  • Intuitive game flow (draw from DECK, discard to SCRAPYARD, exile to VOID)

Digital advantages:

  • Matches physical layout for seamless transition

  • Reduces UI confusion

  • Establishes consistent mental model

  • Enables future mechanics (Salvage from SCRAPYARD, etc.)


Common Mistakes

Mistake 1: Diagonal Linking

❌ WRONG:
"My Resource at B4 is linked to my Unit at A5"
(Diagonal does NOT create links)

✓ RIGHT:
"My Resource at B4 is linked to my Unit at B5"
(Face-adjacent creates valid link)

Mistake 2: Assuming Modules Move with Units

❌ WRONG:
"I move my Unit from B3 to B5, and its Module moves with it"

✓ RIGHT:
"I move my Unit from B3 to B5. The Module stays at B3.
The link breaks because they're no longer adjacent."

Mistake 3: Range Confusion

❌ WRONG:
"My Range A+B attack hits the enemy Commander at C4"
(C is not in A+B range)

✓ RIGHT:
"My Range A+B attack can hit enemies at A4 or B4"
(Only Rows A and B are valid targets)

Mistake 4: Zone Confusion

❌ WRONG:
"My 'Zone 1 Buff' affects my Unit at B5"
(B5 is in Zone 2, not Zone 1)

✓ RIGHT:
"My 'Zone 1 Buff' affects my Unit at B3"
(B3 is in Zone 1 = Lanes 1-4)

Mistake 5: Sector Misidentification

❌ WRONG:
"My Unit at C5 is in Sector 2"
(C5 is in Sector 4, not Sector 2)

✓ RIGHT:
"My Unit at C5 is in Sector 4"
(Sector 4 = Zone 2 + Row C)

Mistake 6: First Turn Overload

❌ WRONG:
"On turn 1, I deploy 3 Resources and 2 Units"

✓ RIGHT:
"On turn 1, I can only place 2 cards total"
(First turn special rule limits to 2 cards)

Mistake 7: Off-Board Confusion

❌ WRONG:
"I place my destroyed Unit in the VOID"
(VOID is for permanent exile, not regular destruction)

✓ RIGHT:
"I place my destroyed Unit in the SCRAPYARD"
(SCRAPYARD is the discard pile, VOID is for exile effects)

Glossary

Tile - Single space on Grid (e.g., A5, B3, C7) Row - Horizontal line (A, B, or C) Lane - Vertical column (1-8) Zone - Horizontal battlefield division (Z1 = Lanes 1-4, Z2 = Lanes 5-8) Sector - Combined Zone + Row region (S1, S2, S3, S4) Adjacent - Face-touching tiles only (up, down, left, right) Face-Adjacent - Same as Adjacent (clarifying term) Diagonal - NOT adjacent for linking purposes Link - Connector for Resource/Module networks (face-adjacent only) Range - Which rows an effect can reach Width - Which lanes an effect can reach Deployment Zone - Your starting half of the board (your 3 rows) Shared Battlefield - The entire 8×3 grid where all combat occurs Module Anchor - Module left behind when unit moves, becomes strategic placement point VOID - Permanent exile zone (off-board) SCRAPYARD - Discard pile (off-board) DECK - Draw pile (off-board) Zone Dominance - Controlling majority of tiles in a zone Sector Lock - Effect preventing targeting between specific sectors


Quick Reference

Coordinate System

  • Format: Row + Lane (e.g., A1, B5, C8)

  • Total Tiles: 24 (8 Lanes × 3 Rows)

  • Row Labels: A, B, C

  • Lane Labels: 1-8

Zones & Sectors

  • Zone 1 (Z1): Lanes 1-4 (12 tiles)

  • Zone 2 (Z2): Lanes 5-8 (12 tiles)

  • Sector 1 (S1): Z1 + Rows A-B (8 tiles: A1-A4, B1-B4)

  • Sector 2 (S2): Z2 + Rows A-B (8 tiles: A5-A8, B5-B8)

  • Sector 3 (S3): Z1 + Row C (4 tiles: C1-C4)

  • Sector 4 (S4): Z2 + Row C (4 tiles: C5-C8)

Adjacency

  • Face-touching only: Up, Down, Left, Right

  • Corner tiles: 2 adjacent

  • Edge tiles: 3 adjacent

  • Interior tiles: 4 adjacent

  • Diagonal: NOT adjacent for linking

  • Cross-Zone: Adjacent tiles CAN be in different zones

Movement

  • Values: 0 (Immobile), 1 (Standard), 2 (Fast)

  • Directions: 8 total (orthogonal + diagonal)

  • Module Rule: Modules stay when units move

  • Zone Change: Moving can change your Zone/Sector

  • Max per card: 4 (one per face)

  • Connection: Face-adjacent only (no diagonals)

  • Range: Adjacent tiles only

  • Break condition: Cards move out of range

  • Can link: Units ↔ Modules, Units ↔ Resources, Modules ↔ Resources

  • Cross-Zone: Links CAN span zone boundaries

Deployment

  • First Turn: 2 cards only

  • Ongoing: Normal placement rules

  • Starting Zone: Your half of the board (your 3 rows)

  • Movement Freedom: Can move anywhere on 8×3 grid

Off-Board Areas

  • VOID: Permanent exile (cannot return)

  • SCRAPYARD: Discard pile (may be retrieved)

  • DECK: Draw pile

  • DICE & COUNTERS: Token storage


Version History

v3.0 - October 27, 2025

  • Added Zones (Z1, Z2) for strategic territory division

  • Added Sectors (S1-S4) for granular tactical planning

  • Added Off-Board Areas (VOID, SCRAPYARD, DECK, DICE & COUNTERS)

  • Updated targeting system to include Zone and Sector targeting

  • Added zone dominance and sector control mechanics

  • Updated digital implementation with zone/sector calculation functions

  • Added playmat quality-of-life features (drink holder, professional layout)

  • Updated all examples to incorporate zone/sector awareness

  • Added zone control strategy section

  • Expanded tactical positioning with zone-based effects

v2.0 - October 18, 2025 (SUPERSEDED)

  • Complete alignment with Gameplay Basics v2.4

  • Removed "StarCore" references (game name TBD)

  • Clarified shared battlefield model (not split board)

  • Removed Ports system (Links only)

  • Added movement values (0/1/2)

  • Clarified 8-directional movement (but face-only linking)

  • Added Module anchoring mechanics

  • Added first turn 2-card limit

  • Updated all examples for consistency

  • Removed Regions/Zones (re-added in v3.0)

  • Added detailed link breaking examples

  • Updated digital implementation code

v1.4 - October 13, 2025 (SUPERSEDED)

  • Previous version with Ports system

  • Used "StarCore" game name

  • Had Regions/Zones system (different from v3.0)


Document Status: ✅ Updated with professional playmat design (v3.0) Next Review: After playtesting zone/sector mechanics Compatibility: Fully backward compatible - zones/sectors are optional advanced features


"Position isn't just important. Position is everything." "Control the zones. Dominate the sectors. Win the battle."

Last updated