网学网为广大网友收集整理了,VC++游戏设计|五子棋的开发与实现,希望对大家有所帮助!
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn |
Abstract Wuziqi game with excellent artificial intelligence by the vast number of players who, for the initial research network organization programming enthusiasts, Wuziqi procedures for the preparation of the rules simple and popular, but it requires programmer to Wuziqi game has a deep understanding of the rules. Other thoughtful consideration they treat their Wuziqi game procedures more wisdom.
Key Words : Wuziqi, VC++, object-oriented
1.1.2五子棋游戏的规则 (一)棋盘,棋子 1.棋盘为十五路,正中一点为“天元”,周围四点为小星。 2.棋子分黑白两色,黑子113枚,白子112枚,共225枚。 (二)比赛规则 1.黑先白后,从天元开始落子。然后执白棋的一方在黑棋周围的交叉点上落子,白第二着棋应布在自己河界的一侧。此后,执黑方在以天元为中心的25个交叉点的范围内布盘面的第三着棋。 2.最先在横向,竖向,斜向形成连续的相同色五个棋子的一方为胜。 3.黑棋禁手判负,白棋无禁手。黑棋禁手包括“三三”,“四四”,“长连”。黑方只能“四三”胜。所谓禁手,是指黑方一子落下同时形成两个或两个以上的活三,冲四及长连禁手。长连禁手是指黑方形成六个或六个以上的连续棋子。 4.双方均不能形成五连为和棋。 5.对局中拔子,中途退场均判为负。 6.五连与禁手同时形成,先五为胜。因黑方已形成五连,故禁手失效,黑方胜。 7.黑方禁手形成时,白方应立即指出禁手点,黑方即负。若白方继续应子,则黑方禁手不成立。 8.高段位职业比赛的特殊规定:“三手可交换”:黑下完第2手,执白者可提出交换。即执白方变为执黑方。“五手两打法”:执黑下第五手时,必须下两手棋,执白者从这两手棋中任选一步。 本文所论述的联机五子棋系统就是依照这种方式进行的。 1.1.3开发系统的几点建议 (1)、开发系统不必贪大求全,力争简单实用。应从大处着眼,小处着手,循序渐进,逐步完善。 (2)、对开发过程中的各种文档应当注意保存。这是系统开发所要求的必要条件。 (3)、尽可能取得对程序设计重视,使用简化的程序代码保证整个系统开发的清晰。 1.2相关技术介绍 1.2.1结构化生命周期法简介 结构化生命周期法是一种传统的系统开发方法,其基本思想是把整个系统开发过程分成若干个阶段,每个阶段进行若干活动,每项活动应用一系列标准、规范、方法和技术,完成一个或多个任务,形成符合给定规范的产品。 采用结构化生命周期法来开发系统时,应遵循的主要原则: (1)、用户参与的原则 (2)、“先逻辑后物理”的原则 (3)、“自顶向下”的原则 (4)、工作成果描述(主要指文档)标准化的原则 其具体开发步骤可分为以下四步: a系统规划 b系统开发 c系统的运行及维护 d系统评价 其中系统开发又分为以下四个步骤: (a)系统分析 .系统初步调查 .系统可行性研究 .现行系统的详细调查 .新系统逻辑方案的提出 (b)系统设计 .系统总体结构设计 系统总体功能设计 .系统总体物理结构设计 系统详细设计 .代码设计 .输入输出设计 (c)系统实施 .程序设计 系统测试
第二章 系 统 目 标 五子棋联机游戏系统主要致力于为提供联机双方进行联机游戏联络,以及提供准确可靠用户操作动作的信息。具体目标如下: ● 选择连接到服务器的客户端进行记录。 ● 记录客户机的键盘动作。 ● 分析是否已经取得胜利。 第三章 系 统 需 求 分 析 3.1系统需求 (1)满足记录客户机的游戏动作的基本要求。 (2)满足连接数据到客户端的基本要求。 (3)满足服务器实时获得客户端游戏状态的基本要求。 (4)在服务器端分析双方是否胜利。 3.2功能需求 基于系统需求分析,该系统需要实现以下基本功能: (1) 动作记录:当客户端程序启动的时候,程序自动加载键盘钩子,对客户端的网络的连接和操作进行记录,并提示给游戏双方。 (2) 对连接到客户端数据的基本要求:能够将要发送的聊天记录发送至对方手上,能够完成数据的连接。。 (3) 实时显示:当从游戏一方将数据传入另一方系统中,将五子棋的表格进行重新的刷新,和更改。 (4) 通过控制鼠标点击五子棋表格:进入控制模式,加载鼠标钩子,截取鼠标的按件动作,并把该动作发送到游戏另一方,并判断是否胜利。 第六章设 计 总 结 由于以前对Visual C++ 6.0的接触并不是很多,对它的开发环境不是非常了解,所以在程序的开发过程中遇到了很多的困难,但经过同学和指导老师的帮助,一一化解了困难,并从中学到了很多编程方面的知识。但是由于经验方面的原因,以及对库存方面的操作流程了解不足,该系统还有许多不尽如人意的地方和功能上的缺陷,这些都有待于进一步改善。 第七章 谢辞 此毕业设计为时两个月,由于时间和能力的限制,难免出现许多不足之处,敬请各位老师批评指正。但是这一段的实践和学习,大大提高了我解决实际问题的能力,确实使我收获很多,提高很大,想信对我以后的学习生活都会大有裨益。 在此,首先要感谢我的指导老师***老师不辞劳苦的知道,使我们得以顺利完成毕业设计;其次,系里的其他的一些老师和机房的老师在毕业设计的过程中给予我们的大力支持,我从这些老师那里获益很多,在此一并表示感谢。最后,要感谢和我同组做毕业设计的同学,这份毕业设计的成果是大家共同努力的结果。谢谢大家。 参考文献 [1] 伍俊良.《Visual C++ 课程设计与系统开发案例》.清华大学出版社 [2] 杨小平.《Visual C++ 项目案例导航》.科学出版社 [3] 邓宗明,张晓竞.《Visual C++ 编程实用技术与案例》.清华大学出版社 [4] 郑阿奇.《Visual C++ 实用教程》.电子工业出版社 [5] 王艳平,张越 《WINDOWS网络与通信程序设计》。人民邮电出版社 [6] 郑人杰,殷人昆,陶永雷.实用软件工程.清华大学出版社.1997.4 .
|
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT |
本文选自计算机毕业设计http://myeducs.cn |