bumcheekcend.ash - A zero setup semi-automated ascension script!

fronobulax

Developer
Staff member
The unlock checks for the second floor zones now all use the official mafia quest steps rather than the BCA preferences, and I think it was several months ago that I removed the "if you're above 120 primestat, consider the clover zones to be unlocked always" logic. So... if this is still happening, need more information.

I'll watch but the absence of the word "recently" suggests to me that it was fixed and that I just didn't figure that out yet.
 
I am trying to run the script, but it keeps attempting to get a tree-holed coin, but I have already completed all those quests. I am currently level 8. I reformatted my computer and installed most of the scripts. I'm wondering if I'm missing something that could be triggering this.

BCC: Ensuring that warnings that you don't have enough stats are disabled.
******************
Ascending Starting
******************
Conditions list cleared.
Level 1 Starting
BCC: We have completed the stage [toot].
BCC: We have completed the stage [guild].
BCC: We have completed the stage [knob].
BCC: levelMe(5, true) called.
Level 2 Starting
BCC: Maximizing ''
Maximizing...
12 combinations checked, best score 70.97
BCC: Switching Familiar for General Use
BCC: Using a default stat familiar.
BCC: Nothing to fax according to whatShouldIFax
Resetting mind control device...
Mind control device reset.
Cleared mood.
Cleared mood.
Set mood trigger: When I get Just the Best Anapests, uneffect just the best anapests
Set mood trigger: When I run low on Go Get 'Em, Tiger!, use 5 Ben-Gal™ Balm
Set mood trigger: When I run low on Seal Clubbing Frenzy, cast 1 Seal Clubbing Frenzy
Purchasing Ben-Gal™ Balm (5 @ 24)...
You spent 120 Meat
You acquire Ben-Gal™ Balm (5)
Purchases complete.
Using 5 Ben-Gal™ Balm...
You acquire an effect: Go Get 'Em, Tiger! (15)
Finished using 5 Ben-Gal™ Balm.
Mood swing complete.
Mood swing complete.
BCC: Let's get a Tree-Holed Coin
Conditions list cleared.
BCC: Setting goals of '1 choiceadv'...
Condition added: Choices Left: 1
BCC: We should set the MCD if we can.
BCC: We CAN set the MCD.
Resetting mind control device...
Mind control device reset.

Restoring MP! Currently at 153 of 170 HP, 6 of 68 MP, current meat: 2211 ... Target MP = 41.
Purchasing Doc Galaktik's Invigorating Tonic (4 @ 90)...
You spent 360 Meat
You acquire Doc Galaktik's Invigorating Tonic (4)
Purchases complete.
Using 4 Doc Galaktik's Invigorating Tonic...
You gain 41 Muscularity Points
Finished using 4 Doc Galaktik's Invigorating Tonic.

Request 1 of 11 (Woods: The Spooky Forest) in progress...

[361] The Spooky Forest
Encounter: warwelf
Strategy: /Users/X/Library/Application Support/KoLmafia/ccs/WHAM.ccs [default]
Round 0: X wins initiative!
WHAM: Running SmartStasis
WHAM: Starting evaluation and performing of attack
WHAM: We are going to 1-shot with Clobber.
Round 1: X executes a macro!
Round 1: X casts CLOBBER!
Round 2: warwelf takes 19 damage.
Round 2: X wins the fight!
You gain 14 Meat
After Battle: Tort smiles at you. His smile is infectious (rats are a common vector for that sort of thing) and you can't help but grin a little yourself. (+6 Stats)
After Battle: You gain 11 Fortitude
After Battle: You gain 2 Wizardliness
After Battle: You gain 3 Cheek
 
If you do a quest outside the script you need to use the alias to tell mafia the quest is completed. Someone else will need to show the command
 
If you do a quest outside the script you need to use the alias to tell mafia the quest is completed. Someone else will need to show the command

How do I use the alias? I think the fact that I downloaded a fresh version of KOLMafia makes it so that I need to manually set the completed quests.

Conditions list cleared.
Level 1 Starting
BCC: We have not completed the stage [toot].
trapperOre =>
lastChasmReset => 17
BCC: We have completed the stage [toot] and need to set it as so.
bcasc_stage_toot => 17
BCC: We have completed the stage [toot].
BCC: We have not completed the stage [guild].
BCC: Switching Familiar for General Use
BCC: Using a default stat familiar.
BCC: We have completed the stage [guild] and need to set it as so.
bcasc_stage_guild => 17
BCC: We have completed the stage [guild].
bcasc_lastCouncilVisit => 17014
BCC: We have not completed the stage [knob].
BCC: We have completed the stage [knob] and need to set it as so.
bcasc_stage_knob => 17
BCC: We have completed the stage [knob].
BCC: levelMe(5, true) called.
Level 2 Starting
BCC: We have completed the stage spookyforest
BCC: levelMe(8, true) called.
Level 3 Starting
BCC: We have completed the stage tavern
BCC: levelMe(13, true) called.
Level 4 Starting
BCC: We have not completed the stage [bats1].
Using sonar-in-a-biscuit (1 of 3)...
Using sonar-in-a-biscuit (2 of 3)...
Using sonar-in-a-biscuit (3 of 3)...
Finished using 3 sonar-in-a-biscuit.
BCC: We have completed the stage [bats1] and need to set it as so.
bcasc_stage_bats1 => 17
BCC: We have completed the stage [bats1].
BCC: We have not completed the stage [meatcar].
BCC: We have completed the stage [meatcar] and need to set it as so.
bcasc_stage_meatcar => 17
BCC: We have completed the stage [meatcar].
BCC: We have not completed the stage [bats2].
BCC: We have completed the stage [bats1].
BCC: We have completed the stage [bats1] and need to set it as so.
BCC: We have completed the stage [bats1].
BCC: We have completed the stage [bats2] and need to set it as so.
bcasc_stage_bats2 => 17
BCC: We have completed the stage [bats2].
BCC: We have not completed the stage [8bit].
BCC: We have completed the stage [8bit] and need to set it as so.
bcasc_stage_8bit => 17
BCC: We have completed the stage [8bit].
BCC: levelMe(20, true) called.
Level 5 Starting
BCC: We have not completed the stage [knobking].
BCC: We have completed the stage [knobking] and need to set it as so.
bcasc_stage_knobking => 17
BCC: We have completed the stage [knobking].
BCC: We have not completed the stage [dinghy].
BCC: We have completed the stage [dinghy] and need to set it as so.
bcasc_stage_dinghy => 17
BCC: We have completed the stage [dinghy].
BCC: We have not completed the stage [manorbilliards].
BCC: We have completed the stage [manorbilliards] and need to set it as so.
bcasc_stage_manorbilliards => 17
BCC: We have completed the stage [manorbilliards].
BCC: levelMe(29, true) called.
Level 6 Starting
BCC: We have not completed the stage [friars].
 

Theraze

Active member
Nope, it's mafia that just doesn't know it. Code says...
Code:
	while (!contains_text(visit_url("woods.php"),"hiddencitylink.gif") && my_adventures() > 3) {
		if (to_int(get_property("lastTempleUnlock")) != my_ascensions())
			bcascOpenTemple();
		traverse_temple();			
	}

Though that link-check probably needs to be updated to use the proper new place.php spot, but... the temple unlock preference is pure mafia.
 

lostcalpolydude

Developer
Staff member
If you update
Code:
visit_url("woods.php")
with
Code:
visit_url("place.php?whichplace=woods")
then mafia will update lastTempleUnlock before you check it in that block.
 

Theraze

Active member
Thinking I'll probably change the .gif unlock checks to $location[].to_url for futureproofing. Whenever I ascend next again. I've been lazily wasting time instead.
 
If you update
Code:
visit_url("woods.php")
with
Code:
visit_url("place.php?whichplace=woods")
then mafia will update lastTempleUnlock before you check it in that block.

I'm assuming i should look for this in the bumcheekascend script?

On Macs, how do I access the scripts folder? I open up KOLMafia through a .jar file on my desktop, but I can't find any folders. If I go to Scripts > Load Scripts, I can see a scripts does exist somewhere.
 
Last edited:

lostcalpolydude

Developer
Staff member
I'm assuming i should look for this in the bumcheekascend script?

No, Theraze should update that for everyone. All you need to do is look at the woods in the relay browser to fix your case for right now.

Also, your scripts folder is in ~/Library/Application Support/KoLmafia. Last I remember, Finder made that folder harder to find in later versions of OS X after we decided to put stuff there, but I don't have a Mac to check on that.
 
No, Theraze should update that for everyone. All you need to do is look at the woods in the relay browser to fix your case for right now.

Also, your scripts folder is in ~/Library/Application Support/KoLmafia. Last I remember, Finder made that folder harder to find in later versions of OS X after we decided to put stuff there, but I don't have a Mac to check on that.

Thank you so much, that seemed to fix it. It's surprising how just visiting the page manually would solve that.
 

Theraze

Active member
Since it's using the official mafia value, looking at the relay browser through mafia updates (most of) those values. If you find any with unlocks that it doesn't, something probably changed in KoL and nobody's noticed the new content yet. But KoL does like to change things.
 
Bug and fix

Ran into an issue playing one of the old special challenge paths. BCA would try to get pixie sticks even though I had less than 10. Naturally, it failed and was stuck in a continuous loop.

Version 0.56:
Code:
2302:      while (my_spleen_use() < maxspleen-3 && (available_amount($item[coffee pixie stick]) > 0 || item_amount($item[Game Grid token]) > 0)) {

Fix
Code:
2302:      while (my_spleen_use() < maxspleen-3 && (available_amount($item[coffee pixie stick]) > 0 || item_amount($item[Game Grid token]) > 9)) {
Don't know if ">=10" would be better.
 

lostcalpolydude

Developer
Staff member
You use tokens to make the purchase, not tickets, so that line is correct. The problem is two lines later.
Code:
visit_url("arcade.php?action=skeeball&pwd="+my_hash());
KoL changed that URL to use place.php. The URL could be updated to be correct, or it could be changed to
Code:
cli_execute("skeeball");
to let mafia take care of the updating when it changes.
 

Fluxxdog

Active member
Around line 7251:
Code:
	if (get_property("dailyDungeonDone")!="true" && my_level() > 6 && get_property("bcasc_dailyDungeonEveryday") == "true") {
		cli_execute("adv * daily dungeon");
	}
There no check to see if the dungeon has been done today already if you set it to do the dungeon daily. I changed mine to:
Code:
	if (get_property("dailyDungeonDone")!="true" && my_level() > 6 && get_property("bcasc_dailyDungeonEveryday") == "true") {
		cli_execute("adv * daily dungeon");
	}
 
There seems to be a bug in function bcs7.
The script tests
Code:
if(bcasc_bedroom) {
rather than
Code:
if(!bcasc_bedroom) {
which it does elsewhere.
 
Last edited:

Theraze

Active member
Nope. That's a setting for doing the second floor quests as soon as they're available. If you've told the script to do them at level 7, it does. Otherwise, it runs them at level 11. No bug. Flipping that would make that you might NEVER unlock the second floor of the manor... that would be bad.
 
I'm having a problem with CCS combat. Most of the ascension has been good but I'm suddenly getting this error in the Hidden City:

[1008] The Hidden Apartment Building
Encounter: pygmy witch lawyer
Strategy: D:\KolMafia\ccs\EoDMoxieDBAscend.ccs [default]
Round 0: Gnocchi Masala wins initiative!
Round 1: Your opponent gets a bit distracted from having to shoo away some of Frank's reanimated monster wings, which keep trying to perch on him.
Round 1: pygmy witch lawyer drops 3 attack power.
Round 1: pygmy witch lawyer drops 3 defense.
Round 1: Frank produces a tubular red firecracker labeled M-46, lights the long fuse, and tosses it behind your opponent.
BCC: Round: 0 Opp: pygmy witch lawyer
BCC: You have selected to do casual runs like hardcore (using your CCS). Feel free to change this setting in the relay browser if you want a one-day-casual set of runaways..
You don't have enough null
You're on your own, partner.
Click here to continue in the relay browser.

My CCS for this area is:

Code:
[ default ]
call checkfamiliar
attack with weapon

[ global prefix ]
sub checkfamiliar
    if hasskill release the boots
        skill release the boots
    endif
    if happymediumglow red
        skill siphon spirits
    endif
endsub

The relevant piece of code is:

Code:
string consultCasual(int round, string opp, string text) {
	print("BCC: Round: "+round+" Opp: "+opp, "purple");

	if (get_property("bcasc_doCasualAsHC") != "false") {
		print("BCC: You have selected to do casual runs like hardcore (using your CCS). Feel free to change this setting in the relay browser if you want a one-day-casual set of runaways..", "purple");
		return get_ccs_action(round);
	} else {

If I comment out "return get_ccs_action(round);" it works again but I can't understand why. Can anyone throw any light on this please?
 

Theraze

Active member
Your CCS script is trying to do something that doesn't work. As to what that is... no clue. WHAM works great.
 
Top