Sashité for Developers
  1. Sashité for Developers
  2. 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:

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:

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:

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.