首页> 中国专利> 用于在网络多玩家游戏中隐藏时延的方法和装置

用于在网络多玩家游戏中隐藏时延的方法和装置

摘要

本公开的方面描述方法和装置,所述方法和装置在通过网络玩的多玩家游戏中的攻击客户端设备平台与防御客户端设备平台之间进行交互期间隐藏时延。所述攻击客户端设备平台预测将做出成功攻击,并且将袭击事件传送到所述防御客户端设备平台。为了提供另外的时间以等待来自所述防御客户端设备平台的袭击回复,所述攻击客户端设备平台启动改变的动画模式,所述改变的动画模式加长所述动画的运行时间。

著录项

  • 公开/公告号CN105163823A

    专利类型发明专利

  • 公开/公告日2015-12-16

    原文格式PDF

  • 申请/专利权人 索尼电脑娱乐美国公司;

    申请/专利号CN201480006626.1

  • 发明设计人 G.菲德勒;V.纳波利;J.麦克唐纳;

    申请日2014-01-23

  • 分类号A63F13/358;A63F13/55;

  • 代理机构北京市柳沈律师事务所;

  • 代理人史新宏

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 12:50:07

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-11

    授权

    授权

  • 2016-01-13

    实质审查的生效 IPC(主分类):A63F13/358 申请日:20140123

    实质审查的生效

  • 2015-12-16

    公开

    公开

说明书

技术领域

本公开涉及多玩家游戏,且更具体地涉及用于在网络多玩家游戏 中隐藏时延的方法。

背景技术

实时多用户分布式应用程序(如在线多玩家游戏)由于宽带互联 网接入的迅速发展而变得日益普及。即使在线多玩家游戏的普及度提 高,仍然存在许多需要解决的缺点。主要缺点之一涉及可能极大地影 响游戏体验的网络性能和数据传输速度。

在线多玩家游戏允许处于广泛分布的地理位置的玩家同时在同 一游戏环境内玩同一游戏。多玩家特征允许玩家享受与其他个体的交 互,不论是以合作、竞争还是以对抗的形式,并且还为玩家提供一种 社交通信形式。在各种不同的在线多玩家游戏类型中,玩家可单独与 两个或更多个人类参赛者竞争、与人类合作者协同工作以便实现共同 目标、监视其他玩家的活动、或参加结合以上内容的任何可能组合的 游戏。

目前,每个在线多玩家游戏应用程序都涉及网络性能,如网络带 宽。然而,在进行在线多玩家游戏期间建立或使用的网络质量和带宽 方面存在限制。这些限制可导致数据传输的延迟,并且因此产生游戏 设置的缓慢或不连续的动画。例如,在基于近战战斗的游戏中,当第 一玩家攻击第二玩家时,数据从第一玩家计算机到第二玩家计算机的 传输可能存在时延,这可导致游戏设置动画不一致。延迟的动画可影 响玩家的反应时机。因此,玩家可能觉得游戏不公平。例如,在第一 玩家侧,由第一玩家控制的虚拟化身可在由第二玩家控制的虚拟化身 能够用盾拦截杆之前向由第二玩家控制的虚拟化身挥杆。然而,在第 二玩家侧,当由第一玩家控制的虚拟化身开始挥杆时,第二玩家的虚 拟化身已经举起了他的盾,但无论如何仍被杀死,这是因为在第一玩 家侧,第二玩家仍然是无保护的。

本发明的各个方面正是在此背景下产生。

附图说明

图1是根据本公开一方面的用于攻击者、防御者和观察者通过网 络进行通信的客户端设备平台的示意图。

图2A-2C是描绘在攻击者、防御者和观察者的客户端设备平台 之间存储和传输袭击事件和袭击回复的框图。

图3A是描绘在不利用任何调整的动画模式的攻击动画期间出现 的不同时段的时间轴。

图3B-3D是根据本公开的各个方面的时间轴,其描绘在攻击动 画期间出现的包括一个或多个调整的动画模式的不同时段。

图4是示出根据本公开一方面的隐藏时延的方法的流程图。

图5A-5C是描述根据本公开各个方面的对攻击者、防御者和观 察者如何隐藏时延的说明的框图。

具体实施方式

虽然出于说明目的,以下详细说明包含许多具体细节,但是本领 域的普通技术人员将会了解,以下细节的许多变化和更改在本公开的 范围内。因此,在阐明以下所描述的本公开的各个方面时,此描述的 随附权利要求书的概括性没有任何损失,并且不对此权利要求书施加 任何限制。

本公开的各个方面描述用于在通过网络进行的多玩家游戏中隐 藏时延的装置和方法。多玩家游戏可包括攻击者和防御者。攻击者可 在第一客户端设备平台上玩游戏,并且防御者可在第二客户端设备平 台上玩游戏。两个客户端设备平台可通过网络连接。根据本公开的方 面,攻击者可发起一个或多个攻击动画。第一客户端设备平台可预测: 一个或多个攻击动画将对防御者造成成功袭击。当做出了积极预测 时,攻击者的客户端设备平台可生成袭击事件。袭击事件可包括一个 或多个发起的攻击动画和唯一的袭击标识符(ID),唯一的袭击标识符 将用于跟踪一个或多个攻击动画的结果。随后袭击事件可被存储在攻 击者的客户端设备平台上的袭击表中,并且通过网络连接被传送到防 御者的客户端设备平台。可在攻击者的客户端设备平台上减慢一个或 多个攻击动画的回放速率,以便加长其中攻击者的客户端设备平台可 从防御者的客户端设备平台接收响应的可用时间,所述响应指示攻击 是否确实是如所预测的成功攻击。

在接收袭击事件后,防御者的客户端设备平台将信息存储在袭击 表中,并且随后确定一个或多个攻击动画是否对防御者造成成功攻 击。举例来说,防御者的客户端设备平台可确定:攻击是命中、未命 中或被阻拦攻击。防御者的客户端设备平台随后生成袭击响应,所述 袭击响应包括适当的一个或多个响应动画和与袭击事件相关联的同 一袭击ID。袭击响应被存储在袭击表中,并且还通过网络连接被传 送到攻击者的客户端设备平台。一旦攻击者的客户端设备平台接收到 袭击响应,所述袭击响应也将被存储在攻击者的袭击表中。攻击者的 客户端设备平台随后可执行袭击回复中所识别的回复动画。

本公开的各个方面描述装置和方法如何对时延的长度差异作出 响应。在攻击者的客户端设备平台传送袭击事件之前,攻击者不知道 时延将会有多长,并且因此需要能够适应任何可能的后果。之后由攻 击者的客户端设备平台实施的步骤取决于攻击者是:(1)在袭击前时 段期间;(2)在袭击前时段之后;(3)还是在延长的袭击暂停时段之后 接收到袭击回复(或从未接收到)。

根据本公开的例子,如果在袭击前时段期间接收到袭击响应,那 么攻击者的客户端设备平台缓冲响应动画,以便在攻击者与防御者之 间发生撞击的时刻进行播放。根据本公开的某些例子,如果在袭击前 时段之后接收到袭击响应,那么攻击者的客户端设备平台可实施延长 的袭击暂停时段,所述延长的袭击暂停时段可持续预先确定的时间长 度。这允许有更多时间来允许攻击者的客户端设备平台接收袭击回 复。一旦攻击者的客户端设备平台已接收到袭击回复,所述袭击回复 可被存储在攻击者的袭击表中,并且可在至少标准的袭击暂停时段已 结束之后实施回复动画。

根据本公开的某些例子,如果在预先确定的最大时间长度之前尚 未接收到袭击响应,那么攻击者的客户端设备平台可能超时。当攻击 者的客户端设备平台超时时,可移除袭击表中与未接收袭击回复的袭 击ID相关的所有数据。另外,可用超时动画替换回复动画。超时动 画可描绘未命中攻击。

本公开的各个方面进一步描述在一个或多个攻击动画与一个或 多个回复动画之间的过渡期间提供无缝动画的装置和方法。这是至关 重要的,因为攻击机器和防御机器可能由于机器之间的时延而在不同 时间执行动画。为了确保攻击者的动画与防御者的动画保持同步,攻 击者的客户端设备平台利用来自攻击者的袭击表的信息。首先,在读 取所述表后,如果客户端设备平台检测到他由于任何袭击事件而应处 于袭击暂停时段,那么客户端设备平台将在回复动画的第一帧处插入 暂停。此后,一旦攻击者的客户端设备平台确定以下两者:(1)根据 攻击者的客户端设备平台,袭击暂停结束;以及(2)攻击者的客户端 设备平台已接收到防御者也取消暂停的指示,暂停就将结束(并且回 复动画将继续。

换句话说,如果回复动画是可得的,那么所述回复动画被缓冲并 且在撞击的时刻(例如,袭击前结束)在攻击者机器和防御者机器两者 上播放。在常见情况下,回复动画可在这个动画的第一帧上保持暂停。 随后在袭击回复之后,回复动画可“取消暂停”并且继续播放。这是重 要的,因为如果袭击回复动画没有在袭击的时刻播放第一帧,那么游 戏看起来可能相当糟糕。

本公开的另外方面描述添加观察者和观察者的客户端设备平台 的与上述类似的装置和方法。观察者的添加要求也将袭击事件和袭击 回复发送到观察者。另外,观察者可以与攻击者的客户端设备平台的 方式基本上类似的方式在攻击动画与回复动画之间实施无缝过渡。

图1是描绘可能够通过网络160彼此通信的三个不同客户端设备 平台102、103和104的框图。每个客户端设备平台可在任何给定时 间由一个或多个游戏玩家使用。为简单起见,本公开的各个方面将会 将每个客户端设备平台描绘为具有单个游戏玩家,但对于本领域技术 人员显而易见的是,两个或更多个玩家可从单个客户端设备平台玩游 戏。根据图1,存在与攻击玩家相关联的客户端设备平台102、与防 御玩家相关联的客户端设备平台103和与观察玩家相关联的客户端 设备平台104。如本文所使用,客户端设备平台102可被称为“攻击 者”,客户端设备平台103可被称为“防御者”,并且客户端设备平台 104可被称为“观察者”。在两个或更多个游戏玩家在单个客户端设备 平台上玩游戏的例子中,标签“攻击者”、“防御者”和“观察者”可专用 于个体游戏玩家而不用于定义整个客户端设备平台。

攻击玩家的平台102可包括中央处理器单元(CPU)131。举例来 说,CPU131可包括一个或多个处理器,所述一个或多个处理器可根 据例如双核、四核、多核、或单元处理器架构来配置。攻击者102还 可包括存储器132(例如,RAM、DRAM、ROM等)。CPU131可执 行过程控制程序133,所述过程控制程序133中的部分可存储在存储 器132中。攻击者102还可包括众所周知的支持电路140,如输入/ 输出(I/O)电路141、电源(P/S)142、时钟(CLK)143和高速缓存144。 攻击者102可任选地包括大容量存储设备134,如磁盘驱动器、 CD-ROM驱动器、磁带驱动器等,以便存储程序和/或数据。攻击者 102还可任选地包括显示单元137。显示器单元137可呈显示文本、 数字、或图形符号的阴极射线管(CRT)或平板屏幕的形式。控制器145 可通过I/O电路141来连接至攻击者102,或它可直接集成到攻击者 102中。控制器145可促进攻击者102与可控制游戏设置的游戏玩家 之间的交互。控制器145可包括键盘、鼠标、操纵杆、光笔、手持控 制设备、或其它设备。攻击者102可包括网络接口139,所述网络接 口139被配置来使得能够使用Wi-Fi、以太网端口或其它通信方法。

网络接口139可并入有合适硬件、软件、固件、或这些中的两个 或更多个的某个组合来促进通过电子通信网络160通信。网络接口 139可被配置来通过局域网和广域网(如互联网)来实施有线或无线通 信。攻击者102可在网络160上通过一个或多个数据封包来发送和接 收数据和/或文件请求。

攻击者的平台102可访问具有多玩家功能性的游戏程序106。攻 击者102中可存储多于一个游戏程序106。游戏程序可存储在存储器 132中或存储在大容量存储设备134中。另外,一个或多个游戏程序 106可存储在攻击者102通过网络160可访问的远程位置处。每个游 戏程序106包含可执行游戏代码,所述可执行游戏代码由CPU131 使用以响应于游戏玩家所提供的输入而生成动画。

前述组件可通过内部系统总线150来彼此交换信号。攻击者102 可以是通用计算机,所述通用计算机在运行实施如本文描述的本发明 的实施方案的代码时变成专用计算机。通过举例而非限制的方式,攻 击者102可以是索尼计算机娱乐公司的PlayStation3控制台、 PlayStationVita手持控制台、家用计算机、蜂窝电话或能够通过网络 进行多玩家视频游戏的任何其它类似设备。

防御玩家的平台103可以是与攻击者102基本上类似的设备。防 御玩家平台103的对应于攻击者的平台102的相同元件的元件由附带 有单撇(’)的相同参考数字表示。然而,应当注意,具体实施方案可以 是不同的,例如,攻击者的平台102可以是PlayStation3控制台,并 且防御者的平台103可以是PlayStationVita手持控制台。另外,观察 者的平台104可以是与防御者的平台103和攻击者的平台102基本上 类似的设备。观察者的平台104的对应于攻击者的平台102的相同元 件的元件由附带有双撇(”)的相同参考数字表示。此外,观察者的平 台104的具体实施方案可不同于攻击者102和防御者103的那些实施 方案。虽然图1仅描绘三个客户端设备平台(攻击者102、防御者103 和观察者104各自一个客户端设备平台),但是本公开的另外方面包 括具有更大或更小数量的客户端设备平台的系统。通过举例而非限制 的方式,当仅存在两个游戏玩家玩游戏106时,可能仅存在攻击者 102和防御者103;可能存在各自观察攻击者102与防御者103之间 的交互的两个或更多个观察者104;如果攻击者102同时攻击多个对 手,那么可能存在多个防御者103;如果防御者103同时受两个或更 多个对手攻击,那么可能存在多个攻击者102;或它们的任何组合。

本公开的方面允许对等游戏。每个客户端设备平台可以与虚拟化 身相关联,即,攻击者102与攻击者虚拟化身相关联,防御者103与 防御者虚拟化身相关联,并且观察者104与观察者虚拟化身相关联。 每个客户端设备平台可将与它们相应的虚拟化身相关联的状态和事 件信息传送到其它客户端设备平台。通过举例而非限制的方式,状态 信息可包括虚拟化身的位置和移动。通过举例而非限制的方式,事件 信息可包括:攻击动画,如挥杆或击拳;防御动画,如阻拦或其它规 避策略;以及由成功攻击造成的回复动画,如摔在地上或被向后猛推。 状态和事件信息可由每个客户端设备平台按正常间隔传送,如每秒 30个封包。当在它们相应的显示单元137上显示游戏设置时,客户 端设备平台将利用状态和事件信息显示其它虚拟化身的代理。例如, 根据攻击者102所生成的状态和事件信息,可在攻击者的显示单元 137上显示攻击者的虚拟化身,并且根据已从观察者104和防御者103 的相应客户端设备平台播送至攻击者102的状态和事件数据,可在攻 击者的显示单元137上显示观察者虚拟化身和防御者虚拟化身的代 理虚拟化身。

具体来说,关于本公开的各个方面,论述与攻击动画和回复动画 相关的事件信息。在传送这些事件中隐藏时延允许获得对游戏玩家来 说公平的游戏设置,并且允许获得更加无缝的动画。图2A-2C是描 绘袭击事件230和袭击回复231如何由相应客户端设备平台102、103 和104传送和存储的框图。

一旦攻击者预测到一个或多个动画将很可能造成成功攻击,那么 攻击者102就可生成袭击事件230。一般来说,可通过预先查看动画 以确定攻击者是否将与攻击者上的任何碰撞体(collisionvolume)连接 来做出成功袭击的预测。举例来说,可通过假定攻击者和防御者的位 置是固定的来进行预测。根据这个开始的假设,确定攻击者的武器(如 但不限于剑、杆或拳头)的未来路径以观察在发起动画之后的任何帧 处攻击者与防御者之间是否将存在碰撞。攻击动画可从当前时间逐帧 前进到袭击前时间,并且在每帧处,攻击者的平台102可检查以预测 与防御者的碰撞。袭击事件230可包括被预测为造成成功攻击的一个 或多个攻击动画和对应袭击识别(ID)。袭击ID是可由客户端设备平 台102、103和104中的每一个使用来跟踪动画的唯一标识符。为了 提供唯一识别,袭击ID可包括8比特随机存取存储器(RAM)分量 (component)和8比特模分量。第一袭击事件230可具有为“1”的模分 量,并且每一随后的袭击事件230可增量地增加1。举例来说,一系 列袭击ID可以是{RAM-1,RAM-2,RAM-3,RAM-4…},其中RAM 是随机8比特数。

在图2A中,攻击者102已经预测出:攻击者的虚拟化身的一个 或多个行动将很可能对防御者的虚拟化身造成成功攻击。因此,已产 生袭击事件230。袭击事件被存储在位于攻击者102中的袭击表235 中。举例来说,袭击表235可位于存储器132中。袭击表235用于使 袭击事件230与未来可从防御者103接收到的袭击回复231相关联。 另外,攻击者102通过网络160将袭击事件230传送到防御者103和 观察者104,如虚线箭头所指示。

在图2B中,观察者104和防御者103已接收袭击事件230并将 其存储在他们相应的袭击表235中。观察者104应当优选地接收并存 储袭击事件230,以便观察者104恰当地在其显示单元137”上显示攻 击动画和响应动画。存储在观察者的表235中的信息将指示应在何时 发起和停止动画、如袭击暂停。

除将袭击事件230存储在防御者103的袭击表235中之外,防御 者103还可解析一个或多个攻击动画是否对应于成功攻击。通过解析 对防御者103攻击的成功性,防止了防御者103在他们已经被保护免 受攻击时受到伤害的问题、如现有技术中可能出现的情况。代替依赖 于可能不反映防御者的虚拟化身的最近位置(如在攻击者102解析攻 击时可能出现)的代理信息,使用防御者103可获得的最当前状态和 事件信息来解析一个或多个攻击动画。在解析攻击之后,防御者103 可生成袭击回复231。袭击回复231被存储在防御者的袭击表235中, 并且还通过网络传送到攻击者102和观察者104。袭击回复可包括识 别一个或多个回复动画的信息和与袭击事件230相关联的同一袭击 ID。一个或多个回复动画将对应于攻击的结果。例如,如果确定一个 或多个攻击动画造成成功攻击,那么一个或多个回复动画可包括示出 防御者的虚拟化身摔在地上或被向后击撞的动画。可替代地,如果确 定攻击是不成功的,那么回复动画可包括防御者的虚拟化身阻拦攻击 或完全地避开了攻击。因为袭击事件230是紧接在由防御者103接收 到之后被解析,所以由防御者103在接收之后发起的任何阻拦或回避 行动将不会改变攻击的结果。袭击事件230可能在攻击虚拟化身与防 御虚拟化身之间存在接触之前被接收到,并且因此,可能期望一旦已 接收到袭击事件230,就使随后的防御者虚拟化身的阻拦或回避动画 失效。这将防止控制防御虚拟化身的游戏玩家感觉到好像即使他们处 于阻拦运动当中他们还是被袭击了。

在图2C中,攻击者102和观察者104已接收袭击回复并将数据 存储在他们相应的袭击表235中。攻击者102和观察者104现在可能 够显示攻击者的虚拟化身与防御者的虚拟化身之间的全部交互。袭击 事件230的传输和袭击回复231的接收必须在由攻击者102发起的攻 击动画已结束之前发生,以便所述动画看起来是无缝的。当时延大得 足以使得数据在攻击动画结束之前不能在攻击者102与防御者103之 间往返时,游戏性受到影响。因此,隐藏时延的能力允许改进多玩家 环境下的游戏性。

本公开的各个方面通过使用一个或多个动画改变模式来隐藏时 延。图3A是不利用时延隐藏技术的系统中的标准攻击时间轴300。 图3B-3D描绘根据本公开的各个方面的利用改变的攻击动画模式以 便隐藏时延的延长的攻击时间轴301、301’和302的实例。应当注意, 图3A-3D中所描绘的时间轴是不按比例的。在图3A中,标准时间轴 300在一个或多个攻击动画在310处被发起时开始。举例来说,攻击 动画可以是在由攻击者102控制的虚拟化身开始向由防御者103控制 的虚拟化身挥杆时。在已在310处发起攻击动画之后且在攻击者虚拟 化身与防御者虚拟化身之间在312处进行接触之前的时间段被定义 为袭击前时段311。袭击前时段311可以是取决于以下因素的可变时 间长度,所述因素如但不限于:武器类型、虚拟化身之间的距离、攻 击的力量、所述攻击虚拟化身的强度或它们的任何组合。通过举例而 非限制的方式,袭击前时段311可以近似100ms。在这种没有实施时 延隐藏技术的情况下,攻击者102在袭击前时段311结束之前接收到 袭击回复231。一旦已接收到袭击回复231,回复动画314就被缓冲, 因此一旦到达接触时刻312回复动画314就被发起。回复动画314的 第一帧的回放速率可大体上减小或甚至暂停短暂的时间段,以便产生 袭击暂停效果。袭击暂停效果的长度被认为是袭击暂停时段313。袭 击暂停时段313可以是取决于以下因素的可变时间长度,所述因素如 但不限于:武器类型、虚拟化身之间的距离、攻击的力量、攻击虚拟 化身或防御虚拟化身的强度、攻击虚拟化身或防御虚拟化身的大小或 它们的任何组合。通过举例而非限制的方式,回复动画的第一帧的回 放速率可减慢至小但非零值,例如约正常速度的1/1000。在袭击暂停 时段313结束之后,回复动画314可恢复正常回放速率。在理想情况 下,袭击回复动画可在袭击时刻(例如,在袭击前结束时但在袭击暂 停之前)在攻击者机器和观察者机器上发起。

图3B描绘根据本公开的方面的结合改变的动画模式的延长的攻 击时间轴301。时间轴301基本上类似于攻击时间轴300,不同的是 用延长的袭击前时段315替换袭击前时段311。袭击前时段311的延 长为攻击者102提供另外的时间,以便在攻击者虚拟化身与防御者虚 拟化身之间在312处进行接触之前接收袭击回复231。

延长的袭击前时段315基本上类似于袭击前时段311,不同的是 与袭击前时段315的回放速率相比,延长的袭击前时段315的回放速 率被减慢。当延长的袭击前时段的回放速率减小时,可被隐藏的时延 量增大。然而,过分减小延长的袭击前时段311的回放速率可导致在 游戏玩家看来迟滞且反应迟钝的攻击动画。延长的袭击前时段315的 回放速率可降低的极限取决于游戏类型和玩游戏的玩家的预期。举例 来说,在战斗型游戏中,在动画不显得迟滞且反应迟钝的情况下,延 长的袭击前时段315的回放速率可以是袭击前时段311的回放速率的 近似三分之二。因此,持续100ms的袭击前时段311可具有持续约 150ms的延长的袭击前时段315。理想地,另外的50ms足以提供时 间来在攻击者虚拟化身与防御者虚拟化身之间在312处进行接触之 前接收袭击回复231。

然而,如果在接触时刻312之前没有接收到袭击回复231,那么 袭击暂停时段313还可用作隐藏时延的另外时间长度,如图3C中所 示。在进入袭击暂停时段313之前,攻击动画310可以在接触时刻 312处或就在接触时刻312之前暂停。袭击回复231可在进入袭击暂 停时段313的某个时刻被接收到。一旦接收到,就可以降低的回放速 率(如为正常速度的约1/1000的回放速率)发起回复动画314。袭击暂 停期间的降低的回放速率慢得足以使得动画有效地被“暂停”。例如, 使动画减慢至正常速度的一半可能过快。大于零的回放速率(例如, 正常速率的1/1000)是合乎需要的,只要它慢得足以使得动画几乎被 暂停。然而,很慢(与零相反)的回放速率可能是视觉效果所需要的。 放慢的动画看起来可能比完全停止的动画好。在袭击暂停时段313结 束之后,回复动画314可以正常的回放速率继续。

注意,在袭击暂停时段期间,防御者平台103上的动画也可冻结。 防御者也可播放对应于例如“被袭击”或“阻拦”的袭击回复动画,并且 防御者的回复动画的第一帧可在袭击暂停时段期间冻结(例如,如同 攻击动画,以1/1000正常速度的时标),以获得视觉冲击。

图3D中的延长的时间轴302提供本公开的另外方面,所述另外 方面在直至袭击暂停时段313结束时仍未接收到袭击回复231的情况 下提供更多时间以用于隐藏时延。在这种情况下,改变的动画模式还 可包括补充袭击暂停时段316。补充袭击暂停时段316使初始袭击暂 停时段313的长度延长,以便允许攻击者102有另外的时间来接收袭 击回复231。补充袭击暂停时段316可以是无限的时间量。在这种状 况下,补充袭击暂停时段可能不会结束,直至接收到袭击回复231。 然而,如果用于补充袭击暂停316的时间量过大,那么游戏设置可能 变得极度迟滞且反应迟钝。通常,补充袭击暂停316可在暂停变得使 游戏玩家太过分散注意力之前提供另外的200–300ms。如果直至补 充袭击暂停时段316结束,仍然没有袭击回复231,那么攻击者102 可假设袭击回复231将永远不会出现。在这个例子中,攻击者102可 能超时。当攻击者102超时时,攻击者将擦除其数据表中对应于未被 响应的袭击ID的所有数据并且从补充袭击暂停时段316取消暂停。 在取消暂停时,可发起超时动画314’。通过举例而非限制的方式,超 时动画314’可以是攻击动画造成未命中攻击的继续。

本公开的另外方面涉及以如下方式退出袭击暂停时段313(或 者,如果需要,退出补充袭击暂停时段316)的过程,所述方式允许使 攻击虚拟化身和防御虚拟化身两者的回复动画同步。由于已被隐藏的 时延,可能存在以下例子:防御者103在攻击者102或观察者104发 起响应动画时段314之前发起回复动画时段314。在此种情境下,在 攻击者的虚拟化身已开始回复动画时段314之前,防御者103的代理 虚拟化身在攻击者的显示单元137上可显示为正在移动。这种情形产 生脱节的动画并且是不合乎需要的。为了确保从袭击暂停时段313 (或补充袭击暂停时段316)到回复动画时段314的过渡对于本地虚拟 化身和代理虚拟化身而言是在同时发生,客户端设备平台在其接收到 攻击者的虚拟化身和防御者的虚拟化身均已到达过渡时刻的确认之 前不应当进行过渡。

从防御者103的角度来看,确定何时取消暂停和开始回复动画时 段314是相对简单的。如果防御者103确定攻击已成功,并且袭击事 件230中所包括的一个或多个攻击动画包括实施袭击暂停时段313的 指令,那么防御者103将启动袭击暂停时段313。不需要添加补充袭 击暂停时段316,因为不存在需要隐藏的时延,不存在需要隐藏的时 延是因为防御者103不需要另外的信息来发起回复动画。一旦袭击暂 停时段313结束,防御者103可针对本地虚拟化身(即,防御者的虚 拟化身)和代理虚拟化身(即,攻击者的虚拟化身)两者启动回复动画时 段314。

为了攻击者102确定其是否可从袭击暂停时段313(或补充袭击 暂停时段316)过渡到回复动画时段314,攻击者102需要了解以下两 者:(1)攻击者的袭击表235中指示防御者的代理虚拟化身不再处于 袭击暂停时段313的状态和事件信息;以及(2)攻击者的袭击表235 中指示攻击者102不再处于袭击暂停时段313或补充袭击暂停时段 316的状态和事件信息。如果两个条件中的任一个未得到满足,那么 攻击者102必须保持暂停。因此,从袭击暂停时段313到回复动画时 段314的过渡可由于两种独立的情形而发生。

根据第一情形,攻击者102可确定已超过了他的虚拟化身的袭击 暂停时段313,并且正等待来自防御者103的指示防御者的虚拟化身 也已经退出袭击暂停时段313的响应。防御者的虚拟化身已退出袭击 暂停时段313的指示可作为被播送至每个客户端设备平台的状态信 息的一部分来传送。一旦攻击者102接收指示防御者的虚拟化身已取 消暂停的更新,那么攻击者102也可取消暂停。第一情形通常在以下 情况时发生:在延长的袭击前时段315结束之前接收到袭击回复231。

第二情形通常在以下情况时发生攻击者102需要添加补充袭击 暂停时段316,以便允许有更长的时延。在这种情境下,防御者103 可能已从袭击暂停时段313过渡到回复动画时段314。即使防御者103 可能播送通知其它客户端设备平台他已取消暂停,但是攻击者的显示 单元137上所显示的防御方的代理虚拟化身可能保持处于冻结状态, 因为攻击者102由于系统中的时延而尚未接收到袭击回复231中的已 更新状态信息。另外,当处于袭击暂停时段时,攻击者102可忽略从 防御者103播送的正常位置更新。因此,防御者的本地虚拟化身(即, 如防御者的显示单元137’上所显示的防御者的虚拟化身的位置)可能 已开始向后移动,即使防御者的代理虚拟化身(即,如攻击者的显示 单元137上所显示的防御者的虚拟化身的位置)仍然是冻结的。随后, 一旦攻击者102接收到根据他的袭击表235中的信息袭击暂停时段 313已结束的更新,就可过渡到回复动画时段314。当攻击者102最 后过渡到回复动画时段314时,防御者的本地虚拟化身和防御者的代 理虚拟化身可能处于不同位置。因此,攻击者102可实施一个或多个 行动,以便使防御者的代理虚拟化身的位置和防御者的本地虚拟化身 的真实位置统一。通过举例而非限制的方式,在攻击者102已结束补 充袭击暂停316之后,攻击者102可对不正确位置(即,防御者的代 理虚拟化身在袭击暂停期间所处的地方)内插轨道,这将使得防御者 的代理虚拟化身与防御者的本地虚拟化身的位置和轨道快速会聚。对 于观察者104进行从袭击暂停时段313过渡到回复动画时段314所需 的条件基本上类似于攻击者102的条件。

当在防御者对其来说是远程代理对象的所有机器(攻击者机器和 观察者机器)上处于袭击暂停时,在袭击暂停时可忽略来自防御者机 器的正常位置更新。随后当袭击暂停结束时,从当前位置到最新更新 位置的正常内插对不正确位置快速内插,回到防御者由于攻击后果而 已处于的轨道中。这可由物理位置更新来实施,其中我们处于暂停位 置到防御者的由袭击产生的路径之间。位置更新在游戏中通常用于使 玩家移动同步。基本上,在防御者机器上,防御者已对袭击作出反应。 在攻击者的机器上,防御者反应被延迟,直至攻击者的机器取消暂停。 作为对这种情况的说明,想象棒球球棒利落地袭击棒球。从棒球(防 御者)的视角来说,棒球已经在空中飞行。在击球手的(攻击者的)机器 处,棒球在球棒上保持冻结,直至击球手的机器准备对袭击暂停取消 暂停。随后当在击球手的机器上棒球在空中飞行时,棒球的位置被内 插,使得它与在棒球的机器上棒球已经在空中飞行的路径会聚。

当存在多个尚未完成的袭击事件230和袭击回复231时,用于从 袭击暂停时段313(或补充袭击暂停时段316)过渡到回复动画时段 314的前述机制也适用。在许多多玩家游戏中,单个游戏玩家在任何 给定时间可以是攻击者和防御者,或他们可被多个其他玩家同时攻 击。因此,当确定是否从袭击暂停时段313过渡到回复动画时段314 时,重要的是分析所有尚未完成的袭击暂停时段313和补充袭击暂停 时段316。例如,如果你是已向防御者103传送单个袭击事件230的 攻击者102,而防御者103大约同时被其他玩家攻击,那么你可能需 要等待,直至防御者102已指示他们退出了来自最近攻击的所有袭击 暂停,之后你也退出了袭击暂停时段313。

如图4中所示,攻击者102和防御者103可被配置来根据本发明 方法400实施用于在多玩家游戏中隐藏时延的方法。方法400的各个 方面可通过执行在攻击者102、防御者103和/或观察者104上运行的 计算机可执行指令来实施。具体来说,攻击者102可例如通过合适的 编程被配置来实施某些攻击者指令481。另外,防御者103可被配置 来实施某些防御者指令482。此外,观察者104可被配置来实施某些 观察者指令483。在图4中,虚线箭头表示数据通过网络160在攻击 者102、防御者103和/或观察者104之间的流动。

最初,在484处,攻击者102可预测由攻击者102发起的一个或 多个攻击行动将很可能造成对防御者103的成功攻击。此后,在块 485处,攻击者102可生成袭击事件230。袭击事件可包括一个或多 个攻击行动和唯一的袭击ID。另外,袭击事件230可存储在位于攻 击者102上的袭击表235中。随后在块486处,攻击者102可将袭击 事件230传送到防御者103和观察者104。为了提供更多可用时间以 便在攻击者102与防御者103之间进行数据传输时隐藏潜在时延,在 488处,攻击者可启动改变的动画模式。在袭击暂停时段313已期满 之后,如果需要更多时间来隐藏时延,那么改变的动画模式可包括利 用延长的袭击暂停时段315和/或添加补充袭击暂停时段316。当攻击 者102处于改变的动画模式下时,在块487处,防御者103可接收袭 击事件230。防御者103也可将袭击事件230存储在位于防御者上的 袭击表235中。类似地,在487’处,观察者104可接收事件230并且 将袭击事件230存储在本地袭击表235上。在接收到袭击事件后,在 块489处,防御者103可确定袭击事件230是否将造成对防御者103 的成功攻击或不成功攻击。在解析袭击事件230之后,在块490处, 防御者可生成袭击回复231。袭击回复230可包括识别根据一个或多 个攻击动画的成功或失败而应显示的一个或多个回复动画的信息。袭 击回复231还可包括与袭击事件230相关联的袭击ID。防御者102 还可将袭击回复存储在其本地袭击表235中。在块491处,防御者 103随后可通过网络160将袭击回复231传送到攻击者102和观察者 104。在块492处,攻击者102接收袭击事件231;并且可将袭击事 件231存储在攻击者的本地袭击表235中。同样地,在块492’处,观 察者104可接收袭击事件231;并且可将袭击事件231存储在观察者 的本地袭击表235中。袭击回复231可在延长的袭击前时段316结束 之前、在袭击暂停时段313期间、在延长的袭击暂停时段316期间由 攻击者102接收。如果在延长的袭击暂停时段316已期满之前尚未接 收到袭击回复231,那么可由攻击者102生成假定的袭击回复231’。 假定的袭击回复231’可理想地而非必需地假设一个或多个攻击行动 未产生成功攻击。在块493处,防御者103可根据袭击回复231中所 包括的信息执行一个或多个回复动画。在块494处,攻击者102可根 据袭击回复231中所包括的信息执行一个或多个回复动画。在块494’ 处,观察者104可以与攻击者102的方式基本上类似的方式执行一个 或多个回复动画。对于客户端设备平台102、103和104中的每个而 言,一旦它们根据它们的本地信息确定:袭击暂停时段313(或延长 的袭击暂停时段316)已结束,并且它们已接收到防御者102的播送: 他的本地虚拟化身也已经结束袭击暂停时段313,就可进行从袭击暂 停时段313(或延长的袭击暂停时段316)到回复动画时段314的过渡。

如图5A中所示,一组攻击者指令581可由例如攻击者102实施。 攻击者指令581可形成于非暂时性计算机可读介质如存储器132或大 容量存储设备134上。攻击者指令581还可以是过程控制程序133的 一部分。在584处,所述指令可包括用于预测将对防御者102做出成 功攻击的指令。之后,在585处,攻击者102可被指示来生成袭击事 件230。指令581随后可使攻击者102将袭击事件230传送给防御者 103和观察者104。此后,在588处,攻击者102可被指示来启动改 变的动画模式。在593处,可向攻击者提供用于接收来自防御者103 的袭击回复231的指令。最后,在594处,攻击者102可被指示来根 据袭击回复231执行一个或多个回复动画。

如图5B中所示,一组防御者指令582可由例如防御者103实 施。防御者指令582可形成于非暂时性计算机可读介质如存储器132’ 或大容量存储设备134’上。防御者指令582还可以是过程控制程序 133’的一部分。在587处,防御者指令582可包括用于接收来自攻击 者102的袭击事件230的指令。在接收到袭击事件230后,在589处, 防御者103可被指示来在本地解析袭击事件230,以便确定袭击事件 230中所包括的一个或多个攻击行动是否对防御者103造成成功攻击 或不成功攻击。之后,在590处,可向防御者103提供用于生成袭击 回复231的指令。随后在591处,指令可指导防御者102将袭击事件 231传送到攻击者102和观察者103。最后,在493处,防御者103 可被指示来执行可存在于袭击回复231中的一个或多个回复动画。

如图5C中所示,一组观察者指令583可由例如观察者104实施。 观察者指令583可形成于非暂时性计算机可读介质如存储器132”或 大容量存储设备134”上。观察者指令583还可以是过程控制程序133” 的一部分。在587’处,观察者指令583可包括用于接收来自攻击者 102的袭击事件230的指令。此后,在592’处,观察者104可被指示 来接收来自防御者103的袭击回复231。最后,在594’处,观察者104 可被指示来执行可存在于袭击回复231中的一个或多个回复动画。

虽然以上为本发明的优选实施方案的完整描述,但是使用各种替 代、修改和等效物是可能的。因此,本发明的范围不应参考以上描述 确定,而是应替代地参考随附权利要求书以及其整个范围的等效物确 定。本文所描述的任何特征(不论优选与否)可与本文所描述的任何其 它特征组合(不论优选与否)。在随附权利要求书中,不定冠词“一个” 或“一种”是指冠词后的一个或多个项的量,除非其中另外明确说明。 随附权利要求书不应被理解为包括设备加功能限制,除非这种限制在 给定权利要求中使用短语“用于……的装置”来明确陈述。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号