【v1.1.0】【C语言/开源】命令行中国象棋

某年某月某日,某人想着C语言不复习白不复习,便开创了一个新项目——

《??》是由某人自研的一款棋类游戏。你将在游戏中探索一个被称作「楚汉争霸」的幻想世界。在这广阔的世界中,你可以踏遍两国,邂逅性格各异、能力独特的同伴,与他们一同对抗强敌,踏上寻回王座之路;也可以不带目的地漫游,沉浸在充满生机的世界里,让好奇心驱使自己发掘各个角落的奥秘……直到你与分离的王座重聚,在终点见证一切事物的沉淀。

一、更新日志

v1.0.0:寻路提示版 2023.02.25

  1. 初步实现了基本的寻路逻辑
  2. 实现了棋子的移动和胜负判断
    v1.0.0

v1.1.0:悔棋版 2023.03.02

  • 初步实现了悔棋功能 (重要)
  • 每一次移动都会产生一条指令记录(init_pos, dest_pos, remove_block)存储在棋盘内的二维数组中
  • 在选择阶段输入w即可执行一次撤销,一次撤销回退记录中最迟的两条指令
  • 实现了一次大重构
    v1.1.0

二、设计思路

在基础版完成后,经过梳理和重构,使软件架构基本符合下图。

  • 第一层:基本数据结构
    • 棋子
    • 行动
  • 第二层:辅助型数据结构
    • 棋子栈
    • 行动栈
  • 第三层:组合数据结构、数据核心
    • 棋盘
  • 第四层:逻辑核心、人机交互
    • 逻辑判断模块
    • 操作模块
    • 消息管理模块

设计思路

三、展望

  • 将在v1.2.0前推出连续多步悔棋、并进一步优化人机交互体验;
    • 在v1.2.0正式发布时,将做出实用的人机对抗模式,即完成人工象棋ai并部署至游戏中
  • 可能将在v1.3.0推出基于强化学习模型AlphaZero的象棋ai
  • 之后会用js重构游戏逻辑、并使用html部署前端界面

四、项目

有兴趣的朋友可以与我私信,并参与到项目开发之中,还请多多关照哦

Github:
123sleaf-123/ChineseChess-

猜你喜欢

转载自blog.csdn.net/weixin_50750441/article/details/129293197