Looking at the code in KoLmafia.java:
Code:
private void executeRequest( final Job request, final int totalIterations, final boolean wasAdventuring )
{
boolean isAdventure = request instanceof KoLAdventure;
...
KoLmafia.forceContinue();
...
int currentIteration = 0;
...
while ( KoLmafia.permitsContinue() && ++currentIteration <= totalIterations )
{
int runBeforeRequest = KoLCharacter.getCurrentRun();
...
this.executeRequestOnce( request, wasAdventuring, currentIteration, totalIterations, items, creatables );
if ( isAdventure && KoLmafia.redoSkippedAdventures &&
runBeforeRequest == KoLCharacter.getCurrentRun() )
{
--currentIteration;
}
...
}
...
}
I stripped out things that were not apropos to this discussion.
1) When you say "adventure 50 times in a zone", that means make 50 visits to that zone. It does NOT mean "spend 50 turns". turnips, not turns.
2) The loop is controlled strictly by the number you entered in the count field in the GUI - or the count parameter of the "adventure" command or function in the CLI or ASH.
3) We DO look at the KoL-supplied run counter to see if an adventure was consumed - and if you took a choice, say, which didn't actually consume an adventure, we don't count that as an iteration.
Basically, xKiv got it exactly right.
Regarding this report, I am suspicious that the session log skips an adventure an starts again at "2 of 250". Presumably, the skipped one was "1 of 250". My personal belief is that the OP actually did - presumably inadvertently - tell KoLmafia to spend another 250 adventures, rather than that the loop, which I copied into a code block in the reply - miraculously restarted itself.