一种实现网络游戏无缝世界服务器的方法

文档序号:7740918阅读:223来源:国知局
专利名称:一种实现网络游戏无缝世界服务器的方法
技术领域
本发明属于网络技术领域,具体涉及一种实现网络游戏无缝世界服务器的方法。
背景技术
网络游戏无缝世界服务器允许网络游戏使用很多台服务器支持游戏中一块场地 的运行。每台服务器支持整块场地中的一小块场地的运行。当两个玩家处于不同服务器支 持的场地上时,他们之间进行的活动应该和整块场地由一台服务器支持时无异,例如互相 看见对方、进行战斗、结伴、交换物品等活动。但在实际操作中要做到这一点非常困难,即使 使用大量代码也无法保证完全正确地做到这一点。目前使用得最多的方法是代理对象方法,这种方法当一个对象进入边界区域时, 它所在的服务器会通知相邻的服务器,后者会创建一个代理对象来表示远程对象。同样地, 当这个对象从边界区域移动到服务器“内部”时,所述代理对象就被销毁。但是这种方式即 使是最简单的游戏机制实现起来仍然非常困难。造成这种困难的原因就是两台服务器都在运行。当两台服务器同时修改一个对象 时就会无法确定对象的状态。

发明内容
为了解决上述问题,本发明提供了一种实现网络游戏无缝世界服务器的方法,该 方法对于几台服务器之间的边界区域,需要只让其中一台服务器运行,而暂停其它服务器 对这块场地的处理。本发明所采用的技术方案是一种实现网络游戏无缝世界服务器的方法,其特征 在于,所述的方法包括步骤步骤1 将整块场地分成2块或2块以上的小块,且每台服务器支持其中的一小块 或几小块场地的运行;步骤2 暂停全部服务器对各自场地的运行处理;步骤3 选取其中一块或一块以上的小块场地,令支持这些场地运行的服务器获 取这些小块场地以及这些小块场地相邻边界的状态;步骤4 计算这些小块场地的状态,以及在计算过程中对这些小块场地相邻边界 状态的修改;步骤5 对整块场地中其余的小块场地,循环执行步骤2至步骤4。优选的,在步骤1中,所述的整块场地有以下3种不同划分方式面积相等、面积不 等和两种方式并存。优选的,对所述的整块场地,循环执行步骤2至步骤5。优选的,可以把所述的小块场地交给其它服务器来支持它的运行。优选的,所述的小块场地可以被继续分割成小块或者继续合并成大块。与现有技术相比,本发明的优势在于对于几台服务器之间的边界区域,需要只让其中一台服务器运行,而暂停其它服务器对这块场地的处理,这样使得同一个对象同一时 间只有一台服务器对它进行修改。并且大部分MMORPG (大型多人在线角色扮演游戏)服务 器端每1/10秒才向客户端发送一次数据。即使是FPS(第一人称射击)游戏,通常也不超 过1/60秒向客户端发送一次数据。因此只要在1/10或1/60秒内让几台服务器轮流得到 运行,就不会对游戏造成太大影响。这样当两个玩家处于不同服务器支持的场地上时,他们 之间进行的活动和整块场地由一台服务器支持时几乎没有差别。


图1为本发明所述以2台服务器为例的一种实现网络游戏无缝世界服务器的方法。图2为本发明所述以4台服务器为例的一种实现网络游戏无缝世界服务器的方法。图3为本发明所述以任意多台服务器支持整块场地,以其中的16台服务器为例的 一种实现网络游戏无缝世界服务器的方法。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步 的详细描述。实施例1 首先以两台服务器为例。如图1所示将整块场地分为两块,场地1由服务器1支持它的运行,场地2由服务器2支持它 的运行。两块场地的面积划分是任意的,可以相同也可以不同。两台服务器暂停对各自场地 的处理。服务器2从服务器1获取场地1与场地2相邻的边界的状态,这里称它为状态1。 服务器2计算场地2的状态,以及在计算过程中对状态1所造成的修改。例如服务器2上 的玩家攻击服务器1上的玩家,把一个物品交给另一个玩家等都会导致状态1的修改。然 后服务器2暂停它对场地2以及状态1的状态的处理。服务器2把场地2和场地1相邻的 边界的状态以及修改后的状态1传送给服务器1。如果有玩家、非玩家、物品等对象越过场 地的边界,则要把这些对象的所有权交给另一台服务器。以后服务器1对它所支持的场地 的处理就和服务器2—样了。实施例2再来看一下一块场地被几台服务器可见的情况,如图2所示将整块场地分成4小块,分别为场地1、场地2、场地3和场地4,且分别由服务器 1、服务器2、服务器3和服务器4支持它的运行。场地1的右下角、场地2的左下角等被其 它3块场地可见。这种情况下4台服务器必须轮流运行。在服务器1运行时,其它服务器 必须把它们靠近场地1的边界的场地的状态传送给服务器1。其它几台服务器的情况也是 一样。每台服务器服务器可以支持不止一小块场地的运行,而且哪台服务器支持哪一小 块场地的运行是没有限制的。例如我们可以让场地1和2都由服务器1来支持它们的运行, 场地3和4都由服务器2来支持它们的运行。这样4块场地只要2台服务器就可以支持它们的运行。甚至场地1和4由服务器1支持,场地2和3由服务器2支持等等也没有任何 问题。实施例3如图3所示游戏中的场地被分成了任意小块,每小块由一台服务器支持它的运行,选取其中 的16小块为例,其中场地编号为1至16,服务器的编号与场地对应。首先暂停全部16台 服务器,然后服务器1、服务器3、服务器9、服务器11分别获取和它们相邻的场地边界的状 态。然后服务器进入以下循环服务器服务器1、服务器3、服务器9、服务器11分别计算各 自场地的状态,以及在此过程中对相邻的场地造成的影响。现在服务器1、服务器3、服务器 9、服务器11有了最新的自己场地上和相邻场地边界上的状态。然后服务器1、服务器3、服 务器9、服务器11暂停对各自场地状态的计算。服务器2从服务器1、服务器3、服务器5、 服务器6、服务器7获取最新的场地边界的状态。当然很明显的是此时服务器2的左边界和 服务器6的左上角边界部分的最新状态在服务器1上,所以应该从服务器1上获取。其它 边界的状态也是一样。另外服务器4、服务器10、服务器12也同时各自象服务器2 —样获 取它们自己以及相邻边界的场地的状态。然后服务器2、服务器4、服务器10、服务器12分 别计算它们各自的场地以及在此计算过程中对相邻场地边界的影响。然后是服务器5、服务 器7、服务器13、服务器15和服务器6、服务器8、服务器14、服务器16依次运行。这样就完 成了一次服务器运行的循环。需要注意的是场地被分割时同一对象不能被同时修改的原则仍然适用,因此小块 的宽度至少不能小于边界宽度的两倍。可以在游戏运行时把小块场地交给其它服务器来支持它们的运行,只要把这一小 块场地的全部状态传送给其它服务器。也可以在游戏运行时把小块场继续分割,然后把分 割后的小块场地交给其它服务器来支持它们的运行。或者把相邻的小块场地合并,由同一 台服务器来支持它们的运行。在合并前需要先把想要合并的小块场地的状态传送到同一台 服务器。这样我们就可以在游戏运行时动态调整支持整块场地中任何一小部分运行所使用 的服务器,以达到合理分配每台服务器的负载的目的。每台服务器可以支持不止一块场地的运行,因此我们可以把场地1、场地2、场地 5、场地6放在服务器1上,场地3、场地4、场地7、场地8放在服务器2上,场地9、场地10、 场地13、场地14放在服务器3上,场地11、场地12、场地15、场地16放在服务器4上。这 样这16块场地实际只需要4台服务器来支持它们的运行。我们还可以任意分割或合并小 块场地。例如我们可以在游戏运行时把场地1至8合并成一块,场地9、场地10、场地13、 场地14合并成一块,场地11、场地12、场地15、场地16合并成一块,让它们分别由服务器1 至3支持它们的运行。或者也可以分割场地1至16中的任何一小块,把分割后的小块交给 其它服务器来支持它们的运行。以上所述的实施例,只是本发明较优选的具体实施方式
的一种,本领域的技术人 员在本发明技术的方案范围内,进行的通常变化和替换,都应包含在本发明的保护范围内。
权利要求
1.一种实现网络游戏无缝世界服务器的方法,其特征在于,所述的方法包括步骤 步骤1 将整块场地分成2块或2块以上的小块,且每台服务器支持其中的一小块或几小块场地的运行;步骤2 暂停全部服务器对各自场地的运行处理;步骤3 选取其中一块或一块以上的小块场地,令支持这些场地运行的服务器获取这 些小块场地以及这些小块场地相邻边界的状态;步骤4 计算这些小块场地的状态,以及在计算过程中对这些小块场地相邻边界状态 的修改;步骤5 对整块场地中其余的小块场地,循环执行步骤2至步骤4。
2.根据权利要求1所述的实现网络游戏无缝世界服务器的方法,其特征在于在步骤1 中,所述的整块场地有以下3种不同划分方式面积相等、面积不等和两种方式并存。
3.根据权利要求1所述的实现网络游戏无缝世界服务器的方法,其特征在于对所述 的整块场地,循环执行步骤2至步骤5。
4.根据权利要求1至3中任一权利要求所述的实现网络游戏无缝世界服务器的方法, 其特征在于,可以把所述的小块场地交给其它服务器来支持它的运行。
5.根据权利要求1至3中任一权利要求所述的实现网络游戏无缝世界服务器的方法, 其特征在于,所述的小块场地可以被继续分割成小块或者继续合并成大块。
全文摘要
本发明提出了一种实现网络游戏无缝世界服务器的方法。该方法包括步骤将整块场地分成2块或2块以上的小块,且每台服务器支持其中的一小块或几小块场地的运行;暂停全部服务器对各自场地的运行处理;选取其中一块或一块以上的小块场地,令支持这些场地运行的服务器获取这些小块场地以及这些小块场地相邻边界的状态;计算这些小块场地的状态,以及在计算过程中对这些小块场地相邻边界状态的修改;对整块场地中其余的小块场地,循环执行以上步骤。本发明使游戏中同一个对象同时最多只被一台服务器修改,因此很好地解决了目前的无缝世界服务器中存在的问题。
文档编号H04L29/06GK102137068SQ20101010190
公开日2011年7月27日 申请日期2010年1月26日 优先权日2010年1月26日
发明者王荣 申请人:王荣
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1