欢迎大家继续学习网络游戏设计与开发毕业项目
本节我们讲解游戏数值平衡的相关知识
游戏 数值是否平衡,在很大程度上会影响游戏的可玩性
游戏的数值平衡的难点主要体现在以下三个方面
首先,游戏数值平衡需要根据大量的约束条件建立平衡模型
这需要游戏数值策划具有非常优秀的数学建模能力 第二,目前市场上缺少游戏数值平衡的参考书籍
这要求游戏的数值策划有丰富的经验,根据参与过的游戏项目 经验设计模型。
第三,除了优秀的平衡模型之外 游戏的数值平衡还需要大量反复的测试来修改模型中的参数
以达到最好的效果 本节我们讲解慕课英雄
3 的数值平衡,向大家介绍游戏数值平衡的基本方法
首先,介绍一下在 RPG 游戏中最 简单的模型。
为了保证多个角色的数值平衡,需要有以下等式成立 即角色 1 的血量
* 角色 1 的伤害 应该等于角色 2 的血量 * 角色 2 的伤害。
直观表现上 战士类的角色血量比较高,但是攻击力较少
刺客类的角色血量较少,但是攻击力会比较高 为了教学简单起见,我们可以利用这样的简单
公式作为枪械数值模型的构建基础 构建枪械数值模型需要注意以下几点
第一,价格越高的枪械,枪械的效果应当越出色 第二,相同价格的枪械它们的效果应该是接近的
第三,为了保证竞技性,枪械的效果差距不应该过大
为了体现出 枪械具体的效果,我们需要对枪械的效果进行量化
以枪械效果数值 E 表示枪械质量的高低 其中枪械效果
= 枪械的射速 * 枪械的威力 在 FPS 游戏中,攻击范围、
伤害衰减、 后坐力等 也是衡量枪械质量的重要标准。
简单起见,我们不做过多考虑 为了达到枪械之间的数值平衡,我们参考前面的
RPG 角色 的简单模型得出枪械的数值平衡模型
枪械 1 的效果值除以枪械 1 的价格系数应当等于枪械
2 的效果值除以 枪械 2 的价格系数。
它们的 商应该是枪械的基准值
其中,枪械价格系数可以是枪械的价格 或者是获取难度。
枪械基准值是一个常量 在整个数值模型中应当保持不变
在游戏中,我们调整枪械的射速、 威力、 价格来获得数值上的平衡
为了满足前面提到的公式,枪械的价格系数越高
效果值越好,意味着枪的质量或者强度也就越高
出于游戏可玩性的考虑,我们制定了三条关于价格 与价格系数的规则。
第一条,在游戏初始阶段 为了使玩家了解到消费金币买枪的重要性
只花少量金币就应当能够获取较大幅度的价格系数变动 第二条,随着游戏时间的增长
玩家积累的金币会越来越多,出于平衡性的考虑,在越高的价格区间
枪械价格系数的提升空间会越来越小。
第三条 为了保证 FPS 游戏本身的竞技性,枪械之间的价格系数 不宜超过 1.5。
这个数据可以在之后的测试中不断调整 根据这三条规则,我们设计了以价格为自变量
价格系数为因变量的分段函数 枪械价格在 0 到 10000
金币之间,价格系数 等于 a 乘以枪械的价格加 1。
其中 a 为调整参数 也就是价格系数随着价格线性递增
枪械价格在 10000 金币以上时
价格系数等于枪械价格的对数乘以 b 其中 b 和底数
n 为调整参数 即随着价格区间的提升,消耗相同的金币所带来的系数提升会逐渐减小
接下来,我们需要确定公式中的调整参数 假定慕课英雄
3 游戏中可能出现的最昂贵的枪械
为 60000 金币,它的价格系数为 1.5。
为了方便计算 底数 N 取 10,则有 log 以 10 为底的 60000 乘以 b 等于 1.5。
我们可以计算出 b 的值为 0.3139 进而得出枪械价格为
10000 金币的枪械它的价格系数应当是 1.2556
最后得到 a 对于2.556乘以10的-5次方 接下来
我们根据已经设计好的公式计算和分配三种枪械的伤害与价格 在慕课英雄 3
中,我们设计了三把枪,分别为 AK47 UMP45 以及 M4A1
其中 AK47 是免费的,玩家第一次进入游戏中时就会拥有
我们希望玩家在游戏达到两小时后,可以购买第一把 UMP
假设每局游戏持续八分钟时间,玩家在两小时内可以进行 15
场游戏 胜利约得 600 金币,失败可以得到 200 金币。
我们取平均收益 400 金币每场 所以 UMP 的定价可以设在
6000 金币 根据公式可以得到 UMP 的价格系数约为
1.15 为了体现价格越贵的枪,价格系数提升空间越小,我们将
M4A1 的价格定为 20000 金币,由公式可以得到 M4A1
的价格系数为 1.35 可见玩家初期用 6000
金币获得了 0.15 的价格 提升,而多于 6000
金币 3 倍的价格仅获得了 0.35 的价格系数提升 前面提到以
AK47 单位时间的伤害为基准 AK47
每发子弹伤害为 15 射速为每秒钟 5 发,则 AK47
枪械的效果值为 75 令 AK47 的价格系数为 1
,则枪械的基准值为 75 所以我们可以得出
UMP 的枪械 效果值为 75 * 1.15 = 86.25
而 M4A1 的效果值应当为 75 * 1.35 等于
101.25 为了使 UMP
拥有高射速低伤害的特点 我们假设 UMP 伤害为 10
,则 UMP 射速应当为 8.625 发子弹每秒 假设
M4A1 拥有三种枪中最高的伤害值 设
M4A1 的伤害为 18 ,则射速应当为每秒钟 5.625
发子弹 根据此规则,若今后推出和 M4A1
同价位的枪 伤害低于 AK47 且高于 UMP
为13,则 射速需要保证在每秒钟 7.788
发子弹 这样才能体现出枪与价格之间相匹配的价值
下面简单介绍游戏中 怪物的数值平衡。
目前游戏中有两种怪物,一种是僵尸 具有血量高、 体积大、
伤害低的特点 另一种是骷髅,具有血量低、 体积小、
伤害高的特点 继续沿用前面
介绍的数值模型,我们设计的怪物之间的数值应当满足 怪物 A 的血量
* 躲避系数 * 伤害 应当等于怪物 B 的血量 *
躲避系数 * 伤害 它们的积也就是我们的基准值
其中躲避系数是由怪物模型的大小决定的,体积越大的怪物越容易受到来自玩家的伤害
也就是躲避系数越低。
所以体积与躲避系数大小成负相关的关系 这里我们以僵尸数据作为基准
僵尸是近战单位,血量略多于玩家,定为 150 伤害为 7 ,躲避系数为 1。
骷髅的体积大约为僵尸的 0.77 倍 躲避系数为 1.28。
骷髅伤害略高,设置为 10 则血量应当为 82。
守护者 强度远远大于普通野怪的强度,不采用此模型计算 其血量和攻击力可以根据游戏性进行调整
可以考虑的因素包括每局游戏的时间,玩家的数量,守护者的移动范围等等
在这里我们不做过多介绍,同学们可以自己设置数值平衡模型
这里需要注意,游戏的
数值不是设计初期就可以确定的,需要在大量的实际测试中 做出调整。
很多商业游戏在开发任务完成之后
会由策划进行大量的平衡测试,在测试中不断修改游戏中的数据以达到数值平衡的目的
我们前面提到的数值模型也需要在实际的平衡性测试中不断调整数值 来达到预期的效果。
如果枪械的价格系数在 游戏中体现得不明显,我们可以提高价格系数
调整公式中的参数来调高整体的价格系数 如果僵尸和骷髅在游戏中过于强大
则可以考虑调整基准值,也就是降低僵尸和骷髅的血量以及攻击力等等
包括守护者能力和游戏时间在内的其他 游戏数值平衡同样需要投入大量的人力和时间进行测试和调整
以上就是游戏数值平衡的相关知识 到本单元为止,我们已经完成了毕业项目慕课英雄
3 的讲解 下一单元请同学们发挥想象力,为慕课英雄 3
添加新的游戏功能 把完善后的慕课英雄 3 发布到 Android 应用平台