游戏的服务器是怎么弄法的?

游戏验证方法、装置、游戏服务器及验证服务器的制造方法

[0001]本发明涉及通信领域,具体而言,涉及一种游戏验证方法、装置、游戏服务器、验证服务器及游戏系统。

[0002]游戏可以包括有许多独立的小游戏玩法,这些玩法结果都会参与到奖励结算,月艮务端基于安全考虑,需要对客户端发送的游戏过程及游戏结果进行验证,防止玩家用外挂牟利(需要说明的是,此处的外挂是指利用电脑技术针对一个或多个网络游戏,通过改变软件的部分程序制作而成的作弊程序)。其中,一些玩法还比较复杂(例如,三消、神经猫等),游戏时间开销大,并且还包含了随机运算。

[0003]为了实现对客户端游戏的验证,在相关技术中,主要采用以下两种处理方式:

[0004]方式一,实时验证的方式。在采用这种方式时,服务端(用于响应服务请求、提供计算服务的设备,例如,在本文中涉及的是游戏服务器)需要保存客户端(与服务端相对应,为客户提供本地服务的程序)的中间游戏状态,客户端需要把每一步游戏操作对应的操作类型和游戏状态发送给服务端,之后,服务端计算校验中间游戏状态的输入和输出是否合法,这种方式可以确保游戏结果检验的精准,能有效防止玩家开外挂破解。然而该方式存在一些问题,例如,游戏服务器需要全面接管客户端的游戏逻辑,计算开销量大,并且需要保存游戏中间状态,导致游戏逻辑复杂难以维护。另外,对于一些客户端(例如,手机移动端),因为网络不稳定容易出现延迟卡顿,务必会影响玩家游戏体验,甚至可能因为丢包导致游戏过程中断。因此,采用上述方式一时,不仅增大了游戏服务器的计算开销,而且也增大了游戏服务器逻辑的复杂性。

[0005]方式二,客户端记录玩家的所有操作,在游戏结束后,把操作序列和游戏结果发送给服务端检验。在游戏过程中,因为所有的计算都在客户端进行,所以玩家能得到良好的游戏体验。然而,采用该方式二时,由于服务端需要重写整套游戏玩法逻辑,来校验玩家每一步操作的合法性,这种方式因为服务端和客户端逻辑基于不同的脚本语言,检验结果不一定精确。例如,因为一些游戏玩法经常在节日活动时间放出,复杂的玩法检验增大游戏服务器的计算开销,这会导致游戏服务器在节日的高峰期负载能力下降。因此,在采用上述方式二来对客户端的游戏进行验证时,还是不仅增大了游戏服务器的计算开销,而且也增大了游戏服务器逻辑的复杂性。

[0006]因此,在相关技术中,采用游戏服务器对客户端的游戏进行验证时,存在增大游戏服务器的计算开销,以及游戏服务器逻辑复杂性的问题。

[0007]本发明提供了一种游戏验证方法、装置、游戏服务器、验证服务器及游戏系统,以至少解决相关技术中采用游戏服务器对客户端的游戏进行验证时,存在增大游戏服务器的计算开销,以及游戏服务器逻辑复杂性的问题。

[0008]根据本发明的一个方面,提供了一种游戏验证方法,包括:接收客户端发送的在所述客户端操作游戏的操作序列;将接收到的所述操作序列发送给验证服务器,用于所述验证服务器依据所述操作序列对所述客户端操作游戏进行验证;接收所述验证服务器返回的验证结果。

[0009]优选地,在接收所述客户端发送的在所述客户端操作游戏的所述操作序列之前,还包括:生成用于指示所述客户端开启所述游戏的随机种子;将生成的所述随机种子发送给所述客户端;将接收到的所述操作序列发送给所述验证服务器,用于所述验证服务器依据所述操作序列对所述客户端操作游戏进行验证包括:将生成的所述随机种子和接收到的所述操作序列发送给所述验证服务器,用于所述验证服务器依据所述操作序列和所述随机种子对所述客户端操作游戏进行验证。

[0010]优选地,在将接收到的所述操作序列发送给所述验证服务器,用于所述验证服务器依据所述操作序列对所述客户端操作游戏进行验证之前,包括:确定用于接收所述操作序列的所述验证服务器。

[0011]优选地,通过以下方式之一,确定用于接收所述操作序列的所述验证服务器:从与游戏服务器建立连接的一个或多个验证服务器中,选择负载最小的验证服务器为用于接收所述操作序列的所述验证服务器;分别判断与游戏服务器建立连接的一个或多个验证服务器的负载是否均超过对应的负载阈值,在判断结果为存在没超过对应负载阈值的一个或多个验证服务器的情况下,从没超过对应负载阈值的一个或多个验证服务器中选择负载最小的验证服务器为用于接收所述操作序列的所述验证服务器;和/或,在判断结果为与游戏服务器建立连接的一个或多个验证服务器的负载均超过了对应的负载阈值的情况下,新建一个验证服务器作为用于接收所述操作序列的所述验证服务器;新建一个验证服务器作为用于接收所述操作序列的所述验证服务器。

[0012]优选地,所述验证服务器对所述客户端操作游戏进行验证时所采用的脚本与所述客户端操作游戏的脚本复用同一份代码。

[0013]根据本发明的另一方面,提供了一种游戏验证方法,包括:接收游戏服务器发送的在客户端操作游戏的操作序列;依据所述操作序列,对所述客户端操作游戏进行验证;将验证获得的验证结果返回给所述游戏服务器。

[0014]优选地,在依据所述操作序列,对所述客户端操作游戏进行验证之前,还包括:接收所述游戏服务器发送的用于指示所述客户端开启所述游戏的随机种子;依据所述操作序列,对所述客户端操作游戏进行验证包括:依据所述操作序列和所述随机种子对所述操作游戏进行验证。

[0015]优选地,在接收所述游戏服务器发送的在所述客户端操作游戏的所述操作序列之前,还包括:向所述游戏服务器上报验证服务器的负载状况。

[0016]优选地,对所述客户端操作游戏进行验证时所采用的脚本与所述客户端操作游戏的脚本复用同一份代码。

[0017]根据本发明的一方面,提供了一种游戏验证装置,包括:第一接收模块,用于接收客户端发送的在所述客户端操作游戏的操作序列;发送模块,用于将接收到的所述操作序列发送给验证服务器,用于所述验证服务器依据所述操作序列对所述客户端操作游戏进行验证;第二接收模块,用于接收所述验证服务器返回的验证结果。

[0018]优选地,所述装置还包括:生成模块,用于生成用于指示所述客户端开启所述游戏的随机种子;并将生成的所述随机种子发送给所述客户端;所述发送模块用于将生成的所述随机种子和接收到的所述操作序列发送给所述验证服务器,以使所述验证服务器依据所述操作序列和所述随机种子对所述客户端操作游戏进行验证。

[0019]优选地,该装置还包括:确定模块,用于确定用于接收所述操作序列的所述验证服务器。

[0020]优选地,所述确定模块,还用于通过以下方式之一,确定用于接收所述操作序列的所述验证服务器:从与游戏服务器建立连接的一个或多个验证服务器中,选择负载最小的验证服务器为用于接收所述操作序列的所述验证服务器;分别判断与游戏服务器建立连接的一个或多个验证服务器的负载是否均超过对应的负载阈值,在判断结果为存在没超过对应负载阈值的一个或多个验证服务器的情况下,从没超过对应负载阈值的一个或多个验证服务器中选择负载最小的验证服务器为用于接收所述操作序列的所述验证服务器;和/或,在判断结果为与游戏服务器建立连接的一个或多个验证服务器的负载均超过了对应的负载阈值的情况下,新建一个验证服务器作为用于接收所述操作序列的所述验证服务器;新建一个验证服务器作为用于接收所述操作序列的所述验证服务器。

[0021 ]根据本发明的另一方面,提供了一种游戏服务器,包括上述任一项所述的装置。

[0022]根据本发明的一方面,提供了一种游戏验证装置,包括:第三接收模块,用于接收游戏服务器发送的在客户端操作游戏的操作序列;验证模块,用于依据所述操作序列,对所述客户端操作游戏进行验证;返回模块,用于将验证获得的验证结果返回给所述游戏服务器。

[0023]优选地,所述装置还包括:第四接收模块,用于接收所述游戏服务器发送的用于指示所述客户端开启所述游戏的随机种子;所述

个人想搞一台游戏服务器,游戏源码是网络上买的.我想问下.我是否需要去办营业执照,还有去通信部门办网络经营许可证???不办可以吗.我是个人的.服务器是租用的.谢谢回复我一下.我是否要办理这些手续.不是很懂.听人说要办.也有说不办.

我是一个学生,对Minecraft(中译:我的世界)对这款游戏相当感兴趣,于是架设了一个100人的小型服务器,和同学朋友以及网络上的游戏爱好者一起玩耍,服务器全部由自己出钱,并不收任何费用,完全免费。

另外这个游戏是一款单机游戏,但提供联机功能。

其服务端也是官方直接提供下载并教如何使用的, 并不是像传奇私服那样偷窃源代码,损坏官方服务器利益;这个游戏由MOJANG开发,官方并未架设服务器,那么我在国内架设这样一个免费服务器和爱好者玩,属于违规或者违法行为吗?

我要回帖

更多关于 舞法天女朵法拉第三季 的文章

 

随机推荐