版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于JAVA的在线五子棋游戏设计与实现目录摘要 3第1章绪论 41.1游戏开发背景 41.2目的和意义 41.3研究内容 41.4技术介绍 51.4.1JAVA技术 51.4.2SOCKET通信 5第2章游戏分析 52.1可行性分析 52.1.1设计技术可行性分析 52.1.2经济可行性分析 62.1.3操作可行性分析 62.2需求分析 72.2.1功能需求分析 72.2.2性能需求分析 72.3功能分析 82.4游戏流程分析 82.5算法技术分析 82.5.1通信技术分析 82.5.2五子棋游戏算法分析 11第3章游戏设计 133.1游戏主要功能 133.2游戏开发流程 13第4章游戏实现 144.1游戏界面设计 144.2启动服务器 154.3游戏进行流程 164.3.1开始游戏 164.3.2悔棋操作 174.3.3对局结束 184.3.4退出游戏,关闭服务器 20第5章游戏测试 205.1测试目的 205.2测试方法 215.3测试结果 21结论 21参考文献 22摘要五子棋游戏是很普遍的益智类游戏,一般需要面对面才能完成游戏过程,而本研究主要是设计实现五子棋的线上玩法,实现不需要面对面并且能够根据五子棋的规则随时随地的完成整个游戏的过程。通过研究使用的群体确定整个界面设计的风格,以及设计相关的功能;套接字编程实现相关的通信功能,实现用户连接;基于基本的五子棋五子相连胜负判定规则实现游戏以及对局。设计并实现了在线的五子棋游戏开发,增加了用户聊天功能,实现即时通信。本次设计满足了人们在对战之余,还能够进行相互聊天,不只是呆板的游戏环节,对于性格活泼的人,还能够与对手交换其他信息,能够得到广泛的普及。关键词:五子棋游戏;SOCKET通信;JAVA编程1绪论1.1游戏开发背景五子棋游戏,大家就会想到五子棋是小孩子玩的游戏,其中没有什么需要注意的东西,在棋盘上落子就可以了,其实不是,五子棋不仅仅只是落子这么简单,作为一款益智类游戏,其中包含的内容与规则,在不断的思考中,能够锻炼头脑的反应速度,还能够使得人们能仔细思考落子之后棋盘情况的演变。五子棋分为黑棋和白棋,对于两种颜色棋子代表两人对弈,并且根据棋盘的直线与横线的交叉点为棋子摆放地点,首先连成五子线的一方获胜,而且对于玩家方面,五子棋不能只是作为一款休闲游戏而存在,特别是一些容易急躁的玩家,就特别需要通过五子棋游戏来冷静自己,能够在其中开发自己的能力,处理棋局的路线就显得尤为重要,通过五子棋游戏来锻炼自己的智力,并且发现其中乐趣是游戏设计的目标。在时代的不断前行中,五子棋的发展也很迅速,从最开始的泥地上画棋盘,使用石子或者画不同的标记用以作棋子,之后的桌游,使用棋盘画布以及棋子来进行游戏,而且局限于场地以及玩家数量,到现在互联网时代的网络游戏空间,能够使得成千上万的玩家在线游戏,并且可以在线挑选对手,随之而来的也有信息的不断增加,包含的信息十分繁杂,所以对于如何将这些内容信息更好的进行管理,不仅仅能满足玩家的实际要求,还能使得玩家对游戏有新颖的感觉,增加对游戏的热情,这是必须要通过设计以及构思去实现的。设计五子棋游戏主要是让游戏不再局限于现实,不再因场地等原因而逐渐淡出人们的视野,这不仅仅让人们失去的一种休闲的方式,还缺少了对棋局以及博弈过程中的思考,所以,设计一款满足上述要求的五子棋游戏就显得很有必要。1.2设计目的和实现的意义说到五子棋游戏,听起来会觉得五子棋也就那样,在棋盘上落子就可以了,不就是对五子棋按照棋子摆放进行游戏,然后最先连成五子线游戏结束,在我们进行市场调查的时候,很多用户玩家都是这样来说的,其实五子棋游戏并不是这么简单,需要开动脑筋去和对手博弈,不止于当前下棋的棋盘局势,还有需要为之后的棋局作铺垫,或者设下陷阱,引对手上钩。五子棋分黑白两种棋子,分到两个人手里,对一些接触过的人来说,五子棋就是你追我堵的过程,想办法去堵住五子连线的位置,并利于自己的五子连线位置,这种需要动脑筋去推演的游戏被称之为益智游戏。对市场的调查显示,五子棋游戏,大家提到最多的还是想方法堵住对方的线路,五子棋之所以容易被玩家记住,主要还是其中充满了博弈的乐趣,是智力以及反应能力的比拼,再者,五子棋的游戏规则也是简单,能够普遍的被理解。随着互联网时代的到来以及技术上的逐步深入,网络游戏形式更加多元化,所以决定开发一个在线五子棋游戏,对于在游戏的开发问题上,不能够仅仅是根据开发者自己的臆想去设计开发,开发的游戏不是面对开发者的,而是需要面世,面对普遍大众的,因此在开发前的需求分析以及构思都需要得以完善,不能够觉得没必要而舍去这些必须的步骤。通过在线五子棋的实现,玩家们不需要再考虑场地、时间以及对手的问题了,在线五子棋能够完全解决此类问题,能够实现随时随地进行,以及不会缺少对手的情况出现,在线的玩家都可以选择空闲状态的对手进行挑战,当然,被挑战的玩家也可以因为各种各样的原因而去拒绝挑战,亦或是想和自己的朋友进行游戏。基于诸如上述问题的亟待解决,所以开发一款在线五子棋游戏来解决这些问题,能够根据行业发展以及技术的改进,提升用户的体验感,同时增加用户的数量,使得更多的人慕名加入,并得到所期望的体验感,使得游戏能够得到普及。1.3研究内容五子棋作为一款日常的游戏,本身的群众基数比较大,再通过开发线上五子棋游戏,能够扩大用户量,提升使用度以及热度。五子棋小游戏的出现,更是受到了许多玩家的青睐。对于五子棋游戏的面世,是需要经过长时间的完善以及查漏补缺的,不只是需要满足现状,更是要根据技术的更新换代而做出相应的更新升级,而且对游戏的新功能增加以及日常所需要进行的维护,都需要更加精炼的技术来支撑,五子棋游戏需要将设计过程中的数据以及信息内容进行系统化的管理,游戏过程中所能够进行的操作以及选项,都是根据游戏的普遍所被接受的规则而进行的设计,开发的过程中对功能的实现不仅仅是完成,更是要在已有的基础上进行全方位的拓展。对于用户的数据,能够存储即时的信息,并且能够保证安全性,不能让数据泄露以及被盗取。对于游戏的分析,不仅仅是要根据用户的需求,还需要通过专业的途径去了解,寻求更加专业的有深度的解决方法,达到想要实现的结果。1.4技术介绍1.4.1JAVA技术在编程的语言中,有高级程序设计语言与低级程序设计语言之分。JAVA是高级程序设计语言,其本身具备简单,开源免费,跨平台,面向对象,含有多类丰富的库等优势。JAVA本身所具备的优势就是在使用时是不收费的,JAVA还可以实现只编写一次,就可以在任意地方运行,不再根据类别去建立其他的相关运行程序。JAVA支持类的封装、继承、多态等面向对象编程的技术,能够简化开发人员的工作而不会对开发出来的软件应用产生质量上的影响。JAVA既是支持面向过程的语言,也是支持面向对象的语言。在实际的JAVA开发设计过程中,面向对象与面向过程其实是相辅相成的,面向对象的开发过程中往往会遇到复杂的问题,有些类似于一口吃不下的情况,所以需要借鉴面向过程的方法对问题进行分析,将问题不断的以大化小,然后又从一个个小的问题逐步往回解决,最后汇集成问题的总的解,开发过程都是一步一个脚印的,虽然现在面向对象编程被大众广泛接受并且逐渐的成为圈内的主流,但是存在就是有其中的道理的,所以在实际的设计过程和开发过程中,需要将两者相结合,从多个方面去看待问题。1.4.2SOCKET通信根据不同的通信网络的层次,JAVA提供了几类网络方面的功能,但是本次设计主要使用的还是SOCKET,使用相关TCP协议,用来实现网络通信。SOCKEET通信的过程比较容易理解,并且其中通信的原理也通俗易懂。SOCKET套接字主要是工作在应用层和传输层之间,是一个在概念上不存在的抽象层。SOCKET提供了编程的接口,使得开发者可以通过此接口对网络通信进行设计,TCP/IP层本身是存在许多复杂的操作的,但SOCKET的存在,使得其中复杂的操作通过SOCKET的接口可以进行简单的操作实现,来实现进程的网络方面通信。在使用SOCKET之初,建立通信的两头都存在SOCKET,通过建立连接,实现在网络中的通信,所以本质上,网络通信就是两个端口的SOCKET在进行通信,IO传输两端的数据信息内容。2游戏分析2.1可行性的分析2.1.1设计相关技术可行性分析游戏可否实现的可行性分析,最主要的是游戏的设计构思分析和使用可行性分析。游戏的设计构思,从最开始的大局方面进行设计,所需要设计的框架结构,以及想要呈现出怎样的界面风格,然后再逐层往下去细化,寻求专业的建议。通过资料的翻阅以及根据调查的分析,对相应的界面进行设计以求实现,版面的整体风格以及形象都需要根据玩家的期望以及需求进行设计,玩家才是主导,才是切身使用的第一人,有着最直接最原始的感受,在设计过程中,根据步骤设计出来的结果,还需要时刻与玩家保持沟通,整合玩家的意见,实时的对设计进行改进与完善,以求达到真正意义上的与用户进行交流,用户所携带的期望、偏好都是一款游戏时刻需要去跟进的,如果老是一成不变的话,不但不能吸引新用户的加入,反而会使得原本积累的老用户也产生厌恶而脱离游戏。再者,呈现在用户眼前的界面需要根据普遍的大众化的习惯去设计,不能出现反习惯的设计,这样虽然能满足非常小部分人的习惯,但是,一款游戏始终还是服务于大众的,不能因小失大,满足的一小部分的人而使得最大的客户群体产生意见。同时,操作的界面也不需要太复杂,最好的就是简单易上手,能使得人们一看见就能玩熟练,同时布局也要遵循美观,需要迎合玩家,一些简单的操作以及指令,不需要太多的赘述,如果赘述过多,让整个界面整体上呈现出密密麻麻的形态,这是得不偿失的,用户的目的是玩游戏,通过游戏达到所想要得到的东西,而不能还没开始玩就需要花费太多时间去阅读文字的描述,这些对于一些时间紧凑的人来说,还没开始玩就已经结束了,对于另外的人来说,本来玩游戏是放松的,结果看见文字描述不但会不耐烦,甚至会出现负面情绪,影响心情,也没有达到最初的设计目的:被大众接受并广泛普及。使用可行性分析:一款游戏的开发,通常是软硬件配合,两者互相结合的,所以需要对邮件和软件进行分析。硬件主要是计算机,随着现在五花八门的计算机品牌出现,各种各样的计算机也出现在人们的视野里,现在大部分的计算机分为游戏本和商务本,当然,还有台式计算机,不过,对于本游戏而言,只要计算机能够对正常的指令进行相对应的反馈,能够打开本游戏运行并且能够连接互联网,基本上是不成问题的,对硬件的配置要求也没有多高。在软件方面,使用到的是JAVA编程语言,依靠其强大的功能以及附带的库,能够实现在线五子棋游戏的开发。综上所述,在技术可行性方面,都是可以满足并且能够通过的。2.1.2经济可行性分析所谓经济可行性,一方面是针对与用户而言的,另外一方面是针对开发者而言的。对于开发者而言,分析开发的过程中是否会有额外的花销,进而使得项目进入停滞状态,导致项目无法进行而半途而废,所以,在开发进行的整个阶段,都需要考虑清楚,确保开发到最后的运行与实现是否存在争议,带最后是否能够切实的运行上线,针对开发方面前期的投入以及后期的维护进行分析,前期开发主要是开发者进行的,经济方面没有存在不妥,只是时间上的花费,在后期的维护方面,本游戏不需要开发者进行过多的干涉,游戏的开发,人员方面无需太多,可以减少人工支出,只是需要明确分工即可完成,因此在开发者的角度来说,是完全可行的。而对于用户来说,本游戏没有设置收费项目,相对于是免费的线上游戏,用户只需要打开游戏,然后选择对手进行游戏即可,就游戏本身而言,没有切实的可收费项目,因此,也不会对用户收取费用或者设置充值路径,游戏的使用对象是玩家,玩家可以管理自己的信息,对自己的信息选择性的进行删除或者保存,不会产生任何费用,并且还可以帮助玩家找到适合的娱乐休闲方式,锻炼玩家自己的思维。综合上述分析,五子棋游戏的开发在经济上是可行的。2.1.3操作可行性分析就五子棋游戏的操作可行性而言,一般是玩家的角度来设计的,在操作方面没有过多的步骤以及迷惑,通常就是通过鼠标来完成,进行交互,玩家根据自己的选择选择相应的按钮,点击即可,不需要繁杂的步骤解释以及学习,对于新手上手操作,可以根据步骤带动新人学习操作,完成新手操作后便可以加入玩家序列。总的来说,操作是很便捷的,再加上界面也没有太多的按钮入口,所以,只要是用户能够认识文字就可以完成操作的整套流程。因此,游戏的操作可行性是没问题的。2.2需求分析2.2.1功能需求分析在游戏的设计方面,前期的主要工作就是调研,通过对不同年龄阶段的人群进行分类的调查,分析各阶段人群期望在游戏中获得什么,希望在游戏中遇到什么功能,有什么功能是能够激发人群的兴趣的,掌握玩家的真实需求,根据需求对开发设计的各阶段进行定位,确定需要设计开发的内容。用户是服务的对象,不能仅仅是根据开发人员自己的猜测或者是小团队内的总结就替用户做决定了,就年龄阶段而言,开发人员是青年人,只代表了部分青年人的思想潮流方向,不仅如此,还需要考虑孩童的想法,对于小孩子们来说,大部分只是寻求简单的乐趣,以及获胜的快感,而对于中老年人来说,需要考虑的是这个年龄阶段的群体,不再是简单的乐趣,他们所需要的是锻炼自己的脑力,喜欢那种与人博弈,斗智斗勇的过程,以及对一些人来说,还可能是为了让自己能够有冷静思考的途径而已,因此,在对各年龄段的人进行需求分析时,要充分地考虑到上述情况,而后根据分析去确定需要实现的功能有那些,以及留下剩余功能开发的空间。结合用户期望的需求以及初步的设计分析,再设计合理地框架进行布局,完成审核,通过多方的意见问询以及讨论,确定方向。五子棋游戏,开始游戏后,根据游戏规则进行在线游戏,五子棋分为黑棋和白棋,对于两种颜色棋子代表两人对弈,并且根据棋盘的直线与横线所交的点作为棋子摆放的位置,首先连成五子线的一方获胜,对于棋盘来说,是由横向与纵向分别十五条等距离的直线进行垂直交叉来组成的,而且在棋盘上横线与纵线的交叉点就是游戏时棋子所放的位置,对于玩家进行游戏时,对局双方各执一色棋子,将棋盘清盘进行空盘开始,而且不管是黑棋还是白棋,每轮只可以下一次,每个点也只允许放一个棋子,并且对于棋子落子在空白的点上面之后,不得再移动已落的棋子,然后玩家轮流放置棋子位置,最先连成五子线的一方获胜。2.2.2性能需求分析性能分析是必不可少的环节,在整个游戏的设计与实现的过程中,性能是有着举足轻重的地位的。性能分析主要还是三个主要方面的分析,其中最关键的应该就是安全性能的分析了,不管在现实中的各方面领域,安全一直是人们着重强调的问题,在程序开发这个领域里面,安全也不可置否的成为了首要的考虑对象。在本游戏中,并没有涉及到玩家的个人隐私,玩家只是注册个账号,设置一个昵称就可以进入游戏,无需上传敏感的个人信息,而且在玩家游戏过程中产生的数据信息是有着明确的保障的。其次是易用性分析,在开发之处就明确了目标,其中易用性是其中的一个主要考虑对象,本游戏设计的目的就是希望解决现实中的麻烦,可以简化玩家的游戏步骤以及游戏过程,以此来提高玩家对游戏的使用,让玩家可以通过简单的操作完成从打开游戏到完成游戏结束的整个流程,并且还能够享受其中。最后是可扩展性,在进行需求分析时,就已经考虑到需要留下剩余功能以及需求的可开发空间,基于玩家的不断增加,都会伴随着许许多多的新要求需要实现,这也要求用户可以根据玩家需求的增加而对功能的更新进行跟进。2.3功能分析游戏的功能是针对用户的,用户是与游戏界面交互的主体,一些功能的出现是对用户的游戏过程的补充,基于一些必不可少的基础功能外,再开发实现的外加功能,使得玩家能够有着不错的体验感。用户的游戏角色不需要创建得太花哨,只是使用一个简单的人物头像表示即可,在区别玩家身份方面,可以通过玩家在游戏中的昵称来进行分辨,一个玩家对应的是一个独有的昵称,在昵称方面,是不允许重复的,如若在创建昵称过程中出现了昵称重复,则创建者需要重新创建一个昵称,经过核验无重复后才算创建成功。通过简单的图示来表达玩家游戏的流程,以及玩家在游戏功能方面的联系,使得玩家能够简单高效的通过新手初步学习,快速掌握游戏,玩家根据需求进行游戏棋局的设置,设置完成后开始游戏,按照五子棋游戏的规则进行游戏,游戏设置规定是挑战方先手,所以按挑战方先手,被挑战方后手的规则依次轮流落子,游戏结束后,玩家可以选择继续游戏或者切换对手,再或者是退出游戏。玩家与游戏功能的交互如图2-1所示。图2-1游戏用例图2.4游戏流程分析在对五子棋游戏进行在线开发时,一是要思量到玩家的功能需求,再一个就是考虑游戏的界面,所以对于游戏的分析设计及游戏的整体开发流程和游戏的操作流程一定要重视,为了满足五子棋游戏的基本操作需求,使游戏开发成品具有实用性,可以参照面向过程编程的方法,将系统作为一个整体,然后再根据每个阶段每个任务的实际要求,拆分成许多个小模块,完善每个小模块。玩家开始游戏后,对玩家因游戏进程而产生相应的操作都要有分析,直到一局五子棋游戏的结束。2.5技术算法分析2.5.1通信技术分析表2-5-1SOCKET通信流程通信过程:服务器端:①创建SOCKET②绑定端口号和SOCKET③监听端口号④接收客户端连接请求⑤从SOCKET中读取字符⑥关闭SOCKET客户端:①创建SOCKET②连接计算机端口③向SOCKET中写入信息④关闭SOCKETSOCKET通信流程如图2-5-1所示:CLOSE()SERVERCLOSE()SERVERSOCKET()BIND()LISTEN()ACCEPT()RECEIVE()CLIENTSOCKET()CONNECT()SEND()CLISE()建立连接发送信息图2-5-1SOCKET通信流程图在此过程中,BIND()函数是赋予SOCKET地址的,在其地址族中选择一个特定的地址;LISTEN()函数是监听SOCKET的;建立连接的过程中,客户端会调用函数CONNECT(),向服务器端发送请求;参照流程图,客户端创建SOCKET之后,TCP监听到连接请求,就会调用ACCEPT()函数响应连接请求,在这一系列请求与响应接收完成后,连接才算是正式的建立起来,建立了连接后,自然是进行数据信息的传输,在传输方面,有READ()函数和WRITE()函数,通过读写函数进行IO操作进行数据信息的传输来往,在上述操作完成后,最后还需要使用CLOSE()函数断开连接。2.5.2五子棋游戏算法分析在五子棋棋盘上,通常以一个二维数组表示五子棋的位置,五子棋的胜负判定其实很简单,就是在棋盘上可能形成直线的位置上查看是否有五子连线,在落子后,都是通过对棋盘的遍历去判断五子棋水平方向、竖直方向以及斜45度的连线上是否有五个颜色相同的棋子连成直线。不过,在通常的情况下,都是从当前的落子位置进行判断的,因为之前的落子位置都是进行了判断的,以及确定没有形成五子连线,就是还没有决出胜负,所以如果再去对之前落子的位置去判断,就是浪费资源,在开发过程中,会形成程序的冗余,所以,从当前落子位置对棋盘的棋子进行遍历即可。表2-5-2五子棋算法基本算法:①先手一方落子,根据落子位置得出相应二维数组作坐标。②遍历落子位置的上下、左右以及45度角方向是否有五子连线。③后手一方落子,根据棋子位置得出二维数组作坐标,并将此位置标记,之后不能再落子。④遍历落子位置的上下、左右以及45度角方向是否有五子连线。⑤先手方再落子,根据位置得出二维数组,遍历棋盘位置,检查各方向是否有五子连线。⑥当有五子连线后,棋局分出胜负。开始白方先手判断该位置是否有棋开始白方先手判断该位置是否有棋白方落子判断白方是否胜出黑方回合判断该位置是否有棋黑方落子判断黑方是否胜出找另一位置白方获胜找另一位置黑方获胜是否重新开局游戏结束图2-5-2五子棋算法流程图3游戏设计3.1游戏主要功能五子棋游戏在其本身的游戏公平性方面来说还是很公平的,而且操作也不复杂,适合所有人参与,也很贴合实际,贴合生活,因此成为网上比较刺激的对弈游戏,对玩家的水平也有着很深层次的彰显。玩家进入游戏后,选择类型,比如是人机对局,则是和电脑对弈,此类型相对来说还是很简单的,毕竟电脑还是很呆板的,没有什么对局的体验。还可以选择与其他玩家对局,玩家之间对局也有相应的规则,但是大体上还是相同的,在一局对局结束后,玩家有一些选择,如果不选择继续玩了,就可以退出游戏。在对局中,不仅要考虑到玩家的耐心,还要考验玩家的分析能力,在对手设计的重重陷阱中能否在短时间内得到解决方法或者去实施反围堵,总而言之,这一类型是人与人之间的脑力对决,稍有不慎,可能就会痛失全局。对本游戏的开发以及设计,通过对游戏的功能模块进行拆分,如果3-1所示。图3-1游戏功能模块图3.2游戏开发流程五子棋游戏的开发主要流程就是前期的调研,设计游戏的蓝图,构思实现的目标;中期的开发以及问题的发现,再到后期的检查测试和查漏补缺。前期调研无非就是玩家群体的调研考察,以及需求的分析,中期就需要对五子棋游戏的模块进行划分,然后每个模块都需要按设计、开发编写代码、模块雏形、模块完善、模块测试的步骤进行,在实际的开发过程中按要求完成功能的实现,并且在开发中如果遇到问题的话,还需要进行跟进,对整体进行增删查改等操作。到后期,就需要进行全方位的测试,来评估实际可行性,能否完成初期的设想以及是否可行,测试完才能问世,提供给玩家。五子棋在线游戏的实际开发步骤与过程,如图3-2所示。图3-2开发流程图4游戏实现4.1游戏界面实现在游戏界面的设计方面,需要从专业的方向出发,听取专业的意见,不能以一种大众普遍风格出现在玩家用户面前,既要有一定的亲民度还需要有本身的特点,需要有一种令人新奇的感觉呈现。首先还是以吸引玩家为目的,现在的大众品味各异,但是大多数还是相信“眼缘”,所谓的“以貌取人”,即在看见的第一眼就需要有能够吸引到的地方;再有就是色彩方面,色彩风格有很多类型,有鲜艳,即增强色彩显示,还有其他方面的风格,在色温方面,还有冷色调和暖色调之分,所以在设计界面时,色彩风格是一个主要的选项,但是游戏是面对大众的,所以还是要根据大众的审美来进行平均,不能只是满足了一部分人,这有碍于游戏的宣传推广。还有界面的布局比例,以及文字的占有比,都需要严格的按照科学的建议,设计科学的符合人们观感美学的显示界面,需要重视视觉效果,颜色不能够太严肃,像一般显得比较严肃的色彩,应该要尽量避免,更加不能太单调,单调就会产生乏味,乏味亦无趣,通过合理的色彩搭配才能呈现出特别的效果,本来游戏设计的初衷就是让参加游戏的人感觉到放松的,是一种在忙碌之余能够获取快乐的途径,因此,颜色方面需要选取在观感上显得比较欢快活泼的。同时,文字的过多,会让大部分玩家从心底里滋生出厌恶感,也会让玩家容易精神疲劳,大篇幅的文字并不适合在游戏中出现,这应该是大部分游戏的共性。版面设计要做到画面与文字布局合理,简单的说就是什么画面和什么样的文字就要出现在它该出现的地方,布局得错落有致,文字与图画是相辅相成的,两者相融合才能展现出一款游戏的最好状态,同时还能使得玩家在第一眼就能看出一种放松的感觉,进而产生兴趣和新鲜的感觉,想要尝试加入到游戏。玩家根据自己的喜好,选择游戏类型,黑棋先手、白棋后手,用户选择相应的菜单进入到相应的数据信息界面进行相应的操作,进行到相应的游戏对局中去。界面显示如图4-1所示。图4-1游戏界面4.2启动服务器在启动游戏之前,需要先启动服务器,服务器启动后才能玩家登录服务器,启动效果如图4-2所示:图4-2服务器启动4.3游戏进行流程4.3.1开始游戏五子棋游戏,开始游戏后,根据游戏规则进行在线游戏,五子棋分为黑棋和白棋,两种颜色棋子就是代表两个玩家之间的对弈,棋盘的直线与横线的交点是棋子摆放位置,先连成五子线的一方获胜。在玩家进行游戏时,对局双方各执一色棋子,空盘开始,即棋盘上无棋子,而且无论是黑棋亦或是白棋,每次只可以下子一次,每个点也只允许放一个棋子,并且棋子下在空白点上之后,不得移动棋子。对局玩家根据需求,轮流安放棋子位置,玩家都在想办法去堵住对方的连线交叉点,并对自己的棋子连线找到最好的安放位置,最先连成五子线的一方获胜。如图4-3-1所示:图4-3-1游戏开始界面4.3.2悔棋操作一方玩家不慎手误或者因为其他方面的原因导致走棋失误,在此基础上可以向对手提出悔棋操作,当然,对手也可以选择不同意,如果对手同意了,悔棋后,将根据悔棋方玩家的意愿进行重新安放棋子。如图4-3-2所示:图4-3-2悔棋操作4.3.3对局结束经过激烈的交锋之后,游戏最后成为定局,决出胜负,在分出胜负之后,会出现窗口,玩家可以以此选择接下来的操作。通过界面上方显示落子顺序的数据信息,玩家根据自己的需求进行选择,是与当前对手重新开始,还是重新选择对手。对于不了解游戏的玩家,也可通过帮助了解到游戏的规则。如图4-3-3所示:图4-3-3游戏结束界面4.3.4退出游戏,关闭服务器在玩家决定不再玩游戏,准备退出游戏后,玩家可以直接关闭游戏,以此来退出游戏,同时,关闭服务器,玩家下线。如图4-3-4所示:图4-3-4关闭服务器5游戏测试5.1游戏测试的目的游戏的测试,并不是对整个游戏的运行状态进行测试而已,通常的游戏测试,一般是运行方面的功能测试和显示效果测试,但是,严格意义上的游戏测试,需要在各种环境下进行测试,比如说对于游戏运行方面的测试,需要在高温下检测游戏是否能够正确的运行,是否会因为过高的温度而出现游戏运行的不稳定,亦或是在低温环境下,游戏的运行是否会出现停滞,通常,在温度方面,大部分还是硬件方面的因素,但不可否认,软件也有着影响,如果程序设计过于冗余繁杂,加强了系统的运行负担,也会有问题产生。除了运行的功能测试、显示方面的信息测试,还有安全测试,安全的测试包括了隐私安全的测试,还有软件本身的安全性测试,是否会容易被侵入而携带病毒,还有游戏数据的安全。还有兼容的问题,测试是否会存在一些电脑或者是系统版本问题而使得游戏不能运行。还需要将设计成品交给到用户手中,让用户使用后,经过用户的反馈,得出相应的测试结果,其实测试的目的还是要根据出现的问题以及用户方面提出的需求进行完善与改进。游戏需要经过严格的测试后,才算是一个完整的成品,才能够上线使用,测试是一个游戏的面世前的主要环节,经过测试环节的改进,才能够更加迎合用户的需求。5.2测试方法测试的内容虽然各异,但是测试的方法是大体相同的。对功能的测试主要是主观性的,需要从设计之初的开发开始,边开发边测试,先是对初始状态下的功能模块进行简单的测试,目的只是初步的检测功能能否实现,能够实现就认为是可行的,在设计开发完成后的成品功能测试,不再是检测功能能否实现了,还需要测试功能的缺陷,存在的隐患,进行对整体的功能评审。而功能测试可以分为线上和线下,线上测试作为一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年宣城职业技术学院单招《英语》通关考试题库及答案详解(各地真题)
- 传统古琴制作技艺保护保证承诺书8篇范文
- 标准化的安全操作流程指导书
- 采购成本控制流程模板与成本计算工具
- 互联网服务持续稳定运行承诺书(4篇)
- 产品设计评审报告模板涵盖用户反馈优化方向
- 2024-2025学年医师定期考核自我提分评估附参考答案详解(能力提升)
- 企业信用交易联合承诺函范文9篇
- 企业团队建设活动策划与执行指南团队凝聚力提升版
- 2024-2025学年中医助理医师高分题库(典优)附答案详解
- 三年级全册道德与法治教案
- 保密方案(档案数字化)
- 玻璃体视网膜术后护理
- 城市轨道交通行车值班员理论考试题库及答案
- 结核病的知识讲座
- 烟草公司物流中心装卸业务服务方案
- 园林植物主要食叶害虫及防治
- 景观绿化工程安全生产操作规程
- 《Linux网络操作系统管理》教学教案
- GB/T 18910.201-2021液晶显示器件第20-1部分:目检单色液晶显示屏
- 服饰配件设计1课件
评论
0/150
提交评论