hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 246|回复: 4

【数值框架】战斗公式:伤害公式分类

[复制链接]

573

主题

585

帖子

1858

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1858
发表于 2023-9-25 12:48:14 | 显示全部楼层 |阅读模式
网上关于伤害公式的文章数不胜数,说法也是众说纷纭,一直没有找到一个通俗易懂的科普贴, 自学之路漫长且曲折,回看当初做了很多无用功,写这篇文章也是为了让新人节省一些宝贵的时间。

战斗公式需要讲解的东西太多了,用一篇文章说有点长,所以进行了内容拆分,这一章只讲一件事:伤害公式到底有哪些类型。


伤害公式分类


1.两个基础认知:

    伤害公式的种类非常之多,以至于不可能完全罗列,所以绝不止市面上常说的【减法公式】和【乘/除法公式】这两类。几乎所有中、大型项目都会同时使用多种伤害公式,以保证游戏策略的丰富性。
【举例1】伤害=当前血量[敌]×n%

【举例2】伤害=最大血量[己]×n%

【举例3】伤害=(攻击[己]-防御[敌])×当前血量[己]/最大血量[敌]×n%


为了方便理解,我将伤害公式分为了【特殊类】和【基础类】两大类别:

    特殊类:就像是方言,虽然使用的范围小,但是十分具有地方特色。基础类:就像是普通话,使用范围广,具有普遍认知度。

2. 特殊类伤害公式:

    这类伤害公式,主要用于技能伤害,制造英雄/职业个性化差异,丰富玩法策略。上面举的3个例子都是特殊类伤害公式

3. 基础类伤害公式:

ps:下文进攻方简化为[攻],防守方简化为[守]

    游戏底层公式,用于大多数情况的伤害结算。基础类分为减法和乘法两大类型,其他的全部为衍生类型:
【减法公式】伤害=攻击[攻]-防御[守]

【乘法公式】伤害=攻击[攻]×(1-免伤[守])  

                           =攻击[攻]×(1-防御[守]/(防御[守]+n))

PS:这里的免伤指的是防御来带的免伤,其他免伤类型和防御免伤不在同一个层级,最后会说。


4  减法衍生公式:

    减法衍生公式较为简单,就是对伤害进行一个倍率修正,就不过多阐述了。

5  乘法衍生公式:

    我上面说基础类伤害公式只有减法、乘法两大类,却偏偏没有说除法,这是为什么?因为除法本质上也是乘法公式!乘法公式中的免伤=防御[守]/(防御[守]+n),这是免伤的基础公式,其中n为修正系数,n的修正方式决定了不同的衍生公式!下面做几个实例讲解:

【英雄联盟】

    n=100,当n为常量时仅仅是对防御数量级的修正,防御数量级一般在n的0%~400%之间,负值处理可以参考dota免伤=防御/(防御+100)展示公式:伤害=攻击[攻]×(1-护甲[守]/(护甲[守]+100))

【魔兽世界】

    n=400+85×等级[攻],额外增加了攻方的等级修正,当攻方等级提升时,防守方需要增加防御值以维持当前免伤,但防御的投放受限于等级。免伤=护甲[守]/(护甲[守]+400+85×等级[攻])展示公式:伤害=攻击[攻]×(1-护甲[守]/(护甲[守]+400+85×等级[攻]))

【苍之纪元】 (又称之为除法公式)

    n=攻击[攻],额外增加了攻方的攻击修正,防御属性的投放不再依赖于等级,可以伴随攻击的投放而投放。免伤=防御[敌]/(防御[敌]+攻击[攻])展示公式:伤害=攻击[攻]×(1-防御[敌]/(防御[敌]+攻击[攻]))
                            =攻击[攻]^2/(防御[敌]+攻击[攻])


【其他】

    n=攻击强度[攻],解决了除法公式攻击收益过高的问题,防御的投放伴随攻击强度的投放n=战力[攻],加入战力压制,解决了战力不准的问题。。。有点硬核,哈哈哈

6  属性补充

上面的公式属于公式的基础部分,只有血量、攻击、防御3个属性,如果要增加更多属性类型,应该增加到哪个层级呢?

举一个完整公式的例子:

设:基础伤害=攻击[攻]-防御[守]

最终伤害=((基础伤害+神圣攻击[攻]-神圣防御[守])×技能倍率[攻]+技能附加伤害[攻])×(1+伤害加成[攻]-伤害减免[守])×种族修正×兵种修正×元素修正


总结:

    攻击类的拓展属性尽量和基础伤害放在一个括号内,如:神圣攻击伤害加成类的拓展属性尽量放在不同括号内,如:伤害加成、各种修正其实就这么简单

伤害公式的分类讲完了,下一讲会讲一下减法公式的优劣,以及使用细节。
回复

使用道具 举报

8

主题

204

帖子

44

积分

新手上路

Rank: 1

积分
44
发表于 2023-9-25 12:48:54 | 显示全部楼层
点赞,好久没回来论坛了。
回复

使用道具 举报

0

主题

190

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-9-25 12:49:47 | 显示全部楼层
写的很好 感谢分享
回复

使用道具 举报

0

主题

193

帖子

166

积分

关内侯

Rank: 2

积分
166
发表于 2023-9-25 12:50:09 | 显示全部楼层
楼主什么时候回来啊
回复

使用道具 举报

0

主题

171

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-9-25 12:50:51 | 显示全部楼层
看了这么多伤害公式的帖子 只有你是讲明白了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-5-4 07:05 , Processed in 0.060027 second(s), 21 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表