1、暴雪式平衡的数学模型探究(一)作者:东北大包子前言:暴雪系列的产品,均以平衡性而著称,作为一个国内的数值策划新手,对暴雪的崇拜是不言而喻的,经过了一段时间的工作,对星际/魔兽/暗黑系列的平衡性更加叹为观止,小可不才,只能在这里根据一些有限的资源,对暴雪的平衡调整方法做一些猜测,同时也希望业内的诸多达人,在此不吝赐教论题1 在传统平衡理论中,伤害输出量和伤害承受量(被称作“耐力”)是两个十分重要的衡量标准伤害输出,代表着一个作战单位在特定条件下,能给对方造成的伤害量而伤害承受,则相对的,代表一个作战单位在特定条件下会承受的伤害量在实际应用中,这两个值赋予时间限定之后,就代表了一个作战单位在特定条
2、件下的伤害能力和生存能力这样一来,一个单位的能力,就应该可以用公式(伤害能力,生存能力)来计算了,而在即时类游戏中,单位的移动速度,也是一个重要参数,因此公式应该变为(伤害能力,生存能力,移动速度),而在即时战略类游戏中,还有资源成本的重要因素,因此费用也必须予以考虑了,这样公式又成为(伤害能力,生存能力,移动速度,生产费用)这种公式是基础公式,也可以说是核心公式,在此基础上,进行扩展,才可能成为最终的效用评估公式可增加因素如下:1、技能:在WAR3和SC中,对技能的评估公式应该是完全不同的,SC中,技能应该仅仅是一种补充手段,他应该是独立在单位效用之外进行评估的,而在WAR3中则很可能是整合
3、在内,技能的效果,一般都只会影响以上3个参数(伤害能力,生存能力,移动速度),只要以合适的关系(加或乘)整合在公式内,应该就可以得到想要的值了。2、修正:修正的方式有很多,攻防类型,种族,地形,属性(地水火风)等等,而这类修正,都不应该去影响基本效用评估公式,而应该在以上步骤做完之后才进行的第二步效用评估,这种修正类的影响,只是为了增加可玩性的设计,也是为了让各个单位在不同的情况下发挥各自的优势,用以调整各个单位的整体效用,它不应该成为影响基本结构的要素3、队伍:以上计算,均只能对一对一的情况下进行效用评估,这个过程相对来讲比较简单,一般的数值设计师都可以比较轻易的熟练掌握,但是在多人情况下,
4、情况则会复杂很多,除了动用大脑动用丰富的游戏经验来做各种可能情况下的假设,以防止各种极端情况的发生之外,可能更多的就是依靠测试了。而最近,对于WOW副本的领悟,使得我对于多人情况下的数值评估有了一些新的理解和感悟。假想最优组合:一个队伍中,每个单位的伤害能力和生存能力都是可以计算的,而NPC给予队伍中不同单位的单位时间伤害则是不同的,以WOW为例,在站着不动挨打的情况下,同样一个物理攻击NPC杀死一个战士和杀死一个法师的速度显然是不同的,那么在这种情况下,以队伍中战士为假想受击对象,无疑是属于最优条件之一,同理,推出其他最优组合,当然,最优组合也很可能在某些情况下并非是唯一的,那样就需要把这些
5、最优组合全部罗列出来做以估算。这样一来,把多个NPC的伤害输出之和做出估算,并考虑进变羊/放逐之类的控制型技能,与队伍中的战士的承受能力和牧师的治疗能力做比较,再以NPC队伍的承受能力之和与玩家队伍所有成员的伤害输出做比较,即可估算出平均的战斗效率,及战斗难度,同时,在这里引入了仇恨的概念,提高玩家的操作难度及可玩性,最重要的是使得玩家队伍与NPC队伍的战斗便成为对仇恨的控制,这样在假想最优组合的情况下对战斗的情况做出估算,那么其他非最优组合的情况便可以给予较少的考虑,甚至不予考虑。WAR3及SC中乃至在此之前的其他产品,也应该是遵循该设计思路的以上,均属于猜想,请诸位看官不要轻易将以上陈述当
6、作事实处理,同时也烦请诸位达人多多指教。大家共同交流,共同进步。名词解释:WAR3:魔兽争霸3暴雪公司产品,即时战略类游戏SC:星际争霸暴雪公司产品,即时战略类游戏WOW:魔兽世界暴雪公司产品,暴雪公司的第一款网络游戏,目前由9城公司代理大陆运营效用评估:对特定的待评估单位(作战单位或技能等)在战斗中发挥作用大小的估算,根据最终的估算值来做平衡性调整NPC:非玩家控制单位,在本文中专指与玩家战斗的电脑控制单位,副本:哪款游戏先创造的概念鄙人实在是不知道,只知道欧美的游戏中已经很早的对这一概念进行广泛的应用了,即某一冒险区域为每一个玩家冒险小队开辟一个外观一模一样的场景,这样使得服务器中所有在该
7、冒险区域中冒险的玩家队伍互不干扰,在各自的空间内进行游戏,而WOW使得这一概念在中国深入人心。仇恨:同样不知道出自哪一位设计师之手,而EVER QUEST是公认对这一概念应用比较成功的范例,在仇恨系统中,每一个NPC都会将满足特定条件(对自己造成伤害,特定技能,为已对自己造成仇恨的玩家治疗,进入警戒范围等等)的玩家放入自己的仇恨列表中,玩家的各种行为均会影响各自在NPC仇恨列表中的值,该表将做实时排序,NPC将根据该列表的排序进行对应的已设计好的行为 游戏战斗模型之中,各种战斗公式的设计完全依照设计者的需求所致。这些战斗公式错中复杂,而且关联性十分紧密,因此我们在设计战斗模型时,必须先从宏观上
8、来考虑战斗的整体流程。 数学公式的原理来自于设计师的概念,攻防公式也是如此。大多数游戏设计者,特别是游戏数据模型的游戏策划者通常会对攻防公式这一块有许多的疑问,本文旨在探讨这些疑问,并且尽力来解决这些疑问。 从PC上的大部分RPG游戏来看,攻防公式的基本模型可以定义为以下几种,这几种按照地域来划分,可以分为日式公式和欧式公式,且不管他们怎么来叫,我们先看看这些公式模型是什么样的。 各类功防公式分析 减法攻防公式(日式): 一次攻击结算伤害=攻击者输出伤害-防守者防御总值 减法攻防公式是国内游戏设计者十分喜爱的一种攻防模型,因为这种模型看起来直观且简单,同时也十分便于计算。而且对于以免费游戏作为
9、大环境的中国游戏市场,这种公式设计有利于玩家对防御值的不限追求(玩家的不限追求,就是我们的不限收入)。因为在游戏之中,当伤害在提高时,防御值必然也会跟着提高,而且,防御值的提升在游戏的战斗之中卓有成效。不过缺憾之处也十分明显,由于不同伤害对应相同防御值的一次攻击结算伤害会有所不同,导致数值平衡设计之中无法使用DPS来设定攻速不同武器的伤害值。因此,使用这类功放公式,想要给武器设定上增加攻击速度属性,是相当需要三思的问题。 乘法攻防公式(欧式): 一次攻击结算伤害=攻击者输出伤害*(1-防御值物免率) 防御值物免率换算方法1: 防御值物免率=1-1/(1+防守者防御总值/10) 防御值首先被转换
10、未了防御值物免率,而需要达到的设计需求就是以上曲线所示为了提高玩家对防御值数值上的提升需求,使得整体防御值越大时之后再增加防御值所转换得到的物免率逐渐衰减。 这种攻防公式在很多欧美游戏之中都可以看得到,例如最著名的3DMMORPG魔兽世界用的就是这种基本模型。运用此种攻防公式,会对数值平衡计算的难度要求并不高,而且可以很方便的作各种攻击速度不同的武器装备,不用考虑到减法攻防公式的弊端。但是,欧式攻防公式也有不好的地方,就是会导致后期玩家对防御值的提升需求会有所受限。毕竟, (1-1/(1+防守者防御总值/10)最多只能=25%,而25%100%的提升空间,足够么?往往这类攻防模型为基础的游戏,
11、游戏后期,玩家对防御的追求容易止步不前,而伤害的追求则一如既往的在提升。这本身就是玩家对于属性追求上的不平衡。 防御值物免率换算方法2: 防御值物免率=防守者防御总值0.3/100 这一种和第一种所需要的效果完全不同,这种曲线相对前者更接近于直线,不过初期的物免率提升还是相比于中后期更为明显。但是即便使用这种方法,依旧无法逃避提升空间有限的弊端。 除法攻防公式: 一次攻击结算伤害=攻击者输出伤害/防守者防御总值*10 这种攻防公式无法从常理上去理解,至少本人无法理解为什么会有这样的攻防公式。对此的研究十分少,根据公式来看,这样的设计似乎有突出伤害的重要性,但是却又未突出伤害的重要性。从玩家对伤
12、害的追求来看,确实伤害的追求十分重要,不然杀伤力就会十分衰弱,但是从实际的效果来看,很可能则是相反的效果。总得来说,也要看数值设定的方法了,个人认为,这种除法攻防公式不是很好把握。 以上四种公式是目前我收集到的比较可行的攻防公式。目前几乎70%80%的RPG会使用如上的算法,虽然并不完全相同,但是都是以这几种公式作为基本模型来进化得到的。 这里所说的: 防御总值:防御总值的解释是游戏中出现最多的防御值,不管他叫护甲也好叫别的什么也好,这里所说的防御总值就是所有RPG游戏中最常见的那个“防御值”。 输出伤害:输出伤害这里的意思则是比较常见的物理伤害,即普通砍击时的伤害作为参照对象。 攻防公式的应
13、用 以上所列的攻防公式的基本模型在实际制作运用上,会有各种变化,首先是会添加各种修正值以及修正系数,这些不用多说,完全按按照数值平衡的设计需要来看。 而其他的变化还表现在增加参数值的方法上。例如加入攻防两方的等级参数进入作为修正值或是修正系数也是十分常见,例如魔兽世界(如下)。 WOW的护甲是以伤害减免的原理体现出来的,护甲越高所能抵消的伤害就越高,具体的公式为: DR=AC/(AC+85*LV+400) (DR:伤害减免,AC:护甲,HP:生命值,LV:等级) 该公式原型基本为DR=AC/(AC+400),和1-1/(1+防守者防御总值/400)概念相同。这个公式插入LV参数(该LV参数取自
14、攻击者)之后,使得玩家对防御值的追求随着敌人等级的提高而增大。 而对于减法攻防公式来说,更多所害怕的是 攻击者输出伤害 防守者防御总值 的情况出现。通常这种情况,我们都是采用取最低伤害的方法,很多游戏在这种情况,会算得一次攻击结算伤害=1。而我更建议一次攻击结算伤害=攻击者输出伤害*5%,同时不得小于1。这样做,不至于导致伤害很高的玩家,最后打出的伤害却只有1的情况出现。 除此之外,我们对攻防公式略作修改,还可以得到其他可作为玩家追求的属性,例如穿刺伤害(无视防御的伤害): 一次攻击结算伤害=攻击者输出伤害*(1-防御值物免率)+攻击者穿刺伤害 而其他的改变也是十分有趣,例如有一些游戏会有攻击
15、力这个属性: 一次攻击结算伤害=攻击者输出伤害*(1-防御值物免率)*攻击者攻击力 例如我们来看看赤壁的攻防公式(非完整版): 对你造成的伤害=(对方的攻击-你的防御)*对方的攻击强度*(100-你的直接抗性)/100-对方的附加伤害 攻击强度是一个对最后结算伤害起到系数作用的属性,而这里,将抗性也加入了计算(实际上对抗性的计算也是攻防的一部分),对方的附加伤害则是无视各种防御力的修正值,具体用途不明。 截此为止,由于时间和精力的关系,关于攻防公式的设计思路暂时讲到这里。数值策划概念:如果说系统策划,是一种规则,是一种理性的思考,那么数值就是数理象三者中数的表现,数本身是一种固定的东西,是一些
16、东西存在的价值的依托,数是一种确定性。或者说具有固化概念的名词,而数值在游戏世界里,组成了所有物体的价值。数值策划,即是为所有游戏物体符上一种实际价值意义,同时,也让所有物体产生了联系。角色,装备,武器,怪物,宠物等等的表现力,都可以通过数值来具体化,真实化。而数值策划的任务就是通过数据,把那些需要产生联系的物体进行联系,让每个数值的设计都在游戏中产生意义。数是宇宙的质料和形式。它使得自然趋于理性化,使精确的法则和规律的描述成为可能,它来自探索与思考,却走向未知与无解。数值公式的推理:公式:公式是为了让数值之间产生联系而衍生出来的一种关系式。公式的好处在于,能够用函数曲线直观的表现出来,方便理
17、解,对比和调整。一些基础固定的数据,比如等级,升级时间,是我们设计的基础或者说是标准界线,通过这些标准能限制我们的数值,把握有限的必然。然后,当然要确定一些基础的单位属性:比如力量,敏捷,攻击力,攻速,抗性,等等。凡是以后游戏里可能要用到的单位属性都列出来,一定要全,然后进行分类整理,联系,看哪些属性之间有内在联系,或者说是同等级别出现的,这些属于基础的数值量。装备系列:主角身上都会有什么装备,头盔,头发,耳环,胸甲,护手看游戏设计而定。确定角色的基本属性:力量,敏捷,体力,智力,精神,等等,当然这些都是从现实中抽象出来的概念。这些都是和主角能力有最直接关系的变量。然后,这些变量,所影响主角的
18、能力,HP,MP,防御,闪避,命中,攻击等等。哪些属性决定哪些能力。这个大家可以参看现在很多游戏的设计。比如现在一般的攻击公式都是受力量,等级,装备三者影响的,等级可以确定,力量可以确定,装备有一个限制范围,这样就可以大概导出一个公式。至少怎么调整,怎么设定,要看游戏本身的设计思路而定。确定是设置什么数值,装备的,武器,技能,人物,属性,怪物,宠物还是?然后确定已知条件,比如规定要多少等级,多少时间,这些已知条件是一个经验公式形成的前提,然后用这些已知条件去推导出公式,确定一些基本常量,然后再根据游戏本身特点,调整一些修正值和参数。或者先在脑子里思考应该设计或采用什么样的规律,然后再选择合适的
19、公式或曲线来表达这种规律,也就是拟合,最后再用一定的采样率把数据点列出来。有了公式以后,根据公式划出函数图,观察修正一下,直到觉得符合为止,就可以做表格填表了,再用公式进行反计算,把一些没有的数值补起来。形成一个完整的数值体。当然,这只是最基础的数值属性。武器和装备:武器:决定武器价值的一些变量或者说一些赋值是什么?这就要看各个游戏的数值设计怎么联系了。比如武器有:攻击力范围,属性追加,命中,攻速,技能追加,五行属性等等。武器的这些属性是彼此独立计算的,攻击力范围受力量,等级等影响,所以设计武器攻击力,就为这个攻击力进行单独的数值公式配备,基本量,数值区间,修正参数等。构成了攻击力的属性。其它
20、的类似。武器还有强化,品质区分。这样,就要对武器进行区间划分和属性分类了。强化:假如一把武器能强化到7级,那么,就需要设计这个等级的武器七级区间,每强化一级,会产生什么变化,在什么区间内。品质:品质的划分:相对来说比较容易,普通的,优秀的,卓越的,完美的。每个之间会有一个界线,一些属性的变化。或者一些属性的区别。注意:每个级别的成长空间,能有效设计好,不与上下两个级别产生过多矛盾或者冲突。这是一个需要去细细设计的地方。同类的内部调整,内部变化区分。装备类似;为了简化的属性设计:为了简化的属性设计,同时为了整体调整方便:一般同级别或者同类型的,用低一级修正参数,或者变量来进行区分,来产生差别。比
21、如同样是1级武器,武器 有共同的计算公式,武器+1 有共同的计算公式,但是强化后,等级在这个区间变为一级,这个1就是变量,同时为了更好的区分强化武器之间的差异,修正参数可能也会做一些调整。就是说,只做参数的调整,不做公式的调整。同级别的只用变量和修正参数做调整。引起属性变化的基本量: 基本属性值(游戏五弟兄:力量,体力,敏捷,精神,智力);等级;引起数值最终变化的:变量,参数,修正值。常量一般只是为了区分,拉开数值界线。属性的区分:一般来说,攻击量独立个体。防御量独立。就好像两个对手一样,我打你,我比较强了,那就调整我的属性或者你的属性。独立调整,进行对比。而同类之间出现问题,一般就是在同类之
22、间内部进行调整,比如,今天法师太强了,那就把其它职业也整强点,或者把法师削弱点,或者调整对立的伤害值,输出时间等。或者给其它职业弄个好技能,新装备。怪物数值:怪物分为技能属性和能力属性,这个很好设定,因为是独立的,一般是不发生变化的。我们只要给它们合理的设置一下,保证等级之间存在差异。宠物数值:宠物的设计基本和人物的属性设定类似。看属性需求。如果与别的数值要产生联系,就需要考虑数值范围,或者属性的范围。数学基础:学好数值,要用到的数学知识基本有:函数与图象概括总结描述现象,用于观察,经验公式,成长曲线等。概率游戏暴率,暴击等。排列组合用于公式的推导。正态分布:随机,筛子。应用如:1d8,1d2
23、0;工具:EXCEL表格,函数。(数值利器);数值的进阶:新手一般都是用公式的,因为这样至少不会出错。用公式的话可以方便整体修改。出了问题也更容易有据可寻。至于到达一定境界的高手,数字就是可以自己随意填上去。因为他们已经掌握了某种规律,可以达到随性所至,浑然天成的地步,就像下围棋一般,看似虚无玄机,实则妙不可言,旁征博引,叹为天人啊!曲线什么的,只是一种规律,方便我们进行观查和对比。因为数值并不是单一存在的,特别是网络游戏里,各种数值之间的联系很复杂,很容易出现牵一发而动全身。 所以要区分,要联系,要简约。暴雪式平衡的数学模型探究(二)前言:暴雪系列的产品,均以平衡性而著称论题1 在传统平衡理
24、论中,伤害输出量和伤害承受量(被称作“耐力”)是两个十分重要的衡量标准论题2 与速度相关的值是非常麻烦的,公式估算+量化测试可能是唯一的办法在即时类游戏中,移动速度,对其他方面的影响包括:? 近战部队在对抗远程部队时的优势? 远程部队在对抗近战部队时的优势? 任一部队的生存能力? 由于阻挡而产生的操作技巧在以上几点中,除了最后一点(等下说这个),前面3点都是可以做以模糊的估算的,再配以合适的测试应该就可以达到想要的最终确定值。小可不才,猜测其方法如下:1. 结合移动速度、起手速度、攻击间隔、攻击距离及转身速度做简单的一对一估算2. 设计一个平均移动速度,任何单位的移动速度均以此作为参照进行评估
25、设计3. 其他参数也均指定一个平均值做参照值4. 测试,首先验证自己的估算公式,调整之后重新估算,再测试,反复。关于起手速度,攻击间隔,依照我的个人经验,怀疑在魔兽争霸中,完全是一个值,也就是说,在一个攻击动作完成的周期内,攻击效果的产生是位于最后的时刻的(这一点不同于KOF这种格斗游戏的设计硬直)。很多人大概会说:这属于废话。而我之所以把这点特意说明一下,是因为在这一点上容易产生分歧的,下面来做几个实验:实验1:动作1:WAR3中操作一个不死侍僧召唤一个建筑物,在侍僧建造之前,按住SHIFT右键点其他位置,指定序列动作。动作2:操作同样一个侍僧在同样地点建造同样的建筑物,在侍僧召唤出建筑的同
26、时右键点击其他位置命令移动。以上两个动作的差异,相信熟悉WAR3的朋友一定会知道,会产生很短的一个时间差异,同样道理,在使用远程兵种进行普通攻击的时候,也会如此:动作1:操作先知攻击一个一直向后直线逃跑的单位。(去掉迷雾以避免不必要的麻烦)动作2:操作先知攻击一个一直向后直线逃跑的单位,并在先知的电球出手瞬间立刻右键点击前方地面,再次操作攻击该单位,反复这两步操作。实验之后会发现,同样会产生时间差,其他类似的实验(不举例了),而从这两个实验,我们很可能会得到这样一张时间图:(带颜色部分表示一个动作的完整阶段)(其中攻击动作收尾期中,玩家的实时的移动操作可以强行CANCEL该阶段。)那么这样一来
27、,我们不就得到了一个硬直存在的结论了么?而实际上,在这两个试验中,有两点值得思考:1、第一个实验中,有可能两个原因导致该现象:A)SHIFT的动作序列,很可能会遇到特殊处理,个人猜测,WAR3在处理这里的时候,会在每一个SHIFT动作序列之间插入一个固定的动作停顿(这个猜测还需要实验去验证)。B)侍僧的建筑物召唤动作很可能与一般的攻击行为是两种处理方式PS:以上两点中,我个人比较倾向于第二种解释2、第二个实验中,时间差的产生,完全是因为动作1中在攻击效果发生的瞬间目标超出攻击范围的原因,而导致攻击动作被强行CANCEL好吧,结束这段无聊的反证吧,现在回到主线上来,“结合移动速度、起手速度、攻击
28、间隔、攻击距离及转身速度做简单的一对一估算”这句话恐怕是我们处理这个问题的最关键部分,用公式是否可以解决这个问题呢?现在来尝试一下吧:首先罗列待参考因素:移动速度、起手速度、攻击间隔、攻击距离、转身速度、伤害力、生命、命中率、攻击延迟(远程箭矢飞行时间)。排除无效因素:命中率=100%为避免公式过于复杂,转身速度暂时设定为0,攻击延迟暂定为0,这两个因素仅当我们在之后的研究中发现不得不加入的时候,才予以考虑。(这类情况诸如:远程兵种在移动速度大于等于近战兵种时,可以处于不败之地包括但并不限于)伤害力和生命对估算单位的影响以比例的方式来做,结合我们之前做的“两单位不做移动的情况下一对一的效用评估
29、”来做对该效用的百分比影响做比较(见第一篇)附注:静止情况下:单位战斗效用=(该单位生命值/平均伤害)/(平均生命值/该单位伤害)单位成本=(生产费用,生产时间,科技等级)单位效用=(单位战斗效用,单位成本)这里,我们暂且将(生命/伤害)定义为耐久(单位在死亡前可承受伤害的次数)起手速度和攻击间隔,暂时认定之前实验相关的陈述是事实,那么我们将这两个因素合并,统一为攻击间隔剩下的因素:移动速度、攻击间隔、攻击距离为所有需要考虑的因素各自设定一个平均值,把这个平均值当作所有其他单位的平均值,以此做参照:耐久、移动速度,攻击间隔,攻击距离。这里,我们将上述公式的后两步省略,只考虑战斗效用,而暂时不考
30、虑成本,而现在我们也正是要研究各种速度参数对于战斗效用的影响,OK,先把公式摆出来:单位战斗效用=(该单位生命值/平均伤害)/(平均生命值/该单位伤害)然后我们就考虑一下移动速度在以什么样的方式影响着战斗的平均效用首先是双方遭遇的时候,近战单位的移动速度决定了在攻击对方之前的生命损失以平均数值做假想敌那么这个生命损失=(平均攻击距离/该单位移动速度)/平均攻击间隔*平均伤害力生命损失/平均伤害力=(平均攻击距离/该单位移动速度)/平均攻击间隔这部分损失应该与之前公式中的分子相加:单位战斗效用=(该单位生命值/平均伤害)+(平均攻击距离/该单位移动速度)/平均攻击间隔)/(平均生命值/该单位伤害
31、)这样,依照这个公式,就可以得到一个近战单位的移动速度对该单位战斗效用的影响,当然,这并不完整,因为这里并没有考虑到H&R的因素,实际上两单位的移动速度差也应该被考虑在内的,再深入思考下去,转身速度,攻击的起手速度都是需要考虑的因素了,通过反复的这样一个过程,我们就可以得到一个即时战斗类型中两单位的效用评估公式,而公式的复杂程度,我们也足够把这样的一个数学结构称之为数学模型了。我们同样可以得到同样方法也可以做出其他类型单位,或者其他参数对于战斗的影响实际上,根据这样的公式,得到的效用值仅仅是个参考值,值本身=1或=100没有任何意义,而只是多个单位用同样的公式得到效用值之后互相比较才会使效用值
32、变得有效。在经过长时间的努力之后,我们得到了我们需要的公式,但是不要沾沾自喜,因为做了这些仅仅是个开始,因为之后我们还需要大量的测试,反复的验证,验证我们的公式。这也同样证明了一个问题,就是我不会保证我上面陈述的公式细节会是正确的,当然,我也不会将我的最终结论拿出来公布,因为这没有意义,我们更多的是需要一种思维方式的交流,而并非结果,更何况最终的公式,也会由于种种原因而在其他的环境下变得不适用,每一个新的项目,恐怕我们不得不重新做这样的工作,重新做这种枯燥的“测试调整”,再这个过程之中,很可能的情况,就是测试结果完全不像公式所预期的那样,而自己却无论如何也找不到原因,这恐怕是最折磨人的一个经历
33、了,我保守的估计一下,恐怕所有的数值策划都曾经或长或短的经历过这样的过程,在这样的压力下工作着,这对心理也应该可以称作是一个考验吧。到这里基本就可以了吧,我已经将我的公式设计的思路全部整理出来了,请大家准备好砖头瓦块名词解释:硬直:日本格斗类游戏中出现的技术名词,指某一个单位在做某动作之后产生的无法做任何行动(包括防御)的一个时间段召唤建筑:魔兽争霸3中的设定,不死族的建筑是召唤出来的,也就是召唤建筑的农民不需要在这个过程中可以随意行动。序列动作:魔兽争霸3中的设定,玩家操作一个或一组单位的时候,可以按住SHIFT指定其下一步甚至几步的操作,而被操作单位会按照这个操作的顺序依次完成指令。H&R
34、:Hit and Run,打带跑战术,其中最著名的微操范例当属星际争霸中的龙骑舞。砖头瓦块:显然,是一种,呃或者说是若干种的暴力工具 暴雪式平衡的数学模型探究(三)前言:暴雪系列的产品,均以平衡性而著称论题1 在传统平衡理论中,伤害输出量和伤害承受量(被称作“耐力”)是两个十分重要的衡量标准论题2 与速度相关的值是非常麻烦的,公式估算+量化测试可能是唯一的办法论题3 从WarCraft开始引入的ColdDown Time,成为了多样化技能之间平衡的重要参数 在单位的攻防能力模型建立之后,这只完成了第一步,或者说,在这样的模型体系下,仅仅是个C&C或者RA档次的即时策略类游戏 从SC开始便有了技
35、能的设计,而War3中的技能设计简直让人觉得这并不是RTS,而是RPG,长远一点来来,SC里技能的平衡大概简单很多,原因如下:1、 SC里的技能均消耗同样的数值能量2、 能量除了等待没有任何手段进行回复3、 大多主动释放技能的单位魔法上限统一为200(升级科技后就可以获得一个个性数字) 这样一来,SC中的所有技能只需要考虑一个因素连续施放的次数,大概就足够了。那么我们既然做研究,不如从War3开始,一个是为了避免一些思路重叠的地方,导致浪费时间(其实就是偷懒,嘿嘿),另一个原因,也是最主要的原因就是,我对于从War3中学到的一个新概念非常感兴趣ColdDown Time 不管这个概念是由谁由哪
36、款游戏创造出来了,而我确实是从War3里第一次接触到这个东西的,这个东西非常帅气的解决了很多本来很容易破坏平衡的技能无法设计的难点。这样一来一个技能的效用周期就可以这么来解释了: 这个图示基本上可以解释所有的War3技能了,甚至包括WOW:1、 施法阶段=0,效用阶段=0,就是瞬发技能2、 施法阶段=0,效用阶段0,就是引导性法术3、 施法阶段0,就是大多数需要施法时间技能的设计了 在此基础上,调整冷却时间,就可以对该技能的平均效用做平衡性调整了 那么一个技能的效用应该可以轻易的用“效果/周期”来表达他的效用了, 这里,对于一般的伤害型技能来说效果自然就是伤害,但对于其他类型的技能,这个问题又
37、变得复杂了:1、 恢复技能:恢复生命/魔法/其他;2、 被动技能:不必主动使用而持续存在效果的技能;3、 DOS类技能:Damage Over Second,持续伤害类技能;4、 控制技能:使目标一段时间内无法行动或影响其攻击/移动速度等属性的技能;5、 空间技能:使目标(包括自己)发生非常规空间移动类技能;6、 时间技能:改变时间因素的技能(如冷却时间重置、改变其他技能施法时间等);7、 其他技能:暂时想不到,=。=! 以上各种技能应该是拥有各自的效用评估公式,但是必须要保证最终得到的效用值可以在不同类型技能间通用,而对于这部分内容的处理方法,我也目前没有什么很好的系统性理论,只能是结合具体
38、情况,见招拆招,或者根据感觉设定一个值,然后再通过测试进行调整了,这种调整方法是最不科学的,但可能也是在理论知识不够的情况下唯一的办法了。不过相对而言,我发现War3中,各个英雄的3个基本技能大多分配为:一个伤害技能,一个生存技能,一个被动或光环技能,当然也有不少英雄并非照此规则做技能设计的,但是,我想,既然大多“混乱之治”时代的英雄更多的拥有这个特点,那么就应该可以证明在最初设计这些英雄技能的时候,应该是有一个类似模板的东西存在吧,又或者那仅仅是系统设计师一时的兴致?又或者这是一种平衡设计的理念?主动技能应当是并行关系(取平均值或取最大值),因为他们是有互相制约的关系的,无论是魔法值上限,还
39、是公共冷却时间被动技能应当是叠加关系(相加或相乘),因为他们是并存的技能之间的平衡设计,需要保证他们有着各自的价值,但是没有必要让他们在任何情况下都是平衡的,实际上这是乏味而无聊的接续上次所说的几个遗留问题:l 一个单位拥有多少技能我想这个值的设定,必然是根据玩家的单位时间操作数而定的,但也并非需要一个精确的值,设计师凭感觉给定再结合少量的测试,应该就可以达到既定的目的了l 拥有什么类型的技能如上面所说的,最初的设计,应该是拥有一个模板的,例如War3中混乱之治时代各英雄的技能设计,之后,在此基础上,再设计新英雄,就有了可测试的对比参照物,这个时候,技能可以做更丰富的大胆设计,就比如冰封王座之
40、后出现的各个新英雄l 这些技能对单位的最终平均效用的影响在War3中,这个部分大概是被简化处理的,普通单位的技能与其种族的科技有关,而英雄,则与技能的等级学习条件相关,这些技能的设计,基本上可以脱离角色本身的属性设计而做单独的评估,但在WOW中则完全不同的,先说几个现象:1、 WOW中大多数附加伤害的技能为固定数值,而非百分比,如“在普通伤害基础上附加20点的伤害”“对目标造成200点伤害”“每2秒3点伤害”等等2、 WOW中很多技能的伤害并非很整齐的数字,100、200、300,而是诸如184、216、17,等等,我说的这个数字并非我们在战斗中看到的最终伤害输出值,而是在技能说明里涉及的数字
41、,另外还有一些技能的魔法消耗值也是如此,而相比之下,技能的冷却时间则整齐很多通过以上两个现象,不知道是否可以得到这样一个结论:WOW对各个角色在各个等级,使用技能之后对自己的能力加成在事先做了较为精确的估算,具体点说,WOW对各个角色在各个等级给定了一个技能效用加强值,即该等级角色的技能会使该角色在伤害输出或生存能力等方面加强的值(这两个值也许会分开的,也许是合并在一起的,我个人倾向于分开),而各个技能的单独的效用则遵照这个值进行数值设定,即换算之后得到需要的结果如果上面的猜测是正确的,那么对于小队实力的估算也会容易很多,首先,把一个角色的技能分成两部分:自身技能和队伍技能。自身技能,自然就是
42、指对自己的伤害输出或生存能力的影响队伍技能,相对的便是可以对队友能力有影响的技能了这样,每个角色的能力=(自身能力,自身技能,队伍技能)而在队伍中,每个角色能力=(自身能力+自身技能+(队员每个人的队伍技能)这样一来,对于之后需要做的关卡方面的数值设定(主要指怪物能力)就容易许多了暂时就这些吧,以后如果有新的关于技能方面的心得再做补充了,暂时没想法了,大家不要嫌我废话多哈,继续砖头瓦块名词解释:C&C、RA:命令与征服及红色警报,都是RTS的经典ColdDown Time:冷却时间,即技能或物品使用之后,系统强制给予该技能、物品或其他技能、物品的一段时间,在这段时间内,拥有冷却时间的技能或物品
43、不允许被使用。混乱之治:魔兽争霸3资料片之前的版本名称冰封王座:魔兽争霸3资料片的版本名称 暴雪式平衡的数学模型研究(四)前言:事隔半年多了,重拾这个系列的文章其实在心理上来说是很难的,以前那思路很难再找回了,但是最近我又觉得有些事情还是坚持下来比较好,找不回来没关系,索性重新开始,我也不去引用以前的论题了,毕竟思路是断裂的.这次我想在这里讨论一下经济系统,其实在我记忆中,在我原先的设想中,经济系统我本来是打算放到最后说的,因为这个问题涉及的东西实在太广了,也是一个最需要深入思考的论题,以当时的状况来说,很难写好.而现在有了这么一个机会,与论坛上的朋友经过一些思维的碰撞之后,突然对于构架这篇文
44、章的框架有了一些想法,再加上现在是离职状态,可以毫无干扰的,好好做一下这方面的思考.我很想以我的一些观点来作为这篇文章的框架主体,可能对于从整体俯瞰这篇文章的视角来说这样会凌乱一些,事实也的确如此,不过整理出一个一个的讨论点之后,我的想法是再写下一篇文章,对这篇文章的内容做一个整合,期望中是希望可以整理出一套用做传统网络游戏设计的通用思路,但愿如此罢.=一,网络游戏的经济系统与现实的经济系统并不完全相同,甚至在从某个角度上做分析的时候,没有任何可比性我不敢说,这个观点独树一帜,只此一家,但是我相信,对经济系统感兴趣的设计师们,应该是仅有少数人站在我这一边.那么抛开这些无聊的引言,我们切入正题.
45、我为什么这么说,我们首先来看看现实经济系统和虚拟经济系统之间的共性和差异共性:1,一个封闭的空间这里我所定义的空间,是指,凡是货币流动可以波及到的范围都在这个空间之内,那么就现实来说,全世界的人类社会便是这个空间,就网游来说,一个服务器就是一个空间,那么各位在暂且承认我这个定义的前提下,说这个空间是封闭的,不知道会不会有人要提出异议?2,是经济系统(貌似是废话=.=)a.一般等价交换物,即货币b.可进行自由贸易的个体,即玩家或人类的贸易个体(个人或团体)c.有商品,商品的基本定义即有交换价值的物品,无论现实还是网游,这个都存在有了这三点,才可以称之为健全的经济系统3,符合经济学一般规律即,商品
46、价格由价值决定,受供需关系影响,价格在价值上下一定范围内波动我之所以要列出共性,就是为了要说明现实的经济系统和网游的经济系统仍然是有一定相似性的,很多东西是可以互相参考的,这点其实是可以和几乎所有人达成共识的,那么我也就不再过多废话了.差异:事实上,我仅仅有1点可说的货币的发行机制现实中,政府是货币的唯一发行机构,货币的发行权是唯一的,是政府控制的,而在经济系统的的贸易个体没有任何货币发行权或干预权.而网游中,怪物是主要的货币发行机构(当然有任务类的其他机制,但这里暂且排除),货币的发行量由服务器中所有玩家的行为决定,即由经济系统中的贸易个体的行为集合决定!很显然,你看到了,就是这样,这是一个根本性的差异!那么,这样一来,我们就可以得到一个结论,我们在思考,凡是涉及服务器货币总量的问题的时候,就完全不能把现实的经济系统和网游的经济系统相比较!最直接的例子,通货膨胀,PS:事实上,我们还可以得到一个结论,就是在考虑网游经济系统其他方面内容的时候,也不能盲目的对比现实的经济系统,因为我上面提到的