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

slyz

Developer
What I understood was:

- you are a PM
- the Maximizer fills your offhand with a Necrotelicomnicon, which tunes all spell to Spooky
- your spells do 1 damage against Spooky monsters

I agree that items that tune spells should be avoided. Unfortunately, there is no programmatic way of telling if an item tunes spells, so a hardcoded list is needed.
 

heeheehee

Developer
Staff member
Mafia's modifiers database could be extended to also report pasta / sauce elemental tuning, but unless I'm mistaken, there's no way to use string modifiers in maximizer expressions (is there?), so this wouldn't actually solve the problem directly.
 

Winterbay

Active member
Well, I guess since we already make sure not to tune pastamancers to cold spells when going up against cold monsters I guess we could avoid using specific books when we know we are going up against their respective monsters.
 
Are you using WHAM or the built-in consult?

WHAM, but I doubt the BCA consult, or any other consult script, could finish combats efficiently in my situation. Like I said, no shieldbutt, spells do 1 dmg, and my muscle is too low to hit (BIG!). Only thing left is combat items- which is how I finished when WHAM didn't know what to do, but I don't want it to spend all my divine summons considering how many spooky monsters there are.


Thanks for the help folks, I'm surprised you're even considering it, being such a small issue.
 

Crowther

Active member
Ran a mostly BCC Big! run and while I took control a few places, it was pretty smooth. Not very optimal, but fun. I only made one change to the script and that was turning off main stat buffs at level 15. I know that low skills players will need those, but I ran out of meat almost immediately. Softcore, so I just pulled and sold a dictionary. Once I turned off those buffs, I started gaining meat anyway.

By hand, I did the ballroom song earlier and got the flier as soon as BCC hit the palidome. I also aborted to plant a few flowers. I'd love automated flower support, but I've no suggestions on how to implement that. I figured mafia tracking would have to come first anyway.

It was darn strange doing a run at level 15. Very strange.
 

Crowther

Active member
There's no need to unlock the gallery in BIG!

EDIT: Ha! Just did a three-day softcore BIG! getting both a sea outfit piece and nemesis karma. Oh, and another dictionary too. I ran some stuff by hand, but it was mostly script based. Awesome!

EDIT2: I'm looking through my changes to bumcheekcend and here's one:

I made sellJunk() return right away if Can_Interact() is true, then I added "small box, pile of candy, Knob Goblin lunchbox, ancient vinyl coin purse" onto the list of things to automatically use. I'm not sure if all those items are a good idea for everyone, but it wasn't good when thousands of things got used/autosold during my first casual run.

Most of my changes relate to buffs. I also have a lot of changes related to ML, which might not be needed any more. I really need to clean up things. Someday. . .
Code:
Index: bumcheekascend.ash
===================================================================
--- bumcheekascend.ash  (revision 256)
+++ bumcheekascend.ash  (working copy)
@@ -2581,11 +2581,12 @@
 }

 void sellJunk() {
+       if (Can_Interact() == True) return;
        if (my_path() == "Way of the Surprising Fist") return;
        foreach i in $items[meat stack, dense meat stack, meat paste, magicalness-in-a-can, moxie weed, strongness elixir] {
                if (item_amount(i) > 0) autosell(item_amount(i), i);
        }
-       foreach i in $items[Old coin purse, old leather wallet, black pension check, warmsubject gift certificate, Penultimate Fantasy chest] {
+       foreach i in $items[Old coin purse, old leather wallet, black pension check, warmsubject gift certificate, Penultimate Fantasy chest, small box, pile of candy, Knob Goblin lunchbox, ancient vinyl coin purse] {
                if (item_amount(i) > 0) use(item_amount(i), i);
        }
 }
@@ -6508,7 +6509,7 @@
        set_property("choiceAdventure80", "99"); //(Rise) - this always needs to be set. It's Fall that has the conservatory adventure.
        set_property("choiceAdventure87", "2");  //(Read Fall) - May as well always set this to read Chapter 2.

-       if (my_primestat() == $stat[Muscle] || my_path() == "Bugbear Invasion") {
+       if ((my_primestat() == $stat[Muscle] && my_path() != "BIG!") || my_path() == "Bugbear Invasion") {
                //If you're a muscle class, then you'll need to open the conservatory. It's an auto-stop.
                while (get_property("lastGalleryUnlock") != my_ascensions()) {
                        set_property("choiceAdventure81", "1"); //(Fall) Get the Gallery adventure.
 
Last edited:

fronobulax

Developer
Staff member
r270 and r12136

Bad Moon, Accordion Thief although I don't think that is relevant. BCCAscend ran through the Highlands quest as expected. It then went to do the Baron, as expected. It got stuck in a loop because it tried to use the scroll and the Baron did not "accept" that as ending the quest because I had no dictionary. I manually got the dictionary, completed the quest and then things worked. This has actually happened to me more than once and with other characters, classes and paths.

While I was earning meat to do the above, I adventured to get an enchanted bean, Used it from the Recent list in Item Manager and adventured manually in the airship. After getting meat and then the dictionary, I turned things over to BCCAscend. I got a popup that said something to the effect that "KoLmafia thinks you don't have an enchanted bean. Do you want to adventure to obtain one?" I answered no and was stuck in a loop where I kept getting asked the same question until I finally said Yes and allowed it to spend adventures on something I already had.

My guess is this is not all BCCAscend's fault. One or more of the following may be occurring:

KoLmafia did not detect that the bean was Used when I used it from Item Manager.
BCCAscend checked for something else besides whether the Airship was available.
Either KoLmafia or BCCAscend did not realize that if they thought a bean was needed and the user did not give permission to get one then the best course of action was to stop automation.

Thanks.
 

Winterbay

Active member
The bean will be hunted for and used if "beanstalk.gif" is not found in "plains.php". The correct name for the beanstalk image is now "climb_beanstalk.gif" and the plains is "place.php?whichplace=plains", but plains.php is still valid and contains_text(plains.php, beanstalk.gif) returns true as well so that should not really be a problem.

If you had bridged the chasm with the scirpt, how did you not have a dictionary? I thought we bought and untinkered the dictionary to speed up the bridging...
 

lostcalpolydude

Developer
Staff member
12139 fixes mafia recognition that the beanstalk is open after using an enchanted bean. It was working for clicking on the pile of coffee grounds, and checking Other Accomplishments in your quest log was updating it already.
 

Theraze

Active member
If you had bridged the chasm with the scirpt, how did you not have a dictionary? I thought we bought and untinkered the dictionary to speed up the bridging...

Well, I did find yesterday that one of the dictionary checks was still looking for Q09Lol before buying the dictionary. Set it to M15Lol and committed r271.
 

fronobulax

Developer
Staff member
If you had bridged the chasm with the scirpt, how did you not have a dictionary? I thought we bought and untinkered the dictionary to speed up the bridging...

Now that you mention it I might have bridged the chasm manually and in my delightfully ignorant sub-optimal play style, I certainly did not make any attempt to speed the process with the dictionary.

But I do think is is bad practice for the script to keep trying to do something it knows needs a dictionary when it doesn't have one :)
 

Crowther

Active member
I'd noticed the script was using turns for mining in BIG! Turns out that flag is ignored if you're already level 12.
Code:
if (have_skill($skill[Unaccompanied Miner]) && willCostAdventure && have_effect($effect[Teleportitis]) == 0 && my_level() < 12) {
I'm not sure what the correct behavior would be. Spend turns if all the other quests are finished?
 

tripwood

New member
Got this message this morning...

Code:
scripts\bumcheekascend.ash
C:\jeux\kolmafia\scripts\bumcheekascend.ash

[scripts\bumcheekascend.ash]     has too many matches.

Tried removing the duplicata copy in the script folder and then calling "bumcheekascend.ash" and it worked.
 

Theraze

Active member
Was a mafia bug with 12170 that was fixed with 12171 (which was available five minutes before your post). Not a BCA bug in the slightest.
 
I know it's not a priority, but I'm grabbing the HCO rewards, and today I ran out of adventures before the script did any spleening (was busy IRL, so tried the script instead of manually running the turns).

Any way grabbing spleen can be a higher priority in Oxyruns, or say if you fire up the script and don't have many adventures?

Luckily I don't really care about turncount so much but I didn't want to blow one at level 7 so I could use my rogue program and grab some tokens. ;)
 
Top