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 strategy board games.

All examples are shown in both TOML and JSON formats.


1. Western Chess — Opening Moves

A simple chess opening without time control.

TOML

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

[sides.second]
name = "Black"
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 = 2300

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

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

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

JSON

{
  "sides": {
    "first": {
      "name": "White",
      "variant": "Chess"
    },
    "second": {
      "name": "Black",
      "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": 2300 },
    { "pmn": "e7-e5", "elapsed_ms": 3100 },
    { "pmn": "g1-f3", "elapsed_ms": 4000 },
    { "pmn": "b8-c6", "elapsed_ms": 2200 }
  ]
}

2. Western Chess — Italian Game

The Italian Game opening with annotations.

TOML

[meta]
name = "Italian Game"
comment = "A classical opening"

[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 = "Attacking the e5 pawn"

[[plies]]
pmn = "b8-c6"
comment = "Defending the pawn"

[[plies]]
pmn = "f1-c4"
assessment = "good"
comment = "The Italian Game - targeting f7"

[[plies]]
pmn = "f8-c5"
comment = "The Giuoco Piano (Quiet Game)"

JSON

{
  "meta": {
    "name": "Italian Game",
    "comment": "A classical opening"
  },
  "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": "Attacking the e5 pawn" },
    { "pmn": "b8-c6", "comment": "Defending the pawn" },
    {
      "pmn": "f1-c4",
      "assessment": "good",
      "comment": "The Italian Game - targeting f7"
    },
    { "pmn": "f8-c5", "comment": "The Giuoco Piano (Quiet Game)" }
  ]
}

3. Western Chess — Sicilian Defense

The Sicilian Defense with time control.

TOML

[meta]
name = "Sicilian Defense"
event = "Club Championship"

[[periods]]
duration_ms = 900000
increment_ms = 10000

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

[sides.second]
name = "Black"
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 = "c7-c5"
elapsed_ms = 3000
comment = "The Sicilian Defense"

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

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

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

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

[[plies]]
pmn = "f3+d4"
elapsed_ms = 2000
comment = "The Open Sicilian"

JSON

{
  "meta": {
    "name": "Sicilian Defense",
    "event": "Club Championship"
  },
  "periods": [
    { "duration_ms": 900000, "increment_ms": 10000 }
  ],
  "sides": {
    "first": { "name": "White", "variant": "Chess" },
    "second": { "name": "Black", "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": "c7-c5", "elapsed_ms": 3000, "comment": "The Sicilian Defense" },
    { "pmn": "g1-f3", "elapsed_ms": 8000 },
    { "pmn": "d7-d6", "elapsed_ms": 6000 },
    { "pmn": "d2-d4", "elapsed_ms": 10000 },
    { "pmn": "c5+d4", "elapsed_ms": 4000 },
    { "pmn": "f3+d4", "elapsed_ms": 2000, "comment": "The Open Sicilian" }
  ]
}

4. Japanese Shōgi — Basic Opening

A shōgi game opening with the standard initial position.

TOML

[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
comment = "Opening the bishop diagonal"

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

[[plies]]
pmn = "2g-2f"
elapsed_ms = 6000
comment = "Preparing to advance the rook pawn"

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

JSON

{
  "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, "comment": "Opening the bishop diagonal" },
    { "pmn": "3c-3d", "elapsed_ms": 8000 },
    { "pmn": "2g-2f", "elapsed_ms": 6000, "comment": "Preparing to advance the rook pawn" },
    { "pmn": "8d-8e", "elapsed_ms": 4100 }
  ]
}

5. Japanese Shōgi — With Drops

A shōgi game featuring piece drops.

TOML

[meta]
name = "Drop Example"

[[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^g1nl/1r5s1/pppppp1pp/6p2/9/2P6/PP1PPPPPP/7R1/LNSGK^GSNL B/ S/s"

[[plies]]
pmn = "B*f5"
elapsed_ms = 15000
comment = "Dropping the bishop"

[[plies]]
pmn = "g4-g3"
elapsed_ms = 8000

[[plies]]
pmn = "f5+d7"
elapsed_ms = 12000
check = true
comment = "Bishop promotes with check"

JSON

{
  "meta": {
    "name": "Drop Example"
  },
  "periods": [
    { "duration_ms": 600000 },
    { "duration_ms": 30000, "plies": 1 }
  ],
  "sides": {
    "first": { "name": "Sente", "variant": "Shogi" },
    "second": { "name": "Gote", "variant": "Shogi" }
  },
  "setup": {
    "feen": "lnsgk^g1nl/1r5s1/pppppp1pp/6p2/9/2P6/PP1PPPPPP/7R1/LNSGK^GSNL B/ S/s"
  },
  "plies": [
    { "pmn": "B*f5", "elapsed_ms": 15000, "comment": "Dropping the bishop" },
    { "pmn": "g4-g3", "elapsed_ms": 8000 },
    {
      "pmn": "f5+d7",
      "elapsed_ms": 12000,
      "check": true,
      "comment": "Bishop promotes with check"
    }
  ]
}

6. Japanese Shōgi — Resignation

A shōgi game ending in resignation.

TOML

[meta]
event = "Amateur Tournament"
round = "3"

[[periods]]
duration_ms = 300000

[[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 = 5000

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

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

[[plies]]
pmn = "8c-8d"
elapsed_ms = 7000

[[plies]]
pmn = "2f-2e"
elapsed_ms = 12000
comment = "Aggressive advance"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "event": "Amateur Tournament",
    "round": "3"
  },
  "periods": [
    { "duration_ms": 300000 },
    { "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": 5000 },
    { "pmn": "3c-3d", "elapsed_ms": 6000 },
    { "pmn": "2g-2f", "elapsed_ms": 8000 },
    { "pmn": "8c-8d", "elapsed_ms": 7000 },
    { "pmn": "2f-2e", "elapsed_ms": 12000, "comment": "Aggressive advance" }
  ],
  "outcome": {
    "result": "1-0"
  }
}

7. Chinese Xiangqi — Opening

A xiangqi game with the standard initial position.

TOML

[sides.first]
name = "Red"
variant = "Xiangqi"

[sides.second]
name = "Black"
variant = "Xiangqi"

[setup]
feen = "rheag^aehr/9/1c5c1/s1s1s1s1s/9/9/S1S1S1S1S/1C5C1/9/RHEAG^AEHR / X/x"

[[plies]]
pmn = "c2-e2"
comment = "Central cannon"

[[plies]]
pmn = "h10-g8"
comment = "Defending knight"

[[plies]]
pmn = "h2-h4"
comment = "Right cannon advances"

[[plies]]
pmn = "c10-e8"
comment = "Elephant defense"

JSON

{
  "sides": {
    "first": { "name": "Red", "variant": "Xiangqi" },
    "second": { "name": "Black", "variant": "Xiangqi" }
  },
  "setup": {
    "feen": "rheag^aehr/9/1c5c1/s1s1s1s1s/9/9/S1S1S1S1S/1C5C1/9/RHEAG^AEHR / X/x"
  },
  "plies": [
    { "pmn": "c2-e2", "comment": "Central cannon" },
    { "pmn": "h10-g8", "comment": "Defending knight" },
    { "pmn": "h2-h4", "comment": "Right cannon advances" },
    { "pmn": "c10-e8", "comment": "Elephant defense" }
  ]
}

8. Chinese Xiangqi — With Time Control

A xiangqi game with Fischer time control.

TOML

[meta]
name = "Xiangqi Match"
event = "Regional Championship"

[[periods]]
duration_ms = 1200000
increment_ms = 30000

[sides.first]
name = "Red"
variant = "Xiangqi"
elo = 2100

[sides.second]
name = "Black"
variant = "Xiangqi"
elo = 2050

[setup]
feen = "rheag^aehr/9/1c5c1/s1s1s1s1s/9/9/S1S1S1S1S/1C5C1/9/RHEAG^AEHR / X/x"

[[plies]]
pmn = "h2-e2"
elapsed_ms = 45000
comment = "Cannon to center"

[[plies]]
pmn = "b10-c8"
elapsed_ms = 38000
comment = "Knight development"

[[plies]]
pmn = "h1-g3"
elapsed_ms = 52000
comment = "Knight to defensive position"

[[plies]]
pmn = "h8-h4"
elapsed_ms = 41000
comment = "Cannon advances"

[outcome]
result = "1-0"

JSON

{
  "meta": {
    "name": "Xiangqi Match",
    "event": "Regional Championship"
  },
  "periods": [
    { "duration_ms": 1200000, "increment_ms": 30000 }
  ],
  "sides": {
    "first": { "name": "Red", "variant": "Xiangqi", "elo": 2100 },
    "second": { "name": "Black", "variant": "Xiangqi", "elo": 2050 }
  },
  "setup": {
    "feen": "rheag^aehr/9/1c5c1/s1s1s1s1s/9/9/S1S1S1S1S/1C5C1/9/RHEAG^AEHR / X/x"
  },
  "plies": [
    { "pmn": "h2-e2", "elapsed_ms": 45000, "comment": "Cannon to center" },
    { "pmn": "b10-c8", "elapsed_ms": 38000, "comment": "Knight development" },
    { "pmn": "h1-g3", "elapsed_ms": 52000, "comment": "Knight to defensive position" },
    { "pmn": "h8-h4", "elapsed_ms": 41000, "comment": "Cannon advances" }
  ],
  "outcome": {
    "result": "1-0"
  }
}

Starting Positions Reference

Game FEEN
Chess +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
Shōgi lnsgk^gsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGK^GSNL / S/s
Xiangqi rheag^aehr/9/1c5c1/s1s1s1s1s/9/9/S1S1S1S1S/1C5C1/9/RHEAG^AEHR / X/x

See Also