同步TCP编写网络黑白棋

同步TCP编写网络黑白棋

ID:42850789

大小:1.18 MB

页数:26页

时间:2019-09-24

同步TCP编写网络黑白棋_第1页
同步TCP编写网络黑白棋_第2页
同步TCP编写网络黑白棋_第3页
同步TCP编写网络黑白棋_第4页
同步TCP编写网络黑白棋_第5页
资源描述:

《同步TCP编写网络黑白棋》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、同步TCP编写C/S版网络黑白棋游戏程序组员:江信辉,康兴见,马超课题任务及要求设计目的:学习应用程序协议的设计。学习较复杂程序的设计和调试方法。学习服务器管理多个玩家(游戏大厅)同时游戏的方法。设计要求:(1)服务器同时服务多桌,每桌允许两个玩家通过Internet对弈。(2)对每人落子时间进行计时,如果超出时间范围,则宣告该人失败。(3)程序能够根据游戏规则判断获胜方。(4)玩家自由选择坐在哪一桌的哪一方。如果两个玩家坐在同一桌,双方应都能看到对方状态,两个玩家均单击“开始”按钮后,游戏才开始。(5)玩家进入游戏大厅后,可以看到各个游戏桌两边是否有人的情况,而且可以决定是否坐到某个座位上

2、,坐到座位上后,才能看到游戏桌上的棋盘。玩家可以随时离开座位,离开座位后服务器及时更新游戏大厅信息。小组任务分配情况江信辉:负责c/s办黑白棋服务器界面设置负责服务器代码设计及编写康兴见:负责游戏大厅的界面设计负责游戏大厅的代码及编写马超:负责黑白棋桌界面设计负责黑白棋桌界面设计WINDOWSSOCKETS网络编程接口WindowsSockets是一套开放的、支持多种协议的Windows下的网络编程接口,与协议无关,较常使用的是TCP/IP协议windowssockets通信示意图Client/Server结构(客户端/服务器模式)Client/Server结构特点:将任务合理分配到Clie

3、nt端和Server端来实现可以充分利用两端硬件环境的优势充分发挥客户端PC的处理能力,客户端响应速度快降低了系统的通讯开销适于在用户数目不多的局域网内使用Client/Server结构缺点只适用于局域网这种方式远程访问需要专门的技术对系统进行专门的设计来处理分布式的数据系统总体分析首先启动服务器,进行服务器的配置,进行正确的服务器配置和数据库连接并测试成功后,开启服务器。在客户端,该玩家能够通过客户端登入到该游戏大厅或者注册账号,然后直接与系统服务器交互,数据传输。在游戏大厅可以看到当前的游戏桌数,并人已进入一桌的任意为选角色,在有桌面双方能看见对方的状态,点开始开始游戏。本系统支持的活动

4、列表如下:开启服务器;用户注册;用户登陆系统;用户与系统交互,进行数据传输;用户战绩记录;用户进行游戏;系统功能模块黑白棋网络对战游戏系统服务器客户端开启服务器停止服务器配置服务器关闭服务器游戏登陆注册文字传送战绩记录服务器端功能模块服务端功能简介:开启服务器功能模块:开启服务器,使服务器处在正常工作状态,随时等待响应客户端的连接和发送等请求。停止服务器功能模块:停止服务器,停止一切数据的接受与发送。配置服务器功能模块:此功能模块具体实现的功能有限制同时游戏的人数上限和限制同时开出游戏桌数的上限,以保证服务器能够正常运行。关闭服务器功能模块:关闭服务器。服务器端功能模块服务器端原理与设计:服

5、务器可以接受和监听多桌的多人的数据传输和服务响应请求并能接受连接服务器的请求设计如下:创建一个线程专门用于监听玩家的连接请求建立连接后创建一与该玩家对应的线程,接收发送相应信息,并提供相应的服务,玩家退出游戏室时,其对应的线程自动终止。玩家与服务器之间通信的不同命令:Login:玩家请求进入游戏室Logout:玩家退出游戏室SitDown:玩家坐到某个小房间的游戏桌座位上GetUp:玩家离开小房间的游戏桌座位,回到游戏室Start:表示玩家已经单击【开始】按钮服务器端功能模块1.创建一个线程专门用于监听玩家的连接请求建立了一个TcpListener,并且调用了TcpListener.Star

6、t(),接着启动了一个线程,循环的接受客户端的请求并建立对应的TcpClient对象localAddress=addrIP[0];myListener=newTcpListener(localAddress,port);myListener.Start();ThreadStartts=newThreadStart(ListenClientConnect);//监听客户机建立连接,并创建线程ThreadmyThread=newThread(ts);myThread.Start();privatevoidListenClientConnect(){}服务器端功能模块2.建立连接后创建一与该玩家对

7、应的线程,接收发送相应信息建立了一个ListenClientConnect方法,在其中生成一份玩家信息,并创建玩家与服务器的通信服务线程threadReceive调用ReceiveData方法进行数据传输提供服务Useruser=newUser(newClient);userList.Add(user);ParameterizedThreadStartpts=newParameterizedThreadSta

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。