Skip to the content

Narabe並べ

Play forty-eight abstract board games through immutable moves, legal choices and replayable records.

Narabe means arranging in Japanese, as in gomoku-narabe: five in a row. About the name

Contents

Reference · Go rules

playGoMovefunction

Plays a stone at point, already known legal: captures whatever it takes, sets a fresh ko point when that capture was exactly one stone (and clears it otherwise), and passes the turn — Go has no further move of its own to settle, unlike the twist games or a piece game's line.

Import it

import { playGoMove } from "@johnmorrisdotca/narabe/rules/go";

Definition

function playGoMove(state: GameState, point: Point): GameState

Parameters

NameTypeDescription
stateGameState

The current immutable game position.

pointPoint

A zero-based row and column on the board.

Returns

GameState

The position after a known legal placement, captures, ko update and turn change; unchanged if the placement is suicide.

Examples

import { createGame, playMove } from "@johnmorrisdotca/narabe";
import { playGoMove } from "@johnmorrisdotca/narabe/rules/go";

const point = {row:7,col:7};
const go = playMove(createGame({variant:"go",size:9}),{row:4,col:4});
console.log(playGoMove(go, point).moves.length);
2

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/narabe 1.3.0.