Crimbo 2010

Fluxxdog

Active member
I have a cleaner one if you like. Many less server hits and emulates exactly how I am fighting with 2 clicks:
PHP:
void Crimbo2010(){
	Print("Crimbo 2010, Wasting Adventures the Easy Way","blue");
	if( !contains_text( visit_url( "mountains.php" ) , "crimbcohq.gif" ) ){
		print( "I'm sorry, Crimbo2010 is currently closed!","red" );
		return;}
		
	int start_boredom_level(){
		matcher Boredom=create_matcher("Boredom:</td><td><b><font color=blue>(\\d+)%", visit_url("charpane.php"));	
		if(Boredom.find()) return to_int(Boredom.group(1));
		return 0;}
	
	int total_boredom_level=start_boredom_level();
	while( total_boredom_level < 50 && my_adventures()>0 ){
		bbsaction();
		string page_text = visit_url( "adventure.php?snarfblat=247" );
		if( contains_text( page_text , "Combat" ) ){
			buffer finale=visit_url("fight.php?action=macro&macrotext=use facsimile dictionary; repeat !pastround 9; attack; repeat");
			matcher boredom_test=create_matcher("<td valign=center><b>Boredom \\+(\\d+)%", finale);
			if(boredom_test.find()){
				total_boredom_level+=to_int(boredom_test.group(1));}
			print("Boredom level:"+total_boredom_level);}
		else if( contains_text( page_text , "choice.php" )  ) abort("Unknown Choice");}
	print("Done!");}
You hit once to check for the HQ, once to get your boredom level, then 2 per adventure (once to start the fight and once again to send the macro). Your boredom level is returned from the fight results page rather than reloading the charpane each time. I wouldn't recommend using this with a lanyard, but this'll let you stasis if you're going for anything else, like getting drops from Crowned familiars.

Right now, combat scripts can fail because monsters aren't in the system yet. SS makes mafia freak because it's asking for a "bad monster value".

A couple things to note. First, I set the adventures to 50 because I'm hitting tea to keep my boredom down (designated faxer). Second, the "bbsaction()" is from an imported script. Use your own or delete it as needed.
 

mredge73

Member
Good idea on parsing the fight page for boredom, cuts down on a few hits.
Too bad that you cannot use your CCS with this method, you have to hard code your fighting strategy.
 

mredge73

Member
I know that automating Crimbo automation is always a Grey area, some years it is not supported and others it is fully automated (2009).
Opinion is usually split down the middle on which way to go, can we discuss it on another thread?
 

Grotfang

Developer
I know that automating Crimbo automation is always a Grey area, some years it is not supported and others it is fully automated (2009).
Opinion is usually split down the middle on which way to go, can we discuss it on another thread?

Why not discuss it here so it is kept in one place? Your script allows the content to be fully automated. If you concede that opinion is usually split down the middle, releasing this script fairly conclusively declares opposition opinion to be worthless.

The existence of clan VIP content in the crimbo store means more multis will be used to enable clans to get the content without an individual having to sacrifice profit/items. Mafia facilitating that isn't helpful to its reputation -- we typically do things to reduce lag, not add to it.
 

StDoodle

Minion
My interpretation only, but I've been given the impression that the deciding factor on whether or not KoLmafia would allow automation for holiday content had historically been based on 1) whether said content was limited to a given number of adventures per day by KoL itself and 2) Whether there was a serious potential for multi-abuse fueled acquisition (ie significant content that would help more than that account itself). In the past, my impression is that if a holiday didn't have #1 and did have #2, then KoLmafia would not support it, and the /devs of KoLmafia would not support publicly posting ways to automate it. So in my opinion, this particular holiday looks like one that shouldn't be automatable out-of-the-box or via public scripts.
 

Grotfang

Developer
Looks to be straight down the middle again.

Currently: 3 vs 3

a) That's a crazy way of looking at it. Engage with what's said, please.
b) The only example of mafia supporting crimbo as far as I'm aware is last year, and StDoodle has already explained why that's a special case.
c) Even if it is exactly an even split, why should you then have the casting vote?

Note, please, that any discussion will always be related not to whether you as an individual should be able to automate -- of course that would be futile. Instead why should you post publicly on HOW to automate?
 

heeheehee

Developer
Staff member
Either way, it's not a matter of being able to automate vs. not being able to automate. Folks will be able to automate regardless. It's more of allowing the folks who wouldn't otherwise automate (i.e. due to inability to do so / unwillingness to script on own time). Isn't Crimbo lag bad enough as it is?
 

Theraze

Active member
Personally I prefer cutting the time I'll spend down to 2-5 minutes instead of 30. If I'm going to do it regardless, running it faster is in my best interest, at least...

When it comes to making it easy in general, it all depends. I don't want to see posts from the area creators saying that we're making them depressed. That's a great time to pull all public copies of the script. Until then, it's a more fuzzy choice. I'd sort of like the backend stuff to be more supported (items added to the main daily build as soon as found, etc) and it to say out of the adventuring tab, to at least force a bit of automation work if you're going to do it.
 

Fluxxdog

Active member
My $.02 for what it's worth. I look at it like sex education. Do you arm your kids with knowledge knowing that exposure to it may encourage them, or hope that they won't do it at all if you don't mention it? Myself, I'd rather say say "Here's a rubber so you don't screw up yours and some girl's life" than pray that my kid remains celibate until he's married.

The first script's been posted. Unless a mod deletes the posts (or the providers remove the posts themselves), it should fall to us to refine the scripts to minimize the impact. Scripting is gonna happen regardless, why not provide the best example we can? The one I provided (not counting bBS activity) needs at most 102 hits over a 50 adventure run or 202 hits over 100 adventures. If we can cut that down further, let's cut it down. (Honestly, I'm inclined to get rid of the first part that hunts for the HQ image. That's save 1 hit, but that's still 1 hit.)
 

Veracity

Developer
Staff member
For what it's worth, I've outright asked Jick if it is OK for me to submit the adventure zone. He's yet to respond to a kmail from me, so I am not sanguine about getting a response this time, either. However, Eleron has offered to ask him directly in /dev on my behalf, so perhaps I'll get an answer, by and by.
 

StDoodle

Minion
Again, this is just my impression... but KoLmafia is not a democracy. If the public faces of KoLmafia say "this is how we do things," then, well.... that's how they're done. If you don't like it, as a BSD project, you're free to fork it. I'm not trying to say "I don't feel mafia should be able to automate Crimbo or be associated in any way with doing so," I'm saying "The devs seem to have made their opinion clear on the matter, and I'd like to respect it."
 
Either way, it's not a matter of being able to automate vs. not being able to automate. Folks will be able to automate regardless. It's more of allowing the folks who wouldn't otherwise automate (i.e. due to inability to do so / unwillingness to script on own time). Isn't Crimbo lag bad enough as it is?

As far as I've seen it's non-existent this year. Besides it's not like it take mafia to automate this. One could just as easily use click saver plus for Greasemonkey to adventure in crimbo town. I'm pretty sure it's easier to write mafia scripts in a manner that minimizes server hits than to do the same with click saver.
 
Last edited:
Top