一种游戏状态控制系统和方法与流程

文档序号:14696458发布日期:2018-06-15 21:34阅读:222来源:国知局

本发明涉及计算机游戏应用领域,尤其涉及一种通用的游戏状态控制系统和方法。



背景技术:

在传统的角色扮演游戏中,玩家角色的行为状态设计通常是采用硬编码的方式实

现。例如,在起初只处理攻击和行走时,虚拟角色的行为描述为 :在行走时可以攻击,在攻击时不能行走。为了在攻击时限制玩家操作角色行走,通常的做法是加入以下的程序判断代码 :Function bool move(){If(是在攻击中 )Msg(“不能行走”);Return false。Else//todo:行走Return true;}这种条件结构的缺点在于,当增加更多行为和逻辑判断时,需要对整段代码做出修改,容易出现错漏,而且还需要对代码进行再编译。同时,游戏及虚拟现实中的玩家行为的数量较大。要控制好这些行为并且处理它们的逻辑,比如玩家死亡时禁止玩家大部分的行为而只允许复活相关的行为操作,需要大量且复杂的逻辑处理,游戏开发人员在编写代码时稍为粗心就会产生程序 bug,导致游戏角色的行为错乱。



技术实现要素:

针对现有技术的缺陷,本发明提供一种通用的游戏状态控制系统和方法,方便控制游戏角色的行为,使添加、修改新行为和组织行为之间的逻辑变得简单。

本发明的技术方案采用Lua脚本语言作为数据载体来实现。Lua语言是一种小巧的动态类型脚本语言,可以嵌入到游戏的应用程序中,从而为应用程序提供灵活的扩展和定制功能。而且 Lua是解释性的语言,修改后便可以执行,无须编译。

本发明的技术方案包括一种游戏状态控制系统,该系统包括:行为关系存储器,用于储存可自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段 ;配置文件转换器,用于将储存的游戏行为规则以及行为状态检验函数字段转换为游戏程序的 Lua脚本引擎可以直接加载的配置文件 ;行为状态管理器,用于调用游戏程序的 Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为 ;逻辑处理器,该逻辑处理器与所述行为状态管理器协同工作,并且用于根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。

优选地,所述行为关系存储器包括:行为描述模块,用于对游戏行为规则描述表进行建立、修改和储存 ;行为状态检验关系描述模块,用于对实现游戏行为与行为状态检验函数关联的描述表进行修改和储存。

进一步,所述配置文件转换器包括:行为检索模块,用于在储存的游戏行为规则表中对行为名称、行为状态作用字段和行为状态检验函数字段进行检索 ;行为状态检验函数分配模块,用于按照相应的游戏行为的行为状态作用来分配行为状态检验函数 ;配置文件数据生成模块,用于根据不同的行为状态作用进行排序分类建立初级数据表,然后在各个行为状态作用的初级数据表中储存对应于各个游戏行为的次级数据表,并且在对应的行为状态作用分类下的各个游戏行为的次级数据表中储存满足该行为状态作用的游戏行为。

进一步,所述的行为状态作用包括:需要检验的行为使即将发生的行为中断的中断作用 ;即将发生的行为使需要检验的行为取消的取消作用 ;以及即将发生的行为与需要检验的行为无关联的无关作用。

在一个优选的实施方式中,所述逻辑处理器进一步配置为:在所述中断作用的初级数据表中查找与即将发生的行为对应的次级数据表,然后在该次级数据表中判断是否存在需要检验的行为,如果存在需要检验的行为,则生成需要检验的行为使即将发生的行为中断的逻辑指令,否则,在所述取消作用的初级数据表中查找与即将发生的行为对应的次级数据表,然后在该次级数据表中查找需要检验的行为并且生成即将发生的行为使需要检验的行为取消的逻辑指令。

本发明的技术方案另一方面提供了一种游戏状态控制方法,该方法包括:储存可 自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段 ;将储存的游戏行为 规则以及行为状态检验函数字段转换为游戏程序的 Lua脚本引擎可以直接加载的配置文 件 ;调用游戏程序的 Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别 和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为 包括即将发生的行为和需要检验的行为 ;根据即将发生的行为的状态作用来确定需要检验 的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。

进一步,所述游戏状态控制方法还包括:对游戏行为规则描述表进行建立、修改和 储存;对实现游戏行为与行为状态检验函数关联的描述表进行修改和储存。进一步,该游戏状态控制方法还包括 :在储存的游戏行为规则表中对行为名称、行 为状态作用字段和行为状态检验函数字段进行检索 ;按照相应的游戏行为的行为状态作用 来分配行为状态检验函数 ;根据不同的行为状态作用进行排序分类建立初级数据表,然后 在各个行为状态作用的初级数据表中储存对应于各个游戏行为的次级数据表,并且在对应 的行为状态作用分类下的各个游戏行为的次级数据表中储存满足该行为状态作用的游戏行为。

附图说明

图1所示为根据本发明实施方式的游戏状态控制系统的结构框图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本发明的游戏状态控制系统适用于单机游戏、手机游戏、网页游戏等游戏的开发,尤其适用于在控制角色扮演类游戏中实现复杂的游戏行为逻辑。

参照图1所示的根据本发明实施例的游戏状态控制系统的结构框图,该系统包括 :行为关系存储器、配置文件转换器、行为状态管理器和逻辑处理器。其中,行为关系存储器储存可自定义编辑的游戏行为规则和行为状态检验函数的调用名称。配置文件转换器用于将储存的游戏行为规则、行为状态检验函数调用名称、行为状态作用以及它们之间的索引关系转换为游戏程序的 Lua脚本引擎可以直接加载的配置文件。行为状态管理器用于调用游戏程序的 Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为。逻辑处理器与所述行为状态管理器协同工作,并且用于根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。具体地,行为状态作用包括 :需要检验的行为使即将发生的行为中断的中断作用 ;即将发生的行为使需要检验的行为取消的取消作用 ;以及即将发生的行为与需要检验的行为无关联的无关作用。

可以根据储存的游戏行为描述表导出 Lua脚本引擎可以直接加载的配置文件。根据图 1的行为描述表导出的“中断”类的列表内容导出的配置文件部分数据举例如下 :

["ActionLimit"] = {["NPC对话 "] = {+"引导中 ","交易 ","剧情 ","禁止主动行走 ","吟唱中 ","技能位移中 ","技能 ","死亡 ","普通攻击 ","移动吟唱 ","摆摊 ",},}。

从上面的数据结构中可以理解到,能够使非玩家角色(NPC)对话的游戏行为产生中断作用的需要检验的行为有引导中、交易、剧情、禁止主动行走、吟唱中、技能位移中、技能、死亡、普通攻击、移动吟唱等。同理,对应“取消”类的列表内容导出的配置文件部分数据。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1