Feature Removing autostop on Massive Ziggurat

Theraze

Active member
There's apparently an autostop on the end of the Massive Ziggurat fight, which is why it broke the combat automation and had that weird bug. It would be very nice if the autostop didn't break continuing combat through automation anymore by stopping the fight. I think the easiest way to do this is to just remove that autostop.
 

Darzil

Developer
Would the result be an infinite loop if someone tried to adventure there, or would something else stop that ?
 

Veracity

Developer
Staff member
Once you clear the lianas, you get the choice adventure. What happens once you have killed the protector spectre? The Wiki says this:

if you have finished the quest:

There's no more to see here.
Our usual way to handle that kind of thing is to add an entry for that message to KoLAdventure.ADVENTURE_FAILURES and set the next state to MafiaState.PENDING so that automation will stop at this location and the script can move on.

Of course, that is exactly what happens with "Legend of the Temple in the Hidden City" being an autostop; when the fight concludes, we go into PENDING and automation will stop adventuring at that location.

I have absolutely no idea what you mean by "It would be very nice if the autostop didn't break continuing combat through automation anymore by stopping the fight" since I have never seen any evidence that having the state be PENDING "stops the fight". Can you elaborate, please?
 

Theraze

Active member
[907] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!
> This location has no turtle to tame.
> This location has no turtle to tame.

[907] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!
> This location has no turtle to tame.
> This location has no turtle to tame.

[907] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!
> This location has no turtle to tame.
> This location has no turtle to tame.

[907] A Massive Ziggurat
Encounter: Legend of the Temple in the Hidden City
Took choice 791/1: fight Protector Spectre
choice.php?whichchoice=791&option=1&pwd
Encounter: Protector Spectre
Round 0: Theraze wins initiative!
> WHAM: Monster HP is 260.0.
> WHAM: Running SmartStasis
Round 1: Theraze executes a macro!

[907] A Massive Ziggurat
Round 1: Theraze uses the seal tooth!
Round 2: protector spectre takes 1 damage.
Round 2: You hear a faint howling of wind, and Gobert suddenly appears out of the shadows, holding your opponent's meat pouch.
You gain 196 Meat.
Round 2: protector spectre takes 6 damage.
You lose 4 hit points
Round 2: Theraze executes a macro!
Round 2: Theraze uses the seal tooth!
Round 3: protector spectre takes 1 damage.
Round 3: protector spectre takes 5 damage.
You lose 3 hit points
Round 3: Theraze executes a macro!
Round 3: Theraze uses the seal tooth!
Round 4: protector spectre takes 1 damage.
Round 4: protector spectre takes 8 damage.
You lose 2 hit points
Round 4: Theraze executes a macro!
Round 4: Theraze uses the seal tooth!
Round 5: protector spectre takes 1 damage.
Round 5: Gobert shouts "Yarrrr!" and battens your opponent's hatches for him. Violently. For 1 damage.
Round 5: protector spectre takes 1 damage.
Round 5: protector spectre takes 10 damage.
You lose 3 hit points
Round 5: Theraze executes a macro!
Round 5: Theraze uses the seal tooth!
Round 6: protector spectre takes 1 damage.
Round 6: Gobert bleeps, "MEDICAL SYSTEMS ACTIVATED," and fires a dart into your neck. You suddenly feel much better.
You gain 54 hit points
You gain 54 Muscularity Points
Round 6: protector spectre takes 2 damage.
You lose 2 hit points
Round 6: Theraze uses the seal tooth!
Round 7: protector spectre takes 1 damage.
Round 7: You hear a faint howling of wind, and Gobert suddenly appears out of the shadows, holding your opponent's meat pouch.
You gain 186 Meat.
Round 7: protector spectre takes 4 damage.
You lose 3 hit points
Round 7: Theraze uses the seal tooth!
Round 8: protector spectre takes 1 damage.
You acquire an effect: Tangled Up (duration: 1 Adventure)
Round 8: Theraze uses the seal tooth!
Round 9: protector spectre takes 1 damage.
Round 9: protector spectre takes 5 damage.
You lose 4 hit points
Round 9: Theraze uses the seal tooth!
Round 10: protector spectre takes 1 damage.
Round 10: protector spectre takes 2 damage.
You lose 4 hit points
Round 10: Theraze uses the seal tooth!
Round 11: protector spectre takes 1 damage.
Round 11: protector spectre heals 10 hit points.
Round 11: Theraze uses the seal tooth!
Round 12: protector spectre takes 1 damage.
Round 12: Theraze uses the seal tooth!
Round 13: protector spectre takes 1 damage.
Round 13: Gobert shambles up to your opponent with a "Graaaaagh," and bites him on the head. He seems a little dazed by the experience.
Round 13: protector spectre drops 16 attack power.
Round 13: protector spectre drops 16 defense.
Round 13: protector spectre takes 7 damage.
You lose 4 hit points
Round 13: Theraze uses the seal tooth!
Round 14: protector spectre takes 1 damage.
Round 14: protector spectre takes 10 damage.
You lose 3 hit points
> WHAM: Starting evaluation and performing of attack
> WHAM: We are going to 4-shot with Saucestorm, Saucestorm, Saucestorm and Saucestorm.
Round 14: Theraze executes a macro!
Round 14: Theraze casts SAUCESTORM!
Round 15: protector spectre takes 55 damage.
Round 15: protector spectre takes 110 damage.
Round 15: protector spectre takes 10 damage.
You lose 1 hit point
Round 15: Theraze casts SAUCESTORM!
Round 16: protector spectre takes 55 damage.
Round 16: protector spectre takes 55 damage.
Round 16: Gobert shouts "Yarrrr!" and battens your opponent's hatches for him. Violently. For 1 damage.
Round 16: protector spectre takes 1 damage.
Round 16: Theraze wins the fight!
You acquire an item: ancient amulet
You acquire an item: spectre scepter
You gain 103 Muscleboundness
You gain 27 Magicalness
You gain 37 Cheek
> Look! You found 1 ancient amulet (50μ)!
> Look! You found 1 spectre scepter (50μ)!
> You got a factoid!
> This location has no turtle to tame.
> BBB: Not enough triangles; skip the Protector Spectre.
It aborted rather than actually running the combat. It would have been nice, in automation, to automate the combat. :)
 

Theraze

Active member
Here's the CLI output for the autostop:
Request 1 of 66 (HiddenCity: A Massive Ziggurat) in progress...

[937] A Massive Ziggurat
Encounter: Legend of the Temple in the Hidden City
Legend of the Temple in the Hidden City
Encounter: Protector Spectre
Strategy: C:\Program Files (x86)\KoLmafia\ccs\WHAMbeta.ccs [default]
Round 0: Theraze loses initiative!
Round 1: protector spectre takes 4 damage.
You lose 2 hit points
You're on your own, partner.
Click here to continue in the relay browser.
Doing run_combat after that finished the fight properly, but it would be nice to have been able to drive to my inlaws immediately after work rather than waiting another 15 minutes for combat to stick. :)
 

Veracity

Developer
Staff member
I need a debug log. When I see in the session log:

Round 0: Theraze wins initiative!
> WHAM: Monster HP is 260.0.
> WHAM: Running SmartStasis
Round 1: Theraze executes a macro!

[907] A Massive Ziggurat
Round 1: Theraze uses the seal tooth!
Round 2: protector spectre takes 1 damage.
Round 2: You hear a faint howling of wind, and Gobert suddenly appears out of the shadows, holding your opponent's meat pouch.
You gain 196 Meat.
Round 2: protector spectre takes 6 damage.
You lose 4 hit points
It looks to me like it called WHAM - once - which proceeded to run through the combat, stasising, because you had an NPZR equipped.

I want to see the macro that was submitted and I want to see the DEBUG log showing when consult scripts were executing.

The extra log of "[907] A Massive Ziggurat" in the minute looks like a weirdness of logging, not "the combat aborting".
 

Theraze

Active member
The gap between Round 1: with executing the macro, and [907] where it actually ran, was an abort. When it hit [907], that was when I ran adventure * massive ziggurat manually.

So, where do I need to have the debug start? Where should it stop? Do you just want debug on, or do you want other debugs as well? The script will abort naturally when it hits the autostop, but I'm assuming that the part before that is the part you're actually wanting to see, so I need to modify things to give you what you want and I'd like to do that properly if possible.
 
Top