战斗力综述
战斗力综述
(表格排版有问题,上传了正文和验算表格。)
1. 战斗力的作用
本文意在和大家聊聊战斗力的计算以及在实际工作中的应用。
战斗力,顾名思义,评判战斗能力的分值。
玩家面对战斗力会有两个理解:
1、根据战斗力预判这场战斗的胜负。不考虑操作等其他因素的影响,战斗力高者胜利。
2、通过养成提升的战斗力,评判系统价值。调平经济时,保证玩家投入和收益正比。
所以,只要保证相同战力不同职业互搏平衡。以及不同职业获得相同战力的养成代价相同,我们认为这一套战斗力的计算是无误的。
针对不同的游戏,不同的团队,计算战斗力会有不同的方法。这没有一定之规。本篇文章,也不过是将我之前工作时的一些小技巧分享给大家。
我习惯分模块地计算。并赋予不同模块不同的数值使命。就战斗力来讲,我会从以下两个方面展开,和大家一起探讨:
1、属性带来的战斗力:制作职业间的平衡;
2、技能带来的战斗力:区分职业间的不同。
2. 属性的战斗力
2.1. 战斗节奏
制作属性,我不自然就会想到标准人。一说到标准人,就会想到战斗节奏,或者说是标准战斗时间。
制作游戏数值,最关键就是把握时间。无论是制作战斗还是制作经济。这也将会是我们整套数值体系中,可以根据玩家体验主观设定的数值。体现在战斗中就叫做战斗节奏。
不同的战斗类型,标准不同。我们可以将游戏分为两种类型:
1、即时类:
游戏节奏以秒来体现。基础模型为互相攻击,同时死亡的时间。我们简称为互搏时间。
制作时,需要提前考虑到技能对攻击的放大效果,所以要多预留一些时间,不能把互搏时间做的太短。一般我们会预设一个2倍的效果提升。
还需要考虑重复操作导致无聊,时间也不能过长。主要参考的因素有技能的CD,攻击动作帧数。卡牌类游戏要考虑积攒能量的时间。一般2-3个技能循环为佳。
通过我们长时间对玩家体验的观察,战斗节奏往往设定在40-60秒之间。
2、回合类:
回合制自然是以多少个回合作为评判标准。
同上理论,观察玩家行为,游戏前期我们往往会把战斗节奏定在3-5回合。游戏版本迭代后,回合数会略有延长。
我,会把回合类游戏的战斗节奏定义在3.1回合。为什么?我把它称为:“3.1理论”。
道理很简单, 如一层窗户纸。在标准模式下,玩家互搏时间3.1个回合,在游戏中实际体验为4回合。假设玩家有能力突破3.1个回合,把0.1的份额去掉,那么就会在3回合中解决战斗。在对战中获得决定性胜利。那么,玩家如何能去掉0.1的份额?当然是通过充值,或惊喜类收益啦:)
所以很自信的跟大家分享3.2理论,正因为我们在制作战斗雏形的时候,就已经将经济,付费,惊喜等各种元素考虑在内。简单的几个字,就能体现出游戏的本源。
我们先假定经过团队讨论,将战斗节奏雏形定义在50秒。也为了下文计算方便。接下来开始制作最基本的模型,攻防血。
2.2. 一级属性
一级属性往往是指攻、防、血,也称三维。我们现在就简单的来一起模拟一套数值平衡。
2.2.1. 简单聊聊防御
已经有很多人对防御减伤做了好多讨论。这里简单论述,不是本文重点。比较流行的有以下做法。笔者在工作中都使用过:
1、减法:伤害=攻击-防御。
a) 优点:
i. 简单,玩家理解成本低。
ii. 战斗力计算一般为加减。所以防御在战斗力计算中更加准确。
iii. 可以做到不破防。注意:这真的是加减护甲公式的优点。这样我们可以更加轻松的制作等级压制,对玩家的攻击属性要求更高。更容易拉付费。
b) 缺点:
i. 当有暴击,技能等因素加入之后,导致计算成本提高。自己算一下就明白。一个公式有加减,又有乘除时,很难计算。
ii. 不能加入攻击速度。当游戏中有攻击频率差异时,导致很难计算。即便将护甲计算在攻击速度以内,很难让人理解。更适合回合制游戏。
2、除法:伤害=a*攻击^2/(攻击+防御)。
a) 优点:目前市场,养成较深,养成系统很多的情况下。只要保证攻击、生命、防御按照同比例成长,就可以保证战斗节奏稳定。这样可以在任何角度增加养成系统,而不破坏战斗节奏。
b) 缺点:
i. 战斗力是一个相对值,很难换算成具体战斗能力或者有效生命。计算困难。
ii. 攻防血某一项偏高高者偏低时,会严重破坏战斗节奏。
iii. 不同职业间,攻击和防御价值不匹配。最好能避免不同职业可以通用装备的系统。
3、乘法:战斗时间=生命/(攻击*(1-减伤))。减伤=护甲/(护甲+A)。A是这个阶段的成长标准。
a) 优点:
i. 非常好,非常合理的减伤方式。在同等级条件下,每获得1点护甲增加的有效生命的固定的。那么就能保证护甲、攻击和生命价值等价。
ii. 暴击等数据均为乘法方式,计算方便。
iii. A是唯一一个主观量。但计算平衡时,可以约掉。
iv. 战斗力计算方法显而易见,下文做简单推导。
我们可以把暴击等属性也乘在公式里,这个战斗力是实实在在的。
a) 缺点:减伤公式=护甲/(护甲+A)。其中A为成长曲线。成长曲线中,往往只会添加等级参数。不会把所有系统的标准值全部计算在内。在目前市场形势下,各种养成系统太多,数值膨胀较快,容易冲击成长曲线。系统扩展较难。
1、比例:目前有一些更加简单粗暴的方式——直接使用一个比例。例如:物理减伤10%。
a) 优点:简单粗暴。可极端的体现职业间差异。
b) 缺点:
i. 这个比例无法理性算入战斗力。
ii. 无法正常成长。
2、无甲:没有护甲这个属性。或者护甲全部为0,并且不显示。
护甲存在的意义是什么?不是单纯让玩家体验到有更多的花样。或者有职业间区分。如果你要做这个,不如把精力放在做技能和关卡上。
护甲实际上是让数值策划在另一个维度掌控游戏节奏。例如我们之前聊的不破防,例如可延长有效生命等。
但零护甲本身没有问题。很好算,玩家也不会因为没有护甲跟你较真。
以上几种减伤方式 ,笔者在实际工作中都遇到过。各有优劣。看项目,看团队,看我们对数值的把控能力。
目前除法公式比较流行,我们下文就拿它作为例子,继续探讨战斗力。
我们可以把暴击等属性也乘在公式里,这个战斗力是实实在在的。
a) 缺点:减伤公式=护甲/(护甲+A)。其中A为成长曲线。成长曲线中,往往只会添加等级参数。不会把所有系统的标准值全部计算在内。在目前市场形势下,各种养成系统太多,数值膨胀较快,容易冲击成长曲线。系统扩展较难。
1、比例:目前有一些更加简单粗暴的方式——直接使用一个比例。例如:物理减伤10%。
a) 优点:简单粗暴。可极端的体现职业间差异。
b) 缺点:
i. 这个比例无法理性算入战斗力。
ii. 无法正常成长。
2、无甲:没有护甲这个属性。或者护甲全部为0,并且不显示。
护甲存在的意义是什么?不是单纯让玩家体验到有更多的花样。或者有职业间区分。如果你要做这个,不如把精力放在做技能和关卡上。
护甲实际上是让数值策划在另一个维度掌控游戏节奏。例如我们之前聊的不破防,例如可延长有效生命等。
但零护甲本身没有问题。很好算,玩家也不会因为没有护甲跟你较真。
以上几种减伤方式 ,笔者在实际工作中都遇到过。各有优劣。看项目,看团队,看我们对数值的把控能力。
目前除法公式比较流行,我们下文就拿它作为例子,继续探讨战斗力。
1.1.1. 职业平衡
我习惯从PVP入手计算战斗。制作标准人,制作职业平衡。
我们先预设标准人是一个均衡类职业。并且符合标准战斗时间50秒。减伤公式为:
我习惯从PVP入手计算战斗。制作标准人,制作职业平衡。
我们先预设标准人是一个均衡类职业。并且符合标准战斗时间50秒。减伤公式为:
表中,我们简单制定20个成长阶段。即在这个阶段,通过等级、强化、装备等等一系列养成后的属性。表格如下:
成长阶段
A生命
A攻击
A防御
AA互搏
1
2500
100
100
50
2
5000
200
200
50
3
7500
300
300
50
4
10000
400
400
50
5
12500
500
500
50
6
15000
600
600
50
7
17500
700
700
50
8
20000
800
800
50
9
22500
900
900
50
10
25000
1000
1000
50
11
27500
1100
1100
50
12
30000
1200
1200
50
13
32500
1300
1300
50
14
35000
1400
1400
50
15
37500
1500
1500
50
16
40000
1600
1600
50
17
42500
1700
1700
50
18
45000
1800
1800
50
19
47500
1900
1900
50
20
50000
2000
2000
50
我们设定生命,攻击,防御在战斗力中的占比相同。因为他们同为一级属性。那么:
1战斗力=1攻击=1防御=25生命。
下边我们增加一个职业,他是一个生存属性较高的职业:
成长阶段
A战斗力
A生命
A攻击
A防御
AA互搏
AB互搏
BB互搏
B生命
B攻击
B防御
B战斗力
1
300
2500
100
100
50
70.3125
100.49
3000
80
134.38
334.38
2
600
5000
200
200
50
70.3125
100.49
6000
160
268.75
668.75
3
900
7500
300
300
50
70.3125
100.49
9000
240
403.13
1003.13
4
1200
10000
400
400
50
70.3125
100.49
12000
320
537.5
1337.5
5
1500
12500
500
500
50
70.3125
100.49
15000
400
671.88
1671.88
6
1800
15000
600
600
50
70.3125
100.49
18000
480
806.25
2006.25
7
2100
17500
700
700
50
70.3125
100.49
21000
560
940.63
2340.63
8
2400
20000
800
800
50
70.3125
100.49
24000
640
1075
2675
9
2700
22500
900
900
50
70.3125
100.49
27000
720
1209.38
3009.38
10
3000
25000
1000
1000
50
70.3125
100.49
30000
800
1343.75
3343.75
11
3300
27500
1100
1100
50
70.3125
100.49
33000
880
1478.13
3678.13
12
3600
30000
1200
1200
50
70.3125
100.49
36000
960
1612.5
4012.5
13
3900
32500
1300
1300
50
70.3125
100.49
39000
1040
1746.88
4346.88
14
4200
35000
1400
1400
50
70.3125
100.49
42000
1120
1881.25
4681.25
15
4500
37500
1500
1500
50
70.3125
100.49
45000
1200
2015.63
5015.63
16
4800
40000
1600
1600
50
70.3125
100.49
48000
1280
2150
5350
17
5100
42500
1700
1700
50
70.3125
100.49
51000
1360
2284.38
5684.38
18
5400
45000
1800
1800
50
70.3125
100.49
54000
1440
2418.75
6018.75
19
5700
47500
1900
1900
50
70.3125
100.49
57000
1520
2553.13
6353.13
20
6000
50000
2000
2000
50
70.3125
100.49
60000
1600
2687.5
6687.5
首先,我们要保证A和B的互搏时间是相等的,才说明A、B互相平衡。但是,如果B的战斗力依然按照A战斗力公式推导,就会导致平衡的情况下,战斗力不相同。
很多人到此就要么这样,战斗力不相同就不相同吧。要么会调整B的属性,保证战斗力相同,但会导致职业间互搏不平衡。这二者都是不负责任的,不可取的。
玩家是通过战斗力来评定胜负的。所以我们最好能保证A、B互搏平衡的情况下,A、B的战斗力也是相同的。所以我会改B的战斗力计算公式:
1战斗力=0.8攻击=134.38防御=30生命。
表中,我们简单制定20个成长阶段。即在这个阶段,通过等级、强化、装备等等一系列养成后的属性。表格如下:
成长阶段 | A生命 | A攻击 | A防御 | AA互搏 |
1 | 2500 | 100 | 100 | 50 |
2 | 5000 | 200 | 200 | 50 |
3 | 7500 | 300 | 300 | 50 |
4 | 10000 | 400 | 400 | 50 |
5 | 12500 | 500 | 500 | 50 |
6 | 15000 | 600 | 600 | 50 |
7 | 17500 | 700 | 700 | 50 |
8 | 20000 | 800 | 800 | 50 |
9 | 22500 | 900 | 900 | 50 |
10 | 25000 | 1000 | 1000 | 50 |
11 | 27500 | 1100 | 1100 | 50 |
12 | 30000 | 1200 | 1200 | 50 |
13 | 32500 | 1300 | 1300 | 50 |
14 | 35000 | 1400 | 1400 | 50 |
15 | 37500 | 1500 | 1500 | 50 |
16 | 40000 | 1600 | 1600 | 50 |
17 | 42500 | 1700 | 1700 | 50 |
18 | 45000 | 1800 | 1800 | 50 |
19 | 47500 | 1900 | 1900 | 50 |
20 | 50000 | 2000 | 2000 | 50 |
我们设定生命,攻击,防御在战斗力中的占比相同。因为他们同为一级属性。那么:
1战斗力=1攻击=1防御=25生命。
下边我们增加一个职业,他是一个生存属性较高的职业:
成长阶段 | A战斗力 | A生命 | A攻击 | A防御 | AA互搏 | AB互搏 | BB互搏 | B生命 | B攻击 | B防御 | B战斗力 |
1 | 300 | 2500 | 100 | 100 | 50 | 70.3125 | 100.49 | 3000 | 80 | 134.38 | 334.38 |
2 | 600 | 5000 | 200 | 200 | 50 | 70.3125 | 100.49 | 6000 | 160 | 268.75 | 668.75 |
3 | 900 | 7500 | 300 | 300 | 50 | 70.3125 | 100.49 | 9000 | 240 | 403.13 | 1003.13 |
4 | 1200 | 10000 | 400 | 400 | 50 | 70.3125 | 100.49 | 12000 | 320 | 537.5 | 1337.5 |
5 | 1500 | 12500 | 500 | 500 | 50 | 70.3125 | 100.49 | 15000 | 400 | 671.88 | 1671.88 |
6 | 1800 | 15000 | 600 | 600 | 50 | 70.3125 | 100.49 | 18000 | 480 | 806.25 | 2006.25 |
7 | 2100 | 17500 | 700 | 700 | 50 | 70.3125 | 100.49 | 21000 | 560 | 940.63 | 2340.63 |
8 | 2400 | 20000 | 800 | 800 | 50 | 70.3125 | 100.49 | 24000 | 640 | 1075 | 2675 |
9 | 2700 | 22500 | 900 | 900 | 50 | 70.3125 | 100.49 | 27000 | 720 | 1209.38 | 3009.38 |
10 | 3000 | 25000 | 1000 | 1000 | 50 | 70.3125 | 100.49 | 30000 | 800 | 1343.75 | 3343.75 |
11 | 3300 | 27500 | 1100 | 1100 | 50 | 70.3125 | 100.49 | 33000 | 880 | 1478.13 | 3678.13 |
12 | 3600 | 30000 | 1200 | 1200 | 50 | 70.3125 | 100.49 | 36000 | 960 | 1612.5 | 4012.5 |
13 | 3900 | 32500 | 1300 | 1300 | 50 | 70.3125 | 100.49 | 39000 | 1040 | 1746.88 | 4346.88 |
14 | 4200 | 35000 | 1400 | 1400 | 50 | 70.3125 | 100.49 | 42000 | 1120 | 1881.25 | 4681.25 |
15 | 4500 | 37500 | 1500 | 1500 | 50 | 70.3125 | 100.49 | 45000 | 1200 | 2015.63 | 5015.63 |
16 | 4800 | 40000 | 1600 | 1600 | 50 | 70.3125 | 100.49 | 48000 | 1280 | 2150 | 5350 |
17 | 5100 | 42500 | 1700 | 1700 | 50 | 70.3125 | 100.49 | 51000 | 1360 | 2284.38 | 5684.38 |
18 | 5400 | 45000 | 1800 | 1800 | 50 | 70.3125 | 100.49 | 54000 | 1440 | 2418.75 | 6018.75 |
19 | 5700 | 47500 | 1900 | 1900 | 50 | 70.3125 | 100.49 | 57000 | 1520 | 2553.13 | 6353.13 |
20 | 6000 | 50000 | 2000 | 2000 | 50 | 70.3125 | 100.49 | 60000 | 1600 | 2687.5 | 6687.5 |
首先,我们要保证A和B的互搏时间是相等的,才说明A、B互相平衡。但是,如果B的战斗力依然按照A战斗力公式推导,就会导致平衡的情况下,战斗力不相同。
很多人到此就要么这样,战斗力不相同就不相同吧。要么会调整B的属性,保证战斗力相同,但会导致职业间互搏不平衡。这二者都是不负责任的,不可取的。
玩家是通过战斗力来评定胜负的。所以我们最好能保证A、B互搏平衡的情况下,A、B的战斗力也是相同的。所以我会改B的战斗力计算公式:
1战斗力=0.8攻击=134.38防御=30生命。
1.1.1. 第三个职业
同理,我们可以加入第三个,第四个职业。但实际操作中,我们会发现,拍脑门定一个第三职业攻防血,并按着相同规律成长,导致AB互搏平衡,AC互搏平衡,CB互搏不平衡。如下表:
阶段
战斗力
A生命
A攻击
A防御
AA互搏
AB互搏
AC互搏
B打C
C打B
BB互搏
B生命
B攻击
B防御
CC互搏
C生命
C攻击
C防御
1
300
2500
100
100
50
70.31
38.19
53.42
52.99
100.49
3000
80
134.37
29.3
2000
120
90.95
2
600
5000
200
200
50
70.31
38.19
53.42
52.99
100.48
6000
160
268.73
29.3
4000
240
181.9
3
900
7500
300
300
50
70.31
38.19
53.42
52.99
100.48
9000
240
403.1
29.3
6000
360
272.85
4
1200
10000
400
400
50
70.31
38.19
53.42
52.99
100.48
12000
320
537.47
29.3
8000
480
363.8
5
1500
12500
500
500
50
70.31
38.19
53.42
52.99
100.48
15000
400
671.83
29.3
10000
600
454.75
6
1800
15000
600
600
50
70.31
38.19
53.42
52.99
100.48
18000
480
806.2
29.3
12000
720
545.7
7
2100
17500
700
700
50
70.31
38.19
53.42
52.99
100.48
21000
560
940.57
29.3
14000
840
636.65
8
2400
20000
800
800
50
70.31
38.19
53.42
52.99
100.48
24000
640
1074.93
29.3
16000
960
727.6
9
2700
22500
900
900
50
70.31
38.19
53.42
52.99
100.48
27000
720
1209.3
29.3
18000
1080
818.55
10
3000
25000
1000
1000
50
70.31
38.19
53.42
52.99
100.48
30000
800
1343.67
29.3
20000
1200
909.5
11
3300
27500
1100
1100
50
70.31
38.19
53.42
52.99
100.48
33000
880
1478.03
29.3
22000
1320
1000.45
12
3600
30000
1200
1200
50
70.31
38.19
53.42
52.99
100.48
36000
960
1612.4
29.3
24000
1440
1091.4
13
3900
32500
1300
1300
50
70.31
38.19
53.42
52.99
100.48
39000
1040
1746.77
29.3
26000
1560
1182.35
14
4200
35000
1400
1400
50
70.31
38.19
53.42
52.99
100.48
42000
1120
1881.13
29.3
28000
1680
1273.3
15
4500
37500
1500
1500
50
70.31
38.19
53.42
52.99
100.48
45000
1200
2015.5
29.3
30000
1800
1364.25
16
4800
40000
1600
1600
50
70.31
38.19
53.42
52.99
100.48
48000
1280
2149.87
29.3
32000
1920
1455.2
17
5100
42500
1700
1700
50
70.31
38.19
53.42
52.99
100.48
51000
1360
2284.23
29.3
34000
2040
1546.15
18
5400
45000
1800
1800
50
70.31
38.19
53.42
52.99
100.48
54000
1440
2418.6
29.3
36000
2160
1637.1
19
5700
47500
1900
1900
50
70.31
38.19
53.42
52.99
100.48
57000
1520
2552.97
29.3
38000
2280
1728.05
20
6000
50000
2000
2000
50
70.31
38.19
53.42
52.99
100.48
60000
1600
2687.33
29.3
40000
2400
1819
这导致B、C之间有误差。虽然误差很小,可以忽略,但是我们可以调整,达到一个更优值。因为我们有防御这个属性!我们可以通过这个维度调整C的生命与防御比例,尽量缩小误差。
我先用C攻击计算A、C互搏时间和B、C互搏时间。并把C生命和防御看做未知数带入这两个公式中计算。解一个二元方程即可得下表:
阶段
战斗力
A生命
A攻击
A防御
AA互搏
AB互搏
AC互搏
B打C
C打B
BB互搏
B生命
B攻击
B防御
CC互搏
C生命
C攻击
C防御
1
300
2500
100
100
50
70.31
38.19
52.99
52.99
100.49
3000
80
134.37
29.49
2138
120
78.62
2
600
5000
200
200
50
70.31
38.19
52.99
52.99
100.48
6000
160
268.73
29.49
4276
240
157.25
3
900
7500
300
300
50
70.31
38.19
52.99
52.99
100.48
9000
240
403.1
29.49
6414
360
235.87
4
1200
10000
400
400
50
70.31
38.19
52.99
52.99
100.48
12000
320
537.47
29.49
8552
480
314.5
5
1500
12500
500
500
50
70.31
38.19
52.99
52.99
100.48
15000
400
671.83
29.49
10690
600
393.12
6
1800
15000
600
600
50
70.31
38.19
52.99
52.99
100.48
18000
480
806.2
29.49
12828
720
471.75
7
2100
17500
700
700
50
70.31
38.19
52.99
52.99
100.48
21000
560
940.57
29.49
14966
840
550.37
8
2400
20000
800
800
50
70.31
38.19
52.99
52.99
100.48
24000
640
1074.93
29.49
17104
960
629
9
2700
22500
900
900
50
70.31
38.19
52.99
52.99
100.48
27000
720
1209.3
29.49
19242
1080
707.62
10
3000
25000
1000
1000
50
70.31
38.19
52.99
52.99
100.48
30000
800
1343.67
29.49
21380
1200
786.25
11
3300
27500
1100
1100
50
70.31
38.19
52.99
52.99
100.48
33000
880
1478.03
29.49
23518
1320
864.87
12
3600
30000
1200
1200
50
70.31
38.19
52.99
52.99
100.48
36000
960
1612.4
29.49
25656
1440
943.5
13
3900
32500
1300
1300
50
70.31
38.19
52.99
52.99
100.48
39000
1040
1746.77
29.49
27794
1560
1022.12
14
4200
35000
1400
1400
50
70.31
38.19
52.99
52.99
100.48
42000
1120
1881.13
29.49
29932
1680
1100.75
15
4500
37500
1500
1500
50
70.31
38.19
52.99
52.99
100.48
45000
1200
2015.5
29.49
32070
1800
1179.37
16
4800
40000
1600
1600
50
70.31
38.19
52.99
52.99
100.48
48000
1280
2149.87
29.49
34208
1920
1258
17
5100
42500
1700
1700
50
70.31
38.19
52.99
52.99
100.48
51000
1360
2284.23
29.49
36346
2040
1336.62
18
5400
45000
1800
1800
50
70.31
38.19
52.99
52.99
100.48
54000
1440
2418.6
29.49
38484
2160
1415.25
19
5700
47500
1900
1900
50
70.31
38.19
52.99
52.99
100.48
57000
1520
2552.97
29.49
40622
2280
1493.87
20
6000
50000
2000
2000
50
70.31
38.19
52.99
52.99
100.48
60000
1600
2687.33
29.49
42760
2400
1572.5
怎么样,护甲作为另一个维度,帮助了数值策划。同理计算C的战斗力公式,保证A、B、C战斗力相等的条件下,达到理论平衡。
同理,我们可以加入第三个,第四个职业。但实际操作中,我们会发现,拍脑门定一个第三职业攻防血,并按着相同规律成长,导致AB互搏平衡,AC互搏平衡,CB互搏不平衡。如下表:
阶段 | 战斗力 | A生命 | A攻击 | A防御 | AA互搏 | AB互搏 | AC互搏 | B打C | C打B | BB互搏 | B生命 | B攻击 | B防御 | CC互搏 | C生命 | C攻击 | C防御 |
1 | 300 | 2500 | 100 | 100 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.49 | 3000 | 80 | 134.37 | 29.3 | 2000 | 120 | 90.95 |
2 | 600 | 5000 | 200 | 200 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 6000 | 160 | 268.73 | 29.3 | 4000 | 240 | 181.9 |
3 | 900 | 7500 | 300 | 300 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 9000 | 240 | 403.1 | 29.3 | 6000 | 360 | 272.85 |
4 | 1200 | 10000 | 400 | 400 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 12000 | 320 | 537.47 | 29.3 | 8000 | 480 | 363.8 |
5 | 1500 | 12500 | 500 | 500 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 15000 | 400 | 671.83 | 29.3 | 10000 | 600 | 454.75 |
6 | 1800 | 15000 | 600 | 600 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 18000 | 480 | 806.2 | 29.3 | 12000 | 720 | 545.7 |
7 | 2100 | 17500 | 700 | 700 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 21000 | 560 | 940.57 | 29.3 | 14000 | 840 | 636.65 |
8 | 2400 | 20000 | 800 | 800 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 24000 | 640 | 1074.93 | 29.3 | 16000 | 960 | 727.6 |
9 | 2700 | 22500 | 900 | 900 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 27000 | 720 | 1209.3 | 29.3 | 18000 | 1080 | 818.55 |
10 | 3000 | 25000 | 1000 | 1000 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 30000 | 800 | 1343.67 | 29.3 | 20000 | 1200 | 909.5 |
11 | 3300 | 27500 | 1100 | 1100 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 33000 | 880 | 1478.03 | 29.3 | 22000 | 1320 | 1000.45 |
12 | 3600 | 30000 | 1200 | 1200 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 36000 | 960 | 1612.4 | 29.3 | 24000 | 1440 | 1091.4 |
13 | 3900 | 32500 | 1300 | 1300 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 39000 | 1040 | 1746.77 | 29.3 | 26000 | 1560 | 1182.35 |
14 | 4200 | 35000 | 1400 | 1400 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 42000 | 1120 | 1881.13 | 29.3 | 28000 | 1680 | 1273.3 |
15 | 4500 | 37500 | 1500 | 1500 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 45000 | 1200 | 2015.5 | 29.3 | 30000 | 1800 | 1364.25 |
16 | 4800 | 40000 | 1600 | 1600 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 48000 | 1280 | 2149.87 | 29.3 | 32000 | 1920 | 1455.2 |
17 | 5100 | 42500 | 1700 | 1700 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 51000 | 1360 | 2284.23 | 29.3 | 34000 | 2040 | 1546.15 |
18 | 5400 | 45000 | 1800 | 1800 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 54000 | 1440 | 2418.6 | 29.3 | 36000 | 2160 | 1637.1 |
19 | 5700 | 47500 | 1900 | 1900 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 57000 | 1520 | 2552.97 | 29.3 | 38000 | 2280 | 1728.05 |
20 | 6000 | 50000 | 2000 | 2000 | 50 | 70.31 | 38.19 | 53.42 | 52.99 | 100.48 | 60000 | 1600 | 2687.33 | 29.3 | 40000 | 2400 | 1819 |
这导致B、C之间有误差。虽然误差很小,可以忽略,但是我们可以调整,达到一个更优值。因为我们有防御这个属性!我们可以通过这个维度调整C的生命与防御比例,尽量缩小误差。
我先用C攻击计算A、C互搏时间和B、C互搏时间。并把C生命和防御看做未知数带入这两个公式中计算。解一个二元方程即可得下表:
阶段 | 战斗力 | A生命 | A攻击 | A防御 | AA互搏 | AB互搏 | AC互搏 | B打C | C打B | BB互搏 | B生命 | B攻击 | B防御 | CC互搏 | C生命 | C攻击 | C防御 |
1 | 300 | 2500 | 100 | 100 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.49 | 3000 | 80 | 134.37 | 29.49 | 2138 | 120 | 78.62 |
2 | 600 | 5000 | 200 | 200 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 6000 | 160 | 268.73 | 29.49 | 4276 | 240 | 157.25 |
3 | 900 | 7500 | 300 | 300 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 9000 | 240 | 403.1 | 29.49 | 6414 | 360 | 235.87 |
4 | 1200 | 10000 | 400 | 400 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 12000 | 320 | 537.47 | 29.49 | 8552 | 480 | 314.5 |
5 | 1500 | 12500 | 500 | 500 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 15000 | 400 | 671.83 | 29.49 | 10690 | 600 | 393.12 |
6 | 1800 | 15000 | 600 | 600 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 18000 | 480 | 806.2 | 29.49 | 12828 | 720 | 471.75 |
7 | 2100 | 17500 | 700 | 700 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 21000 | 560 | 940.57 | 29.49 | 14966 | 840 | 550.37 |
8 | 2400 | 20000 | 800 | 800 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 24000 | 640 | 1074.93 | 29.49 | 17104 | 960 | 629 |
9 | 2700 | 22500 | 900 | 900 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 27000 | 720 | 1209.3 | 29.49 | 19242 | 1080 | 707.62 |
10 | 3000 | 25000 | 1000 | 1000 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 30000 | 800 | 1343.67 | 29.49 | 21380 | 1200 | 786.25 |
11 | 3300 | 27500 | 1100 | 1100 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 33000 | 880 | 1478.03 | 29.49 | 23518 | 1320 | 864.87 |
12 | 3600 | 30000 | 1200 | 1200 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 36000 | 960 | 1612.4 | 29.49 | 25656 | 1440 | 943.5 |
13 | 3900 | 32500 | 1300 | 1300 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 39000 | 1040 | 1746.77 | 29.49 | 27794 | 1560 | 1022.12 |
14 | 4200 | 35000 | 1400 | 1400 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 42000 | 1120 | 1881.13 | 29.49 | 29932 | 1680 | 1100.75 |
15 | 4500 | 37500 | 1500 | 1500 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 45000 | 1200 | 2015.5 | 29.49 | 32070 | 1800 | 1179.37 |
16 | 4800 | 40000 | 1600 | 1600 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 48000 | 1280 | 2149.87 | 29.49 | 34208 | 1920 | 1258 |
17 | 5100 | 42500 | 1700 | 1700 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 51000 | 1360 | 2284.23 | 29.49 | 36346 | 2040 | 1336.62 |
18 | 5400 | 45000 | 1800 | 1800 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 54000 | 1440 | 2418.6 | 29.49 | 38484 | 2160 | 1415.25 |
19 | 5700 | 47500 | 1900 | 1900 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 57000 | 1520 | 2552.97 | 29.49 | 40622 | 2280 | 1493.87 |
20 | 6000 | 50000 | 2000 | 2000 | 50 | 70.31 | 38.19 | 52.99 | 52.99 | 100.48 | 60000 | 1600 | 2687.33 | 29.49 | 42760 | 2400 | 1572.5 |
怎么样,护甲作为另一个维度,帮助了数值策划。同理计算C的战斗力公式,保证A、B、C战斗力相等的条件下,达到理论平衡。
1.1. 二级属性
我们常定义:命中、暴击、闪避等为二级属性。这些属性一般是以一个乘值的方式计算在公式中。所有二级属性皆通一理,下文只拿命中举例。
命中率判定,如果未命中,则造成0伤害。如果命中造成100%伤害。参与计算的平衡是防御减伤之后的数值。这样我们可以得到以下计算公式:
我们常定义:命中、暴击、闪避等为二级属性。这些属性一般是以一个乘值的方式计算在公式中。所有二级属性皆通一理,下文只拿命中举例。
命中率判定,如果未命中,则造成0伤害。如果命中造成100%伤害。参与计算的平衡是防御减伤之后的数值。这样我们可以得到以下计算公式:
通过这个公式我们可以看出两个问题:
1、保证三维同比例成长,且命中率不成长的前提下,可以保证不破坏战斗节奏。
2、命中率价值会随着三维变化而变化。三维越高,命中率等同于的三维数值越大,同比战斗力价值越高。
那么,我们既要保证命中率可以成长,又要避免命中战斗力不稳,我会这样处理。
命中率在游戏中产出,就以一个百分比形式产出。同时给它制作一条反属性,例如:未命中率。
这两条属性同时产出,并且同时成长。同上文计算一样,将其计算到多职业中。如下表:
阶段
战斗力
A生命
A攻击
A防御
A命中
A反命中
AVA真命中
AA互搏
AVB真命中
BVA真命中
AB互搏
BB互搏
B生命
B攻击
B防御
B命中
B反命中
BVB真命中
1
300
2500
100
100
100%
5%
95%
52.63
90%
90%
78.13
118.23
3000
80
134.39
95%
10%
85%
2
600
5000
200
200
105%
10%
95%
52.63
90%
90%
78.13
118.23
6000
160
268.78
100%
15%
85%
3
900
7500
300
300
110%
15%
95%
52.63
90%
90%
78.13
118.23
9000
240
403.17
105%
20%
85%
4
1200
10000
400
400
115%
20%
95%
52.63
90%
90%
78.13
118.23
12000
320
537.56
110%
25%
85%
5
1500
12500
500
500
120%
25%
95%
52.63
90%
90%
78.13
118.23
15000
400
671.95
115%
30%
85%
6
1800
15000
600
600
125%
30%
95%
52.63
90%
90%
78.13
118.23
18000
480
806.34
120%
35%
85%
7
2100
17500
700
700
130%
35%
95%
52.63
90%
90%
78.13
118.23
21000
560
940.73
125%
40%
85%
8
2400
20000
800
800
135%
40%
95%
52.63
90%
90%
78.13
118.23
24000
640
1075.12
130%
45%
85%
9
2700
22500
900
900
140%
45%
95%
52.63
90%
90%
78.13
118.23
27000
720
1209.51
135%
50%
85%
10
3000
25000
1000
1000
145%
50%
95%
52.63
90%
90%
78.13
118.23
30000
800
1343.9
140%
55%
85%
11
3300
27500
1100
1100
150%
55%
95%
52.63
90%
90%
78.12
118.21
33000
880
1477.96
145%
60%
85%
12
3600
30000
1200
1200
155%
60%
95%
52.63
90%
90%
78.12
118.21
36000
960
1612.32
150%
65%
85%
13
3900
32500
1300
1300
160%
65%
95%
52.63
90%
90%
78.12
118.21
39000
1040
1746.68
155%
70%
85%
14
4200
35000
1400
1400
165%
70%
95%
52.63
90%
90%
78.12
118.21
42000
1120
1881.04
160%
75%
85%
15
4500
37500
1500
1500
170%
75%
95%
52.63
90%
90%
78.12
118.21
45000
1200
2015.4
165%
80%
85%
16
4800
40000
1600
1600
175%
80%
95%
52.63
90%
90%
78.12
118.21
48000
1280
2149.76
170%
85%
85%
17
5100
42500
1700
1700
180%
85%
95%
52.63
90%
90%
78.12
118.21
51000
1360
2284.12
175%
90%
85%
18
5400
45000
1800
1800
185%
90%
95%
52.63
90%
90%
78.12
118.21
54000
1440
2418.48
180%
95%
85%
19
5700
47500
1900
1900
190%
95%
95%
52.63
90%
90%
78.12
118.21
57000
1520
2552.84
185%
100%
85%
20
6000
50000
2000
2000
195%
100%
95%
52.63
90%
90%
78.12
118.21
60000
1600
2687.2
190%
105%
85%
我们同上文去定义不同职业,命中反馈在战斗力中的系数即可。
顺便提一句,我们完全可以制作一套命中等级数值。他和三维一样是一个绝对值数。通过复杂的公式换算成一个命中率。然后参与战斗计算。操作性很好,玩家也可以理解。计算方法同上:
1、制定各职业命中率;
2、根据各职业命中率确定命中等级换算命中率公式;
3、根据不同职业的命中等级换算命中等级战斗力公式。
方法大同小异,就不做表了。
通过这个公式我们可以看出两个问题:
1、保证三维同比例成长,且命中率不成长的前提下,可以保证不破坏战斗节奏。
2、命中率价值会随着三维变化而变化。三维越高,命中率等同于的三维数值越大,同比战斗力价值越高。
那么,我们既要保证命中率可以成长,又要避免命中战斗力不稳,我会这样处理。
命中率在游戏中产出,就以一个百分比形式产出。同时给它制作一条反属性,例如:未命中率。
这两条属性同时产出,并且同时成长。同上文计算一样,将其计算到多职业中。如下表:
阶段 | 战斗力 | A生命 | A攻击 | A防御 | A命中 | A反命中 | AVA真命中 | AA互搏 | AVB真命中 | BVA真命中 | AB互搏 | BB互搏 | B生命 | B攻击 | B防御 | B命中 | B反命中 | BVB真命中 |
1 | 300 | 2500 | 100 | 100 | 100% | 5% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 3000 | 80 | 134.39 | 95% | 10% | 85% |
2 | 600 | 5000 | 200 | 200 | 105% | 10% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 6000 | 160 | 268.78 | 100% | 15% | 85% |
3 | 900 | 7500 | 300 | 300 | 110% | 15% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 9000 | 240 | 403.17 | 105% | 20% | 85% |
4 | 1200 | 10000 | 400 | 400 | 115% | 20% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 12000 | 320 | 537.56 | 110% | 25% | 85% |
5 | 1500 | 12500 | 500 | 500 | 120% | 25% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 15000 | 400 | 671.95 | 115% | 30% | 85% |
6 | 1800 | 15000 | 600 | 600 | 125% | 30% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 18000 | 480 | 806.34 | 120% | 35% | 85% |
7 | 2100 | 17500 | 700 | 700 | 130% | 35% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 21000 | 560 | 940.73 | 125% | 40% | 85% |
8 | 2400 | 20000 | 800 | 800 | 135% | 40% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 24000 | 640 | 1075.12 | 130% | 45% | 85% |
9 | 2700 | 22500 | 900 | 900 | 140% | 45% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 27000 | 720 | 1209.51 | 135% | 50% | 85% |
10 | 3000 | 25000 | 1000 | 1000 | 145% | 50% | 95% | 52.63 | 90% | 90% | 78.13 | 118.23 | 30000 | 800 | 1343.9 | 140% | 55% | 85% |
11 | 3300 | 27500 | 1100 | 1100 | 150% | 55% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 33000 | 880 | 1477.96 | 145% | 60% | 85% |
12 | 3600 | 30000 | 1200 | 1200 | 155% | 60% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 36000 | 960 | 1612.32 | 150% | 65% | 85% |
13 | 3900 | 32500 | 1300 | 1300 | 160% | 65% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 39000 | 1040 | 1746.68 | 155% | 70% | 85% |
14 | 4200 | 35000 | 1400 | 1400 | 165% | 70% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 42000 | 1120 | 1881.04 | 160% | 75% | 85% |
15 | 4500 | 37500 | 1500 | 1500 | 170% | 75% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 45000 | 1200 | 2015.4 | 165% | 80% | 85% |
16 | 4800 | 40000 | 1600 | 1600 | 175% | 80% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 48000 | 1280 | 2149.76 | 170% | 85% | 85% |
17 | 5100 | 42500 | 1700 | 1700 | 180% | 85% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 51000 | 1360 | 2284.12 | 175% | 90% | 85% |
18 | 5400 | 45000 | 1800 | 1800 | 185% | 90% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 54000 | 1440 | 2418.48 | 180% | 95% | 85% |
19 | 5700 | 47500 | 1900 | 1900 | 190% | 95% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 57000 | 1520 | 2552.84 | 185% | 100% | 85% |
20 | 6000 | 50000 | 2000 | 2000 | 195% | 100% | 95% | 52.63 | 90% | 90% | 78.12 | 118.21 | 60000 | 1600 | 2687.2 | 190% | 105% | 85% |
我们同上文去定义不同职业,命中反馈在战斗力中的系数即可。
顺便提一句,我们完全可以制作一套命中等级数值。他和三维一样是一个绝对值数。通过复杂的公式换算成一个命中率。然后参与战斗计算。操作性很好,玩家也可以理解。计算方法同上:
1、制定各职业命中率;
2、根据各职业命中率确定命中等级换算命中率公式;
3、根据不同职业的命中等级换算命中等级战斗力公式。
方法大同小异,就不做表了。
1.1. 战斗力是加值
1.1.1. 加值的好处与问题
战斗力为什么是加值?即:
战斗力为什么是加值?即:
先说好处:非常容易理解。毕竟战斗力是给玩家参考的数值。越容易理解,玩家越容易接受。
例如:某个装备提供了各种属性。我们可以根据上文公式计算出这个件装备的战斗力。当我佩戴这件装备时,我的总战斗力提高的值等于装备战斗力。相反,其它公式会导致误差,增加玩家的理解成本。
说说问题:这个公式成立的条件是,战斗节奏不变的前提下。如果战斗节奏发生变化,这个公式将会崩溃。例如:A玩家将100的战斗力,全部投放在生命。B玩家将100的战斗力,全部投放在攻击。两个玩家收益是不等价的。
但是,我并不担心这个问题。就目前市场情况看,养成系统多而广。我们只需要准确的做属性投放,就可以完美规避这个问题。
所以,最后我还是选择了这个公式,并且把它推荐给大家。
先说好处:非常容易理解。毕竟战斗力是给玩家参考的数值。越容易理解,玩家越容易接受。
例如:某个装备提供了各种属性。我们可以根据上文公式计算出这个件装备的战斗力。当我佩戴这件装备时,我的总战斗力提高的值等于装备战斗力。相反,其它公式会导致误差,增加玩家的理解成本。
说说问题:这个公式成立的条件是,战斗节奏不变的前提下。如果战斗节奏发生变化,这个公式将会崩溃。例如:A玩家将100的战斗力,全部投放在生命。B玩家将100的战斗力,全部投放在攻击。两个玩家收益是不等价的。
但是,我并不担心这个问题。就目前市场情况看,养成系统多而广。我们只需要准确的做属性投放,就可以完美规避这个问题。
所以,最后我还是选择了这个公式,并且把它推荐给大家。
1.1.1. WOW的战斗力
WOW没有战斗力。但是它计算战斗能力的方式反而是最准确的。我们还是简单推导一下:
WOW没有战斗力。但是它计算战斗能力的方式反而是最准确的。我们还是简单推导一下:
他的诸多能力值都可以准确的反馈在公式中。推导过程上文已经聊过了,请见2.2.1简单聊聊防御相关内容。
但是它有一个致命缺点,战斗力反馈在UI上不好理解。因为需要综合角色全身属性才能得到真实战斗力,而单件装备上仅有的战斗力无法计算。这样在目前市场上,玩家需要利用战斗力评判装备好坏的作用就荡然无存了。
既然战斗力变的无效,那么何必还要计算。所以不推荐这样的算法。虽然我不得不承认它很精确。
他的诸多能力值都可以准确的反馈在公式中。推导过程上文已经聊过了,请见2.2.1简单聊聊防御相关内容。
但是它有一个致命缺点,战斗力反馈在UI上不好理解。因为需要综合角色全身属性才能得到真实战斗力,而单件装备上仅有的战斗力无法计算。这样在目前市场上,玩家需要利用战斗力评判装备好坏的作用就荡然无存了。
既然战斗力变的无效,那么何必还要计算。所以不推荐这样的算法。虽然我不得不承认它很精确。
1.1. 多职业困惑
在本章节的最后,我们讨论一下是否有必要在一款游戏中区分职业属性。
卡牌游戏应该是有这样的考虑的。但是我们没有必要那么复杂的去计算战斗平衡。目前来看,卡牌游戏中单职业平衡不存在。我们最多是可以以战斗力作为依据,计算经济方便。并且也没必要费尽心思去为每一张卡牌制作战斗力计算公式。
单职业养成就更加困惑了。我们虽然已经完美的制作了PVP的平衡。但是PVE上是不平衡的。因为单看属性,攻击是保证PVE速度的唯一标准。那么只要存在职业区分,就无法制作PVE平衡。
唯一的变通是可以让防高职业更多的使用群攻技能。或更加讲究多职业间的配合打怪。
在本章节的最后,我们讨论一下是否有必要在一款游戏中区分职业属性。
卡牌游戏应该是有这样的考虑的。但是我们没有必要那么复杂的去计算战斗平衡。目前来看,卡牌游戏中单职业平衡不存在。我们最多是可以以战斗力作为依据,计算经济方便。并且也没必要费尽心思去为每一张卡牌制作战斗力计算公式。
单职业养成就更加困惑了。我们虽然已经完美的制作了PVP的平衡。但是PVE上是不平衡的。因为单看属性,攻击是保证PVE速度的唯一标准。那么只要存在职业区分,就无法制作PVE平衡。
唯一的变通是可以让防高职业更多的使用群攻技能。或更加讲究多职业间的配合打怪。
2. 技能战斗力
2.1. 战斗力算法
最后,聊聊技能吧。技能要不要算入战斗力?
算是可以算的。我们可以根据技能CD,技能动作长度,以及普通攻击动作长度计算技能效率。然后把这个效率乘进战斗公式。或者将效率对攻击力提升的值,转换成攻击力的提升,加在战斗力中。
那么,我们是不是要考虑这个技能击中多少个目标?或者空放?或者被打断?冲锋类位移技能的价值怎么算?控制类技能的价值怎么算?最后我们只会得到一个非常不准确的值。
我的建议是技能不算入战斗力。或者,技能在属性战斗力之外,根据技能等级额外制定一套规则。并保证不同职业,对应等级的技能之间价值平衡。
最后,聊聊技能吧。技能要不要算入战斗力?
算是可以算的。我们可以根据技能CD,技能动作长度,以及普通攻击动作长度计算技能效率。然后把这个效率乘进战斗公式。或者将效率对攻击力提升的值,转换成攻击力的提升,加在战斗力中。
那么,我们是不是要考虑这个技能击中多少个目标?或者空放?或者被打断?冲锋类位移技能的价值怎么算?控制类技能的价值怎么算?最后我们只会得到一个非常不准确的值。
我的建议是技能不算入战斗力。或者,技能在属性战斗力之外,根据技能等级额外制定一套规则。并保证不同职业,对应等级的技能之间价值平衡。
2.2. 技能的作用
承上文,我们聊到要制作不同职业之间技能价值的平衡。先聊聊技能的作用。
没错,区分职业,区分玩法,丰富关卡性。回归游戏雏形可以没有技能这个东西。放眼现在的作品,技能就是战斗的玩点。利用此,给玩家带来选择性,差异性。
技能在数值策划手中,是干什么的呢?是最后一步,调平衡用的。
同样是分模块化研发,我们假定已经完成了属性计算。现在开始做技能。当我们发现某职业过强时,调整它的属性是一个非常庞大的工作量。并且会因此影响其他职业,养成平衡等等。那么,我们就来调它的技能,这样一个相对单纯的模块。
可以说,技能是我做平衡的保底。包括我们可以利用技能体系制作等级压制等效果。
罗里吧嗦说了一堆,也不敢说什么高盐阔论,只是工作中的一些心得。给大家抛砖,欢迎一起讨论。
承上文,我们聊到要制作不同职业之间技能价值的平衡。先聊聊技能的作用。
没错,区分职业,区分玩法,丰富关卡性。回归游戏雏形可以没有技能这个东西。放眼现在的作品,技能就是战斗的玩点。利用此,给玩家带来选择性,差异性。
技能在数值策划手中,是干什么的呢?是最后一步,调平衡用的。
同样是分模块化研发,我们假定已经完成了属性计算。现在开始做技能。当我们发现某职业过强时,调整它的属性是一个非常庞大的工作量。并且会因此影响其他职业,养成平衡等等。那么,我们就来调它的技能,这样一个相对单纯的模块。
可以说,技能是我做平衡的保底。包括我们可以利用技能体系制作等级压制等效果。
罗里吧嗦说了一堆,也不敢说什么高盐阔论,只是工作中的一些心得。给大家抛砖,欢迎一起讨论。