黑白棋游戏设计与开发毕业设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

黑白棋游戏设计与开发毕业设计

毕业论文任务书

毕业论文开题报告

黑白棋游戏设计

摘要:本次毕业设计是基于c++语言,在vs2005平台上进行的单机版游戏开发,通过本次游戏的开发,有益于进一步掌握对c++语言的应用,加深对计算机游戏的制作理念的理解,对我今后参与更加复杂的游戏项目积累宝贵的经验!

黑白棋(Reversi、Othello),也叫苹果棋,翻转棋,是一个经典的策略性游戏。黑白棋是19世纪末英国人发明的。直到上个世纪70年代一个日本人将其发展,借用莎士比亚名剧奥赛罗(Othello)为这个游戏重新命名,也就是现在大家玩的黑白棋。为何借用莎士比亚名剧呢?是因为奥赛罗是莎士比亚一个名剧的男主角。他是一个黑人,妻子是白人,因受小人挑拨,怀疑妻子不忠一直情海翻波,最终亲手把妻子杀死。后来真相大白,奥赛罗懊悔不已,自杀而死。黑白棋就是借用这个黑人白人斗争的故事而命名。

关键词:c++编程;windows编程;MFC技术

论文目录

第一章引言 (1)

1.1 c++简介 (1)

1.2 window编程介绍 (1)

1.3 Visual studio开发平台简介 (1)

第二章毕业业设计的目的及要求 (2)

2.1毕业设计的目的 (2)

2.2毕业设计的开发环境 (2)

2.3毕业设计所需的知识 (2)

2.4毕业设计要求 (2)

第三章毕业设计的容 (3)

3.1程序功能介绍 (3)

3.2程序整体设计说明 (4)

3.3程序源代码及注释 (7)

第四章结束语 (23)

第一章引言

1.1 c++语言介绍

C++这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的,支持多重编程式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。

1.2 windows编程介绍

Windows是微软推出的图形界面的操作系统,有windows2000、XP、Vista、win7等各种版本。是一种抢占式多任务的操作系统,是PC上的主流操作系统,在PC操作市场占绝大多数网络游戏的客户端、服务器端都可在上运行。

Windows程序由一个或多个的窗口组成,通常是多个窗口。窗口一般是一个矩形的区域,由windows对窗口进行统一管理。任何的文字、图形都写窗口中显示。

windows 系统设计为事件驱动的操作系统,事件在windows定义为消息,消息为应用程序和应用程序间、应用程序和操作系统间提供了信息传递的渠道。消息队列,由Windows维持。

1.3 Visual studio开发平台简介

Visual Studio是微软公司推出的开发环境,visual Studio可以用来应用创建windows平台下的windows程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。目前已经开发到10.0版本,也就是Visual Studio 2010.我们本次毕业设计的开发平台就是其中的Visual Studio 2005。

第二章毕业设计的目的与要求

2.1 毕业设计的目的

通过对黑白棋游戏规则的研究,做出一款适合在windows系统下进行人机对弈的黑白棋程序出来,是本课题的研究总目标。

具体需要研究一下几方面:

1.黑白棋游戏规则;

2.黑白棋游戏技巧;

3.友好的用户界面;

4.单人模式的人工智能算法;

5.黑白棋游戏的常用功能(难度选择)。

2.2 毕业设计的开发环境

开发语:c++语言;

开发平台:windows操作系统中的vs2005平台。

2.3 毕业设计所需的知识

熟悉c++语言及vs2005开发平台。

2.4 毕业设计要求

1. 分析毕业设计题目的要求

2. 写出详细设计说明

3. 编写程序代码,调试程序使其能正确运行

4. 设计完成的软件要便于操作和使用。

第三章毕业设计的容

3.1程序功能介绍

1.显示游戏的界面功能

游戏界面上包括游戏等级选择、重新开始、游戏帮助的控件对游戏进行相应的设置。

2.接受鼠标输入功能

能够接受玩家的鼠标输入功能,把棋子放入指定的位置。

3.根据规则翻转相应的棋子

无论是电脑或是玩家在棋盘中落下棋子后,能够根据游戏的规则,把横向、纵向及对角直线上的棋子全部翻转过来,变成最后落下棋子的颜色,并对棋子数量进行增减。

4.游戏胜负判断功能

双方都没有棋子可下时棋局结束,以棋子数目来计算胜负,棋子多的一方获胜。在棋盘还没下满时,如果一方的棋子应经被对方吃光,则棋局结束。将对手棋子吃光的一方获胜。

5.实现人机对战模式

支持人工智能,根据游戏等级的不同,进行不同的算法深度搜索,找出最合理的位置进行落子操作。

6.人工智能的等级设置

能够指定当前电脑人工智能的等级。根据不同的等级,其算法搜索深度不同。

7.游戏提供帮助说明

在游戏界面中,提供一个控件。以方便对本游戏不了解的玩家对游戏进行操作和使用。

黑白棋功能架构:

3.2程序整体设计说明

1.设计思路

本游戏设计是采用MFC对话框模式进行设计开发。所以从此游戏设计采用模块化思想,即程序整体设计分为五个模块来实现。

主界面对话框类:主要负责主界面及棋盘、棋子的显示及棋盘窗口对象的创建和调用。

棋盘窗口类:主要负责接受玩家鼠标输入的棋子位置及棋子翻转动画等处

相关文档
最新文档