admin管理员组

文章数量:1532657

2024年6月29日发(作者:)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.7

(22)申请日 2012.04.05

(71)申请人 腾讯科技(深圳)有限公司

地址 518044 广东省深圳市福田区振兴路赛格科技园2栋东403室

(72)发明人 王旭新 姚建斌 杨伟超 汤闻

(74)专利代理机构 北京德琦知识产权代理有限公司

代理人 谢安昆

(51)

G06F19/00

权利要求说明书 说明书 幅图

(10)申请公布号 CN 103366077 A

(43)申请公布日 2013.10.23

(54)发明名称

一种模拟器类游戏的角色清除方

法、装置和系统

(57)摘要

本发明实施方式提出了一种模拟器

类游戏的角色清除方法、装置和系统。方

法包括:当判定模拟器类游戏具有待清除

角色时,将游戏当前运行信息予以保存,

并调用角色清除函数以清除待清除角色;

加载所保存的游戏当前运行信息,以继续

运行模拟器类游戏。本发明实施方式通过

保存游戏当前运行信息和调用角色清除函

数,利用修改游戏程序的栈数据和程序指

针等数据,从而达到控制游戏执行流程的

目的。尤其是,保证了游戏玩家可以随时

退出,剩余玩家可以继续不受影响的游

戏。

法律状态

法律状态公告日

法律状态信息

法律状态

权 利 要 求 说 明 书

1.一种模拟器类游戏的角色清除方法,其特征在于,该方法包括:

当判定模拟器类游戏具有待清除角色时,将游戏当前运行信息予以保存,

加载所保存的游戏当前运行信息,以继续运行所述模拟器类游戏。

2.根据权利要求1所述的模拟器类游戏的角色清除方法,其特征在于,所

将待清除角色的标识存储到所述模拟器类游戏的栈数据中;

修改所述模拟器类游戏的程序指针以运行所述角色清除函数,其中所述角

3.根据权利要求1所述的模拟器类游戏的角色清除方法,其特征在于,所

在预先确定的存储地址中存储待清除角色的标识;

修改所述模拟器类游戏的程序指针以运行所述角色清除函数,其中所述角

色清除函数访问所述预先确定的存储地址以获取所述待清除角色的标识,并

除对应于该待清除角色的标识的角色。

述调用角色清除函数以清除所述待清除角色包括:

色清除函数调用存储于所述栈数据中的待清除角色的标识作为参数,以消除

应于该待清除角色的标识的角色。

述调用角色清除函数以清除所述待清除角色包括:

并调用角色清除函数以清除所述待清除角色;

4.根据权利要求1所述的模拟器类游戏的角色清除方法,其特征在于,在

根据游戏运行状态判断是否立刻进行角色清除,如果是则继续该流程,如

5.根据权利要求4所述的模拟器类游戏的角色清除方法,其特征在于,所

6.根据权利要求1-5中任一所述的模拟器类游戏的角色清除方法,所述角

果不是则退出该流程。

判定游戏具有待清除角色之后,该方法进一步包括:

述根据游戏运行状态判断是否立刻进行角色清除包括:判断角色清除函数是

能立刻运行,和/或判断是否正在演示通关动画。

色清除函数包括:扣除角色血量函数、扣除角色生命数函数,和/或使角色

函数。 死亡

7.根据权利要求1-5中任一所述的模拟器类游戏的角色清除方法,所述判

定模拟器类游戏具有待清除角色具体包括:

当判定存在角色状态数据为未激活的角色时,判定所述模拟器类游戏具有

待清除角色。

8.根据权利要求1-5中任一所述的模拟器类游戏的角色清除方法,所述模

9.一种模拟器类游戏的角色清除装置,其特征在于,该装置包括游戏当前

游戏当前运行信息保存单元,用于当判定模拟器类游戏具有待清除角色时,

角色清除单元,用于调用角色清除函数以清除所述待清除角色;

游戏信息加载单元,用于加载所保存的游戏当前运行信息,以继续运行所

10.根据权利要求9所述的模拟器类游戏的角色清除装置,其特征在于,

角色清除单元,用于将待清除角色的标识存储到所述模拟器类游戏的栈数

据中;并修改所述模拟器类游戏的程序指针以运行所述角色清除函数,其中

述角色清除函数调用存储于所述栈数据中的待清除角色的标识

述模拟器类游戏。

将游戏当前运行信息予以保存;

运行信息保存单元、角色清除单元和游戏信息加载单元,其中:

拟器游戏运行于街机游戏对战Arclive平台、SupARC平台或ARC平台。

作为参数,以消

除对应于该待清除角色的标识的角色。

11.根据权利要求9所述的模拟器类游戏的角色清除装置,其特征在于,

该装置进一步包括游戏状态判断单元,

游戏状态判断单元,用于当游戏当前运行信息保存单元判定游戏具有待清

除角色时,根据游戏运行状态判断是否立刻进行角色清除,如果是则使能游

当前运行信息保存单元将游戏当前运行信息予以保存;如果不

待下次被触发。 是,则保持并等

12.根据权利要求11所述的模拟器类游戏的角色清除装置,其特征在于,

游戏状态判断单元,用于根据判断角色清除函数是否能立刻运行,和/或是

否正在演示通关动画,判断是否立刻进行角色清

除。

13.根据权利要求9-12中任一项所述的模拟器类游戏的角色清除装置,其

特征在于,所述角色清除函数包括:扣除角色血量函数、扣除角色生命数函

和/或使角色死亡函数。 数,

14.根据权利要求9-12中任一项所述的模拟器类游戏的角色清除装置,其

所述游戏当前运行信息保存单元,用于当判定存在角色状态数据为未激活

15.一种模拟器类游戏的角色清除系统,其特征在于,该系统包括模拟器、

模拟器类游戏存储单元,用于保存模拟器类游戏程序指令;

模拟器,用于将模拟器类游戏存储单元所保存的模拟器类游戏程序指令转

该模拟器进一步包括游戏当前运行信息保存单元、角色清除单元和游戏信

息加载单元,其中:游戏当前运行信息保存单元,用于当判定所述模拟器类

戏具有待清除角色时,将游戏当前运行信息予以保存;角色清

用角色清除函数以清除所述待清除角色;游戏信

的游戏当前运行信息,以继续运行

换成可识别指令,并运行该可识别指令以运行所述模拟器类游戏;

模拟器类游戏存储单元;其中:

的角色时,判定游戏具有待清除角色。

特征在于,

除单元,用于调

息加载单元,用于加载所保存

所述模拟器类游戏。

16.根据权利要求15所述的模拟器类游戏的角色清除系统,其特征在于,

角色清除单元,用于将待清除角色的标识存储到所述模拟器类游戏的栈数

据中;并修改所述模拟器类游戏的程序指针以运行所述角色清除函数,其中

述角色清除函数调用存储于所述栈数据中的待清除角色的标识

除对应于该待清除角色的标识的角色。 作为参数,以消

17.根据权利要求15所述的模拟器类游戏的角色清除系统,其特征在于,

该模拟器进一步包括游戏状态判断单元;

游戏状态判断单元,用于当游戏当前运行信息保存单元判定游戏具有待清

除角色时,根据游戏运行状态判断是否立刻进行角色清除,如果是则使能游

当前运行信息保存单元将游戏当前

待下次被触发。 运行信息予以保存;如果不是,则保持并等

说 明 书

技术领域

本发明实施方式涉及电子游戏技术领域,更具体地,涉及一种模拟器类

背景技术

电子游戏,又称电玩游戏,是指人通过电子设备,如电脑、游戏机等,

随着计算机技术和网络技术的飞速发展,互联网(Internet)在人们的

活、学习和工作中发挥的作用也越来越大。游戏对战平台向互联网用

户提供多人电脑游戏联机服务,它可以让互联网中的游戏玩家轻松地通过互

联网进行游戏,就如果在同一个局域网中一样。游戏对战平台通过网

转换技术,将互联网上远隔千里的玩家紧密联系到一起,并且

实时交流与沟通。任何可以通过局域网的联机的游戏都

上通过局域网方式游戏,不再需要专用的服务器,

地址,玩家可以方便地和其他人共同游戏。游戏

所有玩家就如果在同一个联网区域中,大

玩家一起游戏,互相切磋,尽享对

日常生

进行游戏的一种娱乐方式。

游戏的角色清除方法、装置和系统。

络协议

还提供给用户

可以在游戏对战平台

也不再需要记住复杂的IP

对战平台上的每一个房间里

家通过局域网任意互通,与其他的

战游戏的无穷乐趣。

模拟器(Emulator,EMU)是一种程序,原意为“仿真器”。可以使电

其他多媒体平台(掌上电脑,手机)能够运行其他平台上的程序,多

脑或者

为电视

游戏和街机模拟器。模拟器通过将其他平台的程序指令转换成本机可

以识别的指令,来运行程序的软件。模拟器类游戏是在模拟器中运行的非本

机游戏对战平台的游戏程序。比如,在目前的Arclive游戏平台上,

多个玩 家可以联网同时进行游戏,其中在游戏过程中,如果玩家的角

可以退出,其他玩家可以继色死亡,玩家

续游戏。

然而,在现有技术中,如果多玩家通过模拟器一起玩游戏,某个玩家在

其角色还未死亡的情况下选择退出,则整个游戏都会结束,其他玩家也无法

再继续进行游戏。造成这种情况的主要原因是:在现有技术中,游戏

台无法清除退出玩家的角色,而该角色残留在游戏里面可能会

成负面影响,所以现有技术的游戏对战平台不得不简单

戏,而这种处理方式则导致了其他玩家无法继续游戏。

对战平

对其他玩家造

粗暴地直接结束游

发明内容

本发明实施方式提出一种模拟器类游戏的角色清除方法,以实现游戏玩

本发明实施方式还提出了一种模拟器类游戏的角色清除装置,以实现游

本发明实施方式还提出了一种模拟器类游戏的角色清除系统,以实现游

本发明实施方式的具体方案如下:

一种模拟器类游戏的角色清除方法,该方法包括:

当判定模拟器类游戏具有待清除角色时,将游戏当前运行信息予以保存,

并调用角色清除函数以清除所述待清除角色;

戏玩家退出,剩余玩家可以继续不受影响地游戏。

戏玩家退出,剩余玩家可以继续不受影响地游戏。

家退出,剩余玩家可以继续不受影响地游戏。

加载所保存的游戏当前运行信息,以继续运行所述模拟器类游戏。

一种模拟器类游戏的角色清除装置,该装置包括游戏当前运行信息保存单

游戏当前运行信息保存单元,用于当判定模拟器类游戏具有待清除角色时,

角色清除单元,用于调用角色清除函数以清除所述待清除角色;

游戏信息加载单元,用于加载所保存的游戏当前运行信息,以继续运行

一种模拟器类游戏的角色清除系统,该系统包括模拟器、模拟器类游戏存

模拟器类游戏存储单元,用于保存模拟器类游戏程序指令;

模拟器,用于将模拟器类游戏存储单元所保存的模拟器类游戏程序指令转

该模拟器进一步包括游戏当前运行信息保存单元、角色清除单元和游戏

信息加载单元,其中:游戏当前运行信息保存单元,用于当判定模拟器类游

戏具有待清除角色时,将游戏当前运行信息予以保存;角色清除单元,

调用角色清除函数以清除所述待清除角色;游戏信息加载单元,用于

保存的游戏当前运行信息,以继续运行所述模拟器类游戏。

换成可识别指令,并运行该可识别指令以运行所述模拟器类游戏;

储单元;其中:

所述模拟器类游戏。

将游戏当前运行信息予以保存;

元、角色清除单元和游戏信息加载单元,其中:

用于

加载所

从上述技术方案可以看出,在本发明实施方式中,当判定模拟器类游戏

具有待清除角色时,将游戏当前运行信息予以保存,并调用角色清除函数以

清除待清除角色;然后加载所保存的游戏当前运行信息,以继续运行

类游戏。由此可见,应用本发明实施方式之后,模拟器通过保

行信息和调用角色清除函数,可以修改游戏程序的栈数

据,从而达到控制游戏执行流程的目的。尤其是,保证

退出,剩余玩家可以继续不受影响的游戏。

模拟器

存游戏当前运

据和程序指针等数

了游戏玩家可以随时

附图说明

图1为根据本发明实施方式的模拟器类游戏的角色清除方法流程图;

图2为根据本发明实施方式的模拟器类游戏的示范性角色清除方法流

图3为根据本发明实施方式的模拟器类游戏的角色清除装置结构图;

图4为根据本发明实施方式的模拟器类游戏的角色清除系统结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明

在本发明实施方式中,模拟器类游戏在模拟器中运行,模拟器可以掌控

作进一步的详细描述。

程图;

游戏程序的执行流程和数据,因此基于模拟器的操作来实现控制角色清除。

模拟器可以从游戏程序厂商处了解到在游戏正常流程下,与清除角色相

图1为根据本发明实施方式的模拟器类游戏的角色清除方法流程图。

如图1所示,该方法包括:

步骤101:当判定模拟器类游戏具有待清除角色时,将游戏当前运行信

在这里,模拟器在循环执行游戏程序指令时,需要判断当前是否有待清

除角色。在判断当前是否有待清除角色时,模拟器通常根据游戏程序厂商提

供游戏信息,访问游戏数据区域,查看到相关地址的数值是否符合要

如,模拟器可以访问游戏服务器,根据判断游戏服务器中是否

数据为未激活的角色来判断当前是否有待清除角色。其

戏服务器存在角色状态数据为未激活的角色时,

清除角色。

息予以保存,并调用角色清除函数以清除所述待清除角色。

关的信息(比如扣除角色血量、扣除角色生命数、使角色死亡等相关函数的

地址和函数参数形式,标明游戏状态和角色状态的数据的地址)等,然后基

于这些信息来具体执行角色清除操作。

求。比

存在角色状态

中:当模拟器判定游

则判定模拟器类游戏具有待

在一个实施方式中,调用角色清除函数以清除待清除角色可以包括:首

先将待清除角色的标识存储到模拟器类游戏的栈数据中;然后修改模拟器类

游戏的程序指针以运行该角色清除函数。角色清除函数调用存储于栈

的待清除角色的标识作为参数,以消除对应于该待清除角色的

数据中

标识的角色。

游戏的栈数据是指由编译器在需要的时候自动分配释放,在不需要的时

候自动清除的变量存储区。游戏的栈数据主要用于存储临时变量、参数传递

以及函数返回地址。游戏的程序指针指向下一条将要被执行的指令的

地址。

如果需要清除的角色的标识是通过参数传递给相关角色清除函数的,可

如果不是通过参数传递给相关角色清除函数,则相关角色清除函数首先

获取需要清除的角色标识的具体存储地址,然后将该地址所对应的存储值做

为需要清除的角色的标识。具体地,首先在预先确定的存储地址中存

除角色的标识;然后修改模拟器类游戏的程序指针以运行角色

中角色清除函数访问该预先确定的存储地址以获取待清

除对应于该待清除角色的标识的角色。

以通过栈数据或者寄存器的方式存储该参数,并将该参数传递给相关函数。

储待清

清除函数,其

除角色的标识,并消

优选地,在游戏中可能有多个玩家的角色需要被清除,此时待清除角色

基于具体游戏程序和应用环境的不同,角色清除函数可以包括:扣除角

步骤102:加载所保存的游戏当前运行信息,以继续运行所述模拟器类

在这里,当角色清除函数执行完并返回时,通常角色都已经被清除。此

时,通过加载所保存的游戏当前运行信息,可以接着继续运行模拟器类游戏。

具体地,可以恢复之前的游戏程序的栈数据和程序指针等数据,使游

继续正常运行。

游戏。

色血量函数、扣除角色生命数函数,和/或使角色死亡函数,等等。

的标识会有多个。而且,清除角色可能需要调用多个游戏程序里面的函数才

能达到目的,所以角色清除步骤可能会重复多次。

戏程序

在某些游戏状况下,在判定需要存在待清除角色后,并不适宜立刻执行

角色清除操作。比如,当游戏已经通关而在播放通关动画时,或角色清除函

数不能立刻运行时,此时并不应该立即执行角色清除操作,而是应该

关动画播放完毕之后或角色清除函数可以运行时才执行相应的

作。

等到通

角色清除操

优选地,当判定模拟器类游戏具有待清除角色之后,进一步根据游戏运

其中:可以根据游戏程序厂商提供的信息访问相关游戏数据区域,查看

到相关地址的数值,以判断当前游戏状态是否可以进行角色清除。如果游戏

状态满足角色清除要求,则根据游戏程序

数据和程序指针的数据,然后修改

用角色相关函数以写入合理的参数,

然后修改当前程序指针,从而调用

应于该待清除角色的标识的

的游戏程序的栈数据

行状态判断是否立刻进行角色清除,如果是立刻则接着步骤101以及后续的

步骤102,如果不是则退出该流程。

厂商提供的资料,先备份当前的栈

当前游戏程序的栈数据(通常是为将要调

比如待清除的角色的标识做为参数),

游戏程序里面清除角色相关函数以消除对

角色。在待清除角色都已经被清除后,恢复之前

和程序指针等数据,使游戏程序继续正常运行。

基于上述分析,图2为根据本发明实施方式的模拟器类游戏的示范性角

如图2所示,该方法包括:

步骤201:模拟器加载游戏程序。

色清除方法流程图。

步骤202:模拟器开始运行游戏程序。

步骤203:模拟器循环执行游戏程序指令。

步骤204:模拟器判断游戏当中是否有角色等待清除,如果有则执行步

步骤205:根据游戏运行状态信息判断当前是否满足清除角色的条件,

在这里,在某些游戏状况下,在判定需要存在待清除角色后,并不适宜

比如,当游戏已经通关而在播放通关动画时,或角色清除函数不能立刻

步骤206:模拟器备份当前栈数据和程序指针等数据,然后直接修改当

在这里,游戏程序中通常已经保存有清除角色函数,模拟器可以在备份

当前栈数据和程序指针等数据之后,通过调用这些清除角色函数来实现清除

角色。

前游戏程序的栈数据和程序指针,使得执行流程跳转到游戏程序中的清除角

色函数。

运行时,此时并不应该立即执行角色清除操作,而是应该等到通关动画播放

完毕之后或角色清除函数可以运行时才执行相应的角色清除操作。

立刻执行角色清除操作,而是根据游戏运行状态信息判断当前是否满足清除

角色的条件。

如果满足则执行步骤206及其后续步骤,否则返回到步骤203。

骤205及其后续步骤,否则返回执行步骤203及其后续步骤。在这里,当有

玩家选择退出时,其角色的角色状态数据为未激活。可以根据判断各个玩家

角色的角色状态数据来判断是否有角色等待清除。

步骤207:在所有的角色都被清除之后,恢复运行在步骤206中所备份

应用了上述流程之后,在模拟器类游戏中,模拟器内部可以根据具体情

况修改游戏程序的栈数据和程序指针等数据,并主动调用游戏程序里面的函

数(或者主动修改游戏程序里面的数据),从而达到控制游戏执行流程

的。而且,游戏玩家可以随时退出,剩余玩家可以继续不受影响的游

的当前栈数据和程序指针,从而继续游戏。

的目

戏。

其中,模拟器游戏可以运行于目前广泛流行的网络街机游戏对战

平台、SupARC平台或ARC平台,等等。

Arclive

本领域人员可以意识到,以上虽然详细列举了网络街机游戏对战平台的

基于上述分析,本发明实施方式还提出了一种模拟器类游戏的角色清除

图3为根据本发明实施方式的模拟器类游戏的角色清除装置结构图。如

游戏当前运行信息保存单元301,用于当判定模拟器类游戏具有待清除角

角色清除单元302,用于调用角色清除函数以清除所述待清除角色;

游戏信息加载单元303,用于加载所保存的游戏当前运行信息,以继续

色时,将游戏当前运行信息予以保存;

图3所示,该装置包括游戏当前运行信息保存单元301、角色清除单元302

和游戏信息加载单元303。其中:

装置。

一些具体实例,本发明实施方式并不局限于此。

运行所述模拟器类游戏。

在一个实施方式中,游戏当前运行信息保存单元301,用于当判定存在

在一个实施方式中,角色清除单元302,用于将待清除角色的标识存储

到所述模拟器类游戏的栈数据中;并修改所述模拟器类游戏的程序指针以运

行所述角色清除函数,其中所述角色清除

清除角色的标识作为参数,以消除

角色状态数据为未激活的角色时,判定游戏具有待清除角色。

函数调用存储于所述栈数据中的待

对应于该待清除角色的标识的角色。

在一个实施方式中,该装置进一步包括游戏状态判断单元304。

游戏状态判断单元304,用于当游戏当前运行信息保存单元301判定游

戏具有待清除角色时,根据游戏运行状态判断是否立刻进行角色清除,如果

是则使能游戏当前运行信息保存单元将游戏当前运行信息予以保存;

是,则保持并等待下次被触发。 如果不

优选地,游戏状态判断单元304,用于根据判断角色清除函数是否能立

而且,角色清除函数具体包括:扣除角色血量函数、扣除角色生命数函

本发明实施方式还提出了一种模拟器类游戏的角色清除系统。

图4为根据本发明实施方式的模拟器类游戏的角色清除系统结构图。

数,和/或使角色死亡函数,等等。

刻运行,和/或是否正在演示通关动画,判断是否立刻进行角色清除。

如图4所示,该系统包括模拟器401和模拟器类游戏存储单元402;其中:

模拟器类游戏存储单元402,用于保存模拟器类游戏程序指令。程序指令

模拟器401,用于将模拟器类游戏存储单元402所保存的模拟器类游戏程

该模拟器401可以具有与图3所示模拟器类游戏的角色清除装置的相同

具体地,模拟器401进一步包括游戏当前运行信息保存单元、角色清除

单元和游戏信息加载单元,其中:游戏当前运行信息保存单元,用于当判定

所述模拟器类游戏具有待清除角色时,将游戏当前运行信息予以保存;

清除单元,用于调用角色清除函数以清除所述待清除角色;游戏信息

元,用于加载所保存的游戏当前运行信息,以继续运行所述模

结构。

序指令转换成可识别指令,并运行该可识别指令以运行所述模拟器类游戏。

具体可以包括程序指针和栈指针。

角色

加载单

拟器类游戏。

具体地,模拟器401中的角色清除单元,用于将待清除角色的标识存储到

所述模拟器类游戏的栈数据中;并修改所述模拟器类游戏的程序指针以运行

述角色清除函数,其中所述角色清除函数

色的标识作为参数,以消除对应于调用存储于所述栈数据中的待清除角

该待清除角色的标识的角色。

优选地,该模拟器401进一步包括游戏状态判断单元。游戏状态判断单元,

用于当游戏当前运行信息保存单元判定游戏具有待清除角色时,根据游戏运

状态判断是否立刻进行角色清除,如果是则使能游戏当前运行信息保

存单元将

触发。

游戏当前运行信息予以保存;如果不是,则保持并等待下次被

综上所述,在本发明实施方式中,当判定模拟器类游戏具有待清除角色

时,将游戏当前运行信息予以保存,并调用角色清除函数以清除待清除角色;

然后加载所保存的游戏当前运行信息,以继续运行模拟器类游戏。由

应用本发明实施方式之后,模拟器通过保存游戏当前运行信息

除函数,可以修改游戏程序的栈数据和程序指针等数据,

执行流程的目的。尤其是,保证了游戏玩家可以随时退

续不受影响的游戏。

此可见,

和调用角色清

从而达到控制游戏

出,剩余玩家可以继

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护

范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,

均应包含在本发明的保护范围之内。

本文标签: 游戏角色清除模拟器运行