查看原文
其他

数值策划:教你将战斗力数字化

2016-08-25 左左 Gad-腾讯游戏开发者平台

1.  战斗力的作用


本文意在和大家聊聊战斗力的计算以及在实际工作中的应用。

战斗力,顾名思义,评判战斗能力的分值。


玩家面对战斗力会有两个理解:


1根据战斗力预判这场战斗的胜负。不考虑操作等其他因素的影响,战斗力高者胜利。
2通过养成提升的战斗力,评判系统价值。调平经济时,保证玩家投入和收益正比。


所以,只要保证相同战力不同职业互搏平衡。以及不同职业获得相同战力的养成代价相同,我们认为这一套战斗力的计算是无误的。


针对不同的游戏,不同的团队,计算战斗力会有不同的方法。这没有一定之规。本篇文章,也不过是将我之前工作时的一些小技巧分享给大家。


我习惯分模块地计算。并赋予不同模块不同的数值使命。就战斗力来讲,我会从以下两个方面展开,和大家一起探讨:



1属性带来的战斗力:制作职业间的平衡;


2技能带来的战斗力:区分职业间的不同。


2.  属性的战斗力

2.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.     战斗力计算方法显而易见,下文做简单推导。






我们可以把暴击等属性也乘在公式里,这个战斗力是实实在在的。


b)     缺点:


减伤公式=护甲/(护甲+A)。其中A为成长曲线。成长曲线中,往往只会添加等级参数。不会把所有系统的标准值全部计算在内。在目前市场形势下,各种养成系统太多,数值膨胀较快,容易冲击成长曲线。系统扩展较难。


4

比例:目前有一些更加简单粗暴的方式——直接使用一个比例。例如:物理减伤10%。








a)     优点:简单粗暴。可极端的体现职业间差异。







b)     缺点:







i.       这个比例无法理性算入战斗力。








ii.      无法正常成长。

55、无甲:没有护甲这个属性。或者护甲全部为0,并且不显示。



护甲存在的意义是什么?不是单纯让玩家体验到有更多的花样。或者有职业间区分。如果你要做这个,不如把精力放在做技能和关卡上。

护甲实际上是让数值策划在另一个维度掌控游戏节奏。例如我们之前聊的不破防,例如可延长有效生命等。

但零护甲本身没有问题。很好算,玩家也不会因为没有护甲跟你较真。

以上几种减伤方式 ,笔者在实际工作中都遇到过。各有优劣。看项目,看团队,看我们对数值的把控能力。

目前除法公式比较流行,我们下文就拿它作为例子,继续探讨战斗力。


1.1.1.  职业平衡


我习惯从PVP入手计算战斗。制作标准人,制作职业平衡。

我们先预设标准人是一个均衡类职业。并且符合标准战斗时间5     0秒。减       伤公式为:



20个成长阶段。即在这个阶段,通过等         级、强           化、装备等等一系列养成后的属性。表格如下:


  

我们设定生命,攻击,防御在战斗力中的占比相同。因为他们       同为一级    属性。那么:


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生命。


2.2.3.  第三个职业


同理,我们可以加入第三个,第四个职业。但实际操作中,我们会发现,拍脑门定一个第三职业攻防血,并按着相同规律成长,导致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战斗力相等的条件下,达到理论平       衡。


2.3.二级属性


我们常定义:命中、暴击、闪避等为二级属性。这些属性一般是以一个乘值的方式计算在公式中。所有二级属性皆通一理,下文只拿命中举例。


命中率判定,如果未命中,则造成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

根据不同职业的命中等级换算命中等级战斗力公式。

方法大同小异,就不做表了。


2.4.战斗力是加值


2.4.1.  加值的好处与问题


战斗力为什么是加值?即:




先说好处:非常容易理解。毕竟战斗力是给玩家参考的数值。越容易理解,玩家越容易接受。


例如:某个装备提供了各种属性。我们可以根据上文公式计算出这个件装备的战斗力。当我佩戴这件装备时,我的总战斗力提高的值等于装备战斗力。相反,其它公式会导致误差,增加玩家的理解成本。


说说问题:这个公式成立的条件是,战斗节奏不变的前提下。如果战斗节奏发生变化,这个公式将会崩溃。例如:A玩家将100的战斗力,全部投放在生命。B玩家将100的战斗力,全部投放在攻击。两个玩家收益是不等价的。


但是,我并不担心这个问题。就目前市场情况看,养成系统多而广。我们只需要准确的做属性投放,就可以完美规避这个问题。


所以,最后我还是选择了这个公式,并且把它推荐给大家。


2.4.2.  WOW的战斗力


WOW没有战斗力。但是它计算战斗能力的方式反而是最准确的。我们还是简单推导一下:




他的诸多能力值都可以准确的反馈在公式中。推导过程上文已经聊过了,请见2.2.1简单聊聊防御相关内容。


但是它有一个致命缺点,战斗力反馈在UI上不好理解。因为需要综合角色全身属性才能得到真实战斗力,而单件装备上仅有的战斗力无法计算。这样在目前市场上,玩家需要利用战斗力评判装备好坏的作用就荡然无存了。


既然战斗力变的无效,那么何必还要计算。所以不推荐这样的算法。虽然我不得不承认它很精确。


2.5.多职业困惑

放弃谁都可以,千万不要放弃自己!


在本章节的最后,我们讨论一下是否有必要在一款游戏中区分职业属性。


卡牌游戏应该是有这样的考虑的。但是我们没有必要那么复杂的去计算战斗平衡。目前来看,卡牌游戏中单职业平衡不存在。我们最多是可以以战斗力作为依据,计算经济方便。并且也没必要费尽心思去为每一张卡牌制作战斗力计算公式。


单职业养成就更加困惑了。我们虽然已经完美的制作了PVP的平衡。但是PVE上是不平衡的。因为单看属性,攻击是保证PVE速度的唯一标准。那么只要存在职业区分,就无法制作PVE平衡。


唯一的变通是可以让防高职业更多的使用群攻技能。或更加讲究多职业间的配合打怪。


3.  技能战斗力

3.1.战斗力算法


最后,聊聊技能吧。技能要不要算入战斗力?


算是可以算的。我们可以根据技能CD,技能动作长度,以及普通攻击动作长度计算技能效率。然后把这个效率乘进战斗公式。或者将效率对攻击力提升的值,转换成攻击力的提升,加在战斗力中。


那么,我们是不是要考虑这个技能击中多少个目标?或者空放?或者被打断?冲锋类位移技能的价值怎么算?控制类技能的价值怎么算?最后我们只会得到一个非常不准确的值。


我的建议是技能不算入战斗力。或者,技能在属性战斗力之外,根据技能等级额外制定一套规则。并保证不同职业,对应等级的技能之间价值平衡。




3.2.技能的作用

承上文,我们聊到要制作不同职业之间技能价值的平衡。先聊聊技能的作用。

没错,区分职业,区分玩法,丰富关卡性。回归游戏雏形可以没有技能这个东西。放眼现在的作品,技能就是战斗的玩点。利用此,给玩家带来选择性,差异性。

技能在数值策划手中,是干什么的呢?是最后一步,调平衡用的。

同样是分模块化研发,我们假定已经完成了属性计算。现在开始做技能。当我们发现某职业过强时,调整它的属性是一个非常庞大的工作量。并且会因此影响其他职业,养成平衡等等。那么,我们就来调它的技能,这样一个相对单纯的模块。

可以说,技能是我做平衡的保底。包括我们可以利用技能体系制作等级压制等效果。

罗里吧嗦说了一堆,也不敢说什么高盐阔论,只是工作中的一些心得。给大家抛砖,欢迎一起讨论。

近期热文

网易为什么要将《魔兽世界》改为月卡制?

从杨永信谈开:我眼中的“网瘾”



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存