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

Theraze

Active member
get autoBuyPriceLimit will show you what you have set. I was somewhat sure it's somewhere in the GUI, but I'm not finding it in the Item Manager or Preferences currently.

As per usual, set using either get autoBuyPriceLimit=20000 (the default) or set autoBuyPriceLimit=20000. Get and Set both do exactly the same thing. 20k is just a recommendation - pick whatever you want, as long as it's at least 5k if you want BCA to be able to buy it automatically. :) Mine is currently set to 10k because that works fine for me and my aliases will adjust aBPL automatically when it needs to be in the 3-4 million meat range. Heh.
 

snooty

Member
All were set at the default of 20k when I checked them. Mafia has some settings that are universal, so I checked each toon individually to be certain. Also, go, daddy Warbucks with your 4mil autobuys! Dayum!
 

snooty

Member
Ok, still not buying the documents, doing a mox/normal/standard run, and BCA is kind of...freaking out a bit at a boo peak. It's maximizing for hp, which I get, but aborts and won't handle the noncombat it just buffed for. My mus runs had no issue, worked completely fine. Also, is there a trick to getting BCA to obtain the library key without spending all turns there or doing it manually?
 

Theraze

Active member
Seems you have... something... that breaks lots of things. No clue what. Let's just see if we can trace it down. Many questions will be repeats, but that's fine-ish.
1) You're running in Hardcore or in Softcore with run SC as HC? Or are you running this in pure SC mode and dealing with all of the outfit swaps and other joy yourself?
2) You've allowed purchases from NPCs, possibly coinmasters, and have a reasonable autoBuyPriceLimit?
 

snooty

Member
I know, right?! I still have no clue why BCA won't buy the ID, and I'm not sure where these breakdowns are occurring. It's very frustrating, but, I generally come here only when time permits, so, *super* sorry for delays!!
1) SC with run SC as HC on, dealing with stops as they occur, will try to write them all down next time.
2) Yes, always have, yes to coinmasters, and I never changed the autoBuyPriceLimit from the original 20k as set by mafia. Meat on hand is usually around 60k by that point, which I don't closet or turn into stacks because why would anyone do that anyway?

How on earth do we find the thing that is breaking all the things? So frustrating! Thanks for trying to help me figure this out, Theraze!
 

Theraze

Active member
It's not BCA failing to buy the ID, it's your mafia settings stopping it. You've clearly shown that with your 5373. :) To break that down...
1) You told mafia to use normal acquisition logic to get the ID. It said no.
2) You told mafia to buy the ID ignoring any other restrictions you've placed. It bought it with no problems.

Logically, that means that some part of our question 2 is failing. Hmm, how can we try to check that some more... How about this in the gCLI tab?
ash get_property("autoBuyPriceLimit").to_int()
> ash get_property("autoBuyPriceLimit").to_int()

Returned: 10000
Maybe a comma ended up turning your 20k into 20 or something else similarly confusing.
 

snooty

Member
But, that's so weird. I changed nothing with the price limit, I never even knew that was a thing that could be changed till you mentioned it. Will check the toons today, and edit this later with the results.
 

Theraze

Active member
Hmm. So mafia knows/has the right price, but still doesn't want to acquire it even though... *blinks* Only real thing I can easily think of is some sort of funky beforeBattle/afterAdventure/postAscension script that's messing with your acquire locations, since you've checked on your end and repeatedly said that when you look, the acquire locations are all permitted.

The easiest solution for you would be that, when it aborts, buying it with the buy command and then just re-running BCA immediately. Unless you can figure out what's going on with your acquisition settings.
 

snooty

Member
That's what I normally do anyway. Could Mr. Script be an issue? It's old, don't even know if it's still maintained, just never bothered to get rid of it because of the positive things it does. Regardless, how do you get BCA to handle getting the library key? No matter which setting I choose, it will waste an entire day's advs in the billiards room if I have to step away for too long. I was doing it manually, but if I forget, that's a day wasted. Bring on the dark, profane rituals, I don't care what it takes at this point, the less fiddly the better!
 

Theraze

Active member
Might be whatever you've got that's messing stuff up. I get the key successfully without wasting turns... Might be Mr Script messing you up, might be something else.

Alternatively, do you have any before battle or after adventure script set? Maybe something there is doing confusing things. Or maybe BBB is making the billiards awesome for me and I just haven't ever noticed BCA failing because I've used that since around when it came out, though I do put it through a wrapper to add a few custom bonus bits. :)
 

snooty

Member
What's BBB? And, I do not have any before battle or after adventure script set as far as I know. I guess it's possible I (again) have something old that I've forgotten, but, I don't think so. A lot of us might be interested in those custom bonus bits, btw ;)

Edit: Found BBB, looking forward to the next run now, fingers crossed!
 
Last edited:

Theraze

Active member
For my beforeBattle, it's importing BBB plus flavourScript to improve spell tuning. Though I also have flavour which looks more updated. Commented out the flavourScript import and changed to flavour for now. We'll see if that does better.
For my afterAdventure, it's importing drinkKOLHSBooze, restoring my default (goals) entry for olfaction after it triggers, auto-closeting anything that's already in the closet if not in run (Except bowling balls. Those always closet so we can sell them while farming in aftercore.), pulling everything automatically if we can interact and have storage meat, fixing barrels if we're in the old barrel.php (that can get pulled now, but the old barrels used to get out of sync when playing automated fairly often), and repeating combat if we're fighting clingy monsters.

That's basically it for now.
 

snooty

Member
Ooooh, which restores default goals? Or, is that something you added yourself? I just got BBB and Bale's new life yesterday, not really familiar with them yet, ascension for me isn't for another three weeks or so. Also, "clingy" monsters`Like ED THE UNDYING?
 

fronobulax

Developer
Staff member
Edge case and may be an interaction with BBS (or BBS itself, rather than BCCA).

Ran a bunch of turns manually, including bridging the chasm. Got bored and decided to let BCCA finish the run. Checked the BCCA settings and ran it. It used a smut orc keepsake box that happened to be in inventory as part of its attempt to determine whether the chasm was bridged, or not. Since the bridge was in place, this was a waste of a box.

Reporting here because BCCA was in control.
 

Theraze

Active member
Ooooh, which restores default goals? Or, is that something you added yourself? I just got BBB and Bale's new life yesterday, not really familiar with them yet, ascension for me isn't for another three weeks or so.
This needs touchup and some fixing, since it's not very smart but it's better than nothing. I'm not at the mental code level right now to consider what I did and why. :) I think the goal was adding 'goals' to autoOlfact if we have a set goal and goals isn't in the aO preference yet.
Code:
boolean auto_olfact() {
	if (!have_skill($skill[transcendent olfaction])) return false;
	if (get_property("savedOlfact").length() > get_property("autoOlfact").length()) set_property("autoOlfact", get_property("savedOlfact"));
	string olfact = get_property("autoOlfact");
	if (count(get_goals()) > 0) {
		if (olfact == "")
			set_property("autoOlfact", "goals");
		else if (!olfact.contains_text("goals"))
			set_property("autoOlfact", olfact + ", goals");
		return true;
	}
	return false;
}

void save_olfact() {
	string olfact = get_property("autoOlfact");
	if (olfact != "" && olfact != "goals" && olfact.length() > get_property("savedOlfact").length()) set_property("savedOlfact", olfact);
}
And the second question...
Also, "clingy" monsters`Like ED THE UNDYING?
Code:
void fight_clingy() {
	if (last_monster().random_modifiers["clingy"]) run_combat();
}
Nope, OCRS monsters that randomly fight you again without warning. If the monster has the 'clingy' random modifier, you'll need to fight it over and over again, until it's not clingy.
 

fronobulax

Developer
Staff member
Nit.

Set BCCA to skip steel.
BCCA decides it wants to level in the Laugh Floor.
BCCA aborts because it cannot get there.
I manually visit the ritual location in the relay browser.
Restart BCCA and it is happy to adventure in the Laugh Floor.

Hypothesis - a page visit is required to actually open Hey Daze. The visit happens if the steel quest is started but not otherwise.
 
Top