当前位置:首页 > 黑白棋游戏设计与开发毕业设计
黑白棋游戏设计与开发毕业设计
毕业论文任务书
论 文 题 目 毕业年份 学生姓名 指导教师 系、专业、班级 学 号 职 称 黑白棋游戏设计与开发 一、内容概要 随着世界经济的快速发展和计算机的日益普及,计算机游戏逐渐走进了人们的生活,成为大多数人娱乐休闲的主要方式。按照联网与否,计算机游戏可以分为单击游戏和网络游戏,单机游戏,指仅使用一台计算机或者其它游戏平台就可以独立运行的电子游戏。区别于网络游戏,它不需要专门的服务器便可以正常运转游戏,部分也可以通过局域网或者战网进行多人对战。游戏玩家不连入互联网即可在自己的电脑上玩的游戏,模式多为人机对战。因为其不能连入互联网而互动性稍显差了一些,但可以通过局域网的连接进行多人对战,而不需要专门服务器也可以正常运行的游戏。 本次毕业设计是基于c++语言,在vs2005平台上进行的单机版游戏开发,通过本次游戏的开发,有益于进一步掌握对c++语言的应用,加深对计算机游戏的制作理念的理解,对我今后参与更加复杂的游戏项目积累宝贵的经验! 黑白棋(Reversi、Othello),也叫苹果棋,翻转棋,是一个经典的策略性游戏。黑白棋是19世纪末英国人发明的。直到上个世纪70年代一个日本人将其发展,借用莎士比亚名剧奥赛罗(othello)为这个游戏重新命名,也就是现在大家玩的黑白棋。为何借用莎士比亚名剧呢?是因为奥赛罗是莎士比亚一个名剧的男主角。他是一个黑人,妻子是白人,因受小人挑拨,怀疑妻子不忠一直情海翻波,最终亲手把妻子杀死。后来真相大白,奥赛罗懊悔不已,自杀而死。黑白棋就是借用这个黑人白人斗争的故事而命名。 二、游戏规则 1、游戏元素 棋盘:本游戏使用8x8的棋盘,每次落子只能放在棋盘的格子中。 棋子:本游戏使用黑白两种棋子。执黑者先行,在每次游戏开始时,由玩家进行选择,若玩家选择执黑,则计算机选择执白。反之相似! 2、游戏玩法 (1)游戏的胜负:本游戏使用8x8的棋盘,由两人执黑子和白子轮流下棋,最后子多方为胜方。 (2)落子的要求:轮到一方下棋时,必须把棋下在与对方棋子相邻的空位上,要求所下的棋子和原有的已方棋子夹住对方的至少一个棋子(横竖斜夹均可),然后把被夹住的子变成己方的颜色(也叫吃子)。下棋过程中,任何棋子既不会从棋盘上拿走,也不会从一个格子移到另一个格子。 (3)取胜的技巧:一般说来,下棋过程中,你必须尽量削减对手的行动力,同时增加自己的行动力,这种策略我们称之为行动力原则(或行动力战术)。当一方达到或接近这个目标时,我们就称该棋手控制了棋局。另外,这个战术的目的是迫使对方下坏棋,如果对方虽然可选位置很少,但每一步却总有好棋,那战术目的就没有达成。记住,你必须让对方完全无好棋可下。
1
黑白棋规则规定只能在对方棋子相邻的空位下棋,这就可以推出另一个原则。对方棋子边上的空位越多,你下棋的选择也就越多,换句话说,你的行动力就越强;相反,如果你棋子边上的空位越少,对方可下的位置也就越少。我们把相邻位置上有空位的子称为外子,反之称为内子,连在一起的外子称为前线或墙。下棋时要尽量减少自己的外子。 三、文献查阅指引 [1] 王浩.游戏开发经典案例详解.北京:清华大学出版社.2010:399-408. [2] Stanley B. Lippman著.李师贤译.c++ Primer.北京.人民邮电出版社.2010. [3] 詹红霞 侯思颖 陶永红等著.Visual C++ 程序设计教程.北京:清华大学出版社.2007. 指导教师签名: 年 月 日
教研室意见 负责人签名: 年 月 日 系审核意见 负责人签名: 年 月 日
2
毕业论文开题报告
论 文 题 目 毕业年份 学生姓名 系院 学号 黑白棋游戏设计与开发 专业、班级 指导教师 3
一、研究的价值和意义 随着网络技术的日新月异和计算机的普及,当今的计算机技术也走上了平民化和娱乐化的时代,尤其是游戏产业的发展已经成为信息产业中发展势头最猛烈最具前景的一个分支。 windows是一款优秀免费的操作系统,目前使用用户持续增加。windows下的游戏目前非常多,未来几年内,windows游戏产业必将持续发展。 人工智能是一门极富挑战性的科学,随着计算机处理速度的飞速提高,人们很早就提出了疑问:计算机是否会超越人类? 结合上诉三者与一体,我决定用C++语言开发一款小游戏,游戏内容来自网络上日渐流行的一种智力游戏‘黑白棋’。黑白棋是一种在网络上日渐流行的小游戏,本身的人机对战又需要考虑到人工智能。 因此,我希望把平时界面简单、选项复杂的游戏,在windows里面做成漂亮的、简单的游戏程序,以给windows玩家一个新的选择。 同时,利用本课题设计的机会可以熟悉c++语言的各种特性,锻炼程序设计的实践能力,熟悉c++语言windows下的开发环境,熟悉前沿的windows图形用户界面的开发,以及巩固数据结构和算法等课程的学习成果,并深入理解数据结构和算法在程序设计中的核心地位。 最后,借助开发本次游戏的过程,可以熟悉人工智能的程序实现,有助于掌握棋类所需人工智能的常见算法,随着游戏产业的日益壮大,人工智能在游戏中的突出表现,人工智能越来越得到世人的重视。在这次的人机对战算法中,通过一定的算法,实现电脑的下棋及走棋运作,加深了对人工智能工作原理的了解。 4
共分享92篇相关文档