一种游戏状态控制系统和方法技术方案

技术编号:18216061 阅读:34 留言:0更新日期:2018-06-16 10:58
本发明专利技术公开了一种通用的游戏状态控制系统和方法,该系统包括行为关系存储器、配置文件转换器、行为状态管理器和逻辑处理器。方法包括:储存可自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段,然后转换为游戏程序的Lua脚本引擎可以直接加载的配置文件;调用游戏程序的Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口;确定需要检验的行为与即将发生的行为的逻辑关系,输出行为控制指令。本发明专利技术的有益效果为,只需修改行为描述表然后重启游戏即使新修改的游戏行为和逻辑直接生效,从而极大地提高了游戏开发效率,减少人为修改代码出现程序错误的情况。 1

A game state control system and method

The present invention discloses a universal game state control system and method, which includes behavior relationship memory, configuration file converter, behavior state manager and logic processor. Methods include: Store Custom edit game behavior rules and store predefined behavior status test function fields, then convert it into a configuration file that can be loaded directly by the Lua script engine of the game program; the Lua script engine that calls the game program parses the configuration file output by the configuration file converter, and It also identifies and manages the configured function interface of game behavior, behavior status and behavior status; determines the logical relationship between the behavior that needs to be tested and the behavior that is about to occur, and the output behavior control instruction. The beneficial effect of the invention is to modify the behavior description table and restart the game even if the newly modified game behavior and logic come into effect directly, thus greatly improving the efficiency of the game development and reducing the error of the artificial modification of the code. One

【技术实现步骤摘要】
一种游戏状态控制系统和方法
本专利技术涉及计算机游戏应用领域,尤其涉及一种通用的游戏状态控制系统和方法。
技术介绍
在传统的角色扮演游戏中,玩家角色的行为状态设计通常是采用硬编码的方式实现。例如,在起初只处理攻击和行走时,虚拟角色的行为描述为:在行走时可以攻击,在攻击时不能行走。为了在攻击时限制玩家操作角色行走,通常的做法是加入以下的程序判断代码:Functionboolmove(){If(是在攻击中)Msg(“不能行走”);Returnfalse。Else//todo:行走Returntrue;}这种条件结构的缺点在于,当增加更多行为和逻辑判断时,需要对整段代码做出修改,容易出现错漏,而且还需要对代码进行再编译。同时,游戏及虚拟现实中的玩家行为的数量较大。要控制好这些行为并且处理它们的逻辑,比如玩家死亡时禁止玩家大部分的行为而只允许复活相关的行为操作,需要大量且复杂的逻辑处理,游戏开发人员在编写代码时稍为粗心就会产生程序bug,导致游戏角色的行为错乱。
技术实现思路
针对现有技术的缺陷,本专利技术提供一种通用的游戏状态控制系统和方法,方便控制游戏角色的行为,使添加、修改新行为和组织行为之间的逻辑变得简单。本专利技术的技术方案采用Lua脚本语言作为数据载体来实现。Lua语言是一种小巧的动态类型脚本语言,可以嵌入到游戏的应用程序中,从而为应用程序提供灵活的扩展和定制功能。而且Lua是解释性的语言,修改后便可以执行,无须编译。本专利技术的技术方案包括一种游戏状态控制系统,该系统包括:行为关系存储器,用于储存可自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段;配置文件转换器,用于将储存的游戏行为规则以及行为状态检验函数字段转换为游戏程序的Lua脚本引擎可以直接加载的配置文件;行为状态管理器,用于调用游戏程序的Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为;逻辑处理器,该逻辑处理器与所述行为状态管理器协同工作,并且用于根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。优选地,所述行为关系存储器包括:行为描述模块,用于对游戏行为规则描述表进行建立、修改和储存;行为状态检验关系描述模块,用于对实现游戏行为与行为状态检验函数关联的描述表进行修改和储存。进一步,所述配置文件转换器包括:行为检索模块,用于在储存的游戏行为规则表中对行为名称、行为状态作用字段和行为状态检验函数字段进行检索;行为状态检验函数分配模块,用于按照相应的游戏行为的行为状态作用来分配行为状态检验函数;配置文件数据生成模块,用于根据不同的行为状态作用进行排序分类建立初级数据表,然后在各个行为状态作用的初级数据表中储存对应于各个游戏行为的次级数据表,并且在对应的行为状态作用分类下的各个游戏行为的次级数据表中储存满足该行为状态作用的游戏行为。进一步,所述的行为状态作用包括:需要检验的行为使即将发生的行为中断的中断作用;即将发生的行为使需要检验的行为取消的取消作用;以及即将发生的行为与需要检验的行为无关联的无关作用。在一个优选的实施方式中,所述逻辑处理器进一步配置为:在所述中断作用的初级数据表中查找与即将发生的行为对应的次级数据表,然后在该次级数据表中判断是否存在需要检验的行为,如果存在需要检验的行为,则生成需要检验的行为使即将发生的行为中断的逻辑指令,否则,在所述取消作用的初级数据表中查找与即将发生的行为对应的次级数据表,然后在该次级数据表中查找需要检验的行为并且生成即将发生的行为使需要检验的行为取消的逻辑指令。本专利技术的技术方案另一方面提供了一种游戏状态控制方法,该方法包括:储存可自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段;将储存的游戏行为规则以及行为状态检验函数字段转换为游戏程序的Lua脚本引擎可以直接加载的配置文件;调用游戏程序的Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为;根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。进一步,所述游戏状态控制方法还包括:对游戏行为规则描述表进行建立、修改和储存;对实现游戏行为与行为状态检验函数关联的描述表进行修改和储存。进一步,该游戏状态控制方法还包括:在储存的游戏行为规则表中对行为名称、行为状态作用字段和行为状态检验函数字段进行检索;按照相应的游戏行为的行为状态作用来分配行为状态检验函数;根据不同的行为状态作用进行排序分类建立初级数据表,然后在各个行为状态作用的初级数据表中储存对应于各个游戏行为的次级数据表,并且在对应的行为状态作用分类下的各个游戏行为的次级数据表中储存满足该行为状态作用的游戏行为。附图说明图1所示为根据本专利技术实施方式的游戏状态控制系统的结构框图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本专利技术进行详细描述。本专利技术的游戏状态控制系统适用于单机游戏、手机游戏、网页游戏等游戏的开发,尤其适用于在控制角色扮演类游戏中实现复杂的游戏行为逻辑。参照图1所示的根据本专利技术实施例的游戏状态控制系统的结构框图,该系统包括:行为关系存储器、配置文件转换器、行为状态管理器和逻辑处理器。其中,行为关系存储器储存可自定义编辑的游戏行为规则和行为状态检验函数的调用名称。配置文件转换器用于将储存的游戏行为规则、行为状态检验函数调用名称、行为状态作用以及它们之间的索引关系转换为游戏程序的Lua脚本引擎可以直接加载的配置文件。行为状态管理器用于调用游戏程序的Lua脚本引擎解析由所述配置文件转换器输出的配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为。逻辑处理器与所述行为状态管理器协同工作,并且用于根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。具体地,行为状态作用包括:需要检验的行为使即将发生的行为中断的中断作用;即将发生的行为使需要检验的行为取消的取消作用;以及即将发生的行为与需要检验的行为无关联的无关作用。可以根据储存的游戏行为描述表导出Lua脚本引擎可以直接加载的配置文件。根据图1的行为描述表导出的“中断”类的列表内容导出的配置文件部分数据举例如下:["ActionLimit"]={["NPC对话"]={+"引导中","交易","剧情","禁止主动行走","吟唱中","技能位移中","技能","死亡","普通攻击","移动吟唱","摆摊",},}。从上面的数据结构中可以理解到,能够使非玩家角色(NPC)对话的游戏行为产生中断作用的需要检验的行为有本文档来自技高网...
一种游戏状态控制系统和方法

【技术保护点】
1.一种游戏状态控制系统,其特征在于,该系统包括 :行为关系存储器,用于储存可自

【技术特征摘要】
1.一种游戏状态控制系统,其特征在于,该系统包括:行为关系存储器,用于储存可自定义编辑的游戏行为规则并且储存预定义的行为状态检验函数字段;配置文件转换器,用于将储存的游戏行为规则以及行为状态检验函数字段转换为游戏程序的Lua脚本引擎可以直接加载的配置文件;行为状态管理器,用于调用游戏程序的Lua脚本引擎解析由所述配置文件转换器输出配置文件,并且识别和管理已配置的游戏行为、行为状态作用和行为状态检验函数接口,其中识别的游戏行为包括即将发生的行为和需要检验的行为;与所述行为状态管理器协同工作的逻辑处理器,用于根据即将发生的行为的状态作用来确定需要检验的行为与即将发生的行为的逻辑关系,然后根据所述逻辑关系输出行为控制指令到游戏程序,从而使游戏程序控制游戏对象按照所述的游戏行为规则行动。2.根据权利要求1所述的游戏状态控制系统,其特征在于,所述行为关系存储器包括:行为描述模块,用于对游戏行为规则描述表进行建立、修改和储存;行为状态检验关系描述模块,用于对实现游戏行为与行为状态检验函数关联的描述表进行修改和储存。3.根据权利要求1所述的游戏状态控制系统,其特征在于,所述配置文件转换器包括:行为检索模块,用于在储存的游戏行为规则表中对行为名称、行为状态作用字段和行为状态检验函数字段进行检索;行为状态检验函数分配模块,用于按照相应的游戏行为的行为状态作用来分配行为状态检验函数;配置文件数据生成模块,用于根据不同的行为状态作用进行排序分类建立初级数据表,然后在各个行为状态作用的初级数据表中储存对应于各个游戏行为的次级数据表,并...

【专利技术属性】
技术研发人员:张辉
申请(专利权)人:合肥黑钻科技有限公司
类型:发明
国别省市:安徽,34

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

1