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

Complete Game Records (PCN v1.0.0)

This page provides end-to-end PCN documents that you can copy/paste and validate. Each example demonstrates the full structure with metadata, players, time control, plies, and outcomes.

All examples are shown in both TOML and JSON formats.


1. Chess — Blitz (Fischer 5+3)

A complete blitz game with Fischer time control.

TOML

[meta]
name = "Blitz Arena Game"
event = "Weekly Blitz"
site = "Chess Club"
round = "12"
started_at = 2025-01-27T14:30:00Z

[[links]]
rel = "canonical"
href = "https://example.com/games/12345"

[[periods]]
duration_ms = 300000
increment_ms = 3000

[sides.first]
name = "Alice"
variant = "Chess"
elo = 2100

[sides.second]
name = "Bob"
variant = "Chess"
elo = 2050

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "e2-e4"
elapsed_ms = 8000
assessment = "good"

[[plies]]
pmn = "e7-e5"
elapsed_ms = 12000

[[plies]]
pmn = "g1-f3"
elapsed_ms = 15000

[[plies]]
pmn = "b8-c6"
elapsed_ms = 5000

[[plies]]
pmn = "f1-c4"
elapsed_ms = 12000

[[plies]]
pmn = "f8-c5"
elapsed_ms = 18000

[[plies]]
pmn = "c2-c3"
elapsed_ms = 10000

[[plies]]
pmn = "g8-f6"
elapsed_ms = 8000
assessment = "mistake"
comment = "Better was d6 or Nf6"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "name": "Blitz Arena Game",
    "event": "Weekly Blitz",
    "site": "Chess Club",
    "round": "12",
    "started_at": "2025-01-27T14:30:00Z"
  },
  "links": [
    {
      "rel": "canonical",
      "href": "https://example.com/games/12345"
    }
  ],
  "periods": [
    { "duration_ms": 300000, "increment_ms": 3000 }
  ],
  "sides": {
    "first": {
      "name": "Alice",
      "variant": "Chess",
      "elo": 2100
    },
    "second": {
      "name": "Bob",
      "variant": "Chess",
      "elo": 2050
    }
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "e2-e4", "elapsed_ms": 8000, "assessment": "good" },
    { "pmn": "e7-e5", "elapsed_ms": 12000 },
    { "pmn": "g1-f3", "elapsed_ms": 15000 },
    { "pmn": "b8-c6", "elapsed_ms": 5000 },
    { "pmn": "f1-c4", "elapsed_ms": 12000 },
    { "pmn": "f8-c5", "elapsed_ms": 18000 },
    { "pmn": "c2-c3", "elapsed_ms": 10000 },
    {
      "pmn": "g8-f6",
      "elapsed_ms": 8000,
      "assessment": "mistake",
      "comment": "Better was d6 or Nf6"
    }
  ],
  "outcome": {
    "result": "1-0"
  }
}

2. Shōgi — Main Time + Byōyomi

A shōgi game with 10 minutes main time followed by 30 seconds per move.

TOML

[meta]
name = "Meijin Qualifier"
event = "Meijin Tournament"
round = "3"
started_at = 2025-06-10T09:00:00Z

[[periods]]
duration_ms = 600000

[[periods]]
duration_ms = 30000
plies = 1

[sides.first]
name = "Sente"
variant = "Shogi"

[sides.second]
name = "Gote"
variant = "Shogi"

[setup]
feen = "lnsgk^gsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGK^GSNL / S/s"

[[plies]]
pmn = "7g-7f"
elapsed_ms = 5200

[[plies]]
pmn = "3c-3d"
elapsed_ms = 8000

[[plies]]
pmn = "2g-2f"
elapsed_ms = 28400

[[plies]]
pmn = "8d-8e"
elapsed_ms = 4100

[[plies]]
pmn = "B*5e"
elapsed_ms = 15000
check = true
comment = "Bishop drop with check"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "name": "Meijin Qualifier",
    "event": "Meijin Tournament",
    "round": "3",
    "started_at": "2025-06-10T09:00:00Z"
  },
  "periods": [
    { "duration_ms": 600000 },
    { "duration_ms": 30000, "plies": 1 }
  ],
  "sides": {
    "first": {
      "name": "Sente",
      "variant": "Shogi"
    },
    "second": {
      "name": "Gote",
      "variant": "Shogi"
    }
  },
  "setup": {
    "feen": "lnsgk^gsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGK^GSNL / S/s"
  },
  "plies": [
    { "pmn": "7g-7f", "elapsed_ms": 5200 },
    { "pmn": "3c-3d", "elapsed_ms": 8000 },
    { "pmn": "2g-2f", "elapsed_ms": 28400 },
    { "pmn": "8d-8e", "elapsed_ms": 4100 },
    {
      "pmn": "B*5e",
      "elapsed_ms": 15000,
      "check": true,
      "comment": "Bishop drop with check"
    }
  ],
  "outcome": {
    "result": "1-0"
  }
}

3. Classical Chess — Tournament Game with Resignation

A classical tournament game with quota-based time control ending in resignation.

TOML

[meta]
name = "Championship Round 5"
event = "National Championship"
site = "Grand Hall"
round = "5"
started_at = 2025-01-27T12:00:00Z
comment = "A dramatic Sicilian Defense"

[[links]]
rel = "canonical"
href = "https://chess-federation.org/games/2025/championship/r5/1"

[[links]]
rel = "analysis"
href = "https://lichess.org/analysis/pgn/xyz"

[[periods]]
duration_ms = 7200000
plies = 40

[[periods]]
duration_ms = 1800000

[sides.first]
name = "Grandmaster White"
variant = "Chess"
elo = 2650

[sides.second]
name = "International Master Black"
variant = "Chess"
elo = 2480

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "e2-e4"
elapsed_ms = 50000

[[plies]]
pmn = "c7-c5"
elapsed_ms = 35000
comment = "The Sicilian Defense"

[[plies]]
pmn = "g1-f3"
elapsed_ms = 42200

[[plies]]
pmn = "d7-d6"
elapsed_ms = 31800

[[plies]]
pmn = "d2-d4"
elapsed_ms = 25000

[[plies]]
pmn = "c5+d4"
elapsed_ms = 28000

[[plies]]
pmn = "f3+d4"
elapsed_ms = 15000

[[plies]]
pmn = "g8-f6"
elapsed_ms = 22000

[[plies]]
pmn = "b1-c3"
elapsed_ms = 18000
assessment = "good"

[[plies]]
pmn = "a7-a6"
elapsed_ms = 45000
assessment = "dubious"
comment = "The Najdorf variation, but perhaps too slow here"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "name": "Championship Round 5",
    "event": "National Championship",
    "site": "Grand Hall",
    "round": "5",
    "started_at": "2025-01-27T12:00:00Z",
    "comment": "A dramatic Sicilian Defense"
  },
  "links": [
    {
      "rel": "canonical",
      "href": "https://chess-federation.org/games/2025/championship/r5/1"
    },
    {
      "rel": "analysis",
      "href": "https://lichess.org/analysis/pgn/xyz"
    }
  ],
  "periods": [
    { "duration_ms": 7200000, "plies": 40 },
    { "duration_ms": 1800000 }
  ],
  "sides": {
    "first": {
      "name": "Grandmaster White",
      "variant": "Chess",
      "elo": 2650
    },
    "second": {
      "name": "International Master Black",
      "variant": "Chess",
      "elo": 2480
    }
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "e2-e4", "elapsed_ms": 50000 },
    { "pmn": "c7-c5", "elapsed_ms": 35000, "comment": "The Sicilian Defense" },
    { "pmn": "g1-f3", "elapsed_ms": 42200 },
    { "pmn": "d7-d6", "elapsed_ms": 31800 },
    { "pmn": "d2-d4", "elapsed_ms": 25000 },
    { "pmn": "c5+d4", "elapsed_ms": 28000 },
    { "pmn": "f3+d4", "elapsed_ms": 15000 },
    { "pmn": "g8-f6", "elapsed_ms": 22000 },
    { "pmn": "b1-c3", "elapsed_ms": 18000, "assessment": "good" },
    {
      "pmn": "a7-a6",
      "elapsed_ms": 45000,
      "assessment": "dubious",
      "comment": "The Najdorf variation, but perhaps too slow here"
    }
  ],
  "outcome": {
    "result": "1-0"
  }
}

4. Game with Variations

A game with analytical variations showing alternative lines.

TOML

[meta]
name = "Analyzed Game"
comment = "Opening analysis with variations"

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "e2-e4"

[[plies]]
pmn = "e7-e5"

[[plies]]
pmn = "g1-f3"
comment = "The Italian Game begins"

[[plies]]
pmn = "b8-c6"

[[plies]]
pmn = "f1-c4"
assessment = "good"
comment = "The Italian Game - solid and classical"

  [[plies.variations]]
  pmn = "f1-b5"
  comment = "The Ruy Lopez - more complex"

    [[plies.variations.variations]]
    pmn = "a7-a6"
    comment = "The Morphy Defense"

    [[plies.variations.variations]]
    pmn = "g8-f6"
    comment = "The Berlin Defense - very solid"

  [[plies.variations]]
  pmn = "d2-d4"
  comment = "The Scotch Game - aggressive"

JSON

{
  "meta": {
    "name": "Analyzed Game",
    "comment": "Opening analysis with variations"
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "e2-e4" },
    { "pmn": "e7-e5" },
    { "pmn": "g1-f3", "comment": "The Italian Game begins" },
    { "pmn": "b8-c6" },
    {
      "pmn": "f1-c4",
      "assessment": "good",
      "comment": "The Italian Game - solid and classical",
      "variations": [
        {
          "pmn": "f1-b5",
          "comment": "The Ruy Lopez - more complex",
          "variations": [
            { "pmn": "a7-a6", "comment": "The Morphy Defense" },
            { "pmn": "g8-f6", "comment": "The Berlin Defense - very solid" }
          ]
        },
        {
          "pmn": "d2-d4",
          "comment": "The Scotch Game - aggressive"
        }
      ]
    }
  ]
}

5. Draw by Agreement

A game ending in a draw by mutual agreement.

TOML

[meta]
name = "Friendly Match"
event = "Club Evening"
started_at = 2025-01-27T19:00:00Z

[[periods]]
duration_ms = 900000
increment_ms = 10000

[sides.first]
name = "Alice"
variant = "Chess"

[sides.second]
name = "Bob"
variant = "Chess"

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "e2-e4"
elapsed_ms = 5000

[[plies]]
pmn = "e7-e5"
elapsed_ms = 6000

[[plies]]
pmn = "g1-f3"
elapsed_ms = 8000

[[plies]]
pmn = "b8-c6"
elapsed_ms = 7000
draw_offer = true
comment = "Bob offers a draw"

[[plies]]
pmn = "f1-b5"
elapsed_ms = 12000
draw_offer = true
comment = "Alice accepts the draw"

[outcome]
result = "1/2-1/2"

JSON

{
  "meta": {
    "name": "Friendly Match",
    "event": "Club Evening",
    "started_at": "2025-01-27T19:00:00Z"
  },
  "periods": [
    { "duration_ms": 900000, "increment_ms": 10000 }
  ],
  "sides": {
    "first": { "name": "Alice", "variant": "Chess" },
    "second": { "name": "Bob", "variant": "Chess" }
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "e2-e4", "elapsed_ms": 5000 },
    { "pmn": "e7-e5", "elapsed_ms": 6000 },
    { "pmn": "g1-f3", "elapsed_ms": 8000 },
    {
      "pmn": "b8-c6",
      "elapsed_ms": 7000,
      "draw_offer": true,
      "comment": "Bob offers a draw"
    },
    {
      "pmn": "f1-b5",
      "elapsed_ms": 12000,
      "draw_offer": true,
      "comment": "Alice accepts the draw"
    }
  ],
  "outcome": {
    "result": "1/2-1/2"
  }
}

6. Scholar’s Mate — Checkmate

A quick game ending in checkmate.

TOML

[meta]
name = "Scholar's Mate"
comment = "A classic beginner's trap"

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "e2-e4"

[[plies]]
pmn = "e7-e5"

[[plies]]
pmn = "f1-c4"

[[plies]]
pmn = "b8-c6"

[[plies]]
pmn = "d1-h5"
comment = "Threatening Qxf7#"

[[plies]]
pmn = "g8-f6"
assessment = "blunder"
comment = "Falls into the trap. Qe7 was necessary."

[[plies]]
pmn = "h5+f7"
check = true
mate = true
assessment = "brilliant"
comment = "Checkmate!"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "name": "Scholar's Mate",
    "comment": "A classic beginner's trap"
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "e2-e4" },
    { "pmn": "e7-e5" },
    { "pmn": "f1-c4" },
    { "pmn": "b8-c6" },
    { "pmn": "d1-h5", "comment": "Threatening Qxf7#" },
    {
      "pmn": "g8-f6",
      "assessment": "blunder",
      "comment": "Falls into the trap. Qe7 was necessary."
    },
    {
      "pmn": "h5+f7",
      "check": true,
      "mate": true,
      "assessment": "brilliant",
      "comment": "Checkmate!"
    }
  ],
  "outcome": {
    "result": "1-0"
  }
}

7. Cross-Variant — Chess vs Makruk

A cross-variant game where players use different rule systems.

TOML

[meta]
name = "East Meets West"
event = "Cross-Variant Exhibition"
comment = "An experimental cross-variant match"

[sides.first]
name = "Western Champion"
variant = "Chess"

[sides.second]
name = "Thai Champion"
variant = "Makruk"

[setup]
feen = "rnsmk^snr/8/pppppppp/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/m"

[[plies]]
pmn = "e2-e4"

[[plies]]
pmn = "d6-d5"

[[plies]]
pmn = "e4+d5"

[[plies]]
pmn = "e6+d5"

JSON

{
  "meta": {
    "name": "East Meets West",
    "event": "Cross-Variant Exhibition",
    "comment": "An experimental cross-variant match"
  },
  "sides": {
    "first": {
      "name": "Western Champion",
      "variant": "Chess"
    },
    "second": {
      "name": "Thai Champion",
      "variant": "Makruk"
    }
  },
  "setup": {
    "feen": "rnsmk^snr/8/pppppppp/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/m"
  },
  "plies": [
    { "pmn": "e2-e4" },
    { "pmn": "d6-d5" },
    { "pmn": "e4+d5" },
    { "pmn": "e6+d5" }
  ]
}

8. Game In Progress (No Outcome)

A game that is still ongoing — no outcome section.

TOML

[meta]
name = "Ongoing Correspondence Game"
started_at = 2025-01-15T10:00:00Z

[sides.first]
name = "Player A"

[sides.second]
name = "Player B"

[setup]
feen = "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"

[[plies]]
pmn = "d2-d4"

[[plies]]
pmn = "d7-d5"

[[plies]]
pmn = "c2-c4"
comment = "The Queen's Gambit"

JSON

{
  "meta": {
    "name": "Ongoing Correspondence Game",
    "started_at": "2025-01-15T10:00:00Z"
  },
  "sides": {
    "first": { "name": "Player A" },
    "second": { "name": "Player B" }
  },
  "setup": {
    "feen": "+rnbq+k^bn+r/+p+p+p+p+p+p+p+p/8/8/8/8/+P+P+P+P+P+P+P+P/+RNBQ+K^BN+R / C/c"
  },
  "plies": [
    { "pmn": "d2-d4" },
    { "pmn": "d7-d5" },
    { "pmn": "c2-c4", "comment": "The Queen's Gambit" }
  ]
}

Structure Summary

A complete PCN document can include:

Section Required Description
meta No Match metadata (name, event, site, round, started_at, comment)
links No External resource references
periods No Time control configuration
sides No Player information (name, variant, elo)
setup Yes Initial position (must contain feen)
plies No Sequence of moves with optional timing, annotations, variations
outcome No Match result

See Also