(define "CaptureSurroundedPiece" (enclose (from (last To)) Orthogonal (between if:("IsEnemyAt" (between)) (apply (and (trigger "CaptureMade" Next) (remove (between)) ) ) ) ) ) (define "HasMadeACapture" (is Triggered "CaptureMade" Next) ) //------------------------------------------------------------------------------ (game "Atari Go" (players 2) (equipment { (board use:Vertex) (piece "Marker" Each) }) (rules (play (do (move Add (to (sites Empty)) (then ("CaptureSurroundedPiece")) ) ifAfterwards:("HasFreedom" Orthogonal) ) ) (end (if "HasMadeACapture" (result Mover Win))) ) ) //------------------------------------------------------------------------------ (option "Board Size" args:{ } { (item "9x9" <(square 9)> "The game is played on a 9x9 board.") (item "13x13" <(square 13)> "The game is played on a 13x13 board.") (item "15x15" <(square 15)> "The game is played on a 15x15 board.") (item "19x19" <(square 19)> "The game is played on a 19x19 board.")** }) //------------------------------------------------------------------------------ (metadata (info { (description "Atari Go is a simplified version of Go where the first person to capture a stone wins.") (rules "The rules are identical to Go, except the winning condition is to be the first to capture a stone.") (source "BGG") (id "440") (version "1.3.14") (classification "board/space/territory") (credit "Eric Piette") } ) (graphics { (board Style Go) (player Colour P1 (colour Black)) (player Colour P2 (colour White)) }) (ai "Atari Go_ai" ) )