Skip to the content

Jirai地雷

Deal seeded minefields, prove hints from visible clues and mount square, orthogonal, hexagonal or wraparound boards.

Jirai is the Japanese word 地雷 for a land mine. About the name

Contents

Reference · Rules, generation and deductions

Deductiontype

Certain safe cells and mines proved from visible clues.

Import it

import type { Deduction } from "@johnmorrisdotca/jirai";

Definition

type Deduction = {
    safe: readonly number[];
    mines: readonly number[];
    reason: "count" | "overlap" | "total" | "enumeration" | "none";
    sources: readonly number[];
    contradiction: boolean;
};

Members

NameTypeDescription
safereadonly number[]
minesreadonly number[]
reason"count" | "overlap" | "total" | "enumeration" | "none"
sourcesreadonly number[]
contradictionboolean

A conflicting clue, or a board with no consistent mine placement.

Examples

import type { Deduction, Settings } from "@johnmorrisdotca/jirai";
import { hintFor, newGame, play, visibleGame } from "@johnmorrisdotca/jirai";

const settings: Settings={width:3,height:3,mines:1,grid:"square",noGuess:false,opening:"clear",seed:42};
const game=play(newGame(settings),{kind:"reveal",cell:0});
const value: Deduction = hintFor(visibleGame(game));
console.log(value);
{
  safe: [],
  mines: [ 2 ],
  reason: 'count',
  sources: [ 1 ],
  contradiction: false
}

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/jirai 0.5.0.