在这个毕业设计中,我选择中国象棋游戏的设计与实现能让用户进行人机博弈。人工智能是综合性很强的一门边缘学科,它的中心任务是研究如何使计算机去做那些过去只能靠人的智力才能做的工作。因此,对游戏开发过程中的人工智能技术的研究自然也就成了业界的一个热门研究方向。
事实上,个人计算机软件市场的大约80%销售份额是来自游戏软件。棋牌游戏属于休闲类游戏,相对于角色扮演类游戏和即时战略类游戏等其它游戏,具有上手快、游戏时间短的特点,更利于用户进行放松休闲,为人们所喜爱,特别是棋类游戏,方便、快捷、操作简单,在休闲娱乐中占主要位置。作为中华民族悠久文化的代表之一,中国象棋不仅源远流长,而且基础广泛,作为一项智力运动,中国象棋开始走向世界。
1。2 系统开发工具简介
Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。
(1)C# 4。0中的动态类型和动态编程;
(2)多显示器支持;
(3)使用Visual Studio 2010的特性支持TDD;
(4)支持Office ;
(5)Quick Search特性;
1。3 开发环境简介
(1) 硬件平台:
处理器类型:Intel (R) Core (TM) i3 - 2070M CPU
处理器速度:2。53 GHz
内存:2。00 GB
(2) 软件平台:
操作系统:Windows 7
开发工具:Visual Studio 2010
开发语言:C#
运行平台:Windows 7
2。系统的需求分析
2。1 设计的概要分析论文网
本设计是用C#语言,在软件Visual Studio 2010上进行的完成的,实现的功能有如下方面:
(1)新开一局: 即开始一局新的象棋游戏;
(2)重新开始:即结束当局游戏,新开一局新游戏;
(3)计时:记录整个棋局的时间;
(4)悔棋:将棋子返回至上一轮所在位置;
(5)残局博弈:设置一些有难度的残局玩家可以接着玩;
(6)切换背景音乐:提供三种音乐供玩家切换;
(7)提示:提示当前为哪方走棋、赢棋提示。
2。2系统功能结构图
图2。2。1为本程序的系统功能结构图。
2。2。1 系统功能结构图
2。3 系统流程图
程序的流程图如图2。3所示。
2。3 流程图
2。4 设计的简要说明
在本游戏中,分成红、蓝两组,每组各有16个棋子,棋子共计32个。
棋子代表着七种身份,分别有:将(帅)、士、象、车、马、炮、卒(兵),其中兵种的分类有:
"蓝兵","蓝炮","蓝車","蓝马","蓝相","蓝士","蓝将"
"红卒","红炮","红車","红马","红象","红仕","红帅”文献综述
象棋博弈时,由执蓝棋的一方先走,双方轮流各走一着,直至分出胜负。轮到走棋的一方,将某个棋子从一个交叉点走到另一个交叉点,或者吃掉对方的棋子而占领其交叉点,都算走一着。双方各走一着,称为一个回合。如果有一方的主帅被对方吃了,就算那一方输。若开始一局新战役,如图2。1:
2。4 棋盘摆布界面
3。象棋算法的设计与实现
3。1棋局数据结构
在游戏棋盘的设置,我采用的是用了个最基本和简单的棋盘数组,用一个9*10的数组来把棋盘上的信息存储起来,棋子的所有的信息都跟数组每个元素存储的内容有关。