autoBasement.ash - Better basement automation

mredge73

Member
I had the same issue with a chefstaff. I think it is a problem with maximizer. I manually put on the outfit and it corrected it for that particular adventure. Unfortunately it happened again every time I needed the chefstaff. It probably would not occur if I didn't have the two weapon skill permed.
 
Last edited:

slyz

Developer
It's a problem with the maximizer. Try maximizing mysticality manually, putting on the outfit by hand, and save it as "Mysticality". The script should skip that part once the outfit is saved.

You might also have problems with the other outfits. Here is what you should maximize, and the name to use when you save the outfit:

maximize mys, switch Disembodied Hand, save it as Mysticality
maximize mus, switch Disembodied Hand, save it as Muscle
maximize mox, switch Disembodied Hand, save it as Moxie
maximize hp, switch Disembodied Hand, save it as Gauntlet
maximize mp, switch Disembodied Hand, save it as MPDrain
maximize .5 MP Regen min, .5 MP Regen max, switch Disembodied Hand, save it as MP Regen

For the last outfit, named Combat, pick the outfit corresponding to the stat you want to maximize, and save it as Damage.

For people who don't have a Disembodied Hand, replace switch Disembodied Hand by -familiar:

maximize mys -familiar, save it as Mysticality
maximize mus -familiar, save it as Muscle
maximize mox -familiar, save it as Moxie
maximize hp -familiar, save it as Gauntlet
maximize mp -familiar, save it as MPDrain
maximize .5 MP Regen min, .5 MP Regen max -familiar, save it as MP Regen
 
Last edited:

tgetgel

Member
Great script!

Having trouble with the gauntlet as a AT. Getting the HP up is getting expensive. (Needed 27000 HP)

I noted that if I changed the hat, pants, and weapon to something that adds an absolute value (not a percentage) to MUS, then the value I had to reach was lower. If I did the birthday suit, I needed to get to 60000 HP. Contrariwise, changing the accessories to percentage increases changed my current value, not the goal.

I will try to document this on the next gauntlet. The last one was at level 444.

Is there a way to not have the gauntlet show up? Does the bellhop bell work on the gauntlet?

edit: got to level 500 without another gauntlet. Have to try it next run.
 
Last edited:

slyz

Developer
Your DA (Damage Absorption) lowers the damage you will take. autoBasement.ash only maximizes HP, assuming that your best HP equipment will also maximize DA. This has been discussed earlier in the thread.

You can make the script stop when you encounter the Gauntlet test by typing zlib autoBasement_break_on_hp = true in the gCLI.
 
Yeah, if you don't have gear that automagically maxes DA while maxing HP, a better option is to change the Gauntlet outfit from "maximize HP" to something like "maximize DA, .1 HP". And remember your Oil of Parrrlay and mother's little helper.
 

lightwolf

Member
I typically use spell slinging for combats, except for golems when i use divine items. But I can't even get the spell sling outfit to stick. Every time i start the script it keeps over writing the damage outfit with muscle.

I've tried manually saving the Damage outfit with spell damage and myst items, and changing the one variable to setvar("autoBasement_combat_stat", "Mysticality"); but it still keeps overwriting the outfit with max muscle items every single time i restart the script...
 

Rinn

Developer
I typically use spell slinging for combats, except for golems when i use divine items. But I can't even get the spell sling outfit to stick. Every time i start the script it keeps over writing the damage outfit with muscle.

I've tried manually saving the Damage outfit with spell damage and myst items, and changing the one variable to setvar("autoBasement_combat_stat", "Mysticality"); but it still keeps overwriting the outfit with max muscle items every single time i restart the script...

You cannot modify a setting by changing the value in script, instead type the following into the cli (change autoBasement_break_on_level to the setting you wish to edit):
Code:
zlib autoBasement_break_on_level = 50
 

jcowley

New member
Hmm. I have changed the outfit for combat so that it equips what I want, which is my +spell damage stuff.
I set this line:
setvar("autoBasement_combat_equipment", "sugar chapeau, sea salt scrubs, staff of the walk-in freezer, red wagon, Hodgman's lobsterskin pants, navel ring of navel gazing, crusty hula hoop, tiny plastic Naughty Sorceress");

This is fine. However, it uses all items, EXCEPT the TPNS. Any idea why, or how to fix it? I understand it's quite a small issue, but it'd be helpful if you knew what to do.
 

slyz

Developer
changing the setvar line just changes the default autoBasement_combat_equipment setting, it doesn't actually change the setting if it's already in your vars_jcowley.txt file.

you should use zlib autoBasement_combat_equipment = "sugar chapeau, sea salt scrubs, staff of the walk-in freezer, red wagon, Hodgman's lobsterskin pants, navel ring of navel gazing, crusty hula hoop, tiny plastic Naughty Sorceress" in the gCLI.
 

Pantsless

New member
This script is really neat; I'm giving it a whirl even though I already have a full scope.

I have a few suggestions / questions. In no particular order:

1. Why isn't there an option to maximize MP Regen during combat?

2. I can't seem to override any of the outfits by saving them manually; the script remaximizes and resaves outfits every time it is started.

3. The MP Regen outfit should consider Maximum MP; for example the sea salt scrubs are frequently better than the yak anorak.

4. It might be a good idea to just give the disembodied hand a stickersword with 3 wrestler stickers, and not rotate out other gear. This has a couple advantages:
a) less equipment switching
b) stickers won't be consumed in combat

5. I keep winding up with a hairy staff equipped for MP regen, even though a velcro broadsword or velcro paddle ball are much better. They are also 1-handed, which would allow me to dual wield them (if i had DFSS) or equip a Bag o' Tricks. (EDIT: I think this problem might have something to do with mafia putting a velcro weapon on my disembodied hand and then forgetting that it is there when maximizing? For whatever reason, this problem seems to have gone away, so I'll keep an eye on it and report back if it reoccurs.)

6. You should mention in the OP that you can't change any variables until the script has run at least once. Also, I find it much easier to edit the vars file directly, rather than typing in long CLI commands; you might want to mention that is an option.

7. How about an option to use milk and/or munchies pills when consuming a Dr. Lucifer?

8. For some reason, the script put my disembodied hand back in the terrarium and used no familiar at all for the MP test.
 
Last edited:

slyz

Developer
1. Why isn't there an option to maximize MP Regen during combat?

If there is any item you want to wear for combats, add it in the autoBasement_combat_equipment variable (it's a comma separated list of items the maximizer will be forced to wear when saving the "Damage" outfit).

2. I can't seem to override any of the outfits by saving them manually; the script remaximizes and resaves outfits every time it is started.

Yup, that's the magic of it =) It's all optimized for you!

3. The MP Regen outfit should consider Maximum MP; for example the sea salt scrubs are frequently better than the yak anorak.

People should use the mana burning feature of Mafia when running this, but yes, changing maximize .5 MP Regen min, .5 MP Regen max to maximize .5 MP Regen min, .5 MP Regen max, 0.001 MP shouldn't hurt.

4. It might be a good idea to just give the disembodied hand a stickersword with 3 wrestler stickers, and not rotate out other gear. This has a couple advantages:
a) less equipment switching
b) stickers won't be consumed in combat

But it's not optimal!

5. I keep winding up with a hairy staff equipped for MP regen, even though a velcro broadsword or velcro paddle ball are much better. They are also 1-handed, which would allow me to dual wield them (if i had DFSS) or equip a Bag o' Tricks. (EDIT: I think this problem might have something to do with mafia putting a velcro weapon on my disembodied hand and then forgetting that it is there when maximizing? For whatever reason, this problem seems to have gone away, so I'll keep an eye on it and report back if it reoccurs.)

Maybe the script should unequip your hand before maximizing.

7. How about an option to use milk and/or munchies pills when consuming a Dr. Lucifer?

You can easily add that in, just put in use(1, $item[milk of magnesium]); on line 434.

8. For some reason, the script put my disembodied hand back in the terrarium and used no familiar at all for the MP test.

No? What does the maximizer recommend when you ask him to maximize maximize MP, switch disembodied hand?
 

Pantsless

New member
Thanks for your response(s) slyz.

Yup, that's the magic of it =) It's all optimized for you!
Is there a way for me to override the outfits with different gear of my choosing? I read your post #141 on the previous page but can't seem to make that work.

People should use the mana burning feature of Mafia when running this, but yes, changing maximize .5 MP Regen min, .5 MP Regen max to maximize .5 MP Regen min, .5 MP Regen max, 0.001 MP shouldn't hurt.
I don't really have a productive way to burn mana once I've summoned a few dozen hearts, so I'd rather save up the MP for an MP test, or for spells in combat. Where do I change the part that you mentioned?


But it's not optimal!
It's very close to optimal, and it might actually be, if you factor in the cost of wrestler stickers. Of course 300 meat every 30 combats probably is not a big deal.

Maybe the script should unequip your hand before maximizing.
That would probably make sense.

You can easily add that in, just put in use(1, $item[milk of magnesium]); on line 434.
I already did that, I was just suggesting it be a true / false flag in case other users wanted to do so as well.

No? What does the maximizer recommend when you ask him to maximize maximize MP, switch disembodied hand?
That works fine.
I'll have to watch the script a little closer, but I think what happens is:

1. It notices the MP test
2. It optimizes gear, including the hand
3. It realizes that max mp is still too low to pass
4. It puts the hand in the terrarium
5. It uses potions
6. It sees that Max MP is now high enough to pass
7. It uses lucifer and passes the test

I don't really know why it does #4, or why it doesn't take the hand back out before it uses the lucifer.
 

slyz

Developer
Is there a way for me to override the outfits with different gear of my choosing? I read your post #141 on the previous page but can't seem to make that work.
It's very close to optimal, and it might actually be, if you factor in the cost of wrestler stickers. Of course 300 meat every 30 combats probably is not a big deal.

That was only to avoid the problem Grotfang was having with the maximizer not being able to equip all the items it had chosen. To override the outfit maximizing altogether, you could change line 66 to boolean outfits_cached = true; and save your outfits under the same names: Mysticality, Muscle, Moxie, Gauntlet, MPDrain, MP Regen, and Damage. That won't take into account your Hand though, you would need to write that in explicitly, like this:
Code:
foreach name in $strings["Mysticality", "Muscle", "Moxie", "Gauntlet", "MPDrain", "MP Regen", "Damage"] {
       familiarCache[name].f = $familiar[disembodied hand];
       familiarCache[name].i = $item[$item[scratch 'n' sniff sword]];
}

You can add that on line 116. Note that the script will still use a daily drop familiar for combats if autoBasement_get_familiar_drops is set to true (it's false by default), or the Baby Sandworm/Hovering Sombrero if it's set to false.

I don't really have a productive way to burn mana once I've summoned a few dozen hearts, so I'd rather save up the MP for an MP test, or for spells in combat. Where do I change the part that you mentioned?

That would be on line 275, but overriding the outfit maximizing won't make it happen of course.

I already did that, I was just suggesting it be a true / false flag in case other users wanted to do so as well.

I'll leave that up to Rinn.

That works fine.
I'll have to watch the script a little closer, but I think what happens is:

1. It notices the MP test
2. It optimizes gear, including the hand
3. It realizes that max mp is still too low to pass
4. It puts the hand in the terrarium
5. It uses potions
6. It sees that Max MP is now high enough to pass
7. It uses lucifer and passes the test

I don't really know why it does #4, or why it doesn't take the hand back out before it uses the lucifer.

Lines 285-286 should be:
Code:
familiarCache["MPDrain"].f = my_familiar();
familiarCache["MPDrain"].i = familiar_equipped_equipment(my_familiar());
 

slyz

Developer
I finally did a basement run with autoBasement.ash. I found another small glitch:

lines 340-345 should read:
Code:
switch (check)
{
case "hp": if(my_maxhp() > goal) return true;
           else break;
case "mp": if(my_maxmp() > goal) return true;
           else break;
default: if(my_buffedstat(s) >= goal) return true;
}

EDIT: here's my copy of autoBasement.ash with the couple of fixes above, and the 'eatsilent' command added for Dr Lucifers.
 

Attachments

  • autoBasement.ash
    31.1 KB · Views: 63
Last edited:

HippoKing

Member
This is awesome.

Two weird things I noticed:
a) Default break floor is 500, 501 would be more sensible. I changed this in my own config files so it's hardly a big issue.
b) It kept putting away my hand so I had no familiar, I never quite understood why.
 

slyz

Developer
The default is level 500 (I guess it's so that you can have the pleasure to get the telescope certificate yourself). If you already ran the script, editing to change the value won't change the zlib setting, you have to type zlib autoBasement_break_on_floor = 501 in the gCLI.

For the hand issue, see the posts above yours.
 

bumcheekcity

Active member
Rinn, just a quick note to say that the Gauntlet isn't quite working properly.

It SHOULD get you 1,000 DR and then MaxHP, but mine was giving me 500DR and then trying to buff HP.
 
Top