Project1

标题: 你们都喜欢把伤害公式写成什么呢? [打印本页]

作者: 百万HP    时间: 2020-5-17 19:34
标题: 你们都喜欢把伤害公式写成什么呢?
像我就喜欢以a.atk*2-b.def作为1威力,普攻为2威力,所有技能伤害都以威力值计算,你们又怎么写的呢?
作者: 472453497    时间: 2020-5-18 07:32
你这样子写的话,当目标的防御是攻击方的2倍以上的时候,伤害为 0,很不喜欢 0 伤害
作者: lgw362502    时间: 2020-5-19 17:35
Math.max(50, Math.max(0, a.atk * 4 - b.def * 2)+Math.max(0, a.mat * 4 - b.mdf * 2))    分享下我的哈哈
作者: 2542367783    时间: 2020-5-19 23:34
472453497 发表于 2020-5-18 07:32
你这样子写的话,当目标的防御是攻击方的2倍以上的时候,伤害为 0,很不喜欢 0 伤害 ...

有时候也没办法,默认的系统没办法计算括号里的公式,这样只能弄最基本的加减乘除了。
作者: 472453497    时间: 2020-5-21 08:52
我用的是     【(a.atk * a.atk)/(a.atk + b.def)】* 系数

不同的技能威力,直接改系数就行了。

当 输出方攻击 = 目标防御, 【】的值是 输出方攻击值的一半。
当 目标防御 =  输出方攻击的2倍, 【】的值是 输出方攻击值的三分之一。
当 目标防御 =  输出方攻击的5倍, 【】的值是 输出方攻击值的六分之一。
当 目标防御 =  0, 【】的值是 输出方攻击值。

这个公式,伤害很难打出0伤害了!
作者: 永恒の未知数    时间: 2020-5-21 09:42
物理
a.atk*2*n-b.def
n为技能倍率,普通攻击为1,低威力为1.5,中威力2.25,以此类推
魔法
(a.mat+n)*(a.mat+n)/b.mat
n为技能基础威力,火球为10,烈火燎原为100,以此类推
作者: SailCat    时间: 2020-5-21 10:17
DQ风格的公式:a.atk * 2 - b.def
解释:也是RM沿袭至今的默认伤害公式

FF风格的公式:Math.max((a.atk - b.def) * 4, 1)
解释:最大的特色是防御力不折半,所以数值平衡做不好看着天天打1吧

HOMM风格的公式:a.atk * (a.atk > b.def ? 1 + 0.05 * (a.atk - b.def) : 1 / (1 + 0.05 * (b.def - a.atk)))
解释:攻击每比对手防御高1则伤害+5%,反之伤害 -5%

暴雪风格的公式:n * (1000 + a.atk) / 1000 * (1000 - b.def) / 1000
解释:攻击和防御不直接决定伤害,而是决定伤害的放大比率和减伤比率,由于a.atk和b.def均是在1-999范围取值,所以设置了1000的基准,基础伤害由指定值n决定

RM从VA起 ,默认系统就不再像前代的03、XP、VX那样提供用于伤害能力放大的个人参数指标(str、dex……)了,但是因为允许自己写公式,你仍然可以把这些atk, def这些当成原先的str, dex之类来用。MV除开HP和MP之外有6项指标,要实现初代RM中倍率性放大的参数公式并不难。


作者: zwlele1980    时间: 2020-7-27 11:51
lgw362502 发表于 2020-5-19 17:35
Math.max(50, Math.max(0, a.atk * 4 - b.def * 2)+Math.max(0, a.mat * 4 - b.mdf * 2))    分享下我的哈 ...

如果要设置  根据 所装备的武器类型 改变 伤害这么弄 比如 战士 戴了 战士的武器 技能伤害有加成。
谢谢了。 不知道武器类型的函数也不知道怎么写啊。 学历低了 英文不懂 又找不到相关的资料和教程。
作者: zsc529441040    时间: 2020-7-27 13:11
对于数值比重比较大的游戏,用 攻-防=损 的公式,在做数值平衡的时候属于强行给自己增加难度。。。通常我们会在数值成长中使用线性成长,即 攻击力=初始攻击力+每级提高的攻击力*等级(a = a0 +  da * l),当攻击力和防御力同时线性增长时,a - d = (a0 - d0) + l * (da - dd) ,然而问题就在于对于一个肉一点角色,一旦dd>怪物基准da,这个角色瞬间就会变得无敌。而为了避免这种情况,一旦提高怪物的da,那么怪物攻击其他不肉的角色,就会变成秒杀。这套公式下几乎每个怪的数值,以及装备的数值都要费很大精力调试而不能直接使用公式模拟。。。所以不推荐
作者: 世界第一中二    时间: 2020-7-27 13:39
用减法公式和比防公式咯
作者: qq135316    时间: 2020-7-28 06:03
A.ATK * X * ( 1 - B.DEF / ( B.DEF + 6002 ))
作者: yaoguang13    时间: 2020-7-28 10:12
用的YEP比例护甲插件




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1