前言

本文主要是针对即时战略游戏RTS的平衡设计的一些概念进行归类阐述。虽然题目是关于即时战略游戏RTS的,但是其中一些概念、思想也同样适合其它类型游戏:策略游戏STG、角色扮演类游戏RPG、战棋类游戏等。

关于游戏平衡的文章会以三部分内容展开,前两篇《如何高效设计游戏——游戏平衡:RTS显性平衡与隐形平衡(上)》以及       《如何高效设计游戏——游戏平衡:RTS显性平衡与隐形平衡(下)》主要是介绍一些关于平衡设计的概念以及思想,属于内功修养,适合新手以及注重内在想要了解国外成熟模式的游戏设计者。最后一篇文章《如何高效设计游戏——策略游戏的平衡方法》则会着重介绍一些平衡策略游戏兵种的一些方法或者称之为技巧,给那些无从下手以及善于思考的游戏设计者一些参考。

正如我之前博客预告中所提到的,游戏的平衡归类为两种:【显性平衡】与【隐形平衡】,这也让我想到了另外的两个词来形容:【具体】与【抽象】。在这片文章里我会更加详细的说明“什么是显性平衡”并会试着举一些例子。值得一提的是,本文所提到的一些概念不仅仅局限于策略游戏,适用于一般游戏的平衡设计。

最后,还请各位尊重作者的劳动果实,切勿进行非法转载,改变原有转载格式、更换文章标题、变更作者等。如果喜欢请关注博客、微博支持。十分感谢!

显性平衡

显性平衡既是一些表面上硬性的游戏机制设计。例如,利用显性平衡,我们可以设定某种单位无法攻击空中飞行单位。这种【显性平衡】设计相较于【抽象平衡】来说,更容易使玩家理解,降低学习成本。但完整的平衡也需要【抽象平衡】来维持。

另一种角度来解释【显性平衡】与【隐性平衡】之间的区别是,【显性平衡】会给你一个明确的信息回馈,然而【隐形平衡】则不会那么直接体现出来。我们来假定一个游戏场景:【隐性的信息回馈】是指,当我们派一对步兵去攻击另一对步兵时,当把敌方步兵全部击杀时我方还能剩有一般数量的步兵。【明确的信息回馈】是指,当我们派一对步兵去攻击另一对弓箭手的时候,还没有近身时,全部步兵就已经被弓箭手放到了。

PS:这里读者们可能没有完全理解。这里“明确回馈”与“隐性回馈”指的是占有优势或者劣势的程度。前者是占有绝对优势或者劣势,已经完全不用关心具体的细节了;后者则需要在优势或者劣势的程度上关注更多,例如结果的稳定性上、优势或者劣势的比例上、损失的程度上等。总结一句话就是,【显性平衡】是“静态的”“表面的”“硬性的”。【隐性平衡】是“动态的”“内部的”“细节的”“定量的”。

一个游戏的设计应当尽可能的多关注于【显性平衡】设计,因为那是硬性的框架基础,一个好的框架支持可以靠内部细节做到优秀的产品。但是框架基础打的歪,再优秀的内部细节也无力回天。

兵种单位的【维度】

这里【维度】指的是兵种的“存在的空间行动属性”不是指的量度。例如,一些陆地行走单位是属于一个存在维度(地面单位or维度),还有一些空中飞行单位则属于另一个存在维度(空中单位or维度)。值得注意的是单位的存在维度不等同于单位的攻击侦测维度。例如在某即时战略游戏中,有一种潜水艇单位,如果想要攻击它,必须先要去侦测这个单位,但是他们确确实实属于地面单位(能攻击地面单位的兵种都可以攻击这个潜水艇)。

一个游戏到底有多少个维度,是要看游戏的设定本身,亦可以根据设计者的需要来随意改变。《最高指挥官》系列游戏的设定是有三个维度(地面、空中、水下),然而《魔兽争霸》系列则设定为2个维度。有些游戏例如《家园》、《黎明战争》等,设定为一个维度。

维度设定对于【显性平衡】来说是一种很好的方法,它通常来说更容易被接受被理解。维度设定也会使得技能树的设计更加灵活,给予设计者更多的思路拓展。

对于某些可以攻击多个维度,甚至不受维度限制的兵种来说,他们比其他兵种的价值更大。他们是“万能兵种”,并且通常会比单攻击维度的兵种训练花费更多。这些“万能兵种”有时候会被削弱防御力或者生命来进行游戏平衡设计。例如,在星际争霸中,神族的重骑兵对战虫族的小狗优势就很弱,考虑到重骑兵的造价是小狗的5倍之多。

攻击属性

攻击属性是指例如“攻击速率”“攻击范围”“弹速”“伤害范围”之类的一些属性。这些可用【显性平衡】的方法来平衡战斗。

攻击速率

攻击速率,或者射击速度是攻击属性中是属于一种比较容易表现平衡的类型。我们可以在两次攻击的间隙设定一个延时来控制速率,并且这个延时可以放置在一次攻击之后,或者一次攻击之前,亦或者前后动态随机安置。不过,如果你把这个延时安放在一次攻击之前对比之下会略微劣势于把这个延时安放在一次攻击之后。这是因为,一些特殊的情况如移除攻击范围或者反击将会使前者情况的攻击憋回去,并且放在攻击前面的延时也会留给敌人一个准备间隙。

显然,延时的长度会决定于一个单位的攻击速度究竟有多块。假设我们只看每秒的伤害输出相同的情况,延时短(攻击速度快)的兵种可能会比延时长(攻击速度慢)的兵种弱。例如,假设两种兵种,每秒能够造成1000点伤害。其中一个兵种的攻击间隔为0.2秒,那么他能够1秒内攻击5次,每次造成200点伤害。而另一种兵种的攻击间隔为1秒,则这个兵种只需要在一秒内攻击一次就能够造成1000点伤害。一次全力的攻击可以使得地方单位毫无苟延的机会。然而,间隔时间短的攻击更擅长于对付比较弱的单位(因为每次攻击相比于高伤害攻击来说,不会造成额外的浪费),所以这种类型的单位会更泛用。

PS:这里还想补充一点,在单位时间内伤害一定的情况下,高频率攻击对于低频率强力攻击的优势还更多的体现一点,如考虑到命中率的话,高频率会更加占优势,因为这会把这一秒的总伤害拆分成多次伤害,不至于MISS全部的伤害。

攻击范围

攻击范围,由于玩家很直观的能够看得出一个兵种什么时候能够攻击什么时候不能攻击,所以无疑是另一种容易表现平衡的属性。攻击范围是一个性质非常强的平衡点,因为我们经常会发现攻击范围大的单位可以无伤地给对方造成巨大伤害。

弹速

弹速,换个角度解释为“从发动攻击到受到攻击的延时”,也是一个可见的平衡量,只不过没有像“攻击速率”以及“攻击范围”那么明显而已,但显然的是,弹速快的攻击总比弹速慢的攻击好吧。值得注意的是弹速慢会造成一种“浪费”攻击机会的一种情况,就像当子弹还在空中“飘过”的时候,攻击目标早就撤离了攻击范围或者早就被灭掉了。

PS:发生这种情况的前提是,游戏设计机制为“实时碰撞检测”

对于某些实时碰撞检测的游戏来说,弹速对于游戏的影响还是很大的。虽然实时碰撞检测会使得游戏可玩性高一些,但是会受兵种移动速度以及微操作的影响,使得平衡工作更加困难。例如,《命令与征服 3》中的手榴弹兵投出的手榴弹缓慢且不会追踪,这就意味着只要你能很快意识到并且把你的兵移开就不会受到伤害。在星际争霸中的大部分攻击都是既定目标的,无论你如何闪躲都是徒劳的,或者这多多少少会让你感觉到缺少真实感。

命中

命中是一个可以根据设计者想要的表现“可显”“可隐”的属性。在《帝国时代 II》中的弓箭手就是一个典型的“显性”例子,并且命中这一性质也被巧妙的设计在科技树中的一项科技中。通过提升这一科技“远程兵种攻击移动中的单位”来从“显性”模式中提升准确率。在《战争黎明》中,命中率这一概念则是通过“隐性”的方式来应用的。命中或者未命中是采用概率判断的形式。随机性固然是不错的想法,不过很难在表现上无法做出真实体验。更何况好多武器的攻击速度非常高,到后来命中率就会变成一个更多牵扯到伤害的一项属性,而并非游戏的战略趣味体验。

移动属性

单位的移动属性同样也是一个符合“显性”标准的属性,并且可以用来直观的平衡对抗其他的兵种,最基本常用的手段就是修改兵种的移动速度了(一个效果很强的数值,慎调)。另外一些手段,你也可以设计是否允许这个兵种移动时可以攻击,是否需要转向目标方向才能攻击(其中还涉及到转向速度),是否可以越过障碍物(例如空中单位)等等。

移动属性通常来说都会与视觉体验相联系的,所以你可能更加愿意修改兵种的移动属性,然后再用其他的属性来从全局角度来平衡这个兵种。但是几乎没有听说过某个游戏会放出修改兵种移动属性的补丁,大多的做法都是在造价上以及伤害上作调整。

隐性与反隐形

这个标题从某种意义上可能会对读者造成一定程度的误导,因为这个技能在一些环境下可以说是无敌了,而并非平衡。这种类型的技能的厉害程度通常对玩家来说已是经显而易见了,因此如何反制才是一个大问题。换句话说,我们可能会经常遇到自己的兵被某种隐性单位一个一个的被杀死的这种情况而感到无计可施。

值得注意的是,这些技能的实用性,往往是基于有没有或者怎样一种程度设计反制应对这些技能的措施。如何设计这个技能,更多的是一个如何平衡科技树的问题,而非兵种平衡问题。

至此本章内容毕。

欢迎各位提出一些观点、想法、建议等

前言

再次强调,本为以“修心”为主,并不是某种意义上的“干货”,这也正是作者想为国内游戏设计者传达的理念。在国外游戏设计者眼中并没有什么数值策划这一概念,他们更注重的是如何从逻辑的角度来时游戏更加丰富,更加【平衡】,而不是国内游戏设计者眼中,做几个公式、几个函数算来算去就能达到想要的效果了。注意,公式也好,函数也好永远都是死的,如果不注重逻辑上的设计,游戏里的一切都是死的,都是“拉表格”“填表格”做出来的,根本就达不到“动态”的效果。这种硬派作风就相当于编码中的“硬编码(hard coding)”一样没有自己的灵魂,也无法应对游戏中的各种变化以及各种需求。

其次需要强调的是,好多设计者习惯用什么“价值衡量”的办法来设计游戏平衡,所谓的“价值衡量”就是把游戏中涉及到的基本属性都通过某种方法映射成“权值”然后来做权值上的运算从而达到衡量这些属性的载体角色或者装备。我想说的是,这种属性的“价值衡量”方法非常不科学,甚至可以断言国家一级精算师恐怕也无法做好所谓的“价值衡量”,因为变量以及影响因素实在是太多了,根本无法准确地衡量各个阶段各个环境下的属性价值,除非在特定的环境限制特定的变量。

在这一章节,将重点讲述什么是抽象的【隐性平衡】,以及“隐性平衡”是如何被运用到游戏中的。

何为【隐性平衡】

之前也大概介绍过了,【隐性平衡】既是掀开哪华丽表面之后的,运作在内部的“齿轮”,对任何一个数值或者公式的修改都将影响一个单位兵种的战斗表现。例如,伤害值、生命值、防御值、命中率、护甲类型等等,皆为【隐性平衡】所控制的范畴。

我们也可以假定一个1对1的战斗场景,在不考虑攻击速度的情况下,两个兵种互相“文斗”轮流做出一次攻击,在这种环境下,我们可以建立出纯净的环境足以安心建立隐性平衡。举个例子,一个步兵攻击一个骑兵造成的伤害可能不如一个枪兵对同样一个骑兵造成的伤害多。这本是基于“枪兵的攻击类型克制骑兵的护甲类型”这一【隐性平衡】而设定的。

伤害类型

这部分是【隐性平衡】中最纯粹的形式。伤害类型的作用是用来抑制某单位兵种的能力并且与其他单位兵种相联系从而形成某种相生相克的效果。但是这会存在一个问题,就是玩家需要通过不断的游戏体验来加深这部分印象从而达到完全理解。一旦玩家熟悉了,玩家就会把这种规律当做常识来记住,这时我们就不易在这方面做修改了。例如,在《命令与征服3》中,所有的枪械单位总是克制“肉体”步兵单位的。

在《星际争霸》中,设计者运用了一个相当简单的对应关系来设计攻击类型。其中有4种护甲类型以及3种伤害类型如下:

l  普通攻击对任何护甲类型的单位造成100%伤害

l  爆炸攻击对重型护甲单位造成100%伤害,中型护甲单位75%伤害,轻型护甲单位50%伤害

l  震荡攻击对重型护甲单位造成25%伤害,中型护甲单位50%伤害,轻型护甲单位100%伤害

l  神族的防护盾可以承担一切伤害类型

换句话来说,三种攻击类型,其中一种主要针对小型或者有机单位,另一种则主要针对重甲单位或者建筑类型,最后一种则是泛用性。这种系统设定是可以满足大多数游戏的设计需求的,除非是那种有很多复杂的即死型武器的存在的游戏,如狙击手等(通常来说对重型或者建筑单位基本无效)。然而我们需要时刻注意的是,【显性平衡】永远要比【隐形平衡】更优先考虑,因为前者在设计上更容易得多,这也是为何显示“该目标无法攻击”总是比显示“对敌方造成0.0001点伤害”要好得多的原因。

命中率

命中率是可以向【显性平衡】的那个方向去设计的,例如上一章节中曾经提到的《帝国时代2》在这点上就做的非常出色。然而命中率也可以朝着【隐性平衡】的方向去设计,我们称之为“命中的概率”。

通常来说这种概率类型是决定你的兵种攻击的时候究竟可以造成多少伤害的。我们完全没必要把这个设定做很高深很玄乎以至于变成玩家完全无法理解的“数学题”,我们只要确保它能简单的显示到底“命中”还是“未命中”就可以了。在《战争黎明》中,命中率设定有时候会让玩家很难去辨认是否击中,其原因为:①“未命中”信息有时候会漂浮穿过单位兵种后面,②击中信息也有可能出现被兵种遮挡的现象(这些都有可能是渲染BUG造成的),③有些兵种攻击速率是在是太快了,以至于到底是命中还是未命中,怎么也看不清楚。

就这点问题上,《魔兽争霸3》做的优化就显而易见了。

HP生命点数

HP的概念已经深刻植入玩家的脑海里了,以至于无论你是否是一名真正的游戏玩家,你都会明确的指导HP代表什么,HP有什么作用。就算是对于某些非正式玩家或者休闲游戏玩家而言,着实不知HP的概念,他们也会很快的理解上手。然而HP这个属性还是归结到【隐性平衡】的设计中,因为大部分玩家都不会关心我到底扣了多少血这个【数】,甚至有些玩家根本不会记得每个兵种到底有多少血。

利用回馈将【隐性平衡】转为【显性平衡】

对于【隐性平衡】来说,最大的问题就是玩家不能很直白的明白有些东西是如何运作的,是好还是坏。不过这些都可以用过适当的体验调整对一些【隐性平衡】的事件进行一些补偿。例如,发生暴击了,显示数值变一个颜色、大小甚至添加一些音效,回复生命或者吸血的时候也适当的做出一些醒目特征的调整等。试着让拥有相同护甲类型的单位拥有相同的外部特征(穿着、护甲类型的图标等)。试着把该兵种的体积与血量大小进行一些匹配等手段。

曾经一款独立游戏,Afermath(2008,Gamesfaction),就试着用不同的颜色来代表不同类型的护甲与不同类型的攻击(红色类型的护甲可以抵御红色类型的攻击等)。像这样简单的设计,就可以给游戏带来巨大的体验改善(一个细微的用户界面UI设计可能会给你的游戏带来巨大的改变,这个改变可能是良性的也有可能是恶性的)。所以当你运用了大量的【隐性平衡】设计时,你可以参考本条内容。

Einsphoton

2013.01.04

如何高效设计游戏——游戏平衡:RTS显性平衡与隐形平衡相关推荐

  1. 如何高效设计游戏——游戏兵种平衡的技巧与思路

    距离上一次写博文,已经是一年多了,当时原计划是打算写一篇如何平衡兵种的心得体会,但是不料之后工作上各种忙碌,所以这篇博文也就延期了.现在终于有了自己的时间,可以整理一下今日的思绪,反思自己,也能有时间 ...

  2. 如何高效设计游戏——游戏伤害公式的量身定做

    自从开始写博文,已经一年之久了,其中受到很多读者的认可,也有很多读者发出许多不同意见,笔者全都感激. 这篇博文是应一位读者的要求而写.内容上可能会比较基础且坑长.但是就笔者观点,就算是资深游戏设计者, ...

  3. 如何高效设计游戏——塔防游戏设计方案

    前言 目前国内市场的游戏普遍为一些带有"快餐特色的RPG"游戏居多,并且这一类型的游戏的设计思路已经发展成为游戏开发者们"月经"一样的存在,有很多人" ...

  4. 设计面向游戏的人工智能(三):战术和战略人工智能 (AI)

    文 / Donald Kehoe 上次谈到游戏主角(智能代理,简称 IA)时,他们已经能够观察周围情况并能够判断前进方向.在本文中,我将向大家介绍如何提高代理的智能级别.代理现已能够处理即时情况.现在 ...

  5. 如何高效的开展游戏陪玩系统的性能测试?

    游戏陪玩系统性能测试是什么 从网上查了一下,貌似也没什么特别的定义,我这边根据自己的经验给出一个自己的定义,如有巧合纯属雷同. 游戏陪玩系统客户端性能测试就是,从业务和用户的角度出发,设计合理且有效的 ...

  6. 想学3D设计?这些3D设计、游戏制作、建模软件你一定要掌握

    没有软件的支持,3D 艺术特别是建模是不可能的.也许这就是让数字艺术,特别是 3D 艺术如此有趣的原因.这是计算机科学.独创性和艺术创造力之间令人惊讶的技术飞跃.当技巧和创造力与高性能软件和处理能力相 ...

  7. 【校招VIP】产品设计之游戏常识

    考点介绍: 游戏产品的设计是一场产品设计者和自己的博弈.在设计过程中,除了依靠一些数据作支撑之外,剩下的就是对角色置换的深度理解.一个角色是产品设计者,另一个角色是用户.产品设计者要在设计场景内 反复 ...

  8. 扫雷java讲解_java课程设计(扫雷游戏)讲解.doc

    java课程设计(扫雷游戏)讲解.doc 成 绩 评 定 表 学生姓名班级学号 专 业课程设计题目基于Java的扫雷游戏软件设计评 语 组长签字: 成绩 日期 2014 年 月 日 课程设计任务书 学 ...

  9. c语言课程设计--拼图游戏,C语言课程设计_拼图游戏.pdf

    C -- 语言课程设计 拼图游戏 一.实验内容 玩家通过鼠标单击相邻位有空位的方块来移动方块,从而最终将一副散乱的图片拼成完 整的图片.要求如下: 1. 游戏的初始界面如图一,单击空格键进入游戏,进入 ...

最新文章

  1. 【Android UI】theme style
  2. linux fuser 命令 查看文件/网络端口 被什么进程占用
  3. linux运维、架构之路-MySQL(一)
  4. PHP导出Excel环境,php怎么导出excel-使用php导出excel的教程 - 河东软件园
  5. python 线性回归 技术方案亮点_基于Python的线性回归实战
  6. opencv:卷积涉及的基础概念,Sobel边缘检测代码实现及卷积填充模式
  7. mybatis中的#{}和${}区别,和使用场景
  8. 后盾网php多少钱_商标转让做公证花多少钱-购店网
  9. 优秀的产品经理和一般的产品经理之间的区别
  10. websocket python unity_Unity中Websocket的简单使用
  11. 为何 5G、物联网和区块链,可以成为科技铁三角?
  12. 41%的网络保险理赔和勒索软件有关
  13. 你需知道的MFI:mean, Median,Mode及Geometric Mean 之比较
  14. Tensorboard存数据代码解释
  15. Chrome unable load NTKO control
  16. 30种EMC标准电路
  17. 简单图片隐写术练习题
  18. 速魔与图马思特优缺点对比
  19. 宋维刚老师词霸天下38000词汇思维导图
  20. iOS企业ipa(299)证书制作、打包发布全流程(亲测,成功)

热门文章

  1. 民生银行牛新庄: 业务数据化数据业务化,以数据驱动业务发展
  2. 怎么把鸿蒙系统桌面变回原来,华为手机打开应用后桌面就变了,一点系统桌面又恢复了,怎么处理。...
  3. Weblogic反序列化漏洞(CVE-2018-2628)
  4. 第一章 [分布式CMS]
  5. 「Linux」- 安装 Opera 浏览器 @20210124
  6. 淘宝运营 什么是淘公益 设置淘公益的好处 怎样设置淘公益
  7. 名帖320 启功 行书《古体诗十二屏》
  8. 内网服务器连不上内网网站,连不上局域网的服务器的解决方法
  9. STM32CubeIDE、HAL、OLED、MPU6050学习笔记
  10. 信泰人寿与钉钉达成战略合作,共创保险数字化转型