autoBasement.ash - Better basement automation

Theraze

Active member
Mine are similar.
Code:
zlib autoBasement_break_on_combat = false
zlib autoBasement_break_on_element = false
zlib autoBasement_break_on_floor = 501
zlib autoBasement_break_on_hp = false
zlib autoBasement_break_on_level = 40
zlib autoBasement_break_on_mox = false
zlib autoBasement_break_on_mp = false
zlib autoBasement_break_on_mp_amount = 20000
zlib autoBasement_break_on_mus = false
zlib autoBasement_break_on_mys = false
zlib autoBasement_break_on_reward = false
zlib autoBasement_break_on_stat = false
zlib autoBasement_combat_equipment = navel ring of navel gazing
zlib autoBasement_combat_maximizer_string =
zlib autoBasement_combat_stat = Prime
zlib autoBasement_drink_to_buff = false
zlib autoBasement_eat_to_buff = false
zlib autoBasement_get_familiar_drops = false
zlib autoBasement_hop_on_up = false
zlib autoBasement_max_potion_price = 2000
zlib autoBasement_spleen_to_buff = false
zlib autoBasement_use_Disembodied_Hand = true
zlib autoBasement_use_absolute_potions = true
zlib autoBasement_use_dr_lucifer = false
zlib autoBasement_use_dr_lucifer_amount = 1000
zlib autoBasement_use_percentage_potions = true
I stop after getting the certificate, allow absolute potions, have a higher MP limit, and maximize for Prime rather than Muscle. Otherwise same to my eyes as Bale.
 

Veracity

Developer
Staff member
Here are mine.

Code:
autoBasement_break_on_combat	false
autoBasement_break_on_element	false
autoBasement_break_on_floor	1000
autoBasement_break_on_hp	false
autoBasement_break_on_level	40
autoBasement_break_on_mox	false
autoBasement_break_on_mp	false
autoBasement_break_on_mp_amount	15000
autoBasement_break_on_mus	false
autoBasement_break_on_mys	false
autoBasement_break_on_reward	false
autoBasement_break_on_stat	false
autoBasement_combat_equipment	navel ring of navel gazing
autoBasement_combat_maximizer_string	
autoBasement_combat_stat	Moxie
autoBasement_drink_to_buff	false
autoBasement_eat_to_buff	false
autoBasement_get_familiar_drops	false
autoBasement_hop_on_up	false
autoBasement_max_potion_price	2000
autoBasement_spleen_to_buff	false
autoBasement_use_absolute_potions	false
autoBasement_use_Disembodied_Hand	false
autoBasement_use_dr_lucifer	false
autoBasement_use_dr_lucifer_amount	1000
autoBasement_use_percentage_potions	true
I should probably set stat to Prime, but other than that, I see nothing significant.

And yet, it eventually starts to fail every single Elemental test, after telling me it can't get a phial, and when I switch to an Elemental outfit, it plows right on through.

Last time I ran it was last PVP season when I needed to repeatedly get to level 400 in aftercore. It took a lot of babysitting. Eventually, I shrugged and just did it by hand in the relay browser.
 

Crowther

Active member
I have the same issue as Veracity, so if this is any help...
Code:
zlib autoBasement_break_on_combat = false
zlib autoBasement_break_on_element = false
zlib autoBasement_break_on_floor = 500
zlib autoBasement_break_on_hp = false
zlib autoBasement_break_on_level = 30
zlib autoBasement_break_on_mox = false
zlib autoBasement_break_on_mp = false
zlib autoBasement_break_on_mp_amount = 10000
zlib autoBasement_break_on_mus = false
zlib autoBasement_break_on_mys = false
zlib autoBasement_break_on_reward = false
zlib autoBasement_break_on_stat = false
zlib autoBasement_combat_equipment = navel ring of navel gazing
zlib autoBasement_combat_maximizer_string =
zlib autoBasement_combat_stat = Muscle
zlib autoBasement_drink_to_buff = false
zlib autoBasement_eat_to_buff = false
zlib autoBasement_get_familiar_drops = false
zlib autoBasement_hop_on_up = false
zlib autoBasement_max_potion_price = 15000
zlib autoBasement_simulate_first = false
zlib autoBasement_spleen_to_buff = false
zlib autoBasement_use_Disembodied_Hand = true
zlib autoBasement_use_absolute_potions = false
zlib autoBasement_use_dr_lucifer = false
zlib autoBasement_use_dr_lucifer_amount = 1000
zlib autoBasement_use_percentage_potions = true
 

Theraze

Active member
Looks like Bale and both of your settings are really similar. Nothing obvious as to why it would have failed. Bale and Crowther even share the same combat stat...
 

Theraze

Active member
Next time it aborts, please set your verbosity to 7 and re-run the autoBasement script. That should print a LOT of troubleshooting information about how much damage it thinks you'll take and the internal workings. If you can post that here, we can dig into it some more and hopefully see where it's breaking down.

Since it's already at an abortive state at that point, re-running the script shouldn't burn any adventures or use any new skills or anything like that, unless it's simultaneously casting and shrugging skills because they counteract each other. In which case seeing that would be very useful.
 

Lxndr

Member
Code:
Your Baby Sandworm can't wear a oil pan
unable to buff Mysticality to 921, quitting

This seems to be happening a lot (my first time trying the script).

It switches to the Sandworm when it's supposed to enter a combat, then seems to have no idea how to switch back to a disembodied hand. If I manually type "familiar hand" and re-run it it happily churns until the next attribute test, then tries to equip a particular weapon to the hand, but doesn't switch familiars.
 

Theraze

Active member
This might be due to how mafia sets outfit checkpoints, but not having either of those familiars, I couldn't say for certain.
 

cowmanbob

New member
The script isn't running turns. This shows up:

Basement sucessfully automated for 0 out of 10 adventures. If the script failed due to being unable to buff you high enough you can either try to level up some or raise "autoBasement_max_potion_price" to a higher value.

I don't really need to run potions. Only going to hit level 200. Just plodding along manually, but it's about the bottom of my list of enjoyable areas to adventure. I'd love some suggestions.

FWIW here's my settings:

setvar("autoBasement_break_on_combat", false);
setvar("autoBasement_break_on_hp", false);
setvar("autoBasement_break_on_mp", false);
setvar("autoBasement_break_on_mox", false);
setvar("autoBasement_break_on_mys", false);
setvar("autoBasement_break_on_mus", false);
setvar("autoBasement_break_on_element", false);
setvar("autoBasement_break_on_stat", false);
setvar("autoBasement_break_on_reward", false);

setvar("autoBasement_break_on_floor", 500);
setvar("autoBasement_break_on_level", 30);
setvar("autoBasement_break_on_mp_amount", 2000);
setvar("autoBasement_break_on_telescope", 7);

setvar("autoBasement_use_dr_lucifer", false);
setvar("autoBasement_use_dr_lucifer_amount", 1000);
setvar("autoBasement_eat_to_buff", false);
setvar("autoBasement_drink_to_buff", false);
setvar("autoBasement_spleen_to_buff", false);
setvar("autoBasement_hop_on_up", false);

Thanks again for all this stuff you people do here!
 

syrinxlui

Member
Mafia's native basement automation is decently robust. Especially for plodding purposes.

Though mafia seems to have an unhealthy addiction to sugar shorts.
 

Theraze

Active member
1) Those aren't your values. Your values are in your vars file. Or through a zlib query. That just says what your defaults for new characters would do.
2) What else did it say? There are all sorts of useful messages it prints out. More if you raise verbosity.
3) If it didn't say anything useful, raise your verbosity and try again.
4) Even if it doesn't seem useful, paste it into a code-block anyways. We might be able to find some reason why it's aborting for you.

Sidenote - you DID remember to unlock the basement, right? This won't unlock the basement for you; it only runs turns down to whatever floor is configured.
 

cowmanbob

New member
1) Those aren't your values. Your values are in your vars file. Or through a zlib query. That just says what your defaults for new characters would do.
2) What else did it say? There are all sorts of useful messages it prints out. More if you raise verbosity.
3) If it didn't say anything useful, raise your verbosity and try again.
4) Even if it doesn't seem useful, paste it into a code-block anyways. We might be able to find some reason why it's aborting for you.

Sidenote - you DID remember to unlock the basement, right? This won't unlock the basement for you; it only runs turns down to whatever floor is configured.

Basement was unlocked. That is the entirety of what it said:
Code:
You have the latest use_for_items.txt. Will not check again today.
Checking for updates (running ZLib rev. 30)...
mpAutoRecovery => -0.05
mpAutoRecoveryTarget => -0.05
Current telescope count (7) >= autoBasement_break_on_telescope (7), quitting
mpAutoRecovery => 0.15
mpAutoRecoveryTarget => 0.9
Basement sucessfully automated for 0 out of 1 adventures. If the script failed due to being unable to buff you high enough you can either try to level up some or raise "autoBasement_max_potion_price" to a higher value.



I have no clue how to raise my verbosity? I am however very verbose IRL. I'll try to find somewhere to figure out how to do that.

Seems I need to set the default telescope to a different variable?
 

digitrev

Member
zlib verbosity = n, where n is the desired level of verbosity. Don't go above 10. But looking at your log, it seems that your autoBasement_break_on_telescope is set to 7. Try running
zlib autoBasement_break_on_telescope = 8
 

Theraze

Active member
Code:
Current telescope count (7) >= autoBasement_break_on_telescope (7), quitting
Yeah, as digitrev says, you've told it to stop at 7 telescopes, and you have 7 telescopes, so it's quitting.

If you like using the script for levelling and you don't actually care about how many upgrades you get, set it to 0 or anything else that's an int lower than 1 (-1, -2, -73432, etc) and it will not abort regardless of how many telescope upgrades you already have.
 

Theraze

Active member
Various stopping points, as set by their defaults:
Code:
setvar("autoBasement_break_on_floor", 500);
setvar("autoBasement_break_on_level", 30);
setvar("autoBasement_break_on_telescope", 7);
Which floor do we stop? 500.
Which level do we stop running? 30.
How many telescope updates do we want total? 7.
 

shoptroll

Member
Script seems to have stalled out on me at an HP test on Level 308. Error message is "I don't know how to speculate about closet". Nothing in the log with zLib verbosity set to 3, 7, and then 10 (Tried this three times). Tried latest Mafia daily build and no go there either.
 

Theraze

Active member
Well, since the script doesn't have the word "closet" once, it seems you have something else that's causing that. You're sure that you're using autoBasement for this, not mafia's built-in basement solve, and you don't have any other scripts that might have that message?
 

Veracity

Developer
Staff member
That message is printed by Speculation.java as part of "speculating" on a maximization.
This script does that using the "whatif" command.
The built-in basement support does not.

Ergo, this script is invoking "whatif closet ..."
 
Last edited:

Theraze

Active member
Huh. Well, the word 'closet' doesn't appear in the script, so I imagine that shoptroll must have something closeted that's causing that somehow. If there's enough of the script output or maximization results for troubleshooting, I'll do it. Otherwise, this is probably an issue best avoided by (barring PvP) uncloseting everything. Since it appears that somehow an invalid speculation is being passed to mafia.
 

shoptroll

Member
Yeah I'm running autoBasement.ash from the scripts menu, not the baked in basement automation. Only other scripts I'm currently using are bale's universal_recovery.ash and newLife.ash

I'm going to go ahead and manually pass this test, but here's the CLI output from today's attempt:

Code:
> call scripts\autoBasement.ash

You have the latest use_for_items.txt. Will not check again today.
Checking for updates (running ZLib rev. 30)...
Caching outfits...
Putting on outfit: Mysticality
Equipment changed.
Maximizing (1st time may take a while)...
2688 combinations checked, best score 3,699.00
Holding red wagon...
Equipment changed.
Kicking My Buddy the Bulky Buddy Box out of the bjorn...
Carrying Smilin' Sphere the Scary Death Orb in the Bjorn Buddy...
Taking Thneed the Disembodied Hand out of terrarium...
Putting on Hodgman's whackin' stick...
Equipment changed.
Saving outfit: Mysticality
Outfit saved
Taking off Hodgman's whackin' stick...
Equipment changed.
Putting on outfit: Muscle
Equipment changed.
Maximizing...
2160 combinations checked, best score 4,028.00
Kicking Smilin' Sphere the Scary Death Orb out of the bjorn...
Carrying Gompeii the Angry Goat in the Bjorn Buddy...
Putting on Uncle Hobo's epic beard...
Equipment changed.
Putting on Brimstone Bludgeon...
Equipment changed.
Saving outfit: Muscle
Outfit saved
Taking off Brimstone Bludgeon...
Equipment changed.
Putting on outfit: Moxie
Equipment changed.
Maximizing...
2592 combinations checked, best score 5,426.00
Kicking Gompeii the Angry Goat out of the bjorn...
Carrying Deranged Mutant Killer Monster Snow Goon the Ninja Snowflake in the Bjorn Buddy...
Putting on fossilized necklace...
Equipment changed.
Putting on bottle-rocket crossbow...
Equipment changed.
Saving outfit: Moxie
Outfit saved
Taking off bottle-rocket crossbow...
Equipment changed.
Putting on outfit: Gauntlet
Equipment changed.
Maximizing...
2160 combinations checked, best score 5,865.00
Kicking Deranged Mutant Killer Monster Snow Goon the Ninja Snowflake out of the bjorn...
Carrying Gompeii the Angry Goat in the Bjorn Buddy...
Putting on Uncle Hobo's epic beard...
Equipment changed.
Putting on Brimstone Bludgeon...
Equipment changed.
Saving outfit: Gauntlet
Outfit saved
Taking off Brimstone Bludgeon...
Equipment changed.
Putting on outfit: MPDrain
Equipment changed.
Maximizing...
2304 combinations checked, best score 6,662.00
Kicking Gompeii the Angry Goat out of the bjorn...
Carrying Smilin' Sphere the Scary Death Orb in the Bjorn Buddy...
Putting on Hodgman's whackin' stick...
Equipment changed.
Saving outfit: MPDrain
Outfit saved
Taking off Hodgman's whackin' stick...
Equipment changed.
Putting on outfit: MP Regen
Equipment changed.
Maximizing...
3120 combinations checked, best score 155.00
Kicking Smilin' Sphere the Scary Death Orb out of the bjorn...
Carrying Bomber the Rock Lobster in the Bjorn Buddy...
Putting on Snow Suit...
Equipment changed.
Saving outfit: MP Regen
Outfit saved
Taking off Snow Suit...
Equipment changed.
Putting on outfit: Damage
Equipment changed.
Maximizing...
192 combinations checked, best score 3,549.00
Taking off scratch 'n' sniff sword...
Equipment changed.
Wielding bottle-rocket crossbow...
Equipment changed.
Holding bottle-rocket crossbow...
Equipment changed.
Kicking Bomber the Rock Lobster out of the bjorn...
Carrying Deranged Mutant Killer Monster Snow Goon the Ninja Snowflake in the Bjorn Buddy...
Saving outfit: Damage
Outfit saved
Putting on outfit: Elemental Resistance
Equipment changed.
Maximizing...
1152 combinations checked, best score 947.46
Kicking Deranged Mutant Killer Monster Snow Goon the Ninja Snowflake out of the bjorn...
Carrying My Buddy the Bulky Buddy Box in the Bjorn Buddy...
Putting on titanium assault umbrella...
Equipment changed.
Saving outfit: Elemental Resistance
Outfit saved
Outfits caching complete!
Basement level 308: HP Test
Taking off titanium assault umbrella...
Equipment changed.
Putting on outfit: Gauntlet
Equipment changed.
Putting on Brimstone Bludgeon...
Equipment changed.
Maximizing...
3600 combinations checked, best score 33,756.50
I don't know how to speculate about closet

If it helps, "29.6235 da, 1 hp, switch Disembodied Hand" is the most recent maximize string in the modifier maximizer

Unrelated question: will this script automatically apply +% stat potions for the stat and MP/HP drain tests? This is my first time using this script in a long while so I can't remember if I need to manage that stuff manually or if it'll automatically take care of it for me.

EDIT: Hit another Gauntlet test on floor 312, same issue. So it looks like it might be an issue with that specific maximizer, which I think it's running because the Gauntlet outfit doesn't give me enough DA or Max HP to clear the test, as I requested Astral / Ghostly Shell from a buffbot and it was able to clear that test.

EDIT 2: Had a failure with being unable to finish a combat a little further in. Increased the autoBasement_max_potion_price to 4000 and it seems to be running smoother now.
 
Last edited:
Top