从终端大师到大师:在 Linux 终端下棋

您知道 Linux 终端也很有趣!

你可以运行一些有趣的 Linux 命令来娱乐。 您也可以在 Linux 终端中玩游戏。

是的! 你没听错。 您可以在终端中玩游戏,在这个#TerminalTuesday 系列中,我将向您展示如何在 Linux 终端中下棋。

你可能会想,“为什么会有人想在终端下棋?!”。 我说,这很有趣。 对战也很有挑战性 鱼干.

是的,有 国际象棋 可用,但它在视觉上并不吸引人,而且国际象棋引擎“一直在思考”很长一段时间。

我说的是 GNU Chess 的替代品。 以下是您可能更喜欢这个的几个原因。

  • 你可以与最强大的国际象棋引擎之一对战, 鱼干. 以下是所有排名 计算机国际象棋引擎.
  • 视觉上看起来比 GNU Chess 好得多,而且速度也相对更快。
  • 您将学习如何用代数符号描述国际象棋的走法。
  • 我认为It’s FOSS 读者中有很大一部分是极客/书呆子,你们会喜欢的。

要安装终端国际象棋,您需要两个组件, 鱼干 国际象棋引擎和 chs 这是插入国际象棋引擎的用户界面。

使用 Stockfish 和 chs 在 Linux 终端中安装国际象棋

这里的终端命令适用于 Ubuntu 或基于 Ubuntu 的发行版,因为很多人都在使用它们。 这些命令在 Ubuntu 20.04 上进行了测试。

您可以使用发行版的包管理器来安装提到的软件。

sudo apt install stockfish

运行上述命令将安装最新版本的 Stockfish 国际象棋引擎。

chs 是插入国际象棋引擎的 UI。 它是用 python3 编写的,你可以使用 python 包管理器 pip3 安装它。

首先,使用以下命令在 Ubuntu 上安装 PIP:

sudo apt install python3-pip

安装 pip3 后,运行以下命令安装 chs。

pip3 install chs

配置chs

安装 chs 后,您将看到一条错误消息,指出 chs 不在 PATH 上。 此时,如果您尝试启动 chs,终端将不知道从哪里启动它。

您可以使用以下命令来解决问题

 PATH="$PATH:$HOME/ .local/bin"

如果您尝试从终端启动 chs,您将看到“FileNotFoundError”。 这是 chs 中的一个已知错误,它无法找到 Stockfish 国际象棋引擎来启动它。

为了解决这个问题,我们需要在 chs python 代码中做一个小的编辑。 我们感兴趣的文件将位于 /.local/lib/python3.X/site-packages/chs/engine/stockfish.py

确保将python版本中的3.X替换为您计算机上安装的那个。 您可以使用以下命令检查 python 版本。

python3 -V

对我来说,它是 Python 3.8。 您可以使用 Nano 编辑器或您选择的文本编辑器打开文件。

sudo nano ~/.local/lib/python3.8/site-packages/chs/engine/stockfish.py

在代码的第 13 行中,您将看到 engine_path = ‘stockfish_10_x64_linux’,您必须像这样替换 ‘stockfish_10_x64_linux’

engine_path = "/usr/games/stockfish"

现在您终于完成了所有设置。 类型 chs 在终端启动游戏。 这会以 1 级难度启动 chs。

您可以在启动游戏时指定难度级别,如下所示。

chs level=8

在 Linux 终端下棋

您使用代数符号(这个名字听起来很复杂,但其实很简单)来下棋来描述走法。

我将总结如何使用代数符号进行游戏的简短版本,有关详细信息,您可以查看 本文. 棋子用一个字母表示。

  • 骑士 – N
  • 车 – R
  • 皇后 – Q
  • 国王 – K
  • 主教 – B
  • Pawns – 空白,它们没有关联的字母。

棋盘列用字母表示 一个H 行由数字表示 1 —— 8. 要将您的棋子移动到 a2 到 a4 的位置,您只需编写 a4.

要将您的 Knight(N) 从 g1 移动到 h3,您可以这样写 NH3.

要捕获一个 pawn,您必须添加一个 X 在命令中。 在这里,我正在尝试使用我的骑士(N)捕获位于 c4 位置的主教(B)。 这个命令是 NXC4.

当您键入无效命令或命令有多种可能性时,Stockfish 引擎还会为您提供建议。 你可以使用命令 暗示 国际象棋引擎会给你下一步行动的提示。

您还可以使用 背部 这将收回您的最后一步,这将帮助您根据您的看法作弊或修改游戏。

结束语

如果您发现棋盘非常小,您可以将其放大并使用不同的字体。 Stockfish 和 chs 都是开源的,你很容易弄脏你的手,并为你自己的项目(如果你愿意)弄乱代码。

如果您想试用旧的 GNU Chess,可以使用以下命令安装它。

sudo apt install gnuchess

在评论部分让我知道你的游戏进展如何:)