用 PostScript 编写的国际象棋引擎

主要观点:介绍了 PSChess 的制作及内部工作原理等相关内容。
关键信息

  • GitHub 仓库为https://github.com/nst/PSChess
  • 有关于在打印机上执行任意代码、在 PostScript 中实现象棋引擎等动机。
  • 可在 GhostScript 中使用特定参数使用 PSChess,输出在控制台和 PDF 文档中。
  • 项目分为五个步骤,目前前四个步骤已完成,第五步也已完成并可在打印机上运行。
  • 代码结构分为三个文件及三个消费者,还有软件层图展示。
  • 棋盘用 PostScript 字符串表示,通过putinterval指令移动棋子,游戏状态用字典保存。
  • 棋子移动用偏移编码,有相应的移动过程实现捕获规则等。
  • 有文档用户界面,每次移动后会显示页面,在实际打印机上黑方移动后打印页面。
  • 所有棋子以向量格式在 20x20 网格中绘制。
  • 实现了 Tomasz Michniewski 的简化评估函数,计算机下棋时使用 min-max 算法。
  • 运行tests_visual.ps文件可进行视觉测试,输出所有可能移动的 PDF 文件。
    重要细节
  • 2023 年 3 月的概述,2024 年 11 月 7 日有 2 分钟视频,2025 年 3 月 4 日完成第五步等时间节点。
  • 不同操作的具体参数和代码示例,如在 GhostView 中使用的步骤等。
  • 评估函数中各棋子的内在值和位置值等具体数值。
阅读 11
0 条评论