autoBasement.ash - Better basement automation

mrfatso

New member
i think it was trying to dual-wield cratch 'n' sniff without realizing that that its impossible and cant be done.

I had that error once, i managed to solve that issue by equipping my gears manually especially for the Damage outfit and saving them under that name.
 
I've used autobasement.ash once before and I don't remember having this problem; can anyone help?

I'm at level ~200, and the script is repeatedly quitting at elemental resistance tests with "unable to pass elemental test, quitting".

The weird thing is that I've got plenty of resistance; all I need is to heal with Cocoon. I can go in and manually pass every one of these tests using the equipment that the script has already put on, if I just cast Cocoon first.

What am I doing wrong here?
 

Crowther

Active member
i think it was trying to dual-wield cratch 'n' sniff without realizing that that its impossible and cant be done.

I had that error once, i managed to solve that issue by equipping my gears manually especially for the Damage outfit and saving them under that name.
I had it a couple times recently. The first time I just waited until the next day. The second time I did a "set _autoBasementOutfitCached = false" and it redid all the outfits just fine.
 

JohnAnon

New member
Now that phials are super-expensive, I don't think the script should force you to spend 80k to check if it can pass the test or get mad and quit if you're a cheapskate.

Can you just remove the whole phial thing, or at least put an option to disable it?
 

Veracity

Developer
Staff member
I've been doing a basement dive and I am wondering why it never uses my exotic parrot for elemental tests. It goes to no familiar, calls the maximizer (with a -switch Exotic Parrot)

[6555] Fernswarthy's Basement (Level 463)
Buffed Moxie Test: 6,781 current, 5,826 needed
> Basement level 464: Sleaze & Stench Elemental Resistance Test
custom outfit Elemental Resistance

familiar none

equip weapon lawn dart

mall.php?category=allitems&consumable_byme=0&weaponattribute=3&wearable_byme=0&nolimits=0&max_price=0&sortresultsby=price&justitems=0&x_cheapest=10&pudnuggler=%22phial+of+sleaziness%22
> The script was unable to acquire the necessary elemental form. You may need to acquire some phials yourself or raise your autoBuyPriceLimit. Attempting to pass test by HP buffing
> unable to pass elemental test, quitting
I am very happy it did not succeed in buying a phial of sleaziness.
I am very confused that it didn't equip my Exotic Parrot.

I equipped it, healed my HP up to 5638, and went in to the basement manually.

[6556] Fernswarthy's Basement (Level 464)
Elemental Resist Test: +36 stench 90% (2,656 hp), +39 sleaze 90% (2,640 hp)
You lose 2,506 hit points
You lose 2,492 hit points
I passed the test.
 
... So I'm trying to use this again after having discovered it has useful settings, but uh

it won't start at all, now; it breaks after making the MP Regen outfit because it's trying to maximize "none, +equip Hand that Rocks the Ladle, -familiar" despite 'none' not being a meaningful stat to maximize.

The only things I changed are

> Previous value of autoBasement_combat_stat: Muscle
> Changed to mysticality.

> Previous value of autoBasement_get_familiar_drops: false
> Changed to true.

> Previous value of autoBasement_combat_equipment: navel ring of navel gazing
> Changed to hand that rocks the ladle.

> Previous value of autoBasement_combat_stat: mysticality
> Changed to MP.

and idk how this breaks it but apparently it does, because it didn't do this yesterday
 

Winterbay

Active member
For the combat stat setting it looks for the second letter and if that is U (muscle), Y (Mysticality) or O (Moxie) it runs on. If not, it'll most likely get cranky...
 
. . .
Passed outfit (Damage) contains fewer than 3 items. Please recheck your inventory.


Well, that's because I deleted the outfit after changing more settings to make the script recalculate it. Any way I can tell the script I did that?
 
Last edited:

Winterbay

Active member
Have you tried logging out and closing Mafia before logging in again? It is possible that Mafia thinks that there still is an outfit with that name and that would lead to that sort of issue. You could also try typing "refresh all" in the CLI and see if that helps. If those two doesn't work I'm not sure what to do.
 
I had already done those (well kind of; I didn't type 'refresh all' in the cli but i think clicking 'Refresh Everything' in the menu does the same thing?) and they didn't work.

Rollover, of all things, seems to have fixed it?
 

zekaonar

Member
I think I see some bugs with the elemental tests. Verbose logging of an elemental test below.

At vprint "2" it puts on your gear and then tries to calculate elemental damage to see if it can get by only by healing and without running the maximizer to find buffs. The bug comes from elemental_damage(), this code is looking at the resists cached in _spec from the last time the maximizer was simulated, but since it hasn't been done yet, this is coming from what you were wearing for the previous basement test.

I think it should start by always putting on your good gear and taking out your parrot. the code at vprint 2 would then keep you from wasting money on buffs you don't need.

[5957] Fernswarthy's Basement (Level 130)
Encounter: Got Silk?/Leather is Betther
You gain 765 Strongness
You gain a Muscle point!
Stat gain received
Basement level 131: Sleaze & Stench Elemental Resistance Test
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:30.0
isWeak(elem): false
Fraction of damage resisted: 0.9456322516623349
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:31.0
isWeak(elem): false
Fraction of damage resisted: 0.9463602097186125
---
0
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:10.0
isWeak(elem): false
Fraction of damage resisted: 0.7825510116598079
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:8.0
isWeak(elem): false
Fraction of damage resisted: 0.7088734567901234
---
1
2
Putting on outfit: Elemental Resistance
Equipment changed.
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:10.0
isWeak(elem): false
Fraction of damage resisted: 0.7825510116598079
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:8.0
isWeak(elem): false
Fraction of damage resisted: 0.7088734567901234
---
3
4
Taking Parrot the Exotic Parrot out of terrarium...
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:10.0
isWeak(elem): false
Fraction of damage resisted: 0.7825510116598079
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:8.0
isWeak(elem): false
Fraction of damage resisted: 0.7088734567901234
---
debug: 2317.0 977/1117
5
Maximizing...
50280 combinations checked, best score 48.65
Searching for "Knob Goblin pet-buffing spray"...
Search complete.
Searching for "pulled blue taffy"...
Search complete.
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:30.0
isWeak(elem): false
Fraction of damage resisted: 0.9456322516623349
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:31.0
isWeak(elem): false
Fraction of damage resisted: 0.9463602097186125
---
Wielding scratch 'n' sniff sword...
Equipment changed.
6
7
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:30.0
isWeak(elem): false
Fraction of damage resisted: 0.9456322516623349
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:31.0
isWeak(elem): false
Fraction of damage resisted: 0.9463602097186125
---
8
Element: sleaze
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:30.0
isWeak(elem): false
Fraction of damage resisted: 0.9456322516623349
---
Element: stench
Base Damage: 4558.112215952829
CLass modifier: 5.0
Elemental resistance:31.0
isWeak(elem): false
Fraction of damage resisted: 0.9463602097186125
---
9
The script was unable to acquire the necessary elemental form. You may need to acquire some phials yourself or raise your autoBuyPriceLimit. Attempting to pass test by HP buffing
unable to pass elemental test, quitting
 

Cool12309

Member
Is there a way to make this script block using certain things, like papier equipment (screws with mafia) or the mer-kin cool/smart/somethingjuice (which gives -100% to 2 stats, which causes me to frequently fail combat and will probably cause this to spend a lot more meat buffing up needlessly, since it also does not seem to recognize that it can easily shrug this effect when needed)?
 

Winterbay

Active member
I am almost 100% positive that the script uses the merkin potions since mafia will remove the effect if it is in conflict with another maximisation. If that us not working then something has changed to make mafia fail with that.

In regards to adding things to a blacklist thete is no easy way but the script already has a blacklist function you can look at to and then expand.
 

fronobulax

Developer
Staff member
I am almost 100% positive that the script uses the merkin potions since mafia will remove the effect if it is in conflict with another maximisation. If that us not working then something has changed to make mafia fail with that.

It has been several weeks since I ran autobasement but I definitely remember something failing and that manually uneffecting the negative merkin effect solved the problem. So my memory and your "almost 100% positive" seem to be contradictory. Before this gets blamed on a change in mafia, is the remove negative effects checkbox possibly a player?
 

Theraze

Active member
Well, shrugging negative effects is a maximization option, but one which the script writer has to consider and write special code to handle. If your new maximization doesn't involve using another mer-kin potion, and you haven't written shrug-detection code into your maximization parser, mafia won't do it automagically. And rightly so...
 

Winterbay

Active member
It has been several weeks since I ran autobasement but I definitely remember something failing and that manually uneffecting the negative merkin effect solved the problem. So my memory and your "almost 100% positive" seem to be contradictory. Before this gets blamed on a change in mafia, is the remove negative effects checkbox possibly a player?

I just tried it. I maximized for moxie and used the suggested merkin potion. I then maximized for muscle and the "uneffect ..." line which I remember clearly having seen before is no longer there. I have no idea if something in Mafia has changed or if my memory is completely off (I can't seem to find any earlier basement runs in my session folder, it was a while since I went in there).

Finding that uneffect line there was the reason I never added any special handling for it.
 
I distinctly recall uneffect being taken into account by the maximizer (usually with Beaten Up or Blood Sugar Sauce Magic).

Checking just now, maxing hp does suggest uneffecting bssm, so I don't know what's going on elsewhere...
 

Theraze

Active member
You have to tell the maximizer that you want it. Here's a sample line from TheSea to uneffect items that are currently causing +combat.
Code:
				foreach it,entry in maximize("-combat, -tie", 0, 0, true, false) if (entry.score > 0 && entry.command.index_of("uneffect ") == 0 && turns_per_cast(entry.effect.to_skill()) > 0) cli_execute(entry.command);
 
Two questions:

1. Is there any way to completely disable break_on_level and break_on_mp_value? Yeah I can just plug in absurdly high numbers (and have already done so) but the defaults are lower than you're going to encounter even just getting a telescope coupon, much less diving as deep as one can for fun and/or profit.
2. Is there any way to get the script to use my Galloping Grill instead of my Hovering Sombrero? on account of y'know the grill being better

e: make that three; occasionally the script breaks on a Gauntlet test because "you do not have a familiar with you"; what's up with that and/or how can i get the script to be more verbose so i can figure out what's up with that
 
Last edited:
Top