机器人系统及其实现方法、客户端、服务器以及游戏系统的制作方法

文档序号:9923871阅读:1267来源:国知局
机器人系统及其实现方法、客户端、服务器以及游戏系统的制作方法
【技术领域】
[0001]本发明涉及游戏对象控制领域,尤其涉及一种机器人系统及其实现方法、机器人客户端、机器人服务器以及游戏系统。
【背景技术】
[0002]游戏管理员(GM)又称网络管理员,是网络游戏中主持游戏或监管玩家行为并维护游戏环境的负责人。游戏管理员在实施管理时,一般都是通过特定的GM命令进行操作。另夕卜,游戏在开发过程中,测试人员也可以通过GM命令对游戏进行各种测试。
[0003]GM指令是指面向游戏管理员开发的一些快捷指令,其本质就是一些可供调用的函数,一般会提前编写好一些常用的GM指令,需要用到的时候直接在命令行调用。GM指令根据作用目标可以分为服务端GM指令和客户端GM指令。
[0004]在现有游戏系统中,通过在游戏服务器中建立一个监控账号(GM指令工具),用于监控实际游戏运营时服务器上玩家的各种行为。具体的,就是在该监控账号中新建一个不可见的角色进入游戏服务器,实时监控服务器上真实玩家的发言,并且可以控制该角色移动到地图不同位置观察真实玩家的各种行为。
[0005]另外,在现有游戏系统中,为了保障游戏的正常运行,通过需要对游戏服务器进行压力测试。压力测试是指模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行游戏,来测试被测系统的性能、可靠性、稳定性等。
[0006]传统的压力测试方法为手动创建真实玩家账号登入同一台服务器并进行某项操作,或者使用脚本模拟客户端向服务器发送登录请求等操作,从而测试该服务器相应操作的能力。

【发明内容】

[0007]经工程测试研究发现,现有的游戏系统通过设置一个不可见的游戏角色来监控真实玩家的行为及游戏过程,每次只能修改一项数据,不能批量修改数据,效率较低;且该游戏角色不可见,无法实现真实玩家可以做的操作,例如攻击、使用道具等,也无法测试客户端/服务器端在玩家较多场景下的性能。另外,现有的游戏系统通过手动操作来实现压力测试,不能很好的模拟多个客户端同时向服务器发出请求的情况,而脚本批量请求不能完全还原玩家真实的登录、移动、战斗等操作,导致压力测试结果并不真实,准确度不高。
[0008]为实现更好的GM指令执行效果和压力测试效果,我们提出了一种机器人系统,通过该机器人系统创建多个机器人玩家,并使每个机器人玩家连接现有游戏系统的游戏服务器以进入游戏中执行自动操作。这样,通过机器人玩家来执行预设的Al操作或/和执行GM指令所对应的操作以对游戏服务器进行对应的压力测试,不仅能够实现批量的游戏数据修改,提高效率;而且能够完全还原玩家真实的登录、移动、战斗等操作,测试结果真实且准确。
[0009]为实现上述目的,本发明提供一种机器人系统及其实现方法、机器人客户端、机器人服务器及游戏系统,能够通过机器人玩家来执行预设的Al操作或/和执行GM指令所对应的操作以对游戏服务器进行对应的压力测试,提高测试效率和准确度。。
[0010]本发明实施例提供了一种机器人系统,包括:
[0011]机器人服务器管理中心;
[0012]与所述机器人服务器管理中心连接的至少一个机器人服务器,每一所述机器人服务器通过所述机器人服务器管理中心连接游戏服务器;
[0013]与每一所述机器人服务器连接的至少一个机器人客户端,至少一个机器人玩家通过所述机器人客户端创建以实现与所述游戏服务器通信;所述机器人玩家用于进入游戏执行指定的操作。
[0014]本发明实施例还提供了一种机器人系统的实现方法,包括:
[0015]配置机器人服务器管理中心;
[0016]配置与所述机器人服务器管理中心连接的至少一个机器人服务器,每一所述机器人服务器通过所述机器人服务器管理中心连接游戏服务器;
[0017]配置与每一所述机器人服务器连接的至少一个机器人客户端,至少一个机器人玩家通过所述机器人客户端创建以实现与所述游戏服务器通信;所述机器人玩家用于进入游戏执行指定的操作。
[0018]本发明实施例还提供了一种机器人客户端,包括:
[0019]通信模块,用于连接机器人服务器;其中,每一所述机器人服务器通过机器人服务器管理中心连接游戏服务器;
[0020]机器人玩家创建模块,用于创建至少一个机器人玩家以实现与所述游戏服务器通信;所述机器人玩家用于进入游戏执行指定的操作。
[0021]本发明实施例还提供一种机器人服务器,包括第一通信模块和第二通信模块,其中:
[0022]第一通信模块,用于连接机器人服务器管理中心,将经由所述机器人服务器管理中心发送的游戏服务器的下行数据,通过所述第二通信模块发送给机器人客户端;其中,所述机器人服务器管理中心连接游戏服务器;
[0023]第二通信模块,用于连接至少一个机器人客户端,将所述机器人客户端上传的机器人玩家的数据,通过所述第一通信模块发送给所述机器人服务器管理中心,由所述机器人服务器管理中心上传给对应连接的游戏服务器;其中,每一所述机器人客户端创建至少一个机器人玩家以实现与所述游戏服务器通信;所述机器人玩家用于进入游戏执行指定的操作。
[0024]本发明实施例还提供了一种游戏系统,包括如上所述的机器人系统、与所述机器人系统连接的游戏服务器以及连接所述游戏服务器的至少一个游戏客户端,真实玩家通过所述游戏客户端登陆游戏服务器以与所述机器人玩家一起游戏。
[0025]与现有技术相比,本发明实施例公开的机器人系统及其实现方法、机器人客户端、机器人服务器及游戏系统,通过机器人系统来创建多个角色可见的机器人玩家,并使机器人玩家能够与游戏系统的游戏服务器进行通信以进入游戏中执行自动操作,与真实玩家共同游戏。这样,通过机器人玩家来执行预设的Al操作或/和执行GM指令所对应的操作以对游戏服务器进行对应的压力测试,不仅能够实现批量的游戏数据修改,提高效率;而且能够完全还原玩家真实的登录、移动、战斗等操作,测试结果真实且准确。
【附图说明】
[0026]图1是本发明实施例一种机器人系统的结构框图。
[0027]图2是本发明实施例一种机器人系统的机器人玩家启动及初始化流程图。
[0028]图3是本发明实施例一种机器人系统的机器人玩家向游戏服务器发起数据通信的示意图。
[0029]图4是本发明实施例一种机器人系统的游戏服务器向机器人玩家发起数据通信的示意图。
[0030]图5是本发明实施例一种机器人系统所创建的战斗对照表的示意图。
[0031]图6是本发明实施例一种机器人系统所设定的GM指令与机器人玩家操作间的对应关系的不意图。
[0032]图7是本发明实施例一种机器人系统中通过UI界面进行录入GM指令的示意图。
[0033]图8是利用本发明实施例提供的一种机器人系统进行压力测试前的预备工作流程图。
[0034]图9是本发明实施例一种机器人系统中的机器人服务器增加机器人客户端连接数的流程图。
[0035]图10是本发明实施例一种机器人系统中的机器人服务器删除机器人客户端连接数的流程图。
[0036]图11是本发明实施例一种机器人系统执行断线重连机制的流程图。
[0037]图12是利用本发明实施例一种机器人系统进行游戏服务器的用户登录压力测试的实例流程图。
[0038]图13是利用本发明实施例一种机器人系统进行游戏服务器的用户其他操作压力测试的实例流程图。
[0039]图14是本发明实施例一种机器人系统的实现方法的流程图。
[0040]图15是本发明实施例一种机器人客户端的结构框图。
[0041 ]图16是本发明实施例一种机器人服务器的结构框图。
【具体实施方式】
[0042]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043]参见图1,是本发明实施例提供的一种机器人系统的结构示意图。本实施例的机器人系统(Qarobot系统)通过创建机器人玩家(Qarobot玩家)以与真实的游戏服务器进行通信,从而与真实玩家共同游戏。其中,通过本实施例的Qarobot系统创建的机器人玩家能够进入游戏,执行预设的Al操作或/和执行GM指令所对应的操作。
[0044]需要说明一下,在本实施例中,机器人玩家是指可以用简单命令控制,实现自动进入游戏、在游戏中自动完成一些动作的模拟角色,其与真实玩家相对。但是,对于游戏服务器来说,机器人玩家和真实玩家都是可见的,游戏服务器并不能区分哪些是机器人玩家,哪些是真实玩家,游戏服务器会依据真实的流程与机器人玩家交互数据。GM指令具体指游戏管理员(Game Manager)指令。Al操作具体指的是人工智能(Artificial Intelligence)操作。
[0045]如图1所示,本实施例公开的Qarobot系统I包括机器人服务器管理中心11、与所述机器人服务器管理中心11连接的至少一个机器人服务器12以及与每一所述机器人服务器12连接的至少一个机器人客户端13,其中,每一所述机器人服务器12通过所述机器人服务器管理中心11连接真实的游戏系统2中的游戏服务器21;而至少一个机器人玩家14通过所述机器人客户端13创建以实现与所述游戏服务器21通信。
[0046]本实施例的Qarobot系统通过机器人服务器管理中心(QaServerManager) 11连接真实的游戏服务器(GameServer)21,一般网络版的游戏会存在多个游戏服务器待选,本实施例的Qarobot系统可以指定之中的一个,或者重载服务器连接协议,通过策略选服。本实施例的Qarobot系统通过机器人服务器(Qarobot Server)12与游戏服务器21对接,机器人服务器12符合游戏服务器的网络协议接口,能够与游戏服务器21无阻碍的正常通信。
[0047]具体的,本实施例的机器人服务器(Qarobot Server)12具有以下功能:
[0048]I)网络初始化:建立tcp连接并监听socket ;
[0049]2)维护客户端列表,依据情况向其中添加或移除机器人客户端;
[0050]3)为机器人客户端维护Iua数据流表,适时建立和断开数据流;
[0051 ] 4)建立客户端重连接池,使用排队论向其中添加连接对象,并定期维护连接池容量。
[0052]与机器人服务器(QarobotServer) 12相对应的是机器人客户端(QarobotClient)13,机器人客户端13实现了客户端协议,此协议与机器人服务器12对应,多数情况下被重载,和游戏中真实的客户端协议关系不大。机器人客户端13具有以下功能:
[0053]I)建立并维护机器人玩家元表(Qarobot元表)。元表中保存每个机器人玩家(Qarobot玩家)14的IP和端口,以及聊天队列,通过读取元表即可读取各个IP和端口,聊天队列用于存储向Qarobo t玩家发送的指令;
[0054]其中,IP和端口是机器人玩家14所在机
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1