Bug - Fixed You're on your own, partner.

That is... odd. WHAM should've been printing your meat per hp and mp as well as the monsters stats and what round it thought it was on. That it prints nothing indicates to me that it actually never fot started despite having been called by Mafia.

Veracity: would that be possible?
 
What I personally do not understand about this whole endless loop shenanigans: It may well be not KoLmafia's fault that an infinite loop comes into existence. But why does KoLmafia not simpy cease executing a script gone wild when I manually request it to do so? I can press "stop now" or press Escape - KoLmafia does not react to the user's request in the case that we have seen here. The root cause of this happening may well be some script's fault, or a weird interaction between two scripts. Still, the user must have the option to stop an ongoing operation. And if there is a designated operating element to do so, whether a button in the GUI or as a keystroke, then this simply must work under any conditions, no matter what. I believe there can be no disagreement on this.

Code:
if (user.requests_abort() == true)
    stop_whatever_on_earth_we_are_currently_doing();

:)
 
Last edited:
What I personally do not understand about this whole endless loop shenanigans: It may well be not KoLmafia's fault that an infinite loop comes into existence. But why does KoLmafia not simpy cease executing a script gone wild when I manually request it to do so? I can press "stop now" or press Escape - KoLmafia does not react to the user's request in the case that we have seen here. The root cause of this happening may well be some script's fault, or a weird interaction between two scripts. Still, the user must have the option to stop an ongoing operation. And if there is a designated operating element to do so, whether a button in the GUI or as a keystroke, then this simply must work under any conditions, no matter what. I believe there can be no disagreement on this.

Code:
if (user.requests_abort() == true)
    stop_whatever_on_earth_we_are_currently_doing();

:)
Yes. KoLmafia shouldn't be able to get into this sort of infinite loop in the first place. ;)
 
Just as a quick sidenote, loading up the page in the relay browser DOES make the infinite loop stop.

Anyways, when I had this happen today, I did log the attempted automation. Here's a bit of logs that seem to show mafia doing... nothing?
> debug on

> debug trace on

> debug ash on

> debug listener on

> adventure massive ziggurat

You're on your own, partner.
Click here to continue in the relay browser.


> debug off

> debug trace off

> debug ash off

> debug listener off
 

Attachments

1) What is your CCS?
2) (assuming it is WHAM or another consult script) What happened in your previous fight? I.e., show me your session log prior to what you just posted.
 
1:
Code:
[ default ]
consult WHAM beta.ash

[ mine crab ]
special action
stun
item Miniborg Destroy-O-Bot, Miniborg Destroy-O-Bot

[ peanut ]
special action
stun
skill weapon of the pastalord

[ school of many ]
special action
stun
try to run away

[ warbear foot soldier ]
special action
stun
item Miniborg Destroy-O-Bot, Miniborg Destroy-O-Bot

2.
Code:
equip weapon antique machete
 > BCC: Maximizing '-weapon, '

maximize 0 beeosity, mainstat 178 max, -melee +moxie experience +0.5 mp regen min +0.5 mp regen max, 5 hp, -weapon, -equip hilarious comedy prop

equip off-hand black shield
 > BCC: Your familiar is set to a 100% Ninja Pirate Zombie Robot
 > BCC: Nothing to fax according to whatShouldIFax
 > BCC: Defeating the last Protector Spectre.
 > BCC: Setting goals of '1 choiceadv'...
 > BCC: We should set the MCD if we can.
 > BCC: We CAN set the MCD.

[1002] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!

[1002] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!

[1002] A Massive Ziggurat
Encounter: dense liana
Round 0: Theraze wins initiative!
Round 1: Theraze wins the fight!

[1002] 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!

[1002] A Massive Ziggurat

[1002] A Massive Ziggurat
There was the same displayed gCLI "You're on your own partner" for several thousand lines completely pushing everything above off my screen, but that's my session log.
 
This bug has nothing to do with WHAM. My CCS:
Code:
[ default ]
abort
The result of "adv 1 massive"
Code:
[515] 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: Crowther wins initiative!
Round 1: Crowther executes a macro!
Round 2: Crowther executes a macro!
Round 3: Crowther executes a macro!
Round 4: Crowther executes a macro!
Round 5: Crowther executes a macro!
Round 6: Crowther executes a macro!
Round 7: Crowther executes a macro!
.
.
.
Escape would not quit the seemingly infinite loop.
 
Darzil, may I ask why you closed this thread without comment or changing the tag? Was that a misclick?
 
Ha! And he was fast too. I went to edit my post right after submitting it and it was locked. I thought, oh boy, I'm in trouble!
 
Well, I created a completely vanilla installation of Mafia, and it's still failing, so it's definitely not any of the various scripts you have installed.
 
I'm actually going to be there first thing tomorrow; I've gotten 3 stone triangles and on my last turn of the day, I got my 5th bowling ball.

Looking at your log, I see:

Code:
> ccs abort
> ash adv1($location[massive zig], 1, "");

Requesting: http://www.kingdomofloathing.com/adventure.php?snarfblat=350
Retrieved: http://www.kingdomofloathing.com/adventure.php?snarfblat=350
Field: Location = [choice.php?forceoption=0]
Requesting: http://www.kingdomofloathing.com/choice.php?forceoption=0
Retrieved: http://www.kingdomofloathing.com/choice.php?forceoption=0

[457] A Massive Ziggurat
Encounter: Legend of the Temple in the Hidden City

Requesting: http://www.kingdomofloathing.com/choice.php?whichchoice=791&option=1&pwd
Retrieved: http://www.kingdomofloathing.com/choice.php?whichchoice=791&option=1&pwd
Field: Location = [fight.php?ireallymeanit=1390072250]
Requesting: http://www.kingdomofloathing.com/fight.php?ireallymeanit=1390072250
Retrieved: http://www.kingdomofloathing.com/fight.php?ireallymeanit=1390072250

Encounter: Protector Spectre
Strategy: /home/scottk/.kolmafia/ccs/abort.ccs [default]
Round 0: Crowther wins initiative!

Requesting: http://www.kingdomofloathing.com/api.php?what=status&for=KoLmafia
Retrieved: http://www.kingdomofloathing.com/api.php?what=status&for=KoLmafia

Round 1: Crowther executes a macro!

Requesting: http://www.kingdomofloathing.com/fight.php?action=macro&macrotext=abort+hppercentbelow+5%0A%0A%0A%0Amark+mafiafinal%0Aabort+%22KoLmafia+CCS+abort%22%0Agoto+mafiafinal
Retrieved: http://www.kingdomofloathing.com/fight.php?action=macro&macrotext=abort+hppercentbelow+5%0A%0A%0A%0Amark+mafiafinal%0Aabort+%22KoLmafia+CCS+abort%22%0Agoto+mafiafinal

You're on your own, partner.

Round 2: Crowther executes a macro!

Requesting: http://www.kingdomofloathing.com/fight.php?action=macro&macrotext=abort+hppercentbelow+5%0A%0A%0A%0Amark+mafiafinal%0Aabort+%22KoLmafia+CCS+abort%22%0Agoto+mafiafinal
Retrieved: http://www.kingdomofloathing.com/fight.php?action=macro&macrotext=abort+hppercentbelow+5%0A%0A%0A%0Amark+mafiafinal%0Aabort+%22KoLmafia+CCS+abort%22%0Agoto+mafiafinal

And so on. The only thing I need to do to reproduce this is to set the choice adventure to go fight.

> set choiceAdventure791=1

I don't see anything else that I need you to do. Thanks.
 
Lots of tedious stepping through code in Eclipse revealed the issue.

The choice adventure that is the temple is named "Legend of the Temple in the Hidden City"
For some reason, that encounter is marked as an auto stop.

I find that peculiar. It means that if you are automating in that location, after you see that encounter, you want KoLmafia to stop going there. Well, OK; no matter which choice you take, either leaving without going in, or fighting, there is no point in repeatedly going back after having taken either choice.

Autostops set KoLmafia's state to PENDING.

When you automate a fight and something that happens that should stop automation at the end of the fight - a piece of equipment breaks, for example - that will also set the state to PENDING.

Therefore, when automating multiple rounds of a fight, if the state is PENDING, it continues automating.

Now, setting the state to ABORT should stop the fight right now. But, the code to set KoLmafia's state will not change the state if it is PENDING - even for an ABORT. I think that's the bug.

I just ran away from the Protector Spectre, so I should be able to reproduce this again.
 
Back
Top