跳转至

玩法说明

本项目运行的是自由五子棋,也就是 freestyle Gomoku。规则故意保持简单:黑棋先手,双方轮流在空交叉点落子,任意一方先连成五颗同色棋就获胜。

本项目采用的规则

棋盘是 15x15。棋子落在交叉点上,不是格子里。

人机模式中:

人类:黑棋,先手
AI:白棋,后手
禁手:没有
胜利:横、竖、斜任意方向五连

这里的“没有禁手”很重要。只要落点是空点,就可以下。黑棋可以下三三、四四、长连;白棋也一样。AI 不会因为某个落子在 Renju 规则里被禁止而判它非法。

正常结果:点击空交叉点可以落黑棋;如果黑棋五连,黑棋胜;如果白棋五连,白棋胜;棋盘下满仍无人五连,则平局。

什么是五连

五连表示同色棋子在同一条线上连续五颗。

横向:

X X X X X

纵向:

X
X
X
X
X

斜向:

X . . . .
. X . . .
. . X . .
. . . X .
. . . . X

本项目中,只要形成五连就结束对局。没有额外判断“这一手是不是黑棋禁手”。

常见棋形

下面用 X 表示当前方棋子,_ 表示空点,. 表示不关心的点。

活四

_ X X X X _

活四两边都能补成五。对手如果只堵一边,另一边仍然能赢,所以这是非常强的棋形。

冲四

O X X X X _

冲四只有一边能补成五。对手下一手必须堵那个空点,否则当前方就能赢。

断点四

X X _ X X

中间空点补上就是五连。防守方必须优先处理这个点。本项目的 AI 会把这种窗口作为强制威胁识别。

活三

_ X X X _

活三下一步可以发展成活四或冲四。它不是马上赢,但如果同时出现多个活三,对手很容易防不过来。

双威胁

双威胁表示一步棋同时制造两个必须处理的问题。例如一个落点同时形成两个活三,或者同时形成强制四和活三。

示意:

横向:_ X X X _
纵向:_ X X X _

如果交叉点就是刚落下的棋,对手往往只能堵一条线。另一条线会继续发展,这就是主动进攻的重要来源。

Renju 禁手是什么

Renju 是另一套更严格的五子棋规则。它通常用来削弱黑棋先手优势,所以只限制黑棋,不限制白棋。

常见黑棋禁手包括:

三三禁手:黑棋一步同时形成两个活三。
四四禁手:黑棋一步同时形成两个四。
长连禁手:黑棋一步形成六颗或更多连续棋。

这些规则不是本项目当前玩法。本项目是 freestyle,所以黑棋下出三三、四四、长连都不会被判非法。

三三禁手怎么理解

在 Renju 中,如果黑棋一手落下后同时形成两个活三,通常叫三三。

示意:

横向:_ X X X _
纵向:_ X X X _

如果中心的 X 是黑棋刚落下的棋,那么黑棋同时有两条活三。Renju 里这通常被禁止,因为黑棋先手已经有优势,再允许这种双活三会让进攻过强。

在本项目中,这不是非法落子。AI 反而会把这种“双威胁”当作高价值进攻点。

四四禁手怎么理解

四四表示黑棋一手同时形成两个“四”。这里的“四”可以是活四、冲四或断点四。

示意:

横向:X X _ X X
纵向:O X X X X _

如果同一个落点让两条线都进入“下一手可能成五”的状态,防守方很难同时处理。Renju 里黑棋四四通常被禁。

本项目没有这条限制。四四是合法进攻,AI 也会优先搜索这种强制点。

长连怎么理解

长连表示六颗或更多同色棋连续在一条线上:

X X X X X X

Renju 中黑棋长连通常是禁手。freestyle 规则里,长连包含五连,所以可以直接视为胜利。

本项目使用 freestyle 处理:长连有效,形成长连的一方获胜。

为什么本项目选择 freestyle

本项目的目标是让浏览器中的 Rust/Wasm AI 展示搜索、评估、Bitboard、Alpha-Beta、Worker 并行和热力图。freestyle 规则更直接:

  • 所有空点都合法,输入输出简单。
  • AI 可以专注计算攻防,而不是先处理禁手判定。
  • 人机模式下人类执黑先手,AI 执白后手,相当于让人类先走一步。

如果以后要做 Renju,需要新增禁手检测,并且只对黑棋生效。那会影响合法点生成、热力图、搜索分支和终局判定,不只是改几句文案。