游戏执行方法、装置、服务器及可读存储介质与流程

阅读: 评论:0



1.本技术涉及计算机技术领域,具体而言,涉及一种游戏执行方法、装置、服务器及可读存储介质。


背景技术:



2.游戏状态系统的数据一般由游戏策划配置,用excel表格进行存储。在游戏启动时,加载游戏状态系统用到的excel表格,将表格数据存放在内存中,供游戏状态系统使用。
3.在游戏逻辑中需要给游戏对象添加状态时,会给游戏状态系统传入需要添加状态的id,状态系统根据id去内存中查该id对应的状态功能集合。然后,判断集合中的功能是否能够执行,即是否有效,如果能够执行则执行对应功能。往往一个状态id对应的游戏功能集合中只有少数几个功能会被执行,未被执行的功能会浪费大量的时间去执行比较判断逻辑。随着状态功能集合中的功能的增多,比较次数也会相应增加,在游戏中状态添加频率增加到一定量后,会由于花费了过多的时间用于执行比较判断逻辑而在一定程度上影响游戏性能。


技术实现要素:



4.本技术实施例提供了一种游戏执行方法、装置、服务器及可读存储介质,其能够在游戏逻辑向游戏状态系统提出添加状态请求时,消除对状态功能的有效性检查,从而消除由于状态功能集合功能的增多对游戏运行性能的影响,并且通过执行相应的有效状态功能集合中的有效状态功能达到状态添加的目的,同时不会出现执行未能通过有效性检查的功能的情况。
5.本技术的实施例可以这样实现:
6.第一方面,本发明提供一种游戏执行方法,所述方法包括:
7.获得目标游戏对象需要添加的目标状态标识;
8.根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合,其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能;
9.控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。
10.第二方面,本技术实施例提供一种游戏执行装置,所述装置包括:
11.标识获得模块,用于获得目标游戏对象需要添加的目标状态标识;
12.集合获得模块,用于根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合,其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能;
13.执行模块,用于控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。
14.第三方面,本技术实施例提供一种服务器,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式所述的游戏执行方法。
15.第四方面,本技术实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式所述的游戏执行方法。
16.本技术实施例提供的游戏执行方法、装置、服务器及可读存储介质,在获得目标游戏对象需要添加的目标状态标识的情况下,根据状态标识与有效状态功能集合的对应关系,获得该目标状态标识对应的目标有效状态功能集合,进而控制目标游戏对象执行该目标有效状态功能集合中的各有效状态功能。其中,目标有效状态功能集合中仅包括目标游戏对象可执行的有效状态功能,有效状态功能为通过有效性检查的状态功能。如此,在添加状态时,无需进行功能的有效性检查,而是直接执行相应的有效状态功能集合,该方式可降低游戏过程中频繁状态添加对服务器性能的影响,提高服务器运行效率,同时避免出现执行未能通过有效性检查的功能的情况。
附图说明
17.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
18.图1为本技术实施例提供的服务器的方框示意图;
19.图2为本技术实施例提供的游戏执行方法的流程示意图之一;
20.图3为本技术实施例提供的游戏执行方法的流程示意图之二;
21.图4为本技术实施例提供的状态数据的一种表现形式示意图;
22.图5为图3中步骤s120包括的子步骤的流程示意图;
23.图6为图5中子步骤s122包括的子步骤的流程示意图;
24.图7为本技术实施例提供的游戏执行方法的流程示意图之三;
25.图8为本技术实施例提供的游戏执行装置的方框示意图之一;
26.图9为本技术实施例提供的游戏执行装置的方框示意图之二。
27.图标:100-服务器;110-存储器;120-处理器;130-通信单元;200-游戏执行装置;210-预处理模块;220-标识获得模块;230-集合获得模块;240-执行模块。
具体实施方式
28.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
29.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
30.需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
31.目前,游戏逻辑每次向游戏状态系统发出状态添加请求后,状态系统会根据游戏逻辑提供的id,去内存中对应的状态功能集合,进而判断集合中的功能是否有效,如果有效则执行,如果无效则继续检查集合中的其他功能,直到没有有效的功能为止。
32.状态表格对应的状态功能集合中,即使状态功能多,但单个状态的实际用的功能较少。每次添加状态时,功能检查次数增多,影响游戏性能。同时,可能测试过程中没有覆盖到某些状态功能的非法数据(即不能执行的无效数据)对应的状态逻辑,那么策划配置的状态功能的非法数据就往往需要在游戏逻辑触发该状态添加时才会被发现,因此可能会将隐藏bug带到游戏中,等到触发才会发现,进而造成不必要的游戏运营损失。
33.针对上述情况,本技术实施例提供了一种游戏执行方法、装置、服务器及可读存储介质,在游戏启动后,通过进行有效性检查确定出有效状态功能集合,在添加状态时,可直接执行相应的有效状态功能集合中的有效状态功能。如此,降低了游戏过程中频繁添加状态对服务器性能的影响,提高了服务器运行效率,并且通过在游戏启动阶段检查状态系统功能数据的合法性的方式,规避了游戏运行时检查效率低的问题以及测试覆盖不足时的隐藏bug问题。
34.值得说明的是,针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得到的结果,因此,上述问题的发现过程以及下文中本技术实施例针对上述问题所提出的解决方案,都应是发明人在本技术过程中对本技术做出的贡献。
35.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
36.请参照图1,图1为本技术实施例提供的服务器100的方框示意图。所述服务器100包括存储器110、处理器120及通信单元130。所述存储器110、处理器120以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
37.其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
38.处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。比如,存储器110中存储有游戏执行装置200,所述游戏执行装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块。所述处理器120通过运行存储在存储器110内的软件程序以及模块,如本技术实施例中的游戏执行装置200,从而执行
各种功能应用以及数据处理,即实现本技术实施例中的游戏执行方法。
39.通信单元130用于通过网络建立所述服务器100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
40.应当理解的是,图1所示的结构仅为服务器100的结构示意图,所述服务器100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
41.请参照图2,图2为本技术实施例提供的游戏执行方法的流程示意图之一。所述方法应用于上述服务器中的游戏状态系统。下面对游戏执行方法的具体流程进行详细阐述。在本实施例中,所述方法可以包括步骤s140~步骤s160。
42.步骤s140,获得目标游戏对象需要添加的目标状态标识。
43.步骤s150,根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合。
44.步骤s160,控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。
45.在本实施例中,游戏状态系统用于对游戏场景中的对象添加一个标记,该标记可确定出一个状态功能集合,拥有该标记的游戏对象将执行对应的集合中的所有功能。状态功能集合为某状态对应的该状态可触发的所有游戏功能的集合。
46.游戏状态系统可接收游戏逻辑确定的目标状态标识。该目标状态标识为所述目标游戏对象需要添加的状态的标识。所述目标游戏对象及所述目标状态标识具体由游戏逻辑确定。所述服务器中存储有不同状态标识格各自与有效状态功能集合的对应关系,在获得所述目标状态标识的情况下,从状态标识与有效状态功能集合的对应关系中,确定出所述目标状态标识对应的有效状态功能集合,并将该有效状态功能集合作为目标有效状态功能集合。其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能,也即有效状态功能集合中不包括未能通过有效性检查的状态功能。
47.在确定出所述目标有效状态功能集合的情况下,游戏状态系统可直接控制所述目标游戏对象执行该目标有效状态功能集合中的各有效状态功能。
48.如此,在添加状态时,无需进行功能的有效性检查,而是直接执行相应的有效状态功能集合,该方式可降低游戏过程中频繁状态添加对服务器性能的影响,提高服务器运行效率,同时避免出现执行未能通过有效性检查的功能的情况。
49.请参照图3,图3为本技术实施例提供的游戏执行方法的流程示意图之二。在本实施例中,在步骤s140之前,所述方法还可以包括步骤s110~步骤s120。
50.步骤s110,在游戏启动后,加载状态数据。
51.在本实施例中,在游戏启动阶段,即可加载游戏策划配置好的状态数据。所述状态数据中包括各状态标识及该状态标识对应的原始状态功能集合,各原始状态功能集合中包括一个或多个状态功能。
52.可选地,作为一种可能的实现方式,所述状态数据可以采用图4所示的表格结构进行存储,在该结构中,id表示状态标识,后续列为相应功能(即状态功能)。
53.步骤s120,针对各原始状态功能集合,依次检查该原始状态功能集合中的各状态
功能的有效性,从而得到与该原始状态功能集合对应的有效状态功能集合。
54.在本实施例中,可针对每一个原始状态功能集合,按照状态功能在原始状态功能结合中的排序,依次对各状态功能进行有效性检查,以筛选出通过有效性检查的状态功能组成与该原始状态功能集合对应的有效状态功能集合。即,所述有效状态功能集合中仅包括有效状态功能。其中,有限性检查的具体方式可以结合实际需求设置。如此,通过在游戏启动阶段检查游戏状态系统功能数据的有效性的方式,可规避游戏运行时检查效率低的问题以及测试覆盖不足时的隐藏bug问题,进而避免将隐藏bug带入游戏中。
55.可选地,可通过图5所示方式进行有效性检查。请参照图5,图5为图3中步骤s120包括的子步骤的流程示意图。在本实施例中,步骤s120可以包括子步骤s121~子步骤s123。
56.子步骤s121,针对该原始状态功能集合中的各状态功能,判断该状态功能的功能数据是否为空。
57.在本实施例中,可针对一个原始状态功能集合中的各状态功能,判断该状态功能的功能数据是否为空。功能数据也可以称为状态功能数据,可以理解为状态功能参数,或者是实现特定游戏逻辑功能或特定游戏表现效果功能所需要的条件数据或功能方面的数据。
58.若当前检测到的状态功能的功能数据为空,则不加载该状态功能,即以认为该状态功能未通过有效性检查,不将该状态功能添加到与该原始状态功能集合对应的有效状态功能集合中。接着,可对下一个状态功能进行有效性检查。
59.子步骤s122,在该状态功能的功能数据不为空的情况下,检查该状态功能的功能数据是否满足第一预设条件,并在关联了其他系统数据时,检查所关联的其他系统数据是否满足第二预设条件,以及进行逻辑死循环检查。
60.在当前检测到的状态功能的功能数据不为空时,则进行第一预设条件、第二预设条件及逻辑死循环的检查。其中,所述第一预设条件用于对当前检查到的状态功能的功能数据本身进行检查,所述第二预设条件用于对当前检查到的状态功能的功能数据所关联的其他系统数据进行检查,逻辑死循环检查用于对当前检查到的状态功能的功能数据的逻辑进行检查。不同状态功能对应的第一预设条件可以相同或不同,不同状态功能对应的第二预设条件也可以相同或不同,具体可以结合实际需求设置。
61.作为一种可能的实现方式,可以通过图6所示方式完成基于所述第一预设条件的检查。请参照图6,图6为图5中子步骤s122包括的子步骤的流程示意图。在本实施例中,子步骤s122可以包括子步骤s1221~子步骤s1223。
62.子步骤s1221,针对该状态功能的功能数据,进行数据类型检查、数据格式检查及数据完整性检查。
63.子步骤s1222,在数据类型检查、数据格式检查及数据完整性检查均正常的情况下,判定该功能数据满足所述第一预设条件。
64.子步骤s1223,在数据类型检查、数据格式检查及数据完整性检查中至少一项检查出不正常的情况下,判定该功能数据不满足所述第一预设条件。
65.在本实施例中,所述第一预设条件中可以包括该功能数据对应的数据类型要求、数据格式要求及数据完整性要求。针对当前检测到的功能数据,可根据该功能数据对应的数据类型要求及检查到的数据类型,判断数据类型是否有误。比如,数据类型要求中包括数字类型,若该功能数据的类型为非数字类型,则判定该功能数据的数据类型错误,该功能数
据不满足所述第一预设条件。
66.还可以检查该功能数据的数据格式,并将检查到的数据格式与数据格式要求中的数据格式进行比对。若两者不同,则可以判定该功能数据的数据格式错误,该功能数据不满足所述第一预设条件。
67.还可以检查该功能数据的完整性,则检查出的完整性不满足所述数据完整性要求,则可以判定该功能数据不完整,该功能数据不满足所述第一预设条件。
68.若通过了数据类型检查、数据格式检查及数据完整性检查,即三项检查结果均为正常,则可以确定该功能数据满足所述第一预设条件。
69.还可以检查该功能数据是否关联了其他系统的数据,若是,则可以根据相应的第二预设条件检查所关联的其他系统数据是否正常,以避免在使用所关联的其他系统数据实现状态功能时,由于所关联的其他系统数据有问题,导致状态功能不能实现。其中,所关联的其他系统数据对应的第二预设条件具体可以结合实际情况设置。
70.若该功能数据未关联其他系统的数据,则可以不进行基于第二预设条件的检查。
71.还可以对该功能数据的逻辑进行检查,以避免出现逻辑死循环的钦控股导致该状态功能无法实现。例如,在该状态功能的功能数据表示在状态结束时添加新状态时,若结束的状态与需要添加的新状态为同一状态,则确定出现逻辑死循环;在该状态功能的功能数据未表示在状态结束时添加新状态时,或者在该状态功能的功能数据表示在状态结束时添加新状态、且结束的状态与需要添加的新状态不为同一状态时,则确定未出现逻辑死循环。
72.子步骤s123,在该状态功能的功能数据不为空、满足所述第一预设条件、在关联了其他系统数据时所关联的其他系统数据满足第二预设条件、且未检测到存在逻辑死循环时,则确定该状态功能为有效状态功能,并将该状态功能添加到与该原始状态功能集合对应的有效状态功能集合中。
73.在该状态功能的功能数据不为空的情况下,若该状态功能的功能数据满足第一预设条件、且未关联其他系统数据、且未检测到逻辑死循环,则可以确定该状态功能为有效状态功能。若该状态功能的功能数据满足第一预设条件、所关联的其他系统数据满足第二预设条件,未检测到逻辑死循环,则可以确定该状态功能为有效状态功能。接着,可将确定为有效状态功能的状态功能添加到与该原始状态功能集合对应的有效状态功能集合中。之后,可重复上述针对功能数据的有效性检测检查,以得到与该原始状态功能集合对应的有效状态功能集合。
74.下面对如何进行有效性检查进行举例说明。
75.假设状态数据使用表格方式存储,某原始状态功能集合中包括功能1-4。其中,功能1:限制状态存在时间,要求填入数据类型为整数或浮点数。功能2:间隔n秒扣除一定血量,格式要求:间隔时间*是否按百分比扣血*扣除值;间隔时间单位为秒,表示间隔多久执行扣除血量操作;是否按百分比扣血:如果填1表示按百分比扣血,如果填0则扣除固定值血量;扣除值:如果“是否按百分比扣血”为1,此处值表示百分比,如果“是否按百分比扣血”为0,此处值表示扣除血量值。功能3:给对象添加一个粒子,该处填粒子id,添加状态时会通过粒子id去粒子表格查对应粒子进行添加。功能4:状态结束时添加一个新状态,此处填新状态id。
76.首先检查状态功能数据是否为空,若为空,则检查下一个功能数据;若不为空,则
执行下述检查操作。
77.检查步骤一:状态表格数据类型、格式以及完整性检查。
78.1.数据类型检查:
79.状态功能列对数据类型有要求。如,功能1要求数据类型为数字类型(整数,浮点数均可),如果该列数据类型为非数字类型,则判定为数据类型错误。
80.2.数据格式检查:
81.状态功能列对数据格式有要求。如,功能2要求数据格式为:数据1*数据2*数据3,如果该列数据格式非此格式,则判定为数据格式错误。
82.3.数据完整性检查:
83.状态功能列对数据完整性要求。如,功能2要求数据格式:数据1*数据2*数据3,最少需要三项数据,如果该列数据项数量小于要求数量,则判定为数据完整性错误。
84.检查步骤二:关联表格id有效性检查。
85.某些状态功能列需要的数据为其他表格中的id,比如,功能3,如果粒子id在粒子表中不到,则判定为关联表格id无效。
86.检查步骤三:逻辑死循环检查
87.以功能4为例,如果状态a的该项数据为状态b,则取读取状态b对应的该项数据,若为状态a,则会形成状态a结束后会添加状态b,状态b结束,填加状态a,即形成了一个无法结束的闭环链条,检测到这种情况,则判定为逻辑死循环。
88.如果上述检查都通过,说明该功能数据合法,可将该功能添加到有效状态功能集合中。
89.请参照图7,图7为本技术实施例提供的游戏执行方法的流程示意图之三。在本实施例中,在有效性检查中包括判断状态功能的功能数据是否满足第一预设条件的检查时,在步骤s120之后,所述方法还可以包括步骤s130。
90.步骤s130,在进行有效性检查时,若检查出功能数据不满足所述第一预设条件,则根据检查到的不满足所述第一预设条件的功能数据生成报错提示以提示修改。
91.当对功能数据本身进行是否满足第一预设条件的检查时,若检查结果为不满足,则可以根据检查到的不满足所述第一预设条件的功能数据生成报错提示。可以将该报错提示发送到游戏策划的终端设备上,以便游戏策划及时了解到请求,并对不满足所述第一预设条件的功能数据进行修改。
92.在游戏逻辑触发添加状态时,游戏状态系统则可以获得需要添加的目标状态标识,加载与该目标状态标识对应的目标有效状态功能集合,进而控制目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。由于目标有效状态功能集合在游戏启动时已经进行了处理,内部都是有效的功能,因此不需要进行合法性检查,可直接运行。
93.为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种游戏执行装置200的实现方式,可选地,该游戏执行装置200可以采用上述图1所示的服务器100的器件结构。进一步地,请参照图8,图8为本技术实施例提供的游戏执行装置200的方框示意图之一。需要说明的是,本实施例所提供的游戏执行装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。所述游戏执行装置200可以包括:标识获得模块220、集合获得模块230及执行模块240。
94.所述标识获得模块220,用于获得目标游戏对象需要添加的目标状态标识。
95.所述集合获得模块230,用于根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合。其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能。
96.所述执行模块240,用于控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。
97.请参照图9,图9为本技术实施例提供的游戏执行装置200的方框示意图之二。在本实施例中,所述游戏执行装置200还可以包括预处理模块210。
98.所述预处理模块210用于:在游戏启动后,加载状态数据,其中,所述状态数据中包括各状态标识及该状态标识对应的原始状态功能集合;针对各原始状态功能集合,依次检查该原始状态功能集合中的各状态功能的有效性,从而得到与该原始状态功能集合对应的有效状态功能集合,其中,所述有效状态功能集合中包括有效状态功能。
99.可选地,上述模块可以软件或固件(firmware)的形式存储于图1所示的存储器110中或固化于服务器100的操作系统(operating system,os)中,并可由图1中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
100.本技术实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的游戏执行方法。
101.综上所述,本技术实施例提供一种游戏执行方法、装置、服务器及可读存储介质,在获得目标游戏对象需要添加的目标状态标识的情况下,根据状态标识与有效状态功能集合的对应关系,获得该目标状态标识对应的目标有效状态功能集合,进而控制目标游戏对象执行该目标有效状态功能集合中的各有效状态功能。其中,目标有效状态功能集合中仅包括目标游戏对象可执行的有效状态功能,有效状态功能为通过有效性检查的状态功能。如此,在添加状态时,无需进行功能的有效性检查,而是直接执行相应的有效状态功能集合,该方式可降低游戏过程中频繁状态添加对服务器性能的影响,提高服务器运行效率,同时避免出现执行未能通过有效性检查的功能的情况。
102.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
103.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
104.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以
存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
105.以上所述仅为本技术的可选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。

技术特征:


1.一种游戏执行方法,其特征在于,所述方法包括:获得目标游戏对象需要添加的目标状态标识;根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合,其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能;控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。2.根据权利要求1所述的方法,其特征在于,在所述获得目标游戏对象的目标状态标识之前,所述方法还包括:在游戏启动后,加载状态数据,其中,所述状态数据中包括各状态标识及该状态标识对应的原始状态功能集合;针对各原始状态功能集合,依次检查该原始状态功能集合中的各状态功能的有效性,从而得到与该原始状态功能集合对应的有效状态功能集合,其中,所述有效状态功能集合中包括有效状态功能。3.根据权利要求2所述的方法,其特征在于,所述针对各原始状态功能集合,依次检查该原始状态功能集合中的各状态功能的有效性,从而得到与该原始状态功能集合对应的有效状态功能集合,包括:针对该原始状态功能集合中的各状态功能,判断该状态功能的功能数据是否为空;在该状态功能的功能数据不为空的情况下,检查该状态功能的功能数据是否满足第一预设条件,并在关联了其他系统数据时,检查所关联的其他系统数据是否满足第二预设条件,以及进行逻辑死循环检查;在该状态功能的功能数据不为空、满足所述第一预设条件、在关联了其他系统数据时所关联的其他系统数据满足第二预设条件、且未检测到存在逻辑死循环时,则确定该状态功能为有效状态功能,并将该状态功能添加到与该原始状态功能集合对应的有效状态功能集合中。4.根据权利要求3所述的方法,其特征在于,所述检查该状态功能的功能数据是否满足第一预设条件,包括:针对该状态功能的功能数据,进行数据类型检查、数据格式检查及数据完整性检查;在数据类型检查、数据格式检查及数据完整性检查均正常的情况下,判定该功能数据满足所述第一预设条件;在数据类型检查、数据格式检查及数据完整性检查中至少一项检查出不正常的情况下,判定该功能数据不满足所述第一预设条件。5.根据权利要求3所述的方法,其特征在于,所述进行逻辑死循环检查,包括:在该状态功能的功能数据表示在状态结束时添加新状态时,若结束的状态与需要添加的新状态为同一状态,则确定出现逻辑死循环;在该状态功能的功能数据未表示在状态结束时添加新状态时,或者在该状态功能的功能数据表示在状态结束时添加新状态、且结束的状态与需要添加的新状态不为同一状态时,则确定未出现逻辑死循环。6.根据权利要求2所述的方法,其特征在于,有效性检查中包括判断状态功能的功能数据是否满足第一预设条件的检查,所述方法还包括:
在进行有效性检查时,若检查出功能数据不满足所述第一预设条件,则根据检查到的不满足所述第一预设条件的功能数据生成报错提示以提示修改。7.一种游戏执行装置,其特征在于,所述装置包括:标识获得模块,用于获得目标游戏对象需要添加的目标状态标识;集合获得模块,用于根据状态标识与有效状态功能集合的对应关系,获得所述目标状态标识对应的目标有效状态功能集合,其中,所述目标有效状态功能集合中仅包括所述目标游戏对象可执行的有效状态功能,所述有效状态功能为通过有效性检查的状态功能;执行模块,用于控制所述目标游戏对象执行所述目标有效状态功能集合中的各有效状态功能。8.根据权利要求7所述的装置,其特征在于,所述装置还包括预处理模块,所述预处理模块用于:在游戏启动后,加载状态数据,其中,所述状态数据中包括各状态标识及该状态标识对应的原始状态功能集合;针对各原始状态功能集合,依次检查该原始状态功能集合中的各状态功能的有效性,从而得到与该原始状态功能集合对应的有效状态功能集合,其中,所述有效状态功能集合中包括有效状态功能。9.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-6中任意一项所述的游戏执行方法。10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任意一项所述的游戏执行方法。

技术总结


本申请的实施例提供了一种游戏执行方法、装置、服务器及可读存储介质,涉及计算机技术领域。该方法包括:获得目标游戏对象需要添加的目标状态标识;根据状态标识与有效状态功能集合的对应关系,获得目标状态标识对应的目标有效状态功能集合,目标有效状态功能集合中仅包括目标游戏对象可执行的有效状态功能,有效状态功能为通过有效性检查的状态功能;控制目标游戏对象执行目标有效状态功能集合中的各有效状态功能。如此,在添加状态时,无需进行功能的有效性检查,而是直接执行相应的有效状态功能集合,该方式可降低游戏过程中频繁状态添加对服务器性能的影响,提高服务器运行效率,同时避免出现执行未能通过有效性检查的功能的情况。的情况。的情况。


技术研发人员:

杨飞飞

受保护的技术使用者:

北京像素软件科技股份有限公司

技术研发日:

2022.12.20

技术公布日:

2023/3/28

本文发布于:2023-03-31 04:55:37,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/83487.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:状态   功能   所述   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图