fix lockandkey: cast portal once with fizzle retry, disable buffing except during jaw hunt
All checks were successful
/ test (push) Successful in 36s

This commit is contained in:
Erik 2026-04-14 21:48:31 +02:00
parent 6780b985cb
commit ac998c3872
2 changed files with 64 additions and 115 deletions

View file

@ -44,16 +44,16 @@ STATE: {Default}
Chat {/vt opt set enablecombat false} Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablelooting false} Chat {/vt opt set enablelooting false}
Chat {/vt opt set enablenav false} Chat {/vt opt set enablenav false}
Chat {/vt opt set enablebuffing true} Chat {/vt opt set enablebuffing false}
SetState {service_quest_refresh} SetState {service_quest_refresh}
~~ } ~~ }
STATE: {idle} STATE: {idle}
~~ Main loop: listen for portal tells, check service timer, handle buffs ~~ Main loop: listen for portal tells, check service timer
IF: Death IF: Death
DO: SetState {death} DO: SetState {death}
IF: NeedToBuff IF: Always
DO: SetState {buffing} DO: Chat {/vt opt set enablebuffing false}
~~ Listen for tells containing "primary" ~~ Listen for tells containing "primary"
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {} IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {}
DO: SetState {summon_primary} DO: SetState {summon_primary}
@ -69,7 +69,7 @@ STATE: {idle}
DO: None DO: None
STATE: {summon_primary} STATE: {summon_primary}
~~ Face 180, equip wand, cast Summon Primary Portal I (157) with retries ~~ Face 180, equip wand, cast Summon Primary Portal I (157), retry on fizzle
IF: Death IF: Death
DO: SetState {death} DO: SetState {death}
IF: Always IF: Always
@ -79,15 +79,16 @@ STATE: {summon_primary}
DoExpr {actiontryequipanywand[]} DoExpr {actiontryequipanywand[]}
IF: SecsInStateGE 4 IF: SecsInStateGE 4
DO: DoExpr {actiontrycastbyid[157]} DO: DoExpr {actiontrycastbyid[157]}
IF: SecsInStateGE 7 ~~ Fizzle: retry cast
DO: DoExpr {actiontrycastbyid[157]} IF: ChatMatch {Your spell fizzled.}
IF: SecsInStateGE 10 DO: DoAll
DO: DoExpr {actiontrycastbyid[157]} DoExpr {actiontrycastbyid[157]}
SetState {summon_primary}
IF: SecsInStateGE 17 IF: SecsInStateGE 17
DO: SetState {idle} DO: SetState {idle}
STATE: {summon_secondary} STATE: {summon_secondary}
~~ Face 90, equip wand, cast Summon Secondary Portal I (2648) with retries ~~ Face 90, equip wand, cast Summon Secondary Portal I (2648), retry on fizzle
IF: Death IF: Death
DO: SetState {death} DO: SetState {death}
IF: Always IF: Always
@ -97,22 +98,14 @@ STATE: {summon_secondary}
DoExpr {actiontryequipanywand[]} DoExpr {actiontryequipanywand[]}
IF: SecsInStateGE 4 IF: SecsInStateGE 4
DO: DoExpr {actiontrycastbyid[2648]} DO: DoExpr {actiontrycastbyid[2648]}
IF: SecsInStateGE 7 ~~ Fizzle: retry cast
DO: DoExpr {actiontrycastbyid[2648]} IF: ChatMatch {Your spell fizzled.}
IF: SecsInStateGE 10 DO: DoAll
DO: DoExpr {actiontrycastbyid[2648]} DoExpr {actiontrycastbyid[2648]}
SetState {summon_secondary}
IF: SecsInStateGE 17 IF: SecsInStateGE 17
DO: SetState {idle} DO: SetState {idle}
STATE: {buffing}
~~ Wait for buffs to complete, then return to idle
IF: Death
DO: SetState {death}
IF: Not NeedToBuff
DO: SetState {idle}
IF: SecsInStateGE 120
DO: SetState {idle}
STATE: {service_quest_refresh} STATE: {service_quest_refresh}
~~ Request quest status refresh, wait for completion ~~ Request quest status refresh, wait for completion
IF: Death IF: Death
@ -207,7 +200,7 @@ STATE: {service_bella_start}
Chat {/vt opt set enablecombat false} Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablelooting false} Chat {/vt opt set enablelooting false}
Chat {/vt opt set enablenav false} Chat {/vt opt set enablenav false}
Chat {/vt opt set enablebuffing true} Chat {/vt opt set enablebuffing false}
IF: SecsInStateGE 2 IF: SecsInStateGE 2
DO: DoAll DO: DoAll
Chat {/a [bella] starting marketplace entry} Chat {/a [bella] starting marketplace entry}
@ -230,7 +223,6 @@ STATE: {service_bella_mp_primary}
DO: SetState {service_bella_backoff} DO: SetState {service_bella_backoff}
IF: Always IF: Always
DO: DoAll DO: DoAll
Chat {/vt opt set enablebuffing true}
Chat {/vt opt set enablenav true} Chat {/vt opt set enablenav true}
Chat {/vt opt set enablecombat false} Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablelooting false} Chat {/vt opt set enablelooting false}
@ -304,6 +296,8 @@ STATE: {service_bella_jaw_hunt}
~~ Hunt for jaw drop ~~ Hunt for jaw drop
IF: Death IF: Death
DO: SetState {death} DO: SetState {death}
IF: Always
DO: Chat {/vt opt set enablebuffing true}
IF: ExitPortal IF: ExitPortal
DO: DoAll DO: DoAll
Chat {/vt opt set enablenav true} Chat {/vt opt set enablenav true}
@ -374,7 +368,7 @@ STATE: {service_reset_main}
Chat {/vt opt set enablecombat false} Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablelooting false} Chat {/vt opt set enablelooting false}
Chat {/vt opt set enablenav true} Chat {/vt opt set enablenav true}
Chat {/vt opt set enablebuffing true} Chat {/vt opt set enablebuffing false}
DoExpr {setvar[serviceClock,stopwatchcreate[]]} DoExpr {setvar[serviceClock,stopwatchcreate[]]}
DoExpr {stopwatchstart[getvar[serviceClock]]} DoExpr {stopwatchstart[getvar[serviceClock]]}
DoExpr {touchvar[resetNavLoaded]} DoExpr {touchvar[resetNavLoaded]}

View file

@ -11,7 +11,7 @@ n
n n
n n
n n
92 88
i i
21 21
i i
@ -399,7 +399,7 @@ s
i i
2 2
s s
/vt opt set enablebuffing true /vt opt set enablebuffing false
i i
1 1
s s
@ -417,13 +417,13 @@ death
s s
idle idle
i i
15
i
1 1
i i
2
i
0 0
s s
buffing /vt opt set enablebuffing false
s s
idle idle
i i
@ -589,9 +589,18 @@ actiontrycastbyid[157]
s s
summon_primary summon_primary
i i
6 4
i i
7 3
s
Your spell fizzled.
TABLE
2
K
V
n
n
2
i i
7 7
TABLE TABLE
@ -605,25 +614,10 @@ s
e e
s s
actiontrycastbyid[157] actiontrycastbyid[157]
i
1
s s
summon_primary summon_primary
i
6
i
7
i
10
TABLE
2
k
v
n
n
1
s
e
s
actiontrycastbyid[157]
s s
summon_primary summon_primary
i i
@ -702,9 +696,18 @@ actiontrycastbyid[2648]
s s
summon_secondary summon_secondary
i i
6 4
i i
7 3
s
Your spell fizzled.
TABLE
2
K
V
n
n
2
i i
7 7
TABLE TABLE
@ -718,25 +721,10 @@ s
e e
s s
actiontrycastbyid[2648] actiontrycastbyid[2648]
i
1
s s
summon_secondary summon_secondary
i
6
i
7
i
10
TABLE
2
k
v
n
n
1
s
e
s
actiontrycastbyid[2648]
s s
summon_secondary summon_secondary
i i
@ -758,45 +746,6 @@ i
s s
death death
s s
buffing
i
21
i
1
TABLE
2
K
V
n
n
1
i
15
i
0
s
idle
s
buffing
i
6
i
1
i
120
s
idle
s
buffing
i
8
i
1
i
0
s
death
s
service_quest_refresh service_quest_refresh
i i
1 1
@ -1559,7 +1508,7 @@ s
i i
2 2
s s
/vt opt set enablebuffing true /vt opt set enablebuffing false
s s
service_bella_start service_bella_start
i i
@ -1691,11 +1640,7 @@ K
V V
n n
n n
6 5
i
2
s
/vt opt set enablebuffing true
i i
2 2
s s
@ -2149,6 +2094,16 @@ death
s s
service_bella_jaw_hunt service_bella_jaw_hunt
i i
1
i
2
i
0
s
/vt opt set enablebuffing true
s
service_bella_jaw_hunt
i
20 20
i i
3 3
@ -2645,7 +2600,7 @@ s
i i
2 2
s s
/vt opt set enablebuffing true /vt opt set enablebuffing false
i i
7 7
TABLE TABLE