CN112090079B - 游戏任务运行方法、装置、计算机设备和存储介质 - Google Patents
游戏任务运行方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112090079B CN112090079B CN202010879751.0A CN202010879751A CN112090079B CN 112090079 B CN112090079 B CN 112090079B CN 202010879751 A CN202010879751 A CN 202010879751A CN 112090079 B CN112090079 B CN 112090079B
- Authority
- CN
- China
- Prior art keywords
- task
- game
- node
- template
- node template
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及一种游戏任务运行方法、装置、计算机设备和存储介质。所述方法包括:当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;当所述游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;当游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;根据所述任务数据运行已创建的所述任务实例,获得所述游戏玩家对应的游戏任务运行结果。采用本方法能够减少了任务实例数据量冗余,提高了游戏运行效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种游戏任务运行方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了游戏软件开发技术,利用游戏软件开发技术,可以开发出中游戏项目,在游戏项目中,为了提升趣味性,会给玩家所控制的角色设定各式各样的任务,并且任务类型与数量会随着版本迭代急速增加,那么开发者需要解决的关键问题便是更加快速便捷的增加各种任务类型。
而任务类型增多,需要的创建的对象也会增多,并且每个任务,因游戏玩家不同,则需要将同一个任务创建若干任务实例,如玩家A和B都持有一个相同任务,则为玩家A和B各创建一人任务实例,游戏运行时,玩家各自检测并执行相应任务实例,计算任务执行进度。
因此,对于每个玩家,相同任务会被重复创建,任务实例数据量冗余,导致游戏运行效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高游戏运行效率的游戏任务运行方法、装置、计算机设备和存储介质。
一种游戏任务运行方法,所述方法包括:
当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;
当所述游戏任务的任务实例已创建时,监测所述游戏任务的运行指令的触发事件;
当所述游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;
根据所述任务数据运行已创建的所述任务实例,获得所述游戏玩家对应的游戏任务运行结果。
一种游戏任务运行装置,所述装置包括:
任务实例检测模块,用于当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;
事件监听模块,用于当所述游戏任务的任务实例已创建时,监测所述游戏任务的运行指令的触发事件;
任务数据获取模块,用于当所述游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;
运行模块,用于根据所述任务数据运行已创建的所述任务实例,获得所述游戏玩家对应的游戏任务运行结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述的方法的步骤。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法的步骤。
上述游戏任务运行方法、装置、计算机设备和存储介质,通过在当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;当所述游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;当游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果即可,无需为每一个触发该游戏任务的执行指令的游戏玩家创建任务实例,来获得游戏任务运行结果,减少了任务实例数据量冗余,提高了游戏运行效率。
附图说明
图1为一个实施例中游戏任务运行方法的应用环境图;
图2为一个实施例中游戏任务运行方法的流程示意图;
图3为一个实施例中游戏任务运行方法中构建游戏任务类的流程示意图;
图4为一个实施例中构建游戏任务类的游戏任务逻辑图;
图5为一个实施例中序列化获得游戏任务资源包的框架图;
图6为一个实施例中游戏任务的构建到运行游戏任务的框架图;
图7为一个实施例中组装游戏任务的界面图;
图8为一个实施例中任务资源编辑器中显示任务节点模板名称列表的界面图;
图9为一个实施例中任务实例运行框架图;
图10为一个实施例中游戏任务运行装置的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的游戏任务运行方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。当游戏玩家通过终端102触发服务器104游戏开始指令时,服务器104根据游戏中需要运行的游戏任务的任务标识,检测游戏任务的任务实例是否已创建;当游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;当游戏任务的运行指令被游戏玩家触发时,根据游戏玩家的玩家标识,从数据缓存区中获取游戏玩家当前在游戏任务中持有的任务数据;根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果。
本申请提供的游戏任务运行方法,还可以应用于终端102,当游戏玩家通过终端102触发游戏开始指令指令时,根据游戏中需要运行的游戏任务的任务标识,检测游戏任务的任务实例是否已创建,当游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;当游戏任务的运行指令被游戏玩家触发时,根据游戏玩家的玩家标识,从数据缓存区中获取游戏玩家当前在游戏任务中持有的任务数据;根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种游戏任务运行方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S220,当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测游戏任务的任务实例是否已创建。
其中,游戏开始指令是游戏玩家开始游戏时,通过终端触发的指令,如:游戏玩家打开游戏APP进入游戏首页,选择一种游戏模式,并点击开始时,触发游戏开始指令,进入到游戏中。游戏中需要运行的游戏任务是游戏玩家在游戏过程中可以执行的任务,游戏任务完成之后可以获得相应的奖励,如:在地图X里淘汰玩家10名获得1000个金币。任务标识是识别游戏任务的信息,如:游戏任务的编号、游戏任务名称等等。任务实例是游戏任务的游戏任务类被实例化后的对象。通过任务标识,可以对已创建的任务实例进行识别,确定已创建的任务实例中是否存在于该任务标识对应的游戏任务的任务实例。
步骤S240,当游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件。
其中,已创建的游戏任务的任务实例,可以是第一个触发游戏开始指令时,创建的游戏中需要运行的游戏任务的任务实例。当第一个触发游戏开始指令的游戏玩家,对游戏中需要运行的游戏任务的游戏任务类进行实例化,创建该游戏任务的任务实例,并指定一块存储区域作为存储游戏玩家在游戏任务中持有的任务数据。游戏任务的运行指令是用于控制服务器的任务管理器运行游戏任务的任务实例的指令。监测游戏任务的运行指令的触发事件可以是由服务器中事件管理器进行监听,假设:游戏任务时游戏玩家在地图X里淘汰玩家10名获得1000个金币,当游戏玩家在游戏中,在地图X里淘汰玩家即可触发游戏任务的运行指令。
步骤S260,当游戏任务的运行指令被游戏玩家触发时,根据游戏玩家的玩家标识,从数据缓存区中获取游戏玩家当前在游戏任务中持有的任务数据。
其中,游戏玩家是参与游戏,在游戏世界中扮演其中的可控角色,操作这些人物去完成游戏或是自己所定目标的用户。玩家标识是在游戏世界中识别游戏玩家的信息,如:玩家昵称、游戏账号等等。数据缓存区是存储游戏玩家在该游戏任务中持有的任务数据的存储区域。任务数据是游戏玩家在执行该游戏任务时,任务完成情况等数据,如:收集金币数量,击杀怪物数量等。
步骤S280,根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果。
其中,游戏任务运行结果是根据任务数据运行任务实例后,获得显示游戏玩家的游戏任务执行情况的界面。
上述游戏任务运行方法中,通过在当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;当所述游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;当游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果即可,无需为每一个触发该游戏任务的执行指令的游戏玩家创建任务实例,来获得游戏任务运行结果,减少了任务实例数据量冗余,提高了游戏运行效率。
在一个实施例中,该游戏任务运行方法还包括:当游戏任务的任务实例未创建时,根据任务标识获取对应的游戏任务类;对游戏任务类进行实例化,创建游戏任务的任务实例,并分配数据缓存区;在数据缓存区中添加游戏玩家的任务黑板,记录游戏玩家的任务数据。
其中,游戏任务类是游戏任务中各个任务节点类或/和任务条件类的组成的游戏任务程序。实例化是指在面向对象的编程中,把用类创建对象的过程称为实例化。数据缓存区是存储各个游戏玩家在该游戏任务中持有的任务数据的存储区域,当有新的游戏玩家执行该游戏任务时,在数据缓存区添加一块任务黑板,该任务黑板是用来记录该游戏玩家的任务数据的数据黑板。每一个执行该游戏任务的游戏玩家对应有一块任务黑板,各游戏玩家的任务黑板用于记录各游戏玩家的任务数据。通过任务黑板记录该游戏玩家的任务数据,服务器的任务管理器在接收到游戏任务的运行指令时,依次获取游戏玩家持有的任务数据,运行任务实例逻辑即可,一种游戏任务只需要创建一个任务实例,可以大大减小数据冗余。
在一个实施例中,请参阅图3,游戏任务的游戏任务类的构建方式,包括以下步骤:
步骤S420,获取各任务节点模板的节点图标在任务资源编辑器中显示。
其中,任务节点模板是游戏任务中各个任务条件类或执行节点类被原子化的类模板,是具备节点逻辑功能粒度适中且独立的类。如:玩家获取金币数大于100,其中与数值100的“数据对比功能”可抽象作为一个原子化操作,其它任务中若出现数据对比逻辑,即可直接复用,更改比对的数值即可。执行节点类可以是C++类或者蓝图类。节点图标是用于在任务资源编辑器的展示界面中代表任务节点模板的图标。任务资源编辑器是游戏引擎中用于游戏开发的编辑器,游戏引擎如虚幻4游戏引擎(Unreal Engine 4)。
在一个实施例中,获取各任务节点模板的节点图标在任务资源编辑器中显示,包括:根据任务节点模板获取指令中携带的节点标识,向游戏引擎数据库查找任务节点模板;当游戏引擎数据库中存在任务节点模板时,获取任务节点模板的节点图标在任务资源编辑器中显示;当游戏引擎数据库中不存在任务节点模板时,根据任务节点模板的功能,创建任务节点模板;获取任务节点模板的节点图标在任务资源编辑器中显示。
其中,节点标识是标记任务节点模板的信息,如:任务节点模板编号和任务节点模板名称等。游戏引擎数据库是游戏引擎中用于存储任务节点模板的数据库。任务节点模板的功能,创建任务节点模板,可以是根据任务节点模板的功能,新编写一个任务节点模板,并为任务节点模板设定节点标识和节点图标。如下所示是编写的被原子化的执行节点类的任务节点模板的代码逻辑:
在一个实施例中,根据任务节点模板的功能,创建任务节点模板的步骤之后,还包括:将创建的任务节点模板新增到游戏引擎数据库中。
其中,每新创建一个任务节点模板,就新增到游戏引擎数据库中,下次需要相同功能的任务节点模板时,直接从游戏引擎数据库中获取即可。
步骤S440,根据显示的各任务节点模板的节点图标,定义各任务节点模板的任务参数和节点间关联参数。
其中,根据显示的各任务节点模板的节点图标,开发人员可以通过终端对及节点图标进行操作,设定任务节点模板的任务参数和节点间关联参数。任务参数是各个任务节点模板对应的任务条件类或执行节点类执行时所需的参数值,如:数据对比功能的任务节点模板,需要设定具体的比对数值。节点间关联参数是用于定义各任务节点模板之间关联关系的参数,如:任务节点模板A与任务节点模板B前后关系,即执行完任务节点模板A后执行任务节点模板B等。
在一个实施例中,根据显示的各任务节点模板的节点图标,定义各任务节点模板的任务参数和节点间关联参数,包括:根据显示的各任务节点模板的节点图标,触发携带节点标识的任务节点模板编辑指令;根据节点标识,显示任务节点模板的参数面板;基于参数面板输入的数据,定义任务节点模板的任务参数和节点间关联参数。
其中,开发人员根据终端的任务资源编辑器中显示的各任务节点模板的节点图标,点击或选中需要定义任务节点模板的任务参数和/或节点间关联参数的节点图标,触发携带节点标识的任务节点模板编辑指令。根据节点标识,获取任务节点模板对应的参数面板,用户可以在参数面板中选中某个参数或在输入栏输入参数,参数面板输入的数据可以是参数面板中选中的参数和/或输入栏输入的参数。定义任务节点模板的任务参数和定义任务节点模板的节点间关联参数可以分别有一个参数面板,如:开发人员是定义任务节点模板的任务参数时,触发的则是用于定义任务参数的任务节点模板编辑指令,开发人员是定义任务节点模板的节点间关联参数时,触发的则是用于定义节点间关联参数的任务节点模板编辑指令。
步骤S460,根据节点间关联参数对各任务节点模板的节点图标进行逻辑关联,获得游戏任务逻辑图。
其中,游戏任务逻辑图可以直观的看出各任务节点模板之间的关联关系的图,如图4所示的游戏任务逻辑图,是否队友的任务节点模板、与他人距离对比的任务节点模板和降落后指定时间内的任务节点模板是“与”的关系。
在一个实施例中,根据节点间关联参数对各任务节点模板的节点图标进行逻辑关联,获得游戏任务逻辑图的步骤之后,还包括:当接收到调试指令时,根据游戏任务逻辑图的执行逻辑进行调试运行;根据各节点图标对于的任务节点的执行状态,在运行窗口显示执行状态;根据运行获得调试数据,对存在问题的节点图标进行标记,显示调试数据和标记的问题的节点图标;对被标记的节点图标对应的任务节点模板进行调整。
其中,在调试运行的过程中,还可以断开其中一个或多个节点图标之间的关联关系,查看调试运行的调试数据。通过在任务资源编辑器对游戏任务逻辑图的执行逻辑进行调试运行,标记执行出问题的节点图标,可用于快速定位问题。显示执行状态、调试数据和标记的问题的节点图标,提高开发期调试效率。
步骤S480,根据各任务节点模板的任务参数和游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包。
其中,序列化是将各任务节点模板的任务参数、各节点标识、各任务节点模板和各节点标识的逻辑关联转换为可以存储或传输的形式的过程。游戏任务资源包中包括各任务节点模板的任务参数、各节点标识、各任务节点模板和各节点标识的逻辑关联等数据。通过对游戏任务资源包中的数据进行实例化,即可获得游戏任务的任务实例。
在一个实施例中,根据各任务节点模板的任务参数和游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包,包括:根据游戏任务逻辑图,获取各节点图标对应的节点标识;根据各节点图标的逻辑关联,确定各节点标识的逻辑关联;将各任务节点模板的任务参数、各节点标识、各任务节点模板和各节点标识的逻辑关联进行打包,获得游戏任务类的游戏任务资源包。
其中,如图5所示的序列化获得游戏任务类的游戏任务资源包的框架,任务资源编辑器中包括任务资源编辑器数据和运行时需要的数据组成任务资源,在进行游戏任务资源包打包时,不打包图5中所示的任务资源编辑器数据,如:节点图标数据、说明文字等等,只打包运行时所需要的数据,图5中所示的:根据各任务节点模板组成的一个迭代存储主流程树、两个迭代存储子树,以及各任务节点模板的任务参数等等数据,任务资源编辑器组织流程树获得运行时需要的数据进行打包,获得游戏任务类的游戏任务资源包。通过只打包运行时所需要的数据在实际运行环境下执行,任务资源编辑器数据仅开发时使用,可以节省实际版本空间。
通过直接从任务资源编辑器中选中游戏任务中需要的任务条件类和/或执行节点类的任务节点模板,组装出不同的任务类型,节点复用性高,大大减小重复开发量,可高效快捷的制作新任务,大大提交开发效率,有较好的可移植性,可移植应用于不同UE4游戏项目。
在一个实施例中,当需要开发与游戏任务逻辑图中的任务执行流程相同的游戏任务时,通过任务派生指令,获取该游戏任务逻辑图进行显示,基于显示的游戏任务逻辑图,修改各任务节点模板的任务参数即可。
其中,开发人员任务资源编辑器里选择基类任务资源,加载后,流程图不能修改,只能编辑任务参数,保存时,仅保存差异化数据,创建任务实例时,会通过基类任务资源创建任务实例,并修改差异参数,作为派生任务实例。可以大大减小重复开发量,可高效快捷的制作新任务,大大提交开发效率,有较好的可移植性,可移植应用于不同UE4游戏项目。
本申请还提供如图6所示通过虚幻4游戏引擎的编辑器(UE4编辑器)中的任务资源编辑器编辑游戏任务(即如图6所示的离线行为,由若干个任务条件类或执行节点类对应的任务节点模板组装成游戏任务),并将编辑的游戏任务序列化为游戏任务资源包,如图6所示的在线行为,通过服务器的事件管理器监听触发事件,在游戏玩家触发运行游戏任务的运行指令时,服务器游戏模块中的任务管理器运行游戏任务的任务实例中包括的任务执行流的场景,该场景应用具体实现如下:
开发人员通过虚幻4游戏引擎的新建任务资源,双击打开任务资源编辑器,进行游戏任务组装,如图7所示的在任务资源编辑器中组装游戏任务的界面,将各任务节点模板的节点图标在任务资源编辑器中显示,当需要定义各任务节点模板的任务参数时,选中任务节点模板,选中与他人距离对比的任务节点模板时,在界面右边,显示与他人距离对比的任务节点模板的参数面板,开发人员可以输入对应的参数值。当需要增加任务节点模板时,开发人员可以在任务资源编辑器中右键点击,显示如图8所示的可选的任务节点模板名称列表,在列表中选中需要增加的任务节点模板,加入到任务资源编辑器中进行显示,并根据增加的任务节点模板与已显示在的任务资源编辑器的任务节点模板之间的执行逻辑,触发的则是用于定义节点间关联参数的任务节点模板编辑指令,将增加的任务节点模板与已显示在的任务资源编辑器中的任务节点模板进行连接。游戏任务在任务资源编辑器中组装完成后,序列化为游戏任务资源包,作为服务器中运行该游戏任务时需要的游戏任务类。
当游戏玩家进入游戏,触发游戏开始指令时,根据游戏中需要运行的游戏任务的任务标识,检测游戏任务的任务实例是否已创建;当游戏任务的任务实例已创建时,服务器的事件管理器监测游戏任务的运行指令的触发事件,当监听到游戏任务的运行指令被游戏玩家触发时,如图9所示的任务实例运行框架图,任务管理器根据玩家标识,从数据缓存区中确定该游戏玩家对应的任务黑板,获取当前任务黑板中记录的任务数据,运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果。
通过直接从任务资源编辑器中选中游戏任务中需要的任务条件类和/或执行节点类的任务节点模板,组装出不同的任务类型,节点复用性高,大大减小重复开发量,可高效快捷的制作新任务,大大提交开发效率,有较好的可移植性,可移植应用于不同UE4游戏项目。通过相同游戏任务只存在一份任务实例,同时通过任务黑板实现任务数据与任务执行逻辑分离,减少相同任务的重复创建,降低数据冗余。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图10所示,提供了一种游戏任务运行装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:任务实例检测模块310、事件监听模块320、任务数据获取模块330和运行模块340,其中:
任务实例检测模块310,用于当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测游戏任务的任务实例是否已创建;
事件监听模块320,用于当游戏任务的任务实例已创建时,监测游戏任务的运行指令的触发事件;
任务数据获取模块330,用于当游戏任务的运行指令被游戏玩家触发时,根据游戏玩家的玩家标识,从数据缓存区中获取游戏玩家当前在游戏任务中持有的任务数据;
运行模块340,用于根据任务数据运行已创建的任务实例,获得游戏玩家对应的游戏任务运行结果。
在一个实施例中,该游戏任务运行装置还包括:实例化模块,用于当游戏任务的任务实例未创建时,根据任务标识获取对应的游戏任务类;对游戏任务类进行实例化,创建游戏任务的任务实例,并分配数据缓存区;在数据缓存区中添加游戏玩家的任务黑板,记录游戏玩家的任务数据。
在一个实施例中,该游戏任务运行装置还包括:游戏任务构建模块,用于获取各任务节点模板的节点图标在任务资源编辑器中显示;根据显示的各任务节点模板的节点图标,定义各任务节点模板的任务参数和节点间关联参数;根据节点间关联参数对各任务节点模板的节点图标进行逻辑关联,获得游戏任务逻辑图;根据各任务节点模板的任务参数和游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包。
在一个实施例中,游戏任务构建模块还用于:根据显示的各任务节点模板的节点图标,触发携带节点标识的任务节点模板编辑指令;根据节点标识,显示任务节点模板的参数面板;基于参数面板输入的数据,定义任务节点模板的任务参数和节点间关联参数。
在一个实施例中,游戏任务构建模块还用于:根据任务节点模板获取指令中携带的节点标识,向游戏引擎数据库查找任务节点模板;当游戏引擎数据库中存在任务节点模板时,获取任务节点模板的节点图标在任务资源编辑器中显示;当游戏引擎数据库中不存在任务节点模板时,根据任务节点模板的功能,创建任务节点模板;获取任务节点模板的节点图标在任务资源编辑器中显示。
在一个实施例中,游戏任务构建模块还用于:将创建的任务节点模板新增到游戏引擎数据库中。
在一个实施例中,游戏任务构建模块还用于:根据游戏任务逻辑图,获取各节点图标对应的节点标识;根据各节点图标的逻辑关联,确定各节点标识的逻辑关联;将各任务节点模板的任务参数、各节点标识、各任务节点模板和各节点标识的逻辑关联进行打包,获得游戏任务类的游戏任务资源包。
关于游戏任务运行装置的具体限定可以参见上文中对于游戏任务运行方法的限定,在此不再赘述。上述游戏任务运行装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储任务数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种游戏任务运行方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (16)
1.一种游戏任务运行方法,其特征在于,所述方法包括:
当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;
当所述游戏任务的任务实例已创建时,监测所述游戏任务的运行指令的触发事件;
当所述游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;所述数据缓存区用于在游戏任务的任务实例创建时,记录所述游戏玩家的任务数据;
根据所述任务数据运行已创建的所述任务实例,获得所述游戏玩家对应的游戏任务运行结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述游戏任务的任务实例未创建时,根据所述任务标识获取对应的游戏任务类;
对所述游戏任务类进行实例化,创建所述游戏任务的任务实例,并分配数据缓存区;
在所述数据缓存区中添加所述游戏玩家的任务黑板,记录所述游戏玩家的任务数据。
3.根据权利要求2所述的方法,其特征在于,所述游戏任务的游戏任务类的构建方式,包括:
获取各任务节点模板的节点图标在任务资源编辑器中显示;
根据显示的各所述任务节点模板的节点图标,定义各所述任务节点模板的任务参数和节点间关联参数;
根据所述节点间关联参数对各所述任务节点模板的节点图标进行逻辑关联,获得游戏任务逻辑图;
根据各所述任务节点模板的任务参数和所述游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包。
4.根据权利要求3所述的方法,其特征在于,所述根据显示的各所述任务节点模板的节点图标,定义各所述任务节点模板的任务参数和节点间关联参数,包括:
根据显示的各所述任务节点模板的节点图标,触发携带节点标识的任务节点模板编辑指令;
根据所述节点标识,显示所述任务节点模板的参数面板;
基于所述参数面板输入的数据,定义所述任务节点模板的任务参数和节点间关联参数。
5.根据权利要求3所述的方法,其特征在于,所述获取各任务节点模板的节点图标在任务资源编辑器中显示,包括:
根据任务节点模板获取指令中携带的节点标识,向游戏引擎数据库查找任务节点模板;
当所述游戏引擎数据库中存在所述任务节点模板时,获取所述任务节点模板的节点图标在任务资源编辑器中显示;
当所述游戏引擎数据库中不存在所述任务节点模板时,根据所述任务节点模板的功能,创建所述任务节点模板;
获取所述任务节点模板的节点图标在任务资源编辑器中显示。
6.根据权利要求5所述的方法,其特征在于,所述根据所述任务节点模板的功能,创建所述任务节点模板的步骤之后,还包括:
将创建的所述任务节点模板新增到所述游戏引擎数据库中。
7.根据权利要求3所述的方法,其特征在于,所述根据各所述任务节点模板的任务参数和所述游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包,包括:
根据所述游戏任务逻辑图,获取各所述节点图标对应的节点标识;
根据所述各所述节点图标的逻辑关联,确定各所述节点标识的逻辑关联;
将各所述任务节点模板的任务参数、各所述节点标识、各所述任务节点模板和各所述节点标识的逻辑关联进行打包,获得游戏任务类的游戏任务资源包。
8.一种游戏任务运行装置,其特征在于,所述装置包括:
任务实例检测模块,用于当游戏开始指令被触发时,根据游戏中需要运行的游戏任务的任务标识,检测所述游戏任务的任务实例是否已创建;
事件监听模块,用于当所述游戏任务的任务实例已创建时,监测所述游戏任务的运行指令的触发事件;
任务数据获取模块,用于当所述游戏任务的运行指令被游戏玩家触发时,根据所述游戏玩家的玩家标识,从数据缓存区中获取所述游戏玩家当前在所述游戏任务中持有的任务数据;所述数据缓存区用于在游戏任务的任务实例创建时,记录所述游戏玩家的任务数据;
运行模块,用于根据所述任务数据运行已创建的所述任务实例,获得所述游戏玩家对应的游戏任务运行结果。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
实例化模块,用于当所述游戏任务的任务实例未创建时,根据所述任务标识获取对应的游戏任务类;对所述游戏任务类进行实例化,创建所述游戏任务的任务实例,并分配数据缓存区;在所述数据缓存区中添加所述游戏玩家的任务黑板,记录所述游戏玩家的任务数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
游戏任务构建模块,用于获取各任务节点模板的节点图标在任务资源编辑器中显示;根据显示的各所述任务节点模板的节点图标,定义各所述任务节点模板的任务参数和节点间关联参数;根据所述节点间关联参数对各所述任务节点模板的节点图标进行逻辑关联,获得游戏任务逻辑图;根据各所述任务节点模板的任务参数和所述游戏任务逻辑图进行序列化,获得游戏任务类的游戏任务资源包。
11.根据权利要求10所述的装置,其特征在于,所述游戏任务构建模块还用于根据显示的各所述任务节点模板的节点图标,触发携带节点标识的任务节点模板编辑指令;根据所述节点标识,显示所述任务节点模板的参数面板;基于所述参数面板输入的数据,定义所述任务节点模板的任务参数和节点间关联参数。
12.根据权利要求10所述的装置,其特征在于,所述游戏任务构建模块还用于根据任务节点模板获取指令中携带的节点标识,向游戏引擎数据库查找任务节点模板;当所述游戏引擎数据库中存在所述任务节点模板时,获取所述任务节点模板的节点图标在任务资源编辑器中显示;当所述游戏引擎数据库中不存在所述任务节点模板时,根据所述任务节点模板的功能,创建所述任务节点模板;获取所述任务节点模板的节点图标在任务资源编辑器中显示。
13.根据权利要求12所述的装置,其特征在于,所述游戏任务构建模块还用于将创建的所述任务节点模板新增到所述游戏引擎数据库中。
14.根据权利要求10所述的装置,其特征在于,所述游戏任务构建模块还用于根据所述游戏任务逻辑图,获取各所述节点图标对应的节点标识;根据所述各所述节点图标的逻辑关联,确定各所述节点标识的逻辑关联;将各所述任务节点模板的任务参数、各所述节点标识、各所述任务节点模板和各所述节点标识的逻辑关联进行打包,获得游戏任务类的游戏任务资源包。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
16.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010879751.0A CN112090079B (zh) | 2020-08-27 | 2020-08-27 | 游戏任务运行方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010879751.0A CN112090079B (zh) | 2020-08-27 | 2020-08-27 | 游戏任务运行方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112090079A CN112090079A (zh) | 2020-12-18 |
CN112090079B true CN112090079B (zh) | 2022-05-06 |
Family
ID=73758041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010879751.0A Active CN112090079B (zh) | 2020-08-27 | 2020-08-27 | 游戏任务运行方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112090079B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112604284B (zh) * | 2020-12-29 | 2024-04-16 | 北京冰封互娱科技有限公司 | 游戏的任务执行方法、装置、设备及计算机可读存储介质 |
CN112827183B (zh) * | 2021-03-03 | 2024-06-04 | 网易(杭州)网络有限公司 | 一种游戏数据处理的方法和装置 |
CN113413588B (zh) * | 2021-06-16 | 2024-03-15 | 网易(杭州)网络有限公司 | 游戏任务的处理方法、装置、电子设备及存储介质 |
CN113836011B (zh) * | 2021-09-16 | 2024-02-23 | 网易(杭州)网络有限公司 | 任务列表的处理方法、装置、存储介质及电子设备 |
CN113797542B (zh) * | 2021-09-29 | 2024-04-23 | 上海完美时空软件有限公司 | 任务数据的生成方法及装置、存储介质、电子装置 |
CN115738245A (zh) * | 2022-11-22 | 2023-03-07 | 乐元素科技(北京)股份有限公司 | 任务处理方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9573051B1 (en) * | 2013-04-15 | 2017-02-21 | Kabam, Inc. | Dynamic item obtain rate based on player progression, action, and other in-game behavior |
CN105719126B (zh) * | 2016-01-22 | 2019-12-10 | 上海晶赞科技发展有限公司 | 一种基于生命周期模型的互联网大数据任务调度的***及方法 |
CN111359216A (zh) * | 2020-02-13 | 2020-07-03 | 网易(杭州)网络有限公司 | 一种游戏的信息处理方法、装置、电子设备及存储介质 |
CN111400070B (zh) * | 2020-03-24 | 2023-05-19 | 广州华多网络科技有限公司 | 终端设备及其跨进程接口调用实现和执行方法 |
-
2020
- 2020-08-27 CN CN202010879751.0A patent/CN112090079B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112090079A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112090079B (zh) | 游戏任务运行方法、装置、计算机设备和存储介质 | |
US5475843A (en) | System and methods for improved program testing | |
CN102667730B (zh) | 设计时调试 | |
US7398514B2 (en) | Test automation stack layering | |
US7685609B1 (en) | Using a distributed form object model to facilitate form event processing | |
CN110244942B (zh) | 一种页面生成方法、装置及*** | |
US8065659B1 (en) | Method and apparatus for executing scripts within a web browser | |
CN111522552B (zh) | 子应用生成方法、装置、计算机设备和存储介质 | |
US20050268280A1 (en) | Encapsulating changes to a software application | |
JPH07114468A (ja) | コンピュータシステム | |
CN112882769B (zh) | 技能包数据处理方法、装置、计算机设备和存储介质 | |
CN111111201B (zh) | 一种基于游戏的技能创建方法、装置、服务器及介质 | |
Netti et al. | FINJ: A fault injection tool for HPC systems | |
CN107391219A (zh) | 函数编译方法和装置 | |
CN114979029B (zh) | 一种虚拟机器人的控制方法、装置、设备及存储介质 | |
JP7231347B2 (ja) | イベント基盤パッケージモジュールの呼び出し方法およびシステム | |
CN113590454A (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN113296758A (zh) | 一种前端组件库构建方法、装置及存储介质 | |
CN110622146B (zh) | 设备因子图可编程合成机制 | |
CN113018870A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
US10990264B2 (en) | User interface development in a transcompiling environment | |
Baillie et al. | The Urbi universal platform for robotics | |
US10430309B2 (en) | Duplicating a task sequence from a graphical user interface interaction for a development application in view of trace data | |
CN111459547B (zh) | 一种函数调用链路的展示方法和装置 | |
CN113590118B (zh) | 一种基于drf框架的资源权限控制装置与方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |