- Sashité for Developers
- Protocol
Protocol
Overview
The Sashité Protocol establishes the fundamental conceptual framework for abstract strategy games within the Sashité ecosystem. Rather than presenting abstract rules, this protocol follows the natural progression of a game match from setup to completion, introducing concepts as they arise organically.
This protocol remains implementation-independent and serves as a stable conceptual reference for the entire Sashité specification suite.
The Progression of a Match
Setting Up the Game
Every match begins with a Game - a complete system that provides the framework for two players. The game consists of Locations where pieces can exist: a Board made up of Squares accessible to both players, and two private Hands (reserve areas) that only their respective owners can access.
Formalization: CELL defines board coordinates, HAND handles reserve notation.
At the start, two players are assigned roles: one becomes the First Player, the other the Second Player. These roles remain fixed throughout the entire match, regardless of who moves first or what happens during play.
Placing the Pieces
Pieces are the elements in this system. Each piece carries four essential attributes that define its complete identity:
- Type: What kind of piece it is (King, Pawn, etc.)
- Side: Which player controls it (first or second)
- State: Its current condition (normal, enhanced, diminished)
- Style: Which rule system governs its behavior
Formalization: PIN represents type, side, and state; SIN identifies styles; QPI combines everything for complete identification.
Pieces are arranged according to the initial Position - a complete snapshot of the game state including where every piece sits and whose turn it is.
Formalization: FEEN provides canonical position representation.
The Flow of Play
Once the match begins, one player becomes Active (able to make moves) while the other waits as the Inactive Player. During each Turn, the active player performs a Move - potentially complex actions that might involve multiple pieces.
What appears as a single “move” is actually composed of Actions - atomic, indivisible transformations that happen in sequence. Each action specifies:
- Where a piece starts (source location)
- Where it ends up (destination location)
- What it becomes (final piece state)
Formalization: PMN decomposes moves into action sequences.
Movement and Interaction
As pieces move, they follow the fundamental rules of the system:
Conservation: The total number of pieces never changes - they can only move between locations or change their attributes.
Exclusivity: Each piece occupies exactly one location at any time, and each board square holds at most one piece.
Access Control: While board squares are publicly accessible (subject to game rules), each player’s hand remains their private domain.
Types of Transformations
Through Displacement, pieces travel between locations - from board to board, board to hand, or hand to board. When a piece moves from board to hand, this is called Capture. The reverse journey, from hand to board, is Placement.
Mutation allows pieces to change their attributes without necessarily moving. A pawn might promote to a queen, or a piece might gain special abilities.
Formalization: GGN describes movement possibilities under various constraints.
The Complexity of Styles
Matches often feature Cross-Style scenarios where different players use different piece traditions. The first player might command Chess pieces while the second deploys Shōgi forces. The protocol embraces this complexity naturally.
Formalization: EPIN handles style derivation markers for cross-style scenarios.
Movement Validation
Not every action is permissible. Moves are classified by their validity:
Protocol-Valid Moves respect the fundamental invariants - pieces don’t vanish or appear from nowhere, locations aren’t violated.
Pseudo-Legal Moves additionally respect basic movement rules - bishops move diagonally, knights jump in L-shapes.
Legal Moves satisfy all game-specific constraints - no moving into check, no violating special rules.
The protocol only governs the first level; specific games handle the rest.
Position Uniqueness Constraint
A fundamental rule governs match progression: all positions within a match must be unique. It is forbidden for a player to make a move that results in a position identical to any previous position in the same match.
Position identity is determined by FEEN representation: two positions are identical if and only if their FEEN strings are identical. This constraint ensures match progression and prevents indefinite repetition of game states.
Recording the Progression
As the match unfolds, everything is documented. Game Records capture the complete story - initial setup, every move played, current position, and final outcome.
Formalization: PCN provides comprehensive game recording.
Sometimes only the changes between positions need to be described. State Transitions capture these deltas efficiently, showing what’s different without explaining how it happened.
Formalization: STN handles position deltas.
Match Conclusion
Eventually, the match reaches its end. The protocol doesn’t dictate how - that’s for individual games to decide. But regardless of outcome, the conceptual framework has provided the foundation for everything that happened.
Fundamental Invariants
Throughout this progression, certain principles never change:
- Piece Conservation: Total piece count remains constant across all locations
- Location Exclusivity: Each piece occupies exactly one location
- Square Occupancy: Board squares contain at most one piece
- Player Alternation: Active player role alternates after moves
- Access Control: Board access is public, hand access is private
- Position Uniqueness: All positions within a match must be unique
These aren’t arbitrary rules - they’re the foundational principles of the game system.
The Specification Ecosystem
Each concept in this framework finds precise expression in technical specifications:
Concept | Specification |
---|---|
Board Coordinates | CELL |
Reserve Locations | HAND |
Piece Identity | PIN, EPIN, QPI |
Style Systems | SIN |
Positions | FEEN |
Moves & Actions | PMN |
Movement Rules | GGN |
State Changes | STN |
Complete Records | PCN |
The protocol provides the conceptual foundation; specifications handle the technical details.