Sashité for Developers
  1. Sashité for Developers
  2. Specifications
  3. PCN
  4. 1.0.0
  5. Examples
  6. Traditional Games

Traditional Games (PCN v1.0.0)

This page presents PCN documents for well-known abstract board games using:

Note — PCN is rule-agnostic: legality is validated by the engine/viewer against the acting side’s SNN style.


1) Western Chess — No Time Control (In Progress)

A small, valid record without time control. Seconds are recorded but clocks are unlimited.

{
  "sides": {
    "first":  { "style": "CHESS", "name": "White" },
    "second": { "style": "chess", "name": "Black" }
  },
  "setup": "+rnbq+kbn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+KBN+R / C/c",
  "moves": [
    ["e2-e4", 2.3],
    ["e7-e5", 3.1],
    ["g1-f3", 4.0],
    ["b8-c6", 2.2]
  ],
  "status": "in_progress"
}

2) Western Chess — Blitz Fischer 5+3 (Symmetric)

Both sides use a bank with increment (moves=null, inc=3).

{
  "meta": { "event": "Blitz Night", "started_at": "2025-01-27T19:00:00Z" },
  "sides": {
    "first":  { "style": "CHESS", "name": "Alice", "periods": [ { "time": 300, "inc": 3 } ] },
    "second": { "style": "chess", "name": "Bob",   "periods": [ { "time": 300, "inc": 3 } ] }
  },
  "setup": "+rnbq+kbn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+KBN+R / C/c",
  "moves": [
    ["e2-e4", 8.0],   ["e7-e5", 12.0],
    ["g1-f3", 15.0],  ["b8-c6", 5.0],
    ["f1-c4", 9.5],   ["f8-c5", 7.2]
  ],
  "status": "in_progress"
}

Reminder: The increment is applied at the end of each move, using the period active at move start.


3) Japanese Shōgi — Main Time → Byōyomi (10′ → 30s/move)

Bank then per-move cap (moves=1), which repeats naturally.

{
  "meta": { "event": "Meijin Qualifier", "round": 1 },
  "sides": {
    "first":  { "style": "SHOGI", "name": "Sente", "periods": [ { "time": 600 }, { "time": 30, "moves": 1 } ] },
    "second": { "style": "shogi", "name": "Gote",  "periods": [ { "time": 600 }, { "time": 30, "moves": 1 } ] }
  },
  "setup": "lnsgkgsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGKGSNL / S/s",
  "moves": [
    ["7g-7f", 5.2],
    ["3c-3d", 8.0],
    ["2b-3c", 28.4],
    ["8d-8e", 4.1],
    ["P*5e", 3.0]
  ],
  "status": "in_progress"
}

Per-move rule: each byōyomi move must satisfy seconds ≤ 30; otherwise the outcome is "time_limit".


4) Makruk (Thai Chess) — Pure Bank (No Increment)

Simple main-time example with no increment.

{
  "sides": {
    "first":  { "style": "CHESS",  "name": "West" },   // using CHESS lettering for the white side
    "second": { "style": "makruk", "name": "Thai" }    // makruk rules on the black side
  },
  "setup": "rnsmksnr/8/pppppppp/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+KBN+R / C/m",
  "moves": [
    ["e2-e4", 6.0],
    ["d6-d5", 10.0]
  ],
  "status": "in_progress"
}

Cross-style is supported; legality is determined by the acting side’s SNN style.


Implementation Notes

For end-to-end documents, see Complete Game Records. For timing semantics & variants, see Time Control. For special actions (castling, drops, promotion), see Special Moves.