java五子棋开题报告.doc_第1页
java五子棋开题报告.doc_第2页
java五子棋开题报告.doc_第3页
java五子棋开题报告.doc_第4页
java五子棋开题报告.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、 选题的依据及意义:伴随着计算机技术和网络技术的发展,1997年,世界第一款图形化网络游戏网络创世纪问世。挟计算机与网络技术之高精尖,融传统视听与数码娱乐之精华,集娱乐性、竞技性、仿真性、互动性于一体,网络创世纪迅速风靡全球,备受青睐。 自此拉开了网络游戏的序幕。之后随着现代信息技术的迅猛发展,网络技术在教育中的应用日益广泛和深入,特别是Internet与校园网的接轨,为给广大爱好者提供一个方便的学习与交流平台,开展网络五子棋游戏的设计和实现与实践研究有着十分重要的意义。五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“连珠”,英译为“Renju”,英文称之为“Gobang”或“FIR”(Five in a Row的缩写),亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。大约在南北朝时期随围棋一起先后传入朝鲜、日本等地。据日本史料记载,五子棋先由中国传到高丽(朝鲜),再由高丽传到日本。当时主要在皇宫和贵族大家庭中流行。到元禄末期,在日本京都,这一当时被称作“五目碰”、“五格”的棋戏在民间开始盛行起来,无论武士、僧侣、农夫等都能参与这一活动。到日本明治32年(公元1899年),经过公开征名,“连珠”这一名称才被正式确定下来。目前,连珠五子棋这一棋类运动已迅速在国际上发展起来。五子棋不像网络上有的游戏只是一味的机械的消磨时间,它是必须动用脑力的游戏,所以五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征 “ 短、平、快 ” ,容易上手,老少皆宜,而且趣味横生,引人入胜,同时又有古典哲学的高深学问 “ 阴阳易理 ” ;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有 “ 场 ” 的概念,亦有 “ 点 ” 的连接。它是中西文化的交流点,是古今哲理的结晶。二、 国内外研究现状及发展趋势: 目前,连珠五子棋这一棋类运动已迅速在国际上发展起来。现在,有40多个国家和地区己开展了五子棋活动。许多国家的人对五子棋都有不同的爱称,例如韩国人把五子棋称为“情侣棋”,言下之意是说情人之间下五子棋有利于增加情感的交流;欧洲人称之为“绅士棋”,喻棋手下五子棋的君子风度胜似绅士:美洲人称之为“商业棋”,意思可能是边下五子棋边谈生意,是商业贸易之桥;日本人则称之为“中老年棋”,表示五子棋适合成熟的中老年的生理特点和思维方式。不同语言、地区的人们都可以借助五子棋这一简单而又深奥的棋艺进行交流、比赛,以增进友谊。1998年8月8日,国际连珠联盟(RIF)由日本、俄罗斯、瑞典、亚美尼亚、阿塞拜疆、爱沙尼亚、法国、拉脱维亚、白俄罗斯九个成员国在瑞典宣告成立。以后有澳大利亚、保加利亚、加拿大、克罗地区、丹麦、芬兰、以色列、意大利等国家以及我国台湾地区相继与之联系。第一届五子棋(连珠)世界锦标赛于1989年8月2日至6日,在日本京都举行,日本夺得冠军,此后五子棋的世界锦标赛每两年举办一次。其申办竞争也十分激烈。日本目前拥有自己的五子棋职业棋手,并且对连珠技术的研究也相当昔遍和全面。就水平而言,目前日本最强,研究也最深,欧洲人则紧迫其后。我国是从20世纪90年代引进五子棋世界流行规则的,此后的十多年的时间里,五子棋在民间迅速普及。北京是五子棋发展最早也最普及的地区,1992年就成立了我国第一个五子棋民间组织京都五子棋社。在北京的带动下,其他地区也先后成立了五子棋组织,从此积极的投身于这项益智的游戏中,2004年成立中国围棋协会五子棋分会,它属于中国五子棋界的领导机构,并且先后在部分地区组织俱乐部,组织比赛,让越来越多的人参与和喜爱这项活动,但是中国还是没有专业的棋手,在这方面的相关规则和体系还不完善,能够真正弄懂的人还是很少,所以中国在五子棋这方面的发展空间还是很大的,这就需要我们不断的努力探索和研究才能把五子棋发展的更加壮大。那么现在通过网络五子棋游戏的产生也让更多的人收益,人们不仅可以和电脑下棋,还可以和异地的陌生人下棋,更可以在下棋的时候和对方交流心得,这就是我此次设计的主题,那么在未来的五子棋的发展来看,也许比赛的规则会有所改变,棋局会变的更复杂而且所需的技巧也会越来越多,这就需要所有人的努力才会实现了。三、 本课题研究内容:1.内容:为了迎合广大五子棋爱好者的需求和交流,设计出一款基于网络版的五子棋游戏,玩家可以通过网络挑选自己喜爱的对手并同其进行比赛,比赛过程中可以进行聊天,达到相互交流经验的作用,使其不仅能够进行比赛,同时也能达到交友的功能。2.主要功能: (1)开始和退出开始时输入玩家的姓名和所选择的角色,在选择角色的同时下方会显示出相应的IP地址。在输入相关的信息后就会弹出游戏界面,而游戏设置的对话框随即会自动隐藏,释放。这时就开始等待对方的加入,等有人加入后就可以开始游戏了。如果不想玩了就可以按退出按钮,一方退出游戏后,另一方就会显示尚未连线,然后等待下一个玩家的进入。 (2)用户之间聊天: 在下棋的同时可以通过聊天窗口和对方进行聊天会话,写完信息之后点击发送,就可以在公共的显示栏中看到自己发出的信息和对方回应的信息。进而开始用户之间的交流,同时所用的组合框的下拉菜单中会有一些简便的备用的语句,可以点击随即发送,这样就能省去部分打字的时间。 (3)玩家信息的显示在游戏设置的对话框中所输入的玩家姓名就是游戏时玩家信息所显示的姓名,用户可以根据自己的喜好随便填写姓名。(4)战绩的显示游戏开始的时候双方的战绩均为零,当一轮过后战绩就会被刷新一次,各自几胜几败很清晰的出现在界面上,由于最先下棋的玩家胜利的几率会很大,所有根据各自的胜负情况会交替双方先手的顺序,达到公平的目的。 VisualBasic6.0中文企业版为Windows环境下的网络开发提供了强大的工具,Winsock控件就是其中之一。利用WinSock控件可以与远程计算机建立连接,Winsock包含有用户数据文报协议(UDP)和传输控制协议(TCP)。可用这两种协议来建立客户与服务器应用程序来进行通数据交换。WinSock控件解决了以往应用VB编程时网络中应用程序之间无法实现点对点通信的难题。用户仅通过设置属性并借助事件处理就能够轻而易举地连接到一个远程的计算机上,而且只用两个方法就可以实现数据交换,其中Senddata方法用于发送数据;Getdata方法用来取数据。3.主要控件属性、方法及事件:1)Winsock控件的常用属性:protocol属性,该属性是用来设置使用的协议的,本设计是用TCP协议的,所以选用其默认的属性即可。Remotehost属性是指定要连接的远程主机的名称活IP地址Remoteport属性是设置或返回要连接的应用程序的远程端口号,在设置端口号时应尽量设置成大于1024RemotehostIP属性,返回实际连接的远程计算机的IP地址,可以是客户端的IP,也可以是服务器IP。在连接成功后,对于客户端该属性为服务器IP;对于服务器该属性为客户端IP。LocalIP属性,返回本地主机的IP地址,如果想知道自己主机的IP地址,只要用一条vb语句就可以实现这个功能。State属性是返回winsock控件的当前状态,一般常用的也就是sckclosed,sckconnected.两个。其他的就不在此说明了。2)winsock控件的常用方法connect方法,这个是使用tcp协议时,用于建立与远程计算机的连接,该方法是在编写客户端程序时使用的。Accept方法,接收一个新的连接请求,该方法仅在TCP型服务器应用程序中的connectrequest事件过程中使用。Listen方法,在TCP连接时,用于创建套接字并设置为侦听模式,该方法仅使用与TCP连接。Close方法,这个看字面上的意思就知道他是关闭TCP的连接用的。3)winsock控件的常用事件Connect事件,该事件通常在编写客户端程序时使用。当与服务器的连接操作完成时被触发。通常在此事件里写入连接成功提示、返回服务器IP等。Connectionrequest事件,该事件只能用于编写服务器程序。当远程计算机请求连接时被触发,该事件中往往使用accept方法接受新请求的连接。Dataarrival事件,当新数据到达时触发,该事件的bytestotal参数指明了新到达数据的字节总数。Sendcomplete事件,error事件,close事件就不做说明了。TCP协议:TCP(TransferControlProtocol)是传输控制协议的简称,是基于连接的协议,在数据传输之前必须先建立连接。通过TCP协议建立的是客户/服务器通信方式;UDP协议:UDP(UserDataProtocol)是用户数据文报协议的简称,两台计算机之间的传输类似于传递邮件;两者之间没有明确的连接,可作为服务器,也可作为客户机,使用UDP协议建立对等通信和通过TCP建立客户/服务器通信的方法略有不同,它不需要建立客户和服务器,而是建立对等通信。由于本次设计用的是TCP协议,所以下面说明一下基于TCP的连接模型,(图中白色格子代表计算机的逻辑端口,两个黑色的格子代表客户端程序和服务器程序正在使用的端口) IP:222.39.165.165 IP:222.39.165.172ClientServer四、 本课题研究方案:本课题的研究主要是采用VisualBasic6.0语言来进行设计与实现的,其中利用Winsock控件的属性来解决与远程计算机的连接问题,这样才能够实现网络游戏异地的玩家能够一起玩游戏的问题,实现双人对弈,同时基于Winsock来采用VB实现聊天功能。1. 游戏界面窗体frm1这个窗体是展现给用户的,是主要的界面,用户就是通过这个界面实现所有的功能,游戏、聊天、玩家信息、战绩显示等等,也是程序设计者发挥的空间, 可以根据自己喜欢的风格和色彩来设计游戏的界面分布。作为服务器角色所具有的功能:角色-服务器等待加入.作为黑棋玩家第一轮可以先下棋作为客户端所具有的功能:角色-客户端请求加入作为白棋玩家第一轮不可先下棋2. 游戏设置窗体frm2 窗体设置是提取信息的,在游戏之前最先出现在用户眼前的窗体,主要是提取玩家的姓名和玩家在玩游戏时所选择的角色,以及玩家的IP地址。而在用户输入之后所有的信息之后就会自动的隐藏起来,消失在用户的视野中。 3. 游戏模块Modubel1 为了简化程序设计的复杂程度,往往将一个大的程序分割成较小的功能部件,称这些部件为过程,过程的作用除了可以简化大程序以外,还可以提高重复利用率并且使得修改程序也方便了很多。因为有时多个不同的程序段中都会使用同样的代码实现同样的功能,甚至一个程序段中的不同位置也会需要编写大量的重复代码。这是复制、黏贴可能成为了一部分编程人员的法宝,不断的将复制的代码黏贴到不同的位置。但是,这样做第一会让程序变的冗长,不宜被阅读;第二如果突然发现被复制的代码段里有错误,修改程序就会成为很复杂的一件事情。而此时在一个共用的模块中做一些声明,和设置一些共用的函数,就会解决这样的问题,同时在修改程序共用的内容时只在Modubel1模块中修改即可,防止在多个窗体同时修改比较麻烦的情况,而有时修改的地方多了还会有出现遗漏和错误的情况,但在公共的模块中修改就会方便很多。 Vb中过程分为两种,一种是sub过程(子程序过程),另一种为function过程(函数过程),两个过程主要的区别在于sub没有返回值,而function过程要向调用它的语句返回值。每个通用的过程都应该实现一个或者多个具体的功能。 五、 研究目标、主要特色及工作进度:1 (1)研究目标:网络五子棋游戏的设计与实现(2)主要特色:此次设计的网路五子棋游戏的主要特色是具有聊天的功能,使双方在下棋的同时还能够通过聊天的方式交流经验。达到比赛和交友兼得的目的,解决的一味比赛的枯燥性,我们都知道但我们在玩游戏时如果能和对方聊几句,就会有一种亲切感,想继续玩下去,如果彼此都不说话就不会有太大的想继续玩下去的想法,是游戏的本身更加的人性化。(3)JAVA网络编程技术:本次实验编写的基于网络的程序,所以用到了SOCKET控件来编写客户/服务器程序,使用了TCP协议(数据传输协议)连接到远程的机器进行数据交换。采用了两个窗体与一个模块建立了这个工程,一个游戏界面的窗体,一个游戏设置的窗体和一个模块做一些声明。2 工作进度流程;14周: 熟悉毕业设计(论文)要求,根据毕业设计任务书,写出开题报告。57周: 选择开发工具,构建并熟悉开发平台,系统调研,开发平台的构建。810周: 系统总体设计、画出各模块流程图,编码。1112周:系统联调、测试、纠错。1314周:开始撰写毕业论文,翻译一篇外文资料。5月20前交第一稿指导老师或辅导老师审阅并修改(电子稿和打印稿)。15周:交第二稿到指导老师或辅导老师审阅并修改(电子稿和打印稿)。16周:整理论文材料,准备论文答辩

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论