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

Theraze

Active member
I notice nothing. :D But there's a slight possibility that, anytime I update a script that I think there's the possibility I've tweaked, it gets run through a file comparison program before the old version is replaced. :p
 

Winterbay

Active member
I notice nothing. :D But there's a slight possibility that, anytime I update a script that I think there's the possibility I've tweaked, it gets run through a file comparison program before the old version is replaced. :p

Yeah, I still have mine set up to just consider a limited amount of SRs in Hardcore and so noticed that there were more things that had changed than just the hidden city :)
 

Donavin69

Member
CC needs to be updated with the new hidden city info: (but it did stop my automation so I could go get it manually THANK BALE)
PHP:
Multiple matches against Hidden City.
Bad     location value: "Hidden City" (CounterChecker.ash, line 78)[B][/B]
 

Donavin69

Member
ok...I feel like an idiot...I downloaded the newest one before I posted...but forgot to move it to my scripts folder....*blush*
 

groli

New member
Using CounterChecker with bumcheekascend, I find that kolmafia doesn't get SRs or even stop to allow me to make the choice manually.
Is there a setting in CounterChecker that could fix this, please?
 

Theraze

Active member
If you want it to get SRs, turn on BaleCC_SrInHC, like it says.
if(!can_interact() && vars["BaleCC_SrInHC"] != "true") {
print("Semi-rares choices are not automated in hardcore or ronin.", "red");
print_html("<font color=\"FF9900\">Your last semi-rare adventure was at <u>"+get_property("semirareLocation")+"</u>, so plan accordingly.</font>");
return false;
} else {
get_semirare();
return true;
}
 

groli

New member
So with that it will stop adventuring (despite bumcheekascend.ash) and let me choose where to get my SR, right?

Thanks!
 

Bale

Minion
Nope. That is not what Theraze said. Please engage your reading comprehension since I cannot think of a better way to phrase it.

I blame bumcheekascend for not allowing counters to abort adventuring. If you were simply automating adventuring from the adventuring tab of the GUI then it would abort as expected. If you were not using a counter script at all, that script would still continue adventuring instead of stopping for you, even though vanilla mafia will stop. Since only bumcheekascend would require a counter script to throw an abort to stop its automation, it is clearly a bug in bumcheekascend.

I do find it a bit annoying every time someone in that thread blames CounterChecker for BCC's failure. Perhaps BCC should provide a counter script that simply aborts automation since that is what he desires to work around his bug.
 

Theraze

Active member
It happens anytime a script uses a while loop instead of just using adventure(my_adventures(), $location).

Basically, groli, if you want to mutilate CC to abort, replace the part where it says that you have to automate with an abort(); and it will abort there. But that's not a bug with CounterChecker, as Bale said, it's an issue with the script you're running to automate adventures not actually paying attention to success or failure and just motoring on.
 

groli

New member
Sorry, my wishful thinking went in the way of my reading ability X-/
I'm not blaming anyone, I'm just trying to implement a feature that corresponds to my needs.

As I understand it,I should replace get_semirare() with abort() in this part of the code (line 726+):
Code:
	case "Fortune Cookie":
		if(!can_interact() && vars["BaleCC_SrInHC"] != "true") {
			print("Semi-rares choices are not automated in hardcore or ronin.", "red");
			print_html("<font color=\"FF9900\">Your last semi-rare adventure was at <u>"+get_property("semirareLocation")+"</u>, so plan accordingly.</font>");
			return false;
		} else {
			[COLOR="#FF0000"]get_semirare()[/COLOR];
			return true;
		}
Am I doing this at least marginally right? :confused:

Also, am I right in thinking that the CounterChecker in HC would still go for the SR with the highest mall price rather than ascension need?

Thanks for your help, guys.
 
Last edited:

Bale

Minion
Well, that is the right way to do it if you set BaleCC_SrInHC to true. However it would make more sense to make it false since you don't want to automate them. That means putting the abort right before "return false;"

And yes, if this was to automate in HC, it would chose by value. That's why it isn't recommended for HC.
 

Winterbay

Active member
Or why you have to go in and restrict the list of semirares to the ones your interested in while in HC. I always fail at remembering where the semi-rares are so having the script automatically pick from ones I know I want is the best thing ever :)
 

groli

New member
Well, that is the right way to do it if you set BaleCC_SrInHC to true. However it would make more sense to make it false since you don't want to automate them. That means putting the abort right before "return false;"

And yes, if this was to automate in HC, it would chose by value. That's why it isn't recommended for HC.

Thanks, Bale! :)
 

stannius

Member
In this block
Code:
	foreach locale, rare in semi_rare {
		if(locale == last_rare || !canadv(locale)) continue;
		if(historical_age(rare) > 1 || historical_price(rare) == 0)
			mall_price(rare);
		rare_price = historical_price(rare) * ((rare_quant contains rare)? rare_quant[rare]: 1); 
		if(rare_price > expensive) {
			best = locale;
			expensive = rare_price;
		}
	}

What is the purpose of the lines
Code:
		if(historical_age(rare) > 1 || historical_price(rare) == 0)
			mall_price(rare);
?
It seems that the return value from mall_price isn't used for anything? Or is that what loads up historical_price? Why not just use mall_price directly? Since it pulls the value from cached data anyways? Aren't questions great?
 
Last edited:
Top