CounterChecker: Wormwood, Semi-rares, Dance Cards and more

Theraze, in the past, the script has always let me adventure in the relay browser in any location (showing me a fortune cookie) to verify that the semi-rare is about to show up. Maybe what I am asking for is to add the new semirare?
 
KoLmafia does not run counter scripts during relay adventuring. Ever. Additionally, a counter script cannot run itself without KoLmafia telling it to run. Not that I can imagine why KoLmafia should suddenly being able to run a counter script during manual adventuring. (Recently we got a feature request to allow that to happen, but nobody tried to implement that feature.)

I don't know what was happening, but it isn't an issue with this script.
 
Theraze, in the past, the script has always let me adventure in the relay browser in any location (showing me a fortune cookie) to verify that the semi-rare is about to show up. Maybe what I am asking for is to add the new semirare?
Bale sort of said this, but just to be clear that fortune cookie is not from CounterChecker. It's from KoLmafia.
 
Bug report (I think): CounterChecker.ash changed my equipment to acquire a semirare but failed to change back to what I was previously wearing afterwards. Would it be possible to change this?

Request 13 of 263 (HiddenCity: The Hidden Bowling Alley) in progress...
Checking counters now.
A fire flower is currently selling for 12,000 meat .
Internal checkpoint created.
maximize .4 mp, .3 hp, .2 mp regen min, .1 hp regen min, +equip continuum transfunctioner, -hat -pants -shirt -offhand -weapon
Maximizing...
32 combinations checked, best score 831.60
Putting on hopping socks...
Equipment changed.
Putting on cursed scrunchie...
Equipment changed.
Putting on continuum transfunctioner...
Equipment changed.

Checkpoints cleared.

Visit to Woods: 8-Bit Realm in progress...

[12029] 8-Bit Realm
Encounter: Some Bricks Do, In Fact, Hang in the Air
You acquire an item: fire flower

A Knob Goblin lunchbox is currently selling for 11,090 meat .
BaleCC_next => The Outskirts of Cobb's Knob
Checkpoints cleared.
 
Not actually CounterChecker's fault. See those "Checkpoints cleared" messages? Those break the ability of CounterChecker, and any other script that uses checkpoints, to restore outfits. Most likely your culprit is BestBetweenBattle's use_fam function, but it might be anything. Except for CounterChecker, since that doesn't actually contain checkpoint clear inside it anywhere, or even use the use_fam function directly.
 
Not actually CounterChecker's fault. See those "Checkpoints cleared" messages? Those break the ability of CounterChecker, and any other script that uses checkpoints, to restore outfits. Most likely your culprit is BestBetweenBattle's use_fam function, but it might be anything. Except for CounterChecker, since that doesn't actually contain checkpoint clear inside it anywhere, or even use the use_fam function directly.

Based on what you said, it seems my problem is indeed BestBetweenBattle.ash. That gives me somewhere to start trying to work around this issue though I'm not quite sure how I'm going to do that. Do you happen to know why BBB would have that 'cli_execute("checkpoint clear");' line there? I'm trying to understand what it needs that for.
 
If I remember properly, it had been in there due to the mess of equipping a familiar and then after it does its adventuring, mafia switched back to the original familiar and tried to equip your new familiar's equipment on it, which usually doesn't work. Basically it was a workaround for mafia weirdness. I think mafia has since been fixed up to not do that anymore, but BBB still has the checkpoint-breaking line.
 
If I remember properly, it had been in there due to the mess of equipping a familiar and then after it does its adventuring, mafia switched back to the original familiar and tried to equip your new familiar's equipment on it, which usually doesn't work. Basically it was a workaround for mafia weirdness. I think mafia has since been fixed up to not do that anymore, but BBB still has the checkpoint-breaking line.

I commented out that line to see what would happen and got this message
Your Grimstone Golem can't wear a Red Book
Mafia didn't switch back to the original familiar but something (I'm assuming BBB or mafia) tried to equip the original familiar's equipment on the new familiar. This was 6 adventures after BBB switched to the Grimstone Golem. So, looks like I'll need to find some other workaround.

Edit: I tried wrapping most of the contents of use_fam in a check for whether or not we're actually changing familiars. So now it looks like this:
Code:
boolean use_fam(familiar f) {
   if (f != my_familiar()) {
      use_familiar(f);
      if (to_boolean(vars["bbb_famitems"])) switch (my_familiar()) {
         case $familiar[artistic goth kid]:
         case $familiar[astral badger]:     // these equipments speed rewards from fams
         case $familiar[knob goblin organ grinder]: if (!have_equipped(familiar_equipment(my_familiar())) && available_amount(familiar_equipment(my_familiar())) > 0 &&
            retrieve_item(1,familiar_equipment(my_familiar()))) equip(familiar_equipment(my_familiar())); break;
        // TODO: snow suit drops?
      }
      cli_execute("checkpoint clear");
   }
   return (my_familiar() == f);
}

Adventuring with this allowed mafia to change my equipment back (mostly) after getting the semi-rare. The only thing that didn't get replaced was the familiar that was in my Buddy Bjorn. It's probably not the best workaround but it's working better than it was for me.

Request 4 of 210 (Volcano: Convention Hall Lobby) in progress...
Checking for updates (running CounterChecker ver. 1.6)...
Running CounterChecker version: 1.6 (current)
Checking counters now.
A fire flower is currently selling for 10,501 meat .
Internal checkpoint created.
maximize .4 mp, .3 hp, .2 mp regen min, .1 hp regen min, +equip continuum transfunctioner, -hat -pants -shirt -offhand -weapon
Maximizing...
42 combinations checked, best score 921.70
Kicking Digmite the Oily Woim out of the bjorn...
Carrying Primenite the Snowy Owl in the Bjorn Buddy...
Putting on hopping socks...
Equipment changed.
Putting on slime-covered necklace...
Equipment changed.
Putting on continuum transfunctioner...
Equipment changed.

Visit to Woods: 8-Bit Realm in progress...

[3385] 8-Bit Realm
Encounter: Some Bricks Do, In Fact, Hang in the Air
You acquire an item: fire flower

Conditions not satisfied after 1 adventure.
If I ate even a fortune cookie I'd burst! Remember to eat a fortune cookie when the tummy is emptier.
A Knob Goblin lunchbox is currently selling for 10,950 meat .
BaleCC_next => The Outskirts of Cobb's Knob
Putting on Hand in Glove...
Equipment changed.
Putting on hardened slime belt...
Equipment changed.
Putting on cursed scrunchie...
Equipment changed.
 
Last edited:
Any chance this script could be enhanced to, via a setting or so, automatically follow through on the Lights Out-choices for Spookyraven?
 
Any chance this script could be enhanced to, via a setting or so, automatically follow through on the Lights Out-choices for Spookyraven?

That's a fine idea. I'll add that if you collect a list of all choice adventure numbers and necessary choice option numbers for each. Make sure that you get the correct value for each choice. It'll be a bit of a project.

For instance, if you hit Lights Out in the Billiards Room, that's choice adventure 900. If you choose option value 1, "Search for a light," it will take you to another choice adventure where the correction option is value 2, "What the heck, let's explore a bit," but what adventure number is it? That number is not on the wiki! All sub choices of Lights Out in the Billiards Room are listed on the same wiki page and their own numbers are unknown to me without actually exploring them in KoL.
 
For instance, if you hit Lights Out in the Billiards Room, that's choice adventure 900. If you choose option value 1, "Search for a light," it will take you to another choice adventure where the correction option is value 2, "What the heck, let's explore a bit," but what adventure number is it?

I think it's also 900, unfortunately. And the same for all of the choices in that chain in the Billiards Room.
 
Code:
		// Choice 890 is Lights Out in the Storage Room
		// Choice 891 is Lights Out in the Laundry Room
		// Choice 892 is Lights Out in the Bathroom
		// Choice 893 is Lights Out in the Kitchen
		// Choice 894 is Lights Out in the Library
		// Choice 895 is Lights Out in the Ballroom
		// Choice 896 is Lights Out in the Gallery
		// Choice 897 is Lights Out in the Bedroom
		// Choice 898 is Lights Out in the Nursery
		// Choice 899 is Lights Out in the Conservatory
		// Choice 900 is Lights Out in the Billiards Room
		// Choice 901 is Lights Out in the Wine Cellar
		// Choice 902 is Lights Out in the Boiler Room
		// Choice 903 is Lights Out in the Laboratory
At least each is its own choice adv number.

We'd need something along the lines of what we do for the "Deep Inside Ronald" and "Deep Inside Grimace" choice chains. Seems to me that if you are automating, there's not much reason to not take the choice that will unlock the next step of the search for Elizabeth or Stephen. Although, perhaps some discretion is needed; in my last run, I didn't really want to follow the Elizabeth chain until I'd unlocked the Spookyraven Basement. But that seems like the discretion would belong in Counterchecker; if you end up in the Storage Room and the lights go out, you may as well look out the window, even if you won't be able to get to the Laundry Room for the next Lights Out.
 
This also reminds me of the GameInform maze and spooky forest (namely, getting the sapling). I do wish the approach taken with the maze (comma separated list of choices to take) were made the default. It seems like an elegant solution, and it wouldn't require explicit support for future content.

I have no idea how mafia support for the spaaace maps works, by the way.
 
We'd need something along the lines of what we do for the "Deep Inside Ronald" and "Deep Inside Grimace" choice chains.

Just a thought, but if you do that all 14 choice adventures can be controlled with a single preference.

Lights Out:
  • Look for Ghost or skip
  • Skip
  • Show in Browser

The are all a unit with the same goal, so it would be troublesome for a user to have to set all 14 choice adventures separately. I find it hard to imagine why someone would want one of them to search for a ghost, but a different one to skip. For instance.
 
Darzil just added Lights Out automation to Mafia so I have added the feature to CounterChecker. (I already did most of the work in preparation for this.) I am going to need to test it properly before I feel confident that I can release, but I have a question about the implementation.

I am thinking that this should abort before the boss fights so that the player can fight Stephen and Elizabeth manually. Though I am considering adding a zlib variable BaleCC_LightsOutBossAutomated which will allow the fights to be automated by Mafia if it is set to true. Does this sound like a good idea? Any way to make it better?
 
Last edited:
Just found a bug in r14132 which prevents mafia from choosing the correct choice in the Library. I'll wait until Darzil makes it work rather than release a version of CounterChecker which would cause people to mess up.
 
It can't happen too soon. At first, it was a pain looking up the choices, but eventually I memorized them, then it wasn't so bad. However, every 37 adventures is very often and I'm getting totally bored with clicking them manually. When the counter expires, I think, "Oh, not again!" So, thanks, in advance.
 
Back
Top