Skip to content

Conversation

@WayneFerdon
Copy link
Contributor

@WayneFerdon WayneFerdon commented Aug 21, 2025

  1. 增加初始闲置竞技场配置非空检测
  2. 修正其他技能的OC判断及选择范围判断,修正条件判断中iscd的值与Readme中示例不相符的问题 (修复技能可释放判断及其他技能技能排序无效问题 #154 未进行冲突处理直接覆盖了,因此按照其中实际有效的内容重新修改了)

@Qiyue0515
Copy link

最近转法发现一个问题:
// 先处理特殊的 “先给全体上buff”
let skillPack = ['We', 'Im'];
这里改成先上weaken再上Imperil会比较好,这样血线的压力会小一点

@WayneFerdon
Copy link
Contributor Author

最近转法发现一个问题: // 先处理特殊的 “先给全体上buff” let skillPack = ['We', 'Im']; 这里改成先上weaken再上Imperil会比较好,这样血线的压力会小一点

@Qiyue0515 现在这个应该就是先we再im的啊

@DreamSeeker08
Copy link

最近转法发现一个问题: // 先处理特殊的 “先给全体上buff” let skillPack = ['We', 'Im']; 这里改成先上weaken再上Imperil会比较好,这样血线的压力会小一点

你好,能分享一个法系的设置给我导入吗?
我不太会弄,更新到最新的v2.90.22.20还是不会释放陷危、虚弱等debuf

@Kotone-Hikaru
Copy link

法师好像不能正确的释放im 只会释放weaken 在给每个怪都上完weaken之后就卡在这里了

@WayneFerdon
Copy link
Contributor Author

@DreamSeeker08 @SakuyaSaki 之前的debuff逻辑有条件判断时可能会有点问题,分支新上传了一版(2.90.22.22),可以测试看下还有没有问题

@WayneFerdon
Copy link
Contributor Author

@JKU533

  • 我这里测试了一下,貌似按照图上的配置时,是能实现上述效果的,不确定是什么原因
  • 2.90.125+修正和调整了条件相关的判断,如果没有更新的话可以更新试下
  • 至于其他问题,我这边也没能 复现
  • 事实上上述条件的配置就相当于“带条件的互斥”了,因此debuff互斥应该是不需要再加一个条件的(之前抽出来只是为了简化,不用每个互斥的都配置一大堆条件)

@JKU533
Copy link

JKU533 commented Jan 6, 2026

@WayneFerdon
看来是纯碎全体debuff的_targetBuffTurn,5,0的条件都没生效,turn条件是正常生效的
_targetBuffTurn_silence,5,0
_targetBuffTurn_weaken,5,0
虚弱跟沉默分别填写这一条件也不会触发互斥效果 如果都改成6的话能正常两个debuff都不会放

T2触发条件填写_targetBuffTurn_sleep,6,0没沉眠debuff是正常不会触发的 有沉眠debuff正常触发

用的就是最新的版本...排查不出什么原因...试了下12月左右的旧版全体debuff的targetBuffTurn,5,0条件也不会生效
最新版自动暂停roundType,5,"ba" roundType,5,"ar"条件也失效了....去掉双引号的话能正常暂停

@WayneFerdon
Copy link
Contributor Author

@WayneFerdon 看来是纯碎全体debuff的_targetBuffTurn,5,0的条件都没生效,turn条件是正常生效的 _targetBuffTurn_silence,5,0 _targetBuffTurn_weaken,5,0 虚弱跟沉默分别填写这一条件也不会触发互斥效果 如果都改成6的话能正常两个debuff都不会放

T2触发条件填写_targetBuffTurn_sleep,6,0没沉眠debuff是正常不会触发的 有沉眠debuff正常触发

用的就是最新的版本...排查不出什么原因...试了下12月左右的旧版全体debuff的targetBuffTurn,5,0条件也不会生效 最新版自动暂停roundType,5,"ba" roundType,5,"ar"条件也失效了....去掉双引号的话能正常暂停

看着像是和这个类似(但2.90.125+应该已经修复) #178 (comment)

或者试下用新版本(更新一下2.90.132,之前的公式兼容性有点问题)的条件的格式配置一下,看下能不能生效:
例如turn <= 10 && !_targetBuffTurn_silence && !_targetBuffTurn_weaken

@JKU533
Copy link

JKU533 commented Jan 6, 2026

剪贴板_26-01-06_01

不行...也试过重新进入新的ar也没生效

尝试虚弱填写排斥沉默条件
_targetBuffTurn_silence,2,1 _targetBuffTurn_silence,4,0两条也没效果
_targetBuffTurn_silence,2,0 会让虚弱不释放... 搞不懂

@WayneFerdon
Copy link
Contributor Author

WayneFerdon commented Jan 6, 2026

剪贴板_26-01-06_01

@JKU533
这个写法是只要sleep或silence有一个没有就会放虚弱;sleep或weaken有一个没有就会放沉默,1.2.3.4.之间是或的关系

@WayneFerdon
Copy link
Contributor Author

我打log看了下判断的结果,下面这条的结果是符合预期的,实际执行的操作也是

或者试下用新版本(更新一下2.90.132,之前的公式兼容性有点问题)的条件的格式配置一下,看下能不能生效: 例如turn <= 10 && !_targetBuffTurn_silence && !_targetBuffTurn_weaken

@JKU533
Copy link

JKU533 commented Jan 6, 2026

我打log看了下判断的结果,下面这条的结果是符合预期的,实际执行的操作也是

或者试下用新版本(更新一下2.90.132,之前的公式兼容性有点问题)的条件的格式配置一下,看下能不能生效: 例如turn <= 10 && !_targetBuffTurn_silence && !_targetBuffTurn_weaken

已经试过了 还是一样的结果 3个全体debuff开局全上在前三个怪上
换了个浏览器稳定复刻同样的结果...
折叠个配置

折叠导出配置 ``` {"version":"2.90","lang":"0","channelSkillSwitch":true,"buffSkillSwitch":true,"debuffSkillSwitch":true,"skillSwitch":true,"dropMonitor":true,"isekaiTime":0,"riddleAnswerTime":3,"riddleAnswerChoose":0,"pauseButton":true,"pauseHotkeyCode":0,"stepInButton":true,"stepInHotkeyCode":0,"altHotkeyCode":0,"alert":true,"notification":true,"delay":0,"delay2":0,"attackStatus":0,"turnOnSS":true,"turnOnSSCondition":{"0":["oc,1,249"]},"turnOffSSCondition":{"0":["oc,2,120"],"1":["_isCd_1111,5,0","oc,2,180"]},"autoPause":true,"pauseCondition":{"0":["roundType,5,ba"],"1":["sp,4,50","_buffTurn_sparklife,5,0"]},"NewRoundWaitTime":0,"ExitBattleWaitTime":3,"battleUnresponsiveTime":{"Alert":20,"Reload":20,"Alt":0},"encounterDisplay":true,"encounterWaitCD":0,"idleArenaTime":0,"idleArenaLevels":"1,10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,165,180,200,225,250,300","idleArenaValue":"1,3,5,8,9,11,12,13,15,16,17,19,20,21,23,24,26,27,28,29,32,33","arLevel":{"1":true,"10":true,"20":true,"30":true,"40":true,"50":true,"60":true,"70":true,"80":true,"90":true,"100":true,"110":true,"120":true,"130":true,"140":true,"150":true,"165":true,"180":true,"200":true,"225":true,"250":true,"300":true},"idleArenaGrTime":1,"staminaEncounter":10,"staminaLow":30,"staminaGrindFest":100,"staminaLowWithReNat":0,"repairValue":0,"repairValueGF":0,"equStorageValue":2000,"checkItem":{"11191":0,"11195":0,"11199":0,"11291":0,"11295":0,"11299":0,"11391":0,"11395":0,"11399":0,"11401":0,"11402":0,"11501":0,"12101":0,"12201":0,"12301":0,"12401":0,"12501":0,"12601":0,"13101":0,"13111":0,"13199":0,"13201":0,"13211":0,"13221":0,"13299":0,"19111":0,"19131":0},"checkItemGF":{"11191":0,"11195":0,"11199":0,"11291":0,"11295":0,"11299":0,"11391":0,"11395":0,"11399":0,"11401":0,"11402":0,"11501":0,"12101":0,"12201":0,"12301":0,"12401":0,"12501":0,"12601":0,"13101":0,"13111":0,"13199":0,"13201":0,"13211":0,"13221":0,"13299":0,"19111":0,"19131":0},"itemOrderName":"HG,Cure,HP,FC,HE,MG,MP,ME,SG,SP,SE,Mystic","itemOrderValue":"10005,311,11195,313,11199,10006,11295,11299,10007,11395,11399,10008","itemOrder":{"FC":true,"HE":true,"HG":true,"HP":true,"Cure":true,"MG":true,"MP":true,"ME":true,"SG":true,"SP":true,"SE":true,"Mystic":true},"item":{"FC":true,"HG":true,"HP":true,"Cure":true,"MG":true,"MP":true,"ME":true,"SG":true,"SP":true,"Mystic":true},"itemFCCondition":{"0":["hp,4,45"]},"itemHPCondition":{"0":["hp,4,50"]},"itemCureCondition":{"0":["hp,4,65"]},"itemMPCondition":{"0":["mp,4,48"]},"itemMECondition":{"0":["mp,4,20"]},"itemSPCondition":{"0":["sp,4,59"]},"itemSECondition":{"0":["sp,2,45"]},"channelThreshold":{"Pr":0,"SL":0,"SS":0,"Ha":0,"AF":0,"He":600,"Re":300,"SV":0,"Ab":0},"channelSkill":{"Re":true,"He":true},"channelSkill2":true,"channelSkill2OrderName":"He,Re,FC,Cu","channelSkill2OrderValue":"431,312,313,311","channelSkill2Order":{"FC":true,"Cu":true,"Re":true,"He":true},"channelRebuff":true,"buffSkillOrderValue":"He,Re","buffSkillOrder":{"Re":true,"He":true},"buffSkill":{"HD":true,"MD":true,"SD":true,"He":true},"buffSkillThreshold":{"HD":0,"MD":0,"SD":0,"FV":0,"BG":0,"Pr":0,"SL":0,"SS":0,"Ha":0,"AF":0,"He":0,"Re":0,"SV":0,"Ab":0},"buffSkillHDCondition":{"0":["hp,2,70"]},"buffSkillMDCondition":{"0":["mp,2,75"]},"buffSkillSDCondition":{"0":["sp,2,85"]},"buffSkillSLCondition":{"0":["hp,2,35"]},"buffSkillSSCondition":{"0":["hp,2,60"]},"buffSkillHeCondition":{"0":["mp,1,40"]},"debuffSkillTurn":{"Sle":0,"Bl":0,"We":0,"Si":0,"Slo":0,"Im":0,"Co":0,"Dr":0,"MN":0},"debuffSkillOrderAllValue":"Sle,Si,We","debuffSkillOrderAll":{"Sle":true,"We":true,"Si":true},"debuffSkillOrderValue":"Im","debuffSkillOrder":{"Im":true},"debuffSkillSleAll":true,"debuffSkillSleAllByIndex":true,"debuffSkillSleAllCondition":{"0":["_targetBuffTurn_weaken,5,0","_targetBuffTurn_silence,5,0","turn,4,10"],"1":["turn,1,10","_targetBuffTurn_imperil,6,0"]},"debuffSkillWeAll":true,"debuffSkillWeAllByIndex":true,"debuffSkillWeAllCondition":{"0":["_targetBuffTurn_sleep,5,0","_targetBuffTurn_silence,5,0","turn,4,10"],"1":["turn,1,10","_targetBuffTurn_sleep,5,0"]},"debuffSkillSiAll":true,"debuffSkillSiAllByIndex":true,"debuffSkillSiAllCondition":{"0":["_targetBuffTurn_sleep,5,0","_targetBuffTurn_weaken,5,0","turn,4,10"],"1":["turn,1,10","_targetBuffTurn_sleep,5,0"]},"debuffSkillThreshold":{"Sle":2,"Bl":0,"We":2,"Si":2,"Slo":0,"Dr":0,"Im":0,"MN":0,"Co":0},"debuffSkillDrCondition":{"0":["monsterAlive,5,1","bossAlive,5,1"]},"debuffSkill":{"Im":true},"skillOrderValue":"T2","skillOrder":{"T2":true},"skillOFCCondition":{"0":["bossAll,3,1","monsterAlive,3,3"],"1":["monsterAlive,3,5"]},"skillT3Condition":{"0":["_targetBuffTurn_bleed,6,0","targetHp,2.0.25"]},"skill":{"T2":true},"skillT2Condition":{"0":["_targetBuffTurn_stun,6,0","_targetBuffTurn_imp,6,0"]},"scrollRoundType":{"rb":true},"scroll":{"Av":true,"Go":true},"scrollAvCondition":{"0":["turn,5, 2"]},"scrollGoCondition":{"0":["turn,5, 1"]},"baseHpRatio":1,"unreachableWeight":1000,"weight":{"We":-4,"Bl":3,"Slo":3,"Si":-4,"Sle":5,"Im":-5,"PA":-4,"BW":-4,"Co":-1,"Dr":-4,"MN":-4,"Stun":-4,"CM":-5,"BS":0,"RS":0,"SS":-14,"FL":-14,"TA":-14,"DB":-19,"BD":-19,"BA":-14,"SS1":5,"FL1":5,"TA1":5,"DB1":-4,"BD1":-4,"BA1":5,"Fos":0,"Lof":0,"SoP":0,"WoP":0,"AW":0},"centralExtraRatio":0,"YggdrasilExtraWeight":-1000,"dropQuality":"0","record":{"turn":true},"roundNow":"1","roundAll":"1","battleUnresponsive":{}}

@WayneFerdon
Copy link
Contributor Author

WayneFerdon commented Jan 6, 2026

我打log看了下判断的结果,下面这条的结果是符合预期的,实际执行的操作也是

或者试下用新版本(更新一下2.90.132,之前的公式兼容性有点问题)的条件的格式配置一下,看下能不能生效: 例如turn <= 10 && !_targetBuffTurn_silence && !_targetBuffTurn_weaken

已经试过了 还是一样的结果 3个全体debuff开局全上在前三个怪上 换了个浏览器稳定复刻同样的结果... 折叠个配置

折叠导出配置

@JKU533
我直接导入这个配置,效果也是正常的(能互斥,包括输出具体条件判断的结果、选择到的目标也是符合预期的
还是不能确定是什么原因引起的 :(
有没有试过只装这个脚本,不装其他脚本,不确定是否会因为冲突导致这个问题

@JKU533
Copy link

JKU533 commented Jan 6, 2026

剪贴板_26-01-07_02
姑且这样改这3处能正常工作了 然而会重叠...实际原因也不是搞得很懂
估摸没冲突影响...都关了试过了

@WayneFerdon
Copy link
Contributor Author

WayneFerdon commented Jan 7, 2026

剪贴板_26-01-07_02 姑且这样改这3处能正常工作了

@JKU533

前两处改动在没配置互斥的时候没有影响

  • 第一处改了就相当于跳过了检查(互斥数组恒定为空),本身应该是不用改的
  • 第二处本来是为了覆盖收益最大化的
    • 让有互斥debuff的目标权重比空放/死亡目标低(系数从1变为0.9)
    • 从而在无互斥debuff目标数相同时,使范围优先包含存活目标而非空放和死亡目标

第三处改动:看起来之前的貌似会将全部全体debuff都判定为真了,因为大小写问题会导致获取到条件为undefined(空条件判断为真)。2.90.132 把修复合并进去了,但是我之前测试能生效反而是不符合预期的了(也很怪,主要是log也能输出看到条件判断的结果,说明我这边实际流程上又没跳过)。但是反正改完后效果也是正常的,日志输出也没问题,负负得正负量子叠加态了属于是(

然而会重叠...实际原因也不是搞得很懂 估摸没冲突影响...都关了试过了

重叠大概是选择中心目标选到了靠前的,例如这张图里的可能是:

  1. 睡眠在123放
  2. 然后沉默到了4发现没debuff
  3. 选择目标正常应该是选5覆盖456,但是实际却选到了4,在345放了(其中5被抵抗了)
  4. 然后虚弱也是到了5,应该选6覆盖567,但是实际却选到了5,在456放了
  5. 因此4、5会有重叠

这是因为选择debuff范围中心时,是直接按照isDebuffed来判断的,没有判断Condition,而互斥debuff功能的判断是直接在isDebuffed里的,所以写条件实现互斥会重叠但直接用互斥不会(例如第3步只能判断到345都没有沉默,而没有判断配置的条件)
2.90.133 改为:获取debuff范围中心时,同时将debuff条件作为目标不可命中的条件(且使用和互斥debuff同样的权重系数0.9)

这下应该就正常了(

@JKU533
Copy link

JKU533 commented Jan 7, 2026

这下应该就正常了(

@WayneFerdon
条件执行正常了

目标是除了单手攻击中的目标外全上沉眠

_targetBuffTurn_imperil,5,0
沉眠这个除imp外都沉眠的条件有什么更好的办法吗,毕竟imp有可能上了好几个

(双手的话好像攻击范围刚好是imp范围 所以用这个条件刚好)

@WayneFerdon
Copy link
Contributor Author

@JKU533

_targetBuffTurn_imperil,5,0 沉眠这个除imp外都沉眠的条件有什么更好的办法吗,毕竟imp有可能上了好几个
(双手的话好像攻击范围刚好是imp范围 所以用这个条件刚好)

2.90.134 增加条件变量 _targetRank(目标优先级:0~9,越小越靠前,同攻击规则的顺序)

@JKU533
Copy link

JKU533 commented Jan 8, 2026

起初用沉眠的_targetRank != 0 没怎么在意
只剩一个目标的时候的确不会释放沉眠
然而剩下多个目标的时候会照样释放在攻击中的目标中(我还以为是旁边的怪被释放顺便被沉眠 直到看到是隔了几格的攻击目标被放了沉眠才发现)
使用_targetRank == 1 沉眠不会释放,按理说这是使用目标优先级的顺序...指定目标1应该有效才对?

2.90.133 改为:获取debuff范围中心时,同时将debuff条件作为目标不可命中的条件(且使用和互斥debuff同样的权重系数0.9)

这个我没起效..开局全命中的情况下
123 沉眠 345 沉默 567虚弱

@WayneFerdon
Copy link
Contributor Author

@JKU533

起初用沉眠的_targetRank != 0 没怎么在意 只剩一个目标的时候的确不会释放沉眠 然而剩下多个目标的时候会照样释放在攻击中的目标中(我还以为是旁边的怪被释放顺便被沉眠 直到看到是隔了几格的攻击目标被放了沉眠才发现) 使用_targetRank == 1 沉眠不会释放,按理说这是使用目标优先级的顺序...指定目标1应该有效才对?

应该是targetRank查找order(UI中的排序)时的问题

  • 之前是直接在记录里找对应的object然后返回在记录中的序号
  • 但好像是记录的monsterStatus或目标的object中途被更改过,导致可能会找不到(导致返回值变成-1了)。
  • 2.90.135已经修正为对照实际对象的order去查找,应该正常了

2.90.133 改为:获取debuff范围中心时,同时将debuff条件作为目标不可命中的条件(且使用和互斥debuff同样的权重系数0.9)

这个我没起效..开局全命中的情况下 123 沉眠 345 沉默 567虚弱

2.90.136修复了目标选择和条件判断的一些bug,应该和这些有关(我还没进行精确地测试)

@JKU533
Copy link

JKU533 commented Jan 8, 2026

表世界测试

2.90.135已经修正为对照实际对象的order去查找,应该正常了

这个还是有问题 便于测试 我沉眠只填_targetRank == 3 3的目标不会被立即释放...过了好几个回合不知道放在哪个目标身上
_targetRank != 0 的情况下 全体释放顺序Sle,Si,We 也不会立即释放沉眠

2.90.136修复了目标选择和条件判断的一些bug,应该和这些有关(我还没进行精确地测试)

这个怪少不知道选取的释放目标对不对,好像还是会重叠...
怪多的情况下看上去是不会重叠了 测试量也不多就是了

会有一直放imp的bug(好像是imp放不到攻击目标身上) imp我是单体释放并且没设置条件跟阈值的

@WayneFerdon
Copy link
Contributor Author

WayneFerdon commented Jan 8, 2026

@JKU533

这个还是有问题 便于测试 我沉眠只填_targetRank == 3 3的目标不会被立即释放...过了好几个回合不知道放在哪个目标身上 _targetRank != 0 的情况下 全体释放顺序Sle,Si,We 也不会立即释放沉眠

只填_targetRank == 3的时候我测试释放是正常的(注意rank不是位置,是优先级)

image

至于不会被立即释放,是否可能是其他战斗流程先执行了(还是说debuff内部执行顺序不正确?我用默认顺序都是能够先放沉眠的(除非cd中或没蓝)
image

这个怪少不知道选取的释放目标对不对,好像还是会重叠... 怪多的情况下看上去是不会重叠了 测试量也不多就是了

怪少重叠是为了让debuff的覆盖最大化,例如:

  • 一共5只怪,前3只不用放(已有debuff):AAABB
  • 选择范围为3的中心的时候,因为选择5号位会空放一个目标,因此查找包含4号位的范围时,只会从3、4号位中查找
  • 此时释放范围为AA[ABB],则三号位可能被重复释放
  • 如果只有4只怪已放3只的话甚至可能是A[AAB],看起来会重复比较多

会有一直放imp的bug(好像是imp放不到攻击目标身上) imp我是单体释放并且没设置条件跟阈值的

  • 选择范围时有bug:
    • 应该是order+1<range时才能向上溢出(因为order是0~9不是1~10)
    • 但是写成了order<=range
    • 2.90.137已修复为order<range
  • 这个bug会导致目标怪在4号位时无法被释放:
    • 4号位order=3<=range=3,导致范围中心的最小值top=0(对应目标1,以为可以溢出)
    • 从而会先在order_0(目标1)处释放,并因为向上溢出导致会释放目标123
  • 修复这个后我这边是能正常单体释放给攻击目标了,且修复之前:
    • 范围中心的最大值应该是bottom=3-1=4(对应目标5,覆盖456)
    • 在放完123之后应该会直接选择456(因为123都有buff了,权重会降低)

所以不确定一直放不到是什么原因,可以看下log是被抵抗了还是放的范围就不对

@JKU533
Copy link

JKU533 commented Jan 8, 2026

所以不确定一直放不到是什么原因,可以看下log是被抵抗了还是放的范围就不对

的确就是这个4号位问题 遭遇战的配置刚好全放imp就4号位空了 一直放imp 2.90.137没问题了

至于不会被立即释放,是否可能是其他战斗流程先执行了(还是说debuff内部执行顺序不正确?我用默认顺序都是能够先放沉眠的(除非cd中或没蓝)

貌似是表世界被抵抗的概率较高导致的错觉(回想了下貌似也不是错觉..沉眠一直不放..估摸进了什么奇怪的量子状态了)

观察了两轮ar跟遭遇战 现在是没问题正常的

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants