《毕业设计(论文)-中国象棋网上对弈系统.docx》由会员分享,可在线阅读,更多相关《毕业设计(论文)-中国象棋网上对弈系统.docx(27页珍藏版)》请在第一文库网上搜索。
1、中国象棋网上对弈系统摘要随着信息技术的发展,人民生活水平的不断提高。联网游戏作为一种娱乐手段,正以其独特的魅力吸引着越来越多的玩家。为了满足广大象棋爱好者也可以享受到网络所带来的便利,本设计在当前局域网条件下实现了中国象棋的网络对战。鉴于局域网的特点和游戏本身的要求,本设计采用两层C/S架构来实现相互之间的通信。它主要包含以下几大模块:网络通信模块,图像绘制模块和规则设置模块。网络通信模块使得玩家可以方便的迅速建立起网络连接,从而实现联机对弈和聊天功能;图像绘制模块实现棋盘更新以及棋子动态表示等功能;规则设置模块用于约束玩家的棋步。电脑游戏是计算机应用领域的一个重要主题,而当前网上最热门的休闲
2、对战类游戏当属棋牌游戏。通过对象棋的数据结构,相关算法与网络联机,以及对网络对战平台系统的分析,设计成一套基于VC+平台的棋牌类对战系统。关键词:网络通信;联机对弈;图像绘制;消息响应CHINESECHESSON1INEGAMESYSTEMAbstractWiththedeve1opmentofinformationtechno1ogy,peop1esstandardof1ivinghaveimprovedconstant1y.On-1inegameasameansofentertainmenthasauniquecharmtoattractmoreandmorep1ayers.Tomeetc
3、hess1overs,thisdesignhasrea1izedtheCha11engesofChinese-chessbetweenp1ayersunderthecurrent1ANenvironment.Inviewofthecharacteristicsof1oca1areanetworksandtherequirementsofthegameitse1f,thedesignusesatwo-tierC/Sstructuretoachievemutua1communication.Itcontainsthefo11owingmajormodu1es:thenetworkcommunica
4、tionmodu1e,imagerenderingmodu1eandtheru1essetupmodu1e.NetworkCommunicationModu1ea11owsgamerscanquick1ysetupaconvenientnetworkconnectioninordertoachieveanon1inegameandchatfunction;imagerenderingmodu1etoupdatetheboardaswe11asfunctiona1pieces,suchasthedynamicthat;ru1esbindingsettingsmodu1eforstep-by-st
5、epp1ayer,sgame.Computergamesisthefie1dofcomputerapp1icationsasanimportantsubject,andpresentthemostpopu1arcasua1on1inegameswaramongboardgames.Bythedatastructure,a1gorithmsandnetworkon1ine,aswe11asthenetworkp1atformforsystematicana1ysisofthewar,designedasetofVC+p1atformbasedonthecategoryCardbatt1esyst
6、em.Keywords:NetworkCommunication;On1inegame;ImageRendering;MessageResponse目录摘要错误!未定义书签。Ahstrnct错误!未定义书签。1绪论错误!未定义书签。1.1 课题背景错误!未定义书签。1.2 课题发展概况错误!未定义书签。1.3 本文主要工作错误!未定义书签。2系统介绍错误!未定义书签。2.1 系统简介错误!未定义书签。2.2 系统构成错误!未定义书签。2.3 相关技术错误!未定义书签。231点对点通信错误!未定义书签。2.3.2 TCP/IP协议错误!未定义书签。2.3.3 UPD基础错误!未定义书签。2.3.
7、4 屏幕作图与用户交互错误!未定义书签。2.3.5 远程控制原理错误!未定义书签。3设计与实现错误!未定义书签。3.1 数据结构错误!未定义书签。3.1.1 棋盘错误!未定义书签。3.1.2 棋子信息数组错误!未定义书签。3.1.3 变量与函数错误!未定义书签。3.2 图像绘制错误!未定义书签。3.2.1 主窗口错误!未定义书签。3.2.2 棋盘的绘制错误!未定义书签。3.2.3 棋子的绘制及初始化错误!未定义书签。3.2.4 动态显示错误!未定义书签。3.2.5 回看功能错误!未定义书签。3.3 规则设置错误!未定义书签。3.3.1 棋子规则错误!未定义书签。3.3.2 规则算法错误!未定义
8、书签。3.4 网络通信错误!未定义书签。3.4.1 CCOM类错误!未定义书签。3.4.2 数据代码错误!未定义书签。3.4.3 数据更新错误!未定义书签。3.4.4聊天功能错误!未定义书签。3.5 棋子操作错误!未定义书签。3.5.1 获取点击错误!未定义书签。3.5.2 走棋判断3.5.3 光标变化4总结与展望.4.1 总结4.2 展望参考文献致谢错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签1绪论11课题背景电脑游戏就是以计算机为操作平台,通过人机互动形式实现的能够体现当前计算机技术较高水平的一种新形式的娱乐方式。电脑游戏
9、是必须依托于计算机操作平台的,不能在计算机上运行的游戏,肯定不会属于电脑游戏的范畴。至于现在大量出现的游戏机模拟器,原则上来讲,还是属于非电脑游戏的。游戏必须具有高度的互动性。所谓互动性是指游戏者所进行的操作,在一定程度及一定范围上对计算机上运行的游戏有影响,游戏的进展过程根据游戏者的操作而发生改变,而且计算机能够根据游戏者的行为做出合理性的反应,从而促使游戏者对计算机也做出回应,进行人机交流。游戏在游戏者与计算机的交替推动下向前进行。电脑游戏比较能够体现目前计算机技术的较高水平。一般当计算机更新换代的同时,计算机游戏也会相应的发生较大的变更。电脑游戏按类型可分为:单机游戏、网络游戏、f1as
10、h小游戏、电子竞技等。按内容可分为:即时战略类、角色扮演类、模拟经营类、冒险动作类,棋牌休闲类等。本系统属于网络棋牌休闲类游戏。1.2 课题发展概况在人们逐步进入信息时代后,电脑游戏使得人生变成了真正的游戏。在传统中国社会中,文化、教育与知识是神圣的,庄严的,是天地君亲师。这种传统的体制,使人们在接受教育的过程中,就受到了束缚。如果谁把这种神圣的东西与游戏连在一起,就会被认为是对圣贤的一种亵渎。而现在,网络技术和数字技术把文化、教育和知识都变成了娱乐变成了游戏,将它们从神坛上请下来,使它们变成了大众的、平民的东西,可爱的、容易接受的东西。作为融合高科技的文化艺术产品,电脑除给人们的生活带来联想
11、之外,它更能给使用者带来更多现实中不能拥有的体验,这正是当今世上被看好的体验型经济的典型代表。随着人民生活水平的提高,人们的生活模式和思想模式都发生着变化。电脑游戏业经过多年发展,跌跌撞撞地走过来。应该看到人们在电脑和互联网带来的时代标志性变化中,电脑游戏市场的逐步完善与巨大的潜在能量,作为一种现代娱乐形式,其正在世界范围内创造巨大的市场空间和受众群体。传统的单机游戏曾风靡一时,游戏爱好者在简单的打斗中获得了虚幻世界的满足,但过了一段时间后,单机游戏的模式由于不能满足人们相互交流的愿望以及其内容的简单重复,面对电脑的独孤求败总让人有一种自以为是而又百无聊赖的感觉。逐渐失去了对用户的吸引力,游戏
12、爱好者期待着新的游戏模式出现。于是,电脑游戏开始朝着网络游戏发展,随着网络建设快速发展,人们生活方式随着时代发展而改变,网络游戏迅速取代单机游戏成为了游戏玩家新的宠儿。1.3 本文主要工作主要工作内容如下:1 .设计程序良好的用户界面,尽可能真实模拟象棋环境,双方对局过程中所显示的界面应一致。2 .基于TCP/IP协议,结合象棋对弈的特点,设计一套切实可行网络实时数据通信协议。3 .制定棋盘及状态数据结构,方便实时通信及屏幕作图及与用户的交互。4 .制定出详细的棋子操作规则。2系统介绍2.1 系统简介中国象棋,古代叫“象戏”是一种由两人轮流走子,以“将死”或“困毙”对方将(帅)为胜的一种棋类运
13、动。它不仅能丰富文化生活,陶冶情操,更有助于开发智力,启迪思维,锻炼辨证分析能力和培养顽强的意志。象棋是中华民族的传统文化,不仅在国内深受群众喜爱,而且流传国外。本系统为中国象棋网上对弈系统,其以网络通信原理结合中国象棋的规则设计完成,是一款能够实现局域网内双人联机对弈的电脑游戏程序,使用MicrosoftVisua1C+6.0开发,运行与WindoWS平台。2.2 系统构成中国象棋网上对弈系统是主要由:数据结构、图像绘制、规则设置、网络通信、棋子操作五部分构成。软件本身即可以作为服务器端,又可以作为客户端,双方建立连接后即可以进行象棋对弈。2.3 相关技术2.3.1 点对点通信从OS1参考模
14、型的应用层来看,可认为网络是由工作站和服务器组成的,但从传输层和网络层的角度看,工作站和服务器没有本质的区别,它们都是连接到网络上的一台机器,都可以用网络地址或名称来代替。它们之间的通信就是所谓的点对点通信,也叫对等通信。在局域网上,点点通信意味着两个工作站可以直接对话而不用经过文件服务器中转。通信的基础是套接口(Socket),一个套接口是通讯的一端。SoCket通常也称作套接字”,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过”套接字”向网络发出请求或者应答网络请求。SOCket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,否则是没有办法建立联系并相
15、互通信的。正如打电话之前,双方必须各自拥有一台电话机一样。在网间网内部,每一个SoCket用一个半相关描述:(协议,本地地址,本地端口)。一个完整的SOCket有一个本地唯一的SOCket号,由系统分配。最重要的是,socket是面向客户/服务器模型而设计的,针对客户和服务器程序提供不同的socket系统调用。客户随机申请一个SOCket(相当于一个想打电话的人可以在任何一台入网电话上拨号呼叫),系统为之分配一个socket号;服务器拥有全局公认的SoCket,任何客户都可以向它发出连接请求和信息请求(相当于一个被呼叫的电话拥有一个呼叫方知道的电话号码)。socket利用客户/服务器模式巧妙地解决了进程之间建立通信连接的问题。服务器socket半相关为全局所公认非常重要。假如通信双方没有任何一方的SoCket固定,就好比打电话的双方彼此不知道对方的电话号码,要通话是不可能在这一端上你可以找到与其对应的一个名字。一个正在被使用的套接口都有它的类型和与其相关的进程。套接口存在于通讯域中。通讯域是为了处理一般的线程通过套接口通讯而引进的一种抽象概念。套接口通常和同一个域中的套接口交换数据(数据交换也可能穿越域的界限,但这时一定要执行某种解释程序)。WindoWSSOCketS规范支持单一的通讯域,即Intemet域。各种进程使用这个域互相之间用Intemet协议族来进