一种游戏状态监测方法和装置制造方法及图纸

技术编号:26642398 阅读:24 留言:0更新日期:2020-12-08 23:20
本发明专利技术实施例提供了一种游戏状态监测方法和装置,所述方法包括:服务器接收游戏中的第一用户的客户端发送的用户监测请求;响应用户监测请求确定第一目标用户和第二目标用户;调用预设的观察者组件,将第一用户设置为观察者对象,将第一目标用户设置为第一用户的被观察者对象,以及设置第一用户观察第一目标用户的游戏状态的观察事件,以使第一用户的客户端监测第一目标用户的游戏状态;生成针对第二目标用户的游戏状态的回复消息,以及向第一用户的客户端返回所述回复消息。通过调用预设的观察者组件对被观察者以及观察者的设置,以及第一用户的客户端本地缓存的缓存数据,实现对附近的目标用户的游戏状态变化进行感知。

【技术实现步骤摘要】
一种游戏状态监测方法和装置
本专利技术涉及计算机应用
,特别是涉及一种游戏状态监测方法和一种游戏状态监测装置。
技术介绍
LBS(LocationBasedService)是一套基于地理位置的服务,可以向各个游戏提供查找附近的玩家和反向地理编码等服务,同时提供了一种不依赖于任何第三方服务的用户定位方案,从而大幅提高了查询效率。当客户端需要查询附近的人的信息时,传统的做法是先去获取地理位置信息,然后向服务端发起请求,即服务端在向LBS查询得到附近的玩家ID之后,还需要查询这些玩家游戏内的状态,再将针对游戏内玩家的状态返回给客户端。整个一套流程走下来,耗时比较长,玩家体验较差,同时由于参与多人互动联网类游戏的玩家数量较多,如果每次都向LBS请求的话,查询压力也会比较大,且向LBS的请求只能获得玩家的附近有哪些人,玩家游戏内的状态还需要游戏自己来维护。
技术实现思路
鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种游戏状态监测方法和相应的一种游戏状态监测装置。为了解决上述问题,本专利技术实施例公开了一种游戏状态监测方法,所述方法包括:服务器接收游戏中的第一用户的客户端发送的用户监测请求;响应所述用户监测请求,确定第一目标用户和第二目标用户;所述服务器不具有与所述第一目标用户对应的满足预设要求的缓存数据;所述服务器具有与所述第二目标用户对应的满足预设要求的缓存数据;调用预设的观察者组件,将所述第一目标用户设置为所述第一用户的被观察者对象,将所述第一用户设置为观察者对象,以及设置所述第一用户观察所述第一目标用户的游戏状态的观察事件,以使所述第一用户的客户端监测所述第一目标用户的游戏状态;生成针对所述第二目标用户的游戏状态的回复消息,以及向所述第一用户的客户端返回所述回复消息,以使所述第一用户的客户端根据所述回复消息从位于所述客户端的缓存数据中获取所述第二目标用户的游戏状态。可选地,所述响应所述用户监测请求,确定第一目标用户,包括:响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态;所述登陆状态包括在线状态或离线状态;将登陆状态为在线状态的当前的第二用户确定为第一目标用户。可选地,所述响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态,包括:响应所述用户监测请求,检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;若不具有在先查找的第二用户的缓存数据,则调用预设服务获取当前的第二用户,以及从预设游戏数据库查询所述当前的第二用户的登陆状态。可选地,所述响应所述用户监测请求,确定第二目标用户,包括:响应所述用户监测请求查找游戏中当前的第二用户,以及检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;若具有所述在先查找的第二用户的缓存数据,且所述在先查找的第二用户的缓存数据的存储时间未超过预设时长,则将在先查找的第二用户作为当前的第二用户,且确定所述当前的第二用户为第二目标用户。可选地,还包括:获取所述第一目标用户的用户信息;所述用户信息包括所述第一目标用户的用户名称、所述第一目标用户的地理位置信息以及所述目标用户的游戏进程信息;向所述第一用户的客户端发送所述第一目标用户的用户信息,以使所述第一用户的客户端将所述第一目标用户的用户信息进行存储。可选地,所述用户监测请求包括所述第一用户的地理位置信息,所述地理位置信息由所述第一用户的客户端在检测到所述第一用户具有预设用户意图时获得;所述调用预设服务获取当前的第二用户,包括:调用预设的地理位置服务,根据所述第一用户的地理位置信息确定当前的第二用户。可选地,还包括:当被设置为被观察者对象的第三用户离线后,注销对所述第三用户设置的被观察者对象。可选地,还包括:当离线状态的第四用户变为在线状态后,获取所述第四用户对应的观察信息;根据所述观察信息,确定观察所述第四用户的第五用户;将所述第五用户设置为所述第四用户的观察者对象,并设置针对所述第四用户的游戏状态的观察事件,以使所述第五用户的客户端监测所述第四用户的游戏状态。可选地,还包括:获取所述第一目标用户以及所述第二目标用户的联系信息;向所述第一用户的客户端发送所述第一目标用户以及所述第二目标用户的联系信息。本专利技术实施例还公开了一种游戏状态监测装置,应用于服务器,所述装置包括:用户监测请求接收模块,用于接收游戏中的第一用户的客户端发送的用户监测请求;用户监测请求响应模块,用于响应所述用户监测请求,确定第一目标用户和第二目标用户;所述服务器不具有与所述第一目标用户对应的满足预设要求的缓存数据;所述服务器具有与所述第二目标用户对应的满足预设要求的缓存数据;游戏状态监测模块,用于调用预设的观察者组件,将所述第一用户设置为观察者对象,将所述第一目标用户设置为所述第一用户的被观察者对象,以及设置所述第一用户观察所述第一目标用户的游戏状态的观察事件,以使所述第一用户的客户端监测所述第一目标用户的游戏状态;回复消息返回模块,用于生成针对所述第二目标用户的游戏状态的回复消息,以及向所述第一用户的客户端返回所述回复消息,以使所述第一用户的客户端根据所述回复消息从位于所述客户端的缓存数据中获取所述第二目标用户的游戏状态。可选地,所述用户监测请求响应模块包括:第一用户监测请求响应子模块,用于响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态;所述登陆状态包括在线状态或离线状态;第一目标用户确定子模块,用于将登陆状态为在线状态的当前的第二用户确定为第一目标用户。可选地,所述第一用户监测请求响应子模块包括:缓存数据检测单元,用于响应所述用户监测请求,检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;登陆状态第一查询单元,用于若不具有在先查找的第二用户的缓存数据,则调用预设服务获取当前的第二用户,以及从预设游戏数据库查询所述当前的第二用户的登陆状态。可选地,所述用户监测请求响应子模块还包括:登陆状态第二查询单元,用于若在先查找的第二用户的缓存数据的存储时间超过预设时长,则将在先查找的第二用户作为当前的第二用户,以及从预设游戏数据库查询所述当前的第二用户的登陆状态。可选地,所述用户监测请求响应模块包括:第二用户监测请求响应子模块,用于响应所述用户监测请求查找游戏中当前的第二用户,以及检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;第二目标用户确定子模块,用于若具有所述在先查找的第二用户的缓存数据,且所述在先查找的第二用户的缓存数据的存储时间未超过预设时长,则将在先查找的第二本文档来自技高网...

【技术保护点】
1.一种游戏状态监测方法,其特征在于,所述方法包括:/n服务器接收游戏中的第一用户的客户端发送的用户监测请求;/n响应所述用户监测请求,确定第一目标用户和第二目标用户;所述服务器不具有与所述第一目标用户对应的满足预设要求的缓存数据;所述服务器具有与所述第二目标用户对应的满足预设要求的缓存数据;/n调用预设的观察者组件,将所述第一用户设置为观察者对象,将所述第一目标用户设置为所述第一用户的被观察者对象,以及设置所述第一用户观察所述第一目标用户的游戏状态的观察事件,以使所述第一用户的客户端监测所述第一目标用户的游戏状态;/n生成针对所述第二目标用户的游戏状态的回复消息,以及向所述第一用户的客户端返回所述回复消息,以使所述第一用户的客户端根据所述回复消息从位于所述客户端的缓存数据中获取所述第二目标用户的游戏状态。/n

【技术特征摘要】
1.一种游戏状态监测方法,其特征在于,所述方法包括:
服务器接收游戏中的第一用户的客户端发送的用户监测请求;
响应所述用户监测请求,确定第一目标用户和第二目标用户;所述服务器不具有与所述第一目标用户对应的满足预设要求的缓存数据;所述服务器具有与所述第二目标用户对应的满足预设要求的缓存数据;
调用预设的观察者组件,将所述第一用户设置为观察者对象,将所述第一目标用户设置为所述第一用户的被观察者对象,以及设置所述第一用户观察所述第一目标用户的游戏状态的观察事件,以使所述第一用户的客户端监测所述第一目标用户的游戏状态;
生成针对所述第二目标用户的游戏状态的回复消息,以及向所述第一用户的客户端返回所述回复消息,以使所述第一用户的客户端根据所述回复消息从位于所述客户端的缓存数据中获取所述第二目标用户的游戏状态。


2.根据权利要求1所述的方法,其特征在于,所述响应所述用户监测请求,确定第一目标用户,包括:
响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态;所述登陆状态包括在线状态或离线状态;
将登陆状态为在线状态的当前的第二用户确定为第一目标用户。


3.根据权利要求2所述的方法,其特征在于,所述响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态,包括:
响应所述用户监测请求,检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;
若不具有在先查找的第二用户的缓存数据,则调用预设服务获取当前的第二用户,以及从预设游戏数据库查询所述当前的第二用户的登陆状态。


4.根据权利要求3所述的方法,其特征在于,所述响应所述用户监测请求查找游戏中当前的第二用户,以及获取当前的所述第二用户的登陆状态,还包括:
若在先查找的第二用户的缓存数据的存储时间超过预设时长,则将在先查找的第二用户作为当前的第二用户,以及从预设游戏数据库查询所述当前的第二用户的登陆状态。


5.根据权利要求1所述的方法,其特征在于,所述响应所述用户监测请求,确定第二目标用户,包括:
响应所述用户监测请求查找游戏中当前的第二用户,以及检测是否具有在先查找的第二用户的缓存数据,且所述缓存数据的存储时间是否超过预设时长;
若具有所述在先查找的第二用户的缓存数据,且所述在先查找的第二用户的缓存数据的存储时间未超过预设时长,则将在先查找的第二用户作为当前的第二用户,且确定所述当前的第二用户为第二目标用户。


6.根据权利要求2所述的方法,其特征在于,还包括:
获取所述第一目标用户的用户信息;所述用户信息包括所述第一目标用户的用户名称、所述第一目标用户的地理位置信息以及所述第一目标用户的游戏进程信息;
...

【专利技术属性】
技术研发人员:石剑
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1