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

That is the problem i have no idea what went wrong. I just logged in today and ran the scrpt while I went on to do other things, as always, and a few minutes later i went to check up on it and i saw all the turns spent and it still going on relentlessly. I paused and i went to the area myself to see what was going on and I saw that spookyraven was clear. It was the first thing it did as I ran the scrpt so if I had to guess it cleared it yesterday but it didnt save properly or something like that and when trying to run the script again it tried to start over.

anyways I have tried to use that command to change the setting but it doesn't work, I have tried both using the stage name given by the CLI and the one found inside the script itself, full commands being "bcasc_stage_macguffinspooky" and "bcasc_stage_bcascMacguffinSpooky"
 

Theraze

Active member
What command? Oh, you thought that was a command? Nope, those are the preferences.

If it was an issue with the MacGuffin quest, those would probably be the ones I referred to earlier today regarding the bad 9gb session log. It could never see that the item had been collected, because mafia's item_amount($item[name]) picks the wrong quest item which can never actually be obtained in that run. So now we're forcing specific objects by item id rather than letting mafia use its name recognition, since it picks wrong on all of the level 11 quest items.

Fix those issues with an svn update.
 

Winterbay

Active member
There is, iirc, an alias set by BCA to set a specific stage as done. I think it's called bcasc_set and used as
Code:
bcasc_set macguffinspooky
 

Theraze

Active member
As happened last time you suggested it... I once again point out that bcasc_set is not an alias that the script generates, and is instead something that you ran for yourself. :)
 

Theraze

Active member
It's been pointed out that we may not want to properly unlock the third floor of the manor, since it's not actually needed to adventure there currently, and it unlocks additional adventures which don't help your ascension directly. Opinions?
 

Theraze

Active member
If you have edit rights to the bcs_aliases map on kolmafia.co.uk, then sure. Just remember to bump the bcasc_version so that people will actually get your new aliases in there. :)
 

Winterbay

Active member
I do, but unfortunately the way that is set up (as I noticed when I looked at it yesterday) it needs a) a cli-name and b) a BCAscend function name. It thus needs to be hardcoded into the script. Will look at that when I get the time then :)

Also, if there are any settings that wants to be added I can do that as well.
 
I just discovered that the problem I had with the script and doing the Spookyraven part of the lvl 11 quest was not that it did not flag it as complete once doing it, but that the script never read the recipe and therefore was adventuring in the kitchen in hopes of getting the loosening powder, but it would not drop.
 

Crowther

Active member
I just discovered that the problem I had with the script and doing the Spookyraven part of the lvl 11 quest was not that it did not flag it as complete once doing it, but that the script never read the recipe and therefore was adventuring in the kitchen in hopes of getting the loosening powder, but it would not drop.
Since you mentioned that quest. I had a different problem. I set flag to take the shortcut, which it does, but if it aborts during the shortcut (timer), when I restart the script it takes the long method. I never got around to looking at the code.
 

Theraze

Active member
I haven't ever actually run the shortcut version which someone else made, but will probably do that when I go back to AoSP runs eventually. Whenever that happens, I'll look at the code and try to make it more robust.

But yeah, mafia picking the wrong identically named quest item is why it failed so hard on every stage of the L11 quest. :) Not just Spookyraven, but... everything.
I've since fixed that in BCA by doing a string lookup on the item number, since mafia complains when you try to choose the item by number rather than name.
 
I have an issue that at first I thought that the script just bugged out for some reason, but it is now the second ascension that it does this to me: even though I have the settings set up for it to automatically sell all the war items and then buy healing items, it does not do it and then I find myself fighting my shadow without any real combat healing capabilities and I have to waste a bunch of adventures farming red pixel potions
 

Theraze

Active member
So, what the script currently has is the following:
Code:
		if (get_property("bcasc_sellWarItems") == "true") {
			//Sell all stuff.
			if (bcasc_doWarAs == "hippy") {
				item_turnin($item[red class ring]);
<snip>
				item_turnin($item[beer bong]);
				buy($coinmaster[Dimemaster], $coinmaster[dimemaster].available_tokens/2, $item[filthy poultice]);
			} else if (bcasc_doWarAs == "frat") {
				item_turnin($item[pink clay bead]);
<snip>
				item_turnin($item[round green sunglasses]);
				buy($coinmaster[Quartersmaster], $coinmaster[Quartersmaster].available_tokens/2, $item[gauze garter]);
			}
		} else {
			if (!checkStage("prewarboss")) {
				checkStage("prewarboss", true);
				abort("Stopping to let you sell war items.  Run script again to continue. Note that the script will not fight the boss as Muscle or Myst, so do that manually to if appropriate.");
			}
		}
I never use it, because several of the items autosell or mallsell better than the coinmaster price, and I like meat more than I like having 50 war healing items on a hero run, but... I'd be tempted to change the war checks to just check if the uniform is available and if so, run the relevant code. Objections?
 

Crowther

Active member
I'm certainly not asking you to write it, but this is what I do is turn in all my rings and beads. Get enough healing items to bring my count up to four (you sometimes pick up one or two during the war). If I don't have enough coins to get to four (very rare), I turned in some 3-coin items, since those are close to a wash meatwise. Then I buy as many war steins or seashell necklaces as I have coins for. For the last few coins I buy more healing and a 1-coin item if odd. I've no idea why the above code doesn't turn in the other colors of ring and beads.
 

Theraze

Active member
Are you referring to the sections of code that I snipped and commented as such because otherwise it would have been ~47 lines of code instead of 17 which is almost readable?
If you want custom handling, have your custom alias that you run when it aborts. If you want to have it sell everything and buy max healing items, turn on the sell/buy flag.

Regarding that default handling, do we want it to work on both sides regardless of who wins, or do we only want to work with our team's side? That was the question... :)
 

Theraze

Active member
True. But I asked one specific question (twice now) which wasn't answered. And another question regarding whether you were referring to the parts of the code I snipped in the quote for readability.

And as yet, I've only gotten responses regarding your custom alias. :)
 

Crowther

Active member
Regarding that default handling, do we want it to work on both sides regardless of who wins, or do we only want to work with our team's side? That was the question... :)
I have no clue what you are asking, but I think that's the question you asked twice. I think the first time was before I posted on the topic, but I'm sorry to say you've totally lost me. I deleted a huge long rant about maintainability before posting, I decided "I'm not asking for this" covered it well enough.

Honestly, I was just trying to say that the trade-offs have gotten much more simple than when that code was first written. I used to need spread sheets or helper websites to decide what to trade for coins, but now it's not so bad. You can get near optimal meat pretty simply now. That said I've never let BCA handle the level 12 quest and don't think I ever will.

I see your smiles, but I still feel snark. I'm very sorry we seem to be on different wavelengths.
 

fronobulax

Developer
Staff member
I'm confused, but since there seems to be a request for ideas, I want BCC Ascend to sell all my war items, no matter which side I won the war as. It should get six healing items (deliberate overkill) if possible and after that I will accept whatever it does as being appropriate. If I want to micromanage my war sales I can script it myself. I'll accept someone else's choice of "appropriate" but my suggestions would be more healing, MP restores and food. Those could have some value pretty much no matter who was running the script.
 

Theraze

Active member
Crowther, sorry. I wasn't trying to snark, I was just trying to keep movement flowing forwards on the script. Side conversations are fun, but when someone reports a bug (which Bale tracked down to coinmaster sell being broken and Darzil posted a mafia bugfix which will hopefully fix, today) and we try to make things work better in the script, side-talking is really good at distracting from needed info.

So, going back to the issue... Sounds good. Rather than buying maximum healing items, buy (up to) 6.

Since whatever we don't use is lost, the two basic automation choices as I see them are:
1) Only sell enough for 6 healing items, regardless of which side we were playing as. Keep the rest as items for users to choose to do with as they like later.
2) Sell everything, buy 6 healing items, get the meat conversion items, and sell them. Once we no longer have 5 tokens, get 1 token combat items - either damage or damage/delevel depending on someone's random preference. I'd probably lean on delevel.
 
Top