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

Theraze

Active member
What you'd need is not the level maximization, but the adventuring one. But I've already told you how to work around it. If you choose not to do so, that's on you.
 

lostcalpolydude

Developer
Staff member
What you'd need is not the level maximization, but the adventuring one. But I've already told you how to work around it. If you choose not to do so, that's on you.

I feel like the issue is that, as far as they know at least, the script chose to apply that much +ML and they don't know how to stop it from doing so. But I'm just guessing, really.
 

fronobulax

Developer
Staff member
FWIW, BCCA was deciding I needed to level, even though I had several lower level quests unfinished. It was running at +10 ML because BCCA set the MCD but nothing more. As suggested I told it to ignore safe moxie and it picked up the quests. This has happened to me a fair amount with one character and I think the fundamental issue is that the definition of "safe" is strictly based on Moxie. That is a reasonable and simple decision to make, but it is unnecessarily conservative if the character is skilled enough to stun and kill just about anything it encounters. If nothing changes with the code I think there is a point in an ascending character's development when Ignoring Safe Moxie should be the preferred option. That said, what would really address the issue would be some algorithmic definition of "safe" that took into account stats, equipment, available skills and the expected encounters in a zone. That would be a project on its own but if I were to start I would be grabbing ideas from CanAdv, Adventure Advisor and some of Zarqon's code and ideas scattered around in various places.
 

Theraze

Active member
Well, 'safe' actually compares base stat to where it would be safe if the base stat were moxie. So it isn't actually necessarily safe. It's a relic of the old "this is a class for HC DB only" era.

But it still allows the more paranoid to have a better chance of survival even if they do choose to stick with "attack with weapon" and not take the advice to use WHAM or something else similar.

And remember that your potential project involves them actually USING those skills. This already takes the stats, equipment, and expected encounters. Safe moxie is all about combining your current now into "attack with weapon" safety.
 

fronobulax

Developer
Staff member
Well, 'safe' actually compares base stat to where it would be safe if the base stat were moxie. So it isn't actually necessarily safe. It's a relic of the old "this is a class for HC DB only" era.

But it still allows the more paranoid to have a better chance of survival even if they do choose to stick with "attack with weapon" and not take the advice to use WHAM or something else similar.

And remember that your potential project involves them actually USING those skills. This already takes the stats, equipment, and expected encounters. Safe moxie is all about combining your current now into "attack with weapon" safety.

OK. I suppose an interim solution would be to clarify the documentation that says "Ignore safe moxie in hardcore. NOT recommended." to be a little more nuanced so people like me who are sometimes too literal and easily confused but do use a CCS and WHAM are not intimidated by "NOT". :)
 

Theraze

Active member
Whatever documentation you're talking about, I probably can't edit. But yes, that would be good to have updated. The BCA script itself doesn't describe anything, and the relay file pulls directly off of BCC's server, so I can't update that either.

All I can do is tell people that it probably isn't doing what they think it is, and have them argue with me that I don't know what I'm talking about or try to clarify that yes, what I just described is exactly what's happening. But please, explain to me that when it keeps trying to out-moxie the enemies using myst, why you want to keep using that. Seems like a perfectly reasonable thing to leave on.

Course, in this example, it WAS actually a moxie class of some sort, based on trying to powerlevel in the ballroom, but still... :)

If you are using anything better than attack with weapon, turn it off. Please.
 
If the script's intended behavior is to powerlevel up to level 12 then do quests, then it is not a bug, but an intended action by the script. I noticed this behavior once before a good while ago, but that eventually cleared up after an update to the script. The script was performing as I expected since that time. However, in my last 3 runs, the script has exhibited this behavior again. 2 runs ago (run 231, when I completed the ascension at level 16), the script actually was still powerleveling me at level 15 without having completed any quests above level 8, including the Strange Leaflet. This behavior by the script seemed unintended, but again, I thought maybe it was temporary glitch. Usually, the script gets me to the NS by level 13 or Level 14. So being level 15 without any quests above level 8 completed seemed out of place.

Now, after 3 runs in which the default, unmodified script has done the same behavior, I decided to report it as a bug. This is why I do not think the issue is about safe moxie or ML. With safe moxie, I would expect the script to eventually finish the quests once a safe level of moxie has been achieved. Also, "bcasc_AllowML=false"
 

fronobulax

Developer
Staff member
The documentation I was quoting was from the relay script and I understand that files on the bcc server are not easily changed. I also am fine with the idea that not all problems have to be solved with code changes. Sometimes users need to be trained and expectations managed.

As for the hypothesis that something else is going on, I wonder of what BCCA is using to check for quest completion or availability circa level 8 is correct, based upon LuvLuvChef's comments. If BCCA thinks it cannot start something isn't the default behavior to level until it can? if it thinks it can't start a quest and has nothing better to do we might get what LLC has observed. I suggest this, not because I have looked at BCCA but because I have several under-maintained scripts that are slowly failing because there is a discrepancy between quest status as the script understands it and reality as reported by KoL and/or KoLmafia.
 

Theraze

Active member
As for the hypothesis that something else is going on, I wonder of what BCCA is using to check for quest completion or availability circa level 8 is correct, based upon LuvLuvChef's comments. If BCCA thinks it cannot start something isn't the default behavior to level until it can? if it thinks it can't start a quest and has nothing better to do we might get what LLC has observed. I suggest this, not because I have looked at BCCA but because I have several under-maintained scripts that are slowly failing because there is a discrepancy between quest status as the script understands it and reality as reported by KoL and/or KoLmafia.

From the report above:
Code:
BCC: We have not completed the stage [piratefledges].
BCC: Maximizing '+outfit swashbuckling getup'
Maximizing (1st time may take a while)...
123 combinations checked, best score 234.17
Putting on eyepatch...
Equipment changed.
Putting on swashbuckling pants...
Equipment changed.
Putting on stuffed shoulder parrot...
Equipment changed.
BCC: levelMe(156, true) called.
Need to Level up a bit to get at least 156 base Primestat
So it knows that it is working on the fledges and has decided that safe mainstat is at 156. Hence, it's working on the F'C'le and believes that area requires 156 mainstat for safety, hence it has a ML of +52 to make that the exact target level.

Anyways, nobody's given any warnings or comments on my planned level 13 stuffs, so that will probably get implemented randomly sometime in the next week.
 
From the report above:
So it knows that it is working on the fledges and has decided that safe mainstat is at 156. Hence, it's working on the F'C'le and believes that area requires 156 mainstat for safety, hence it has a ML of +52 to make that the exact target level.
But where is that +52 ML coming from? I cannot figure it out. No +ML from equipment. No +ML from skills used in BumcheekAscend's mood settings. Only +ML I can find the script using is +10 from a Detuned Radio. I cannot figure out where the other +42 ML is coming from if you think the script is running +52 ML.

Here is a snippet of the run where it was still leveling at level 14. Again, the script was unmodified and was in control of the character since level 1.
Code:
Lv: 14
HP: 182 / 182
MP: 45 / 168

Mus: 75 (65), tnp = 9
Mys: 75 (65), tnp = 65
Mox: 279 (190), tnp = 122
...
 > modifiers

ML: +0
Enc: -15.00%
Init: +45.00%

Exp: +1.00
Meat: +40.00%
Item: +140.94%
...

> BCC: levelMe(53, true) called.
> Level 8 Starting
> BCC: We have completed the stage Trapper
> BCC: We have completed the stage [wand].
> BCC: We have not completed the stage [piratefledges].
> BCC: Maximizing '+outfit swashbuckling getup'

maximize 0 beeosity, mainstat 999999999 max, -melee -10 ml +moxie experience +0.5 mp regen min +0.5 mp regen max, .5 hp, +outfit swashbuckling getup -equip hilarious comedy prop

equip hat eyepatch

equip pants swashbuckling pants

equip acc1 stuffed shoulder parrot
> BCC: levelMe(193, true) called.
> Need to Level up a bit to get at least 193 base Primestat
> BCC: Maximizing ''
Somehow the script thinks I am running +91 ML in a hardcore run. It had not even started Barrrney's. I would have to read the wiki to even figure out how to get +ML that high, which I did not do, the script controlled the ascension since level 1.

I think fronobulax is on the right track. The script or KoLmafia missed a quest flag or has an issue with understanding what to do for the level 8 quest. If the default behavior is to level, then that would explain it.

EDIT: Or it is mistaken base moxie for buffed moxie. My effective moxie was 279... that would mean +175ML?
 

Theraze

Active member
We call mafia's values for monster stats. Since those use your buffed stats...

And no. It's not a skipped quest. As I said, it knows what quest it's on, it knows which zone it wants to visit, and it decided that it needs to power level past the F'C'le. Maybe you have a wandering scaling monster due to a familiar or something.
 
We call mafia's values for monster stats. Since those use your buffed stats...

And no. It's not a skipped quest. As I said, it knows what quest it's on, it knows which zone it wants to visit, and it decided that it needs to power level past the F'C'le. Maybe you have a wandering scaling monster due to a familiar or something.
Bloovian Groose, Hound Dog, Slimeling, Exotic Parrot, Reassembled Blackbird, Hobo Monkey...
No +ML familiars used. No familiars that summon wandering monsters. Mostly +stat and +item. I cannot see how that would delay the pirates by 8+ levels.

What would happen if it failed a section of that quest? I know it got the Swashbuckling Gear, but it had not unlocked the F'C'le. Barrrney's was so incomplete that Cap'm Caronch's Map was not even in my inventory. When I manually started running the character, I received the map.

To me, something seems to have happened between getting the Swashbuckling Outfit and actually adventuring in Barrrney's Bar.
 

Theraze

Active member
Okay, here are two 'test' finishers for level 13. NSfastNormal is for a normal ascension and NSfastEd is for Edcore. Both have been lightly tested to work, but only lightly tested.

Note if you are using WHAM, BatBrain will need some additional code to properly fight the wall of meat. As it stands, it killed me repeatedly until I told batfactors that the wall of meat was autohit (like the ninja assassin) and was actually dangerous in BatBrain itself (moreso than the ninja assassin, since giving it that same risk level left it in stasis for ~5 turns before dying). As to what it needs... not sure. Just watch that part if you're using WHAM, or set your own override CCS for the wall of meat monster. :)

If nobody has feedback and problems, I'll probably commit them in some form to the main BCA in a week or so after they've had more time for my own testing. But hey, if people want to speed their own ascension up a bit, might as well help.
 

Attachments

  • NSfastEd.ash
    760 bytes · Views: 29
  • NSfastNormal.ash
    8.4 KB · Views: 25
Is there any way to tell bca to use a specific mood? As far as I can see there are only two options, have the script control the mood and shift stuff around depending on the phase, or disabling moods altogether.
 

Theraze

Active member
Code:
BCC: Hi-keeba!

Tower: Freeing King Ralph
Retrieving character data...
Retrieving familiar data...
Familiar data retrieved.
Updating inventory...
Examining Meat in closet...
Updating closet...
Cleared mood.
Visiting Hermit...
Pulling items from storage...
Purchasing chewing gum on a string (2 @ 47)...
You spent 94 Meat
You acquire chewing gum on a string (2)
Purchases complete.
Using 2 chewing gum on a string...
You acquire an item: worthless trinket
You acquire an item: worthless knick-knack
Finished using 2 chewing gum on a string.
Visiting the Hermit...
You acquire ten-leaf clover (2)
Using 2 ten-leaf clover...
You acquire disassembled clover (2)
Finished using 2 ten-leaf clover.
Hermit successfully looted!
Visiting Potted Meat Tree in clan rumpus room
You gain 1,025 Meat
Using 1 glass gnoll eye...
You acquire an item: breath mint
Finished using 1 glass gnoll eye.
Using 1 Trivial Avocations board game...
You acquire an item: Trivial Avocations Card: Where?
You acquire an item: Trivial Avocations Card: Where?
You acquire an item: Trivial Avocations Card: When?
Finished using 1 Trivial Avocations board game.
Using 1 Taco Dan's Taco Stand Flier...
You acquire an item: Taco Dan's Taco Stand Chimichangarita
Finished using 1 Taco Dan's Taco Stand Flier.
Using 1 warbear soda machine...
You acquire an item: Cloaca Cola Polar
Finished using 1 warbear soda machine.
Using 1 warbear breakfast machine...
You acquire an item: breakfast mess
Finished using 1 warbear breakfast machine.
Using 1 festive warbear bank...
You gain 100 Meat
Finished using 1 festive warbear bank.
Using 1 Chroner trigger...
You acquire an item: Chroner
Finished using 1 Chroner trigger.
Using 1 picky tweezers...
You acquire an item: single atom
Finished using 1 picky tweezers.
The Hermit has 0 clovers available today.
today: 20150416

Last semirare found 6 turns ago (on turn 1335) in The Castle in the Clouds in the Sky (Ground Floor)

Unexpired counters:
Semirare window begin (154)
Semirare window end (194)

Possibilities:
Scrolls of AFUE: (0 [Haunted Library])
Farm disembodied brains (8)
leathery bat skin (64)
Get a toaster
Farm moon pies (0)
Farm wrecked generators (0)
Farm lunar isotopes (0)
Fight a cursed pirate instead

pumpkin bomb (0)
Knob Goblin Firecracker (96)
pumpkin (0)
counterScript set to: CounterChecker.ash
recoveryScript set to: Universal_recovery
bbs set to: beforeBattle.ash
defaultAutoAttack set to: 0
Hermit not Hax0red!
Acquire the hey deze map/nuts from the slums
You need a pagoda!
Seeing what's still trendy today...
Done. Are YOU a fashion plate?
Finish fernswarthy's basement!!
Xiblaxian crystal (9)
That's all I got for you.
Visiting the Ruined House
Tada! Thank you for using bumcheekascend.ash.
All of that to say... hey look, BCA is both starting the king-freeing and running all the way to the happy "Yay, success!" ending. Committed a variant on the above scripts.
 

Ferdawoon

Member
A suggestion for a feature, or maybe a request for a removal of something that I personally do not consider a feature:

Just ran Ed and it worked a charm! *yey*
But... After getting the Macguffin from The Secret Council Warehouse the script went straight to place the Macguffin in my pyramid and complete the ascension. Luckily I had already done the stuff I ususally do before leaving Hardcore before running BCA, such as using my PvP turns, because doing this cause the player to drop into aftercore.

As far as I can recall the script does not smash the prism in regular runs, so I was not at all prepared for how it would finish the Ed-ascension for me and make me to drop into Aftercore without any warning.

Could I suggest that the script stop after getting the Macguffin but before placing it on the altar in the pyramid and display the message that the ascension is almost done and that the player should place it in their Pyramid when ready to go into aftercore?
 

Theraze

Active member
It actually DOES break the prism automatically unless you have trophies waiting. It's always (at least for the years I've used it) broken the prism automatically unless you have trophies waiting.
 

koyoto

New member
Script seems to be stuck on the manor part. It makes me do the bathroom part of the quest when I've already completed it.
 

fronobulax

Developer
Staff member
Feature Request - If the ((Artist Quest has been completed) AND (there are rat whiskers in inventory)) THEN BCCA will turn them in (similar to the way it autosells things).
 

Theraze

Active member
I just have that in my preAscension script, since there's always the chance of more whiskers after ascending, if there's a PvP mini or some other reason why it seems like a good idea.

And it doesn't autosell anything. Not sure where you're getting that from.

Is there a good reason why it should be in BCA, not in a kingLiberated or preAscension script?
 
Top