游戏平台中房间的自动分裂的方法技术

技术编号:3828777 阅读:182 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及游戏平台中房间的自动分裂的方法,步骤如下:(1)当游戏平台中房间分裂启动后,启动定时器T↓[1]秒,周期性检测房间玩家总人数;(2)如果达到房间玩家总人数上限Nmax人,并且持续时间为T↓[1]秒后,执行玩家选择算法获得被迁移玩家列表,否则转到第(1)步;(3)判断执行玩家选择算法执行是否成功,如果成功,则执行玩家迁移房间算法,否则结束;(4)执行玩家迁移房间算法的具体步骤为:a房间进入临时迁移状态,向所有迁移玩家发送迁移告知;b等待迁移结束,c收到迁移成功汇报包,迁移总数计数增加1;d迁移总数达到预期或者迁移时间超时迁移结束,否则转到b步。本发明专利技术将已经满的房间进行分裂操作,避免游戏房间的玩家人数不平衡。

【技术实现步骤摘要】

本专利技术属于计算机网络多人游戏平台领域,涉及游戏平台中房间的一 种自动分裂而避免拥挤且积攒人气的方法。
技术介绍
随着计算机网络条件的逐步优化,多人游戏应用逐渐成为网络应用的 新兴方向。除了游戏本身的可玩性之外,如何推广游戏和在平台上留住玩 家为平台聚集人气成为^皮关注的重要问题。目前的游戏平台组织, 一般会引入"房间"概念。 一个房间一般只有一 种游戏,房间的人数会设置上限。这些限制是因为一个服务器进程服务能 力有限,因此能够服务的人数也是有限制的。但是玩家都有一个心理,他 们愿意在人多的房间里面游戏。因为房间人越多(人气越旺),可以供选择 的游戏(由其他玩家创建)就越多。但是当一个房间已经进入的玩家人数 达到的服务器容纳的上限时,就不能再接受新的玩家。此时,即使存在第 二个空的房间,玩家也不原意进入此空房间玩游戏。因为即侵_他进入此房 间,如果在一定的时间范围内没有足够多的玩家进入和他开始一场游戏, 那么他可能会选择离开,或者会重新尝试那个已经达到人数上限的房间, 因为满的房间里面的任意玩家可能会离开,会空出一个到两个位置。目前, 大部分游戏平台系统,如腾讯游戏对战平台,浩方游戏对战平台等,都存 在此种现象,即个别房间已满,但是大家都在此房间门口拥挤尝试登陆, 而别的房间却只有很少的玩家甚至一个玩家也没有。这种现象导致玩家的 体验降低,因为(1)、他必须耗费大量的时间尝试去尝试登陆人数多的房间。(2)、频繁的尝试本身对服务器资源是一种浪费。(3)、对于平台来说,坏 的用户体验,也失去了聚集人数的功能,客观上流失了客户。因此一套自 动的聚集人气的方法尤其重要。
技术实现思路
本专利技术为了克服上述现有技术存在的问题及缺点,提供游戏平台中房 间的自动分裂的方法,本专利技术采用的方法是将已经满的房间进行分裂操作, 从而避免游戏房间的玩家人数极度不平衡 一方面部分房间人数达到上限, 存在一部分人还在不断的登陆这类房间,另一方面,部分房间人数非常少, 达不到开始游戏的最^氐要求。本专利技术技术方案为,按以下步骤进行(1)、当游戏平 台中房间分裂启动后,启动定时器L秒,周期性检测房间玩家总人数;(2)、 如果达到房间玩家总人数上限Nmax人,并且持续时间为1\秒后,执行玩家 选择算法获得被迁移玩家列表,否则转到第(l)步;(3)、判断执行玩家选择 算法执行是否成功,如果成功,就执行玩家迁移房间算法,否则结束;(4)、 执行玩家迁移房间算法的具体步骤为a房间进入临时迁移状态,向所有 迁移玩家发送"迁移告知,,;b等待迁移结束,c收到迁移成功汇报包,迁 移总数计数增加l;d迁移总数达到预期或者迁移时间超时,迁移结束,否 则转到b步。所述的执行玩家选择算法获得被迁移玩家列表具体步骤为a、开始并 创建被迁移玩家列表和临时备选玩家列表;b、被迁移玩家列表人数达到最 小房间人数阈值Nsuy十Nwy吗?如果是,结束迁移玩家选择算法,否则 转到c步;c、已经遍历完玩家列表吗?是转到h步,否则转到d步;d、 读取一个剩余玩家的游戏状态,此玩家正在游戏进行中么?如果是转到e 步,否则转到f步;e、加入此玩家到被迁移列表,迁移列表大小S产S一1,转 到b步;f 、此玩家处于空闲状态么?如果是,转到g步,否则转到b步;g、 加入此玩家到备选列表L2,备选玩家列表大小S2=S2+l;h、 S, Nstay +Nreduntancy - S2 如果是转到i步,否则转到j步;i、迁移玩家列表构 造失败结束;j、从L2中选择Nstay +Nreduntancy - S2个节点加入到L冲,迁移 玩家列表构造成功,结束。本专利技术自动将A房间中的人员分派一部分到房间&中,另外一部分人 员分派到A2中,其中A!与A2的房间人数相加为A的房间总人数。这样两个 房间所拥有的玩家数量都可以独立的"留住玩家",即每个房间所拥有的人 员可以独立的增长,从而单独积聚人气,称这个能够留住玩家不离开的最 小房间玩家数量为Nstay。本专利技术具有以下优点(1)自动性:整个分裂过程自动完成,包括人 数达到一定的限制后,房间自动启动分裂过程。在玩家的简单配合下完成 分裂,并且没有震荡特性;(2)玩家透明性整个房间分裂过程,对玩家 的影响非常小,首先,不会影响正在开始的游戏的完整性。其次对未开始 游戏的玩家,尽量减少他与伙伴处于不同房间的概率。本专利技术避免某个游 戏房间过于拥挤,而其他房间无玩家的方法。同时此方法提供为某些游戏 房间积攒人气的方法。附图说明图1为本专利技术的总体流程示意图;图2为被迁移到新房间的玩家选择算法示意图; 图3为迁移流程示意图。具体实施例方式下面结合附图对本专利技术作进一步说明。如图1所示,房间的分裂算法启动后,本专利技术主要涉及两个子算法的 运转,包括"被迁移玩家选择算法,,和"迁移执行算法"。其中"被迁移玩 家选择算法"的主要功能是根据玩家的当前游戏状态,以及用户的好友关 系,选择一部分玩家进入到另外一个备份房间。在众多的玩家中,哪些玩 家应该被选到另外一个房间呢?主要的评判的原则是正在玩同一场游戏 的玩家不要分处两个不同的房间,将来打算在同 一场游戏中玩的玩家不要 处于不同的房间。基于这两点考虑进行迁移玩家的选择。由于玩家会在游 戏的状态发生改变时向房间服务器实时汇报。因此一个玩家的游戏状态基 本上是与服务器上的游戏状态是同步的。 一个玩家的游戏状态主要有空 闲状态玩家没有进入游戏,也没有建立游戏。游玩状态玩家正在某场 游戏中。过渡状态玩家刚刚进入一盘游戏,但是游戏并没有开始。处于 游玩状态的玩家如果有打算和某些特定的玩家游戏的话,那么他们应该正 在同 一场游戏中,因此如果把这场游戏中的所有玩家同时迁移到另夕l、一个 房间是不会破坏玩家对于游戏的体验的,因为他唯一发现的区别是他在游 戏结束后发现自己的房间号码变化了。如果所有的正在游玩状态的玩家总 数如果不足以达到新房间的最低阈值的话,可以考虑从那些空闲状态的玩 家里面选出部分玩家,加入到新房间中。那么如何避免将两个原本打算在 同 一 场游戏中游玩的玩家分开到两个不同的房间呢?可以依据统计的方法 来预测两个玩家将来是否打算加入到同 一场游戏中。例如某个用户曾经 在一起打过游戏的次数越多,那么他们之间的关联就越大。通过统计用户 之间的这种关联,进行预测也能够大大的减少拆散原本打同 一 场游戏的多 个玩家。假定集合房间总人数为A, 任意两个人之间的关联表示为他们之 前打过的游戏的场数Nu ,求集合Ai, A2,使得人1 + A2 = A, |AJ = a, a 为常量,任意人员i6A,jKA2, SNij最小。房间分裂算法见图1,描述为1. 1当房间分裂算法启动后,启动定时器L;1.2周期检查房间总人数;1. 3如果达到房间总人数上限Nmax人,并且持续时间为L秒后,L一 般为60秒,则转到(1.4),否则转到(1. 2 ),1.4执行玩家选择算法获得迁移玩家列表,如果执行成功转到(1.5),否则转到(1.6)1.5执行玩家迁移房间选择算法;转到(1.2)1. 6结束。被迁移玩家选择算法描述为2. 1开始,并创建被迁移玩家列表L和临时备选玩家列表L2;2.2被迁移玩家列表人数达到最小房间人数阔值Nsta本文档来自技高网
...

【技术保护点】
游戏平台中房间的自动分裂的方法,按以下步骤进行:(1)、当游戏平台中房间分裂启动后,启动定时器T1秒,周期性检测房间玩家总人数;(2)、如果达到房间玩家总人数上限Nmax人,并且持续时间为T1秒后,执行玩家选择算法获得被迁移玩家列表,否则转到第(1)步;(3)、判断执行玩家选择算法执行是否成功,如果成功,则执行玩家迁移房间算法,否则结束;(4)、执行玩家迁移房间算法的具体步骤为:a房间进入临时迁移状态,向所有迁移玩家发送迁移告知;b等待迁移结束,c收到迁移成功汇报包,迁移总数计数增加1;d迁移总数达到预期或者迁移时间超时,迁移结束,否则转到b步。

【技术特征摘要】

【专利技术属性】
技术研发人员:姚宏涂旭平
申请(专利权)人:武汉必联网络技术有限公司
类型:发明
国别省市:83[]

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

1