一种游戏关卡配置方法、装置及终端的制作方法
【技术领域】
[0001] 本发明设及游戏领域,尤其设及一种游戏关卡配置方法、装置及终端。
【背景技术】
[0002] 在闯关类游戏中,有一种称为"无尽关卡"的关卡,运种关卡会源源不断的刷新怪 物,玩家需要通过操作击败不断刷出的怪物,直至角色死亡,游戏会根据玩家在关卡中坚持 的时间与击杀怪物的数量来给予玩家相应的奖励。
[0003] 由于无尽关卡具有"永动刷怪"的特点,因而无法在加载阶段就将全部的怪物和关 卡要素生成完毕,而是需要拟定一套刷怪规则,在关卡中根据运套规则进行怪物刷新。
[0004] 从游戏体验出发,如果反复挑战同样的怪物会带来机械、死板的游戏体验,玩家自 然不希望无尽关卡仅是怪物的简单重复。因而设计得当的无尽关卡应当具备一定的随机 性,玩家无法预知自己下一波会遇到怎样的敌人。但也应该具备一定规律性的,保证了无尽 关卡的设计能够让玩家在游戏中体验到关卡难度节奏的变化,而不至于因为随机性过高导 致每次体验同一个无尽关卡,都无法找到一个通用的方法应对而导致茫然不知所措。
[0005] 现有的无尽关卡生成方法主要包括随机素材组合法和随机元素法。其中,如图1所 示,随机素材组合法是一种将无尽关卡的怪物分为一个个素材,再将素材随机组合刷出的 刷怪方法。整个无尽关卡被拆分成了一个又一个的素材,每个素材都是一波独立完整的怪 物,对于运种方式组成的无尽关卡,其刷怪规则为"一波素材结束之后随机刷下一波素材", 其中,"结束"的条件可W是时间,也可W是怪物数量;而无尽关卡中的随机性,则是靠每一 次刷素材都从一个素材库中随机选取来实现的。如图2所示,随机元素法是指将无尽关卡量 化为一个个阶段,每个阶段赋予一个难度数值,根据难度数值去怪物库中随机选择一定数 量的怪物刷出的刷怪方法。整个无尽关卡被分为了一个一个阶段,每个阶段都有一个对应 的难度系数值,每个怪物也都有一个对应的难度系数值,根据阶段的难度系数值,从怪物库 中随机选取难度系数值的和趋近于阶段难度系数值的怪物组合。对于运种方式组成的随机 关卡,其刷怪规则为"一个阶段结束之后刷下一个阶段","结束"的条件同样也可能是时间 或者是怪物数量;无尽关卡的随机性是依靠每个阶段中每次刷怪都会随机出难度系数和相 同,但种类不同的怪物组合来实现的。
【发明内容】
[0006] 对于随机素材组合法来说,其优势在于每个素材都是单独设计的,保证了玩家在 每一波怪物的体验是优秀的,但想要达到较强的随机性,就需要较大的素材库,而且若想增 加新的怪物,又需要对素材进行更新,关卡的制作成本太高。而随机元素法的制作成本虽然 较低,想要添加新的关卡元素和怪物只需要更新怪物库即可,但相对应的,随机元素法的随 机性过强,可控性较低,很难保证一个关卡的玩家体验的统一,且容易出现一些体验非常奇 怪的怪物波次。
[0007] 针对上述问题,本发明的目的在于提供一种游戏关卡配置方法、装置及终端,可实 现随机性好、有规律且可控性高的游戏关卡配置。
[000引本发明提供了一种游戏关卡配置方法,包括如下步骤:
[0009] 基于预置的素材参数和难度曲线进行怪物配置,生成至少两个不同的怪物素材;
[0010] 根据预置的组合规则对所述怪物素材进行分组,生成至少两个怪物素材序列,其 中,每个怪物素材序列中包括至少两个怪物素材;
[0011] 利用随机函数和一个包含重复参数的重复函数配合来随机选择所述怪物素材序 列,生成包含至少一个所述怪物素材序列的数组,其中,所述数组中的怪物素材序列的个数 由所述重复参数决定;
[0012] 将所述数组内的怪物素材序列配置到游戏关卡中。
[0013] 上述方案中,通过引入难度曲线和素材参数来控制怪物素材的随机性和规律性, 再根据怪物素材的难度曲线和素材参数对其分类并组合成怪物素材序列,来增加怪物素材 序列中的怪物素材的层次的可控性,从而实现了对游戏关卡进行随机、可控、有规律的怪物 配置。此外,通过一个重复函数可实现怪物素材序列的重复,从而可W更高效的配置生成符 合设计初衷的游戏关卡,节省了游戏的开发时间,提高了玩家的游戏体验。
[0014] 优选地,所述素材参数包括时间长度、扫描步长及难度系数;
[0015] 则所述基于预置的素材参数难度曲线进行怪物配置,生成至少两个不同的怪物素 材,具体包括:
[0016] 构建素材坐标系,并在所述素材坐标系中配置所述难度曲线;其中,所述素材坐标 系的X轴表示时间,y轴表示游戏难度,所述难度曲线表示游戏难度随着时间的变化情况;
[0017] 利用所述扫描步长在X轴上进行扫描,获得当前时间点,并根据所述扫描步长、难 度曲线及难度系数获得当前时间点的难度值;
[0018] 从预设的怪物库中选择与所述难度值匹配的怪物集合;
[0019]在遍历所述X轴后,获得各个时间点下的怪物集合的分布,生成怪物素材。
[0020] 本优选方案具体提供了怪物素材的生成方案。
[0021] 优选地,所述利用所述扫描步长在X轴上进行扫描,获得当前时间点,并根据所述 扫描步长、难度曲线及难度系数获得当前时间点的难度值,具体为:
[0022] 计算所述素材坐标系中,所述难度曲线、X轴、X值等于(当前时间点-扫描步长)的 直线及X值等于当前时间点的直线所围成的图形的面积,并将所述面积乘W所述难度系数, 获得当前时间点的难度值。
[0023] 优选地,所述X轴上划分有至少两个区间,且每个区间与至少一个怪物库相关联; 其中,不同的怪物库内的怪物的类型不同;
[0024] 则所述从预设的怪物库中选择与所述难度值匹配的怪物集合,具体为:
[0025] 获取当前时间点所属的区间,从与所述区间关联的怪物库中选择与所述难度值匹 配的怪物集合。
[0026] 本优选方案中,通过对不同区间设置不同的怪物种类,丰富了游戏关卡的表现形 式和玩家的游戏体验。
[0027] 优选地,所述从预设的怪物库中选择与所述难度值匹配的怪物集合,具体为:
[0028] 从预设的怪物库中,选择出难度值相加之和减去所述难度值的差小于预设的阔值 的至少一个怪物和/或怪物组,并将所述的至少一个怪物和/或怪物组放入一个怪物集合; 其中,所述怪物组为预先配置好的多个怪物的组合。
[0029] 优选地,所述根据预置的组合规则对所述怪物素材进行分组,生成至少两个怪物 素材序列,具体为:
[0030] 根据预置的组合规则对所述怪物素材进行分组,使得所述怪物素材序列中的怪物 素材的难度系数呈增加趋势或呈减小趋势。
[0031] 优选地,所述根据预置的组合规则对所述怪物素材进行分组,生成至少两个怪物 素材序列,具体为:
[0032] 根据预置的组合规则对所述怪物素材进行分组,使得所述怪物素材序列中至少包 括两个具有不同难度曲线的怪物素材。
[0033] 优选地,在所述根据所述素材参数对所述怪物素材进行分组,生成至少两个怪物 素材序列之后,还包括:
[0034] 根据预置的刷怪条件,指定同一个怪物素材序列中的不同怪物素材之间的触发关 系。
[0035] 本优选方案中,通过设置刷怪条件和触发关系实现了不同怪物素材的联系,避免 了怪物素材的割裂。
[0036] 优选地,所述利用随机函数和一个包含重复参数的重复函数配合来随机选择所述 怪物素材序列,生成包含至少一个所述怪物素材序列的数组,具体包括:
[0037] 对所述怪物素材序列进行组合生成至少两个怪物素材序列组,其中,每个怪物素 材序列组中包括至少两个怪物素材序列,且定义了每个怪物素材序列的选取概率;
[0038] 基于至少一个怪物序列组及预定的选择规则生成至少两个待选序列组合;
[0039] 利用随机函数和一个包含重复参数的重复函数配合来随机选择所述待选序列组 合,再根据所述序列组合自身的选择规则和所述选取概率选取出相应的怪物素材序列,生 成一个怪物素材序列的数组。
[0040] 本优选方案中,通过形成多层嵌套的结构,保证了游戏关卡的随机性和可控性,丰 富了游戏关卡的内容和表现形式。
[0041 ]优选地,所述选择规则为顺序排序、随机选取、随机排列、多次重复中的一种或多 种的组合。
[0042] 优选地,当所述重复参数为正整数时,所述数组中的怪物素材序列的个数等于所 述重复参数;当所述重复参数为负数时,所述数组中的怪物素材序列的个数为无限个。
[0043] 本优选方案中,通过对重复函数的重复参数进行特定的设置,就可W获得一个无 限长度的怪物素材序列的数组,从而可W更高效的配置生成符合设计初衷的无尽关卡,节 省了游戏的开发时间,提高了玩家的游戏体验。
[0044] 本发明还提供一种游戏关卡配置装置,包括:
[0045] 怪物素材生成单元,用于基于预置的素材参数和难度曲线进行怪物配置,生成至 少两个不同的怪物素材;
[0046] 怪物素材组合单元,用于根据所述素材参数对所述怪物素材进行分组,生成至少 两个怪物素材序列,其中,每个怪物素材序列中包括至少两个怪物素材;
[0047] 数组生成单元,用于利用随机函数和一个包含重复参数的重复函数配合来随机选 择所述怪物素材序列,生成包含至少一个所述怪物素材序列的数组,其中,所述数组中的怪 物素材序列的个数由所述重复参数决定;
[0048] 配置单元,用于将所述数组内的怪物素材序列配置到游戏关卡中。
[0049] 优选地,所述素材参数包括时间长度、扫描步长及难度系数;
[0050] 则所述怪物素材生成单元具体包括:
[0051] 坐标系构建模块,用于构建素材坐标系,并在所述素材坐标系中配置所述难度曲 线;其中,所述素材坐标系的X轴表示时间,y轴表示游戏难度,所述难度曲线表示游戏难度 随着时间的变化情况;
[0052] 难度值计算模块,用于利用所述扫描步长在X轴上进行扫描,获得当前时间点,并 根据所述扫描步长、难度曲线及难度系数获得当前时间点的难度值;
[0053] 匹配模块,用于从预设的怪物库中选择与所述难度值匹配的怪物集合;
[005