找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 142|回复: 14

修复白字或者特效伤害吃nut最终加成

[复制链接]

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
发表于 2024-10-14 12:37:03 | 显示全部楼层 |阅读模式
众所周知,白字和特效伤害会受到nut写的终伤加成,让白字又一次得到提升,导致伤害偏高很多。尤其在86版本属性白字的加入,伤害逐渐看不懂,远偏离计算。
以前想过办法解决,最终还是重新写了白字和属性白字等,不过现在有个简单一点的办法解决。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:37:55 | 显示全部楼层
if(passiveobj.getPassiveObjectIndex() == 48081)
{
local BonusRate = sq_GetCurrentAttackBonusRate(passiveobj) ;
local attackInfo = sq_GetCurrentAttackInfo(passiveobj);
local DamageRate = getCurrentModuleDamageRate(parentChr).tointeger();
local ReduceRate = 0;
if (DamageRate == 1 )
{
ReduceRate = 0;
}else{
ReduceRate = 100/DamageRate;
}
local FinalRate = BonusRate - ReduceRate;
sq_SetCurrentAttackBonusRate(attackInfo, FinalRate);
}
//这段代码写到common里的onAttack_PassiveObject 这个函数里就行了
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:38:10 | 显示全部楼层
这是有终伤100%加成的一张图和数据,很明显白字被放大了100%

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:38:40 | 显示全部楼层
这是使用算法还原后的,属性白字也是这种写法,这里就不写了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:39:19 | 显示全部楼层
谢谢了
回复

使用道具 举报

615

主题

3727

回帖

1万

积分

登峰造极

积分
13560
发表于 2024-10-14 12:39:59 | 显示全部楼层
帮顶

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

627

主题

3740

回帖

1万

积分

登峰造极

积分
13716
发表于 2024-10-14 12:40:48 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:41:20 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:41:32 | 显示全部楼层
感谢分享
回复

使用道具 举报

603

主题

3591

回帖

1万

积分

登峰造极

积分
13182
发表于 2024-10-14 12:42:29 | 显示全部楼层
大佬 6
回复

使用道具 举报

627

主题

3740

回帖

1万

积分

登峰造极

积分
13716
发表于 2024-10-14 12:43:11 | 显示全部楼层
牛逼
回复

使用道具 举报

627

主题

3740

回帖

1万

积分

登峰造极

积分
13716
发表于 2024-10-14 12:43:26 | 显示全部楼层
大佬强的一
回复

使用道具 举报

653

主题

3854

回帖

1万

积分

登峰造极

积分
14129
 楼主| 发表于 2024-10-14 12:43:53 | 显示全部楼层
//重新改进了下代码,之前写的有些情况没考虑全
if(passiveobj.getPassiveObjectIndex() == 48081)
{
local BonusRate = sq_GetCurrentAttackBonusRate(passiveobj) ;
local attackInfo = sq_GetCurrentAttackInfo(passiveobj);
local DamageRate = getCurrentModuleDamageRate(parentChr);
local ReduceRate = 0;
local FinalRate = BonusRate;
if (DamageRate == 1 )
{
FinalRate = BonusRate;
}else if(DamageRate < 1 ){
ReduceRate = (100/DamageRate).tointeger();
FinalRate = ReduceRate - 100;
}else if(DamageRate > 1 ){
ReduceRate = (100/DamageRate).tointeger();
FinalRate = BonusRate - ReduceRate;
}
sq_SetCurrentAttackBonusRate(attackInfo, FinalRate);
}
回复

使用道具 举报

603

主题

3591

回帖

1万

积分

登峰造极

积分
13182
发表于 2024-10-14 12:44:50 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

627

主题

3740

回帖

1万

积分

登峰造极

积分
13716
发表于 2024-10-14 12:44:56 | 显示全部楼层
有视频教学写哪里吗?
回复

使用道具 举报

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

本版积分规则

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