自学内容网 自学内容网

10.3作业

整理自己做的网络编程项目的框架内容出来,要包含实现的功能,服务器客户端每个功能具体怎么实现的,服务器客户端数据收发的数据包是什么样的


基于TCP的文字冒险游戏

通过网络编程实现一个简单的文字冒险小游戏。包括服务器与客户端。

· 游戏内容:玩家扮演角色在地下城迷宫中进行探索,行动触发不同的事件:战斗事件、搜寻事件、陷阱事件等。通过战胜强敌,提升自己的能力值,最后战胜最终BOSS拯救世界。

· 用户客户端描述:客户端运行后出现登录界面,与服务器端进行连接,连接成功后把客户端id发送给服务器端进行接收,服务器端验证成功接收后,客户端在终端显示出操作界面,用户可以根据操作界面提示完成以下操作,并将部分操作指令发送给服务器端,服务器端接收后再去执行:

  1. 前进选项,行动指令,位置向前挪动一格,随机触发事件:

        a). 遇敌事件(战斗事件),此时客户端终端显示出战斗界面,用户通过不同的操作选项采取不同的行为。b). 回复事件 c). 陷阱事件 d). 探索事件

  1. 查看队伍信息选项,将队伍内成员基本信息打印在服务器终端。
  2. 查看自身状态选项,将当前客户端id对应的玩家id的属性打印在服务器终端,包括ID、Level(等级)、HP(生命值)、EXP(经验值)、STR(力量)、CON(体质)、DEX(敏捷)、武器信息、防具信息、位置信息。
  3. 存档选项,记录当前用户的信息,包括玩家的基本属性、装备和当前游戏的进度,存入数据库中。
  4. 读档选项,读取saveData数据库中内容,将其中信息拷贝至当前用户。
  5. 退出游戏选项,客户端结束运行。

· 服务器端功能描述:服务器端启动后,在终端显示待机界面,等待客户端的连接请求。客户端连接成功后,服务器端在终端打印出连接成功的信息。服务器端根据客户端的操作,完成以下功能:

  1. 用户管理,接收用户的登录请求。
  2. 信息传递,根据用户的请求,传递所需的角色信息、怪物信息、事件结果等。服务器会记录每个玩家的状态和位置。
  3. 记录统计,记录每个客户端传来的每个玩家的实时角色信息,如生命值、经验值等。维护数据库中的玩家和怪物信息。
  4. 创建数据表,将怪物信息登记入库内,需要时读取调用。受到客户端的存档请求时创建saveData数据库,将当前玩家信息插入记录。

服务器端与客户端基于TCP连接,同时采用select,实现TCP的并发服务器、客户端与服务器通信的全双工。

 

 


原文地址:https://blog.csdn.net/Yadi_dr1/article/details/142740389

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!