Skip to the content

Tsunagi繋ぎ

Join each pair with a separate line and fill the board, through fixed levels or seeded puzzles.

Tsunagi means joining in Japanese. About the name

Contents

Reference · Rules, solvers and generation

wallCandidatefunction

A board with blockedWanted blocked cells and as many walls as it needs (at most mostWalls) to have one answer, or null.

Import it

import { wallCandidate } from "@johnmorrisdotca/tsunagi";

Definition

function wallCandidate(size: number, random: Random, longest: number, budget: number, blockedWanted: number, mostWalls: number, style?: FillingStyle): TwistCandidate | null

Parameters

NameTypeDescription
sizenumber

The number of cells on each side of the board.

randomRandom

A reproducible random source returning values in [0,1).

longestnumber

The maximum desired path length in cells.

budgetnumber

The maximum search-work budget; exhaustion must be treated as inconclusive.

blockedWantednumber

The requested number of blocked cells.

mostWallsnumber

The maximum walls to add.

style (optional)FillingStyle

Optional preferences for the seeded filling process.

Returns

TwistCandidate | null

A board with blockedWanted blocked cells and as many walls as it needs (at most mostWalls) to have one answer, or null.

Examples

import { seededRandom, wallCandidate } from "@johnmorrisdotca/tsunagi";

console.log(wallCandidate(4,seededRandom(42),8,20000,1,2));

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/tsunagi 1.7.0.