Equipt - an item selection tool

Bale

Minion
Using equipt--v1.5.ash

Code:
[COLOR="Olive"]> equipt Moxie[/COLOR]

Searching for Moxie
[outfit: (none)] [hobo: (none)] [rate: 1102]
[outfit: Swashbuckling Getup] [hobo: (none)] [rate: 666]
[COLOR="Red"]Internal error building outfit? trying to add two items to same slot [slot: off-hand] [original: star buckler] [adding: bottle-rocket crossbow][/COLOR]

Whoopsie!
 

DerDrongo

Member
KoLmafia has an undocumented command that may be useful to you here:
fakeitem [num] item
which adds the indicated number of items to mafia's idea of your inventory. The effects last until the end of your session, or you do a "refresh inv". Of course, any attempt to actually use the item will fail - this was intended as a way for developers to verify that a new item shows up in the right places, with the right details, in cases where the actual item isn't easily obtainable. Unfortunately, fakeitem cannot remove items from your inventory.
This command is great! managed to track down the conflicting items bug and even found an undetected offhand bug

Im currently trying to remove the excess debugging code i added and re-use some of it as a -follow option so it will report when ever it used an item in a check and when ever an outfit is passed if the item is in the outfit
 

DerDrongo

Member
Version 1.5b (View attachment 1501)
Fixed outfit conflicts
Fixed offhand items being replaced
Re-ordered the hobo checks so it will use the imaginary hamster instead of garbage sticker, metal detector or cane (assuming you have the items)
added -follow[] option, this prints out info everytime the item is in a check/outfit
 

Bale

Minion
Code:
[COLOR="Olive"]> equipt Moxie -sim[/COLOR]

Searching for Moxie
[outfit: (none)] [hobo: (none)] [rate: 1102]
[outfit: Swashbuckling Getup] [hobo: (none)] [rate: 666]
[outfit: Star Garb] [hobo: (none)] [rate: 471]
[outfit: Glad Bag Glad Rags] [hobo: (none)] [rate: 261]
[outfit: Palmist Paraphernalia] [hobo: (none)] [rate: 473]
hat: Disco 'Fro Pick
shirt: grungy flannel shirt
pants: plexiglass pants
weapon: bottle-rocket crossbow
offhand: bottle-rocket crossbow
acc1: Elvish sunglasses
acc2: dead guy's memento
acc3: tube sock
familiar: (empty)

[COLOR="Blue"]Sim Complete.[/COLOR]
[COLOR="Green"]done.[/COLOR]

Success!!
 
Of course it gets fixed after I ascend to Bad Moon :)
I'll test it ASAP but thanks for the tip on faking items Jason,
and thanks DerDrongo for taking the time to better your script.
 

psly4mne

Member
I've been using equipt for a while and it has been working well, but the latest version broke a few things.
1) maxFreePulls is being set to 0 (even though I'm in aftercore), which is causing the conditional on line 824 to always execute if any pulls are used, which means the program loops infinitely.
2) Trying to maximize mysticality, an outfit was chosen with a teflon spatula (from inventory) in my mainhand, and a second one (from storage) in my offhand. I don't have a second teflon spatula in storage. I only have one, and it's in my inventory.
3) It would be nice if maximizing max hp/mp would use myst/muscle increasers as appropriate.
 

Bale

Minion
Great script. I like it enough that I've been using it quite a bit. The more I use it though, the more I find something less wonderful than the rest. I've got a request for improvement...

Could you please fix it so that it won't change my familiar by default! As it is, to keep my familiar from being changed I need to use -familiar[current] every single time I run the script.

Odds are that my familiar was chosen for a good reason. Just because I'm maximizing my outfit for item drops or moxie doesn't mean I don't want my volleyball. Yet, the script likes to keep switching me into my fairy or disembodied hand when I really want a pixie, or a llama, or a GGG... It's kind of troublesome really. I'd rather that I had to select a -familiar option to make it change my familiar.
 

StormCrow42

Member
Could you please fix it so that it won't change my familiar by default! As it is, to keep my familiar from being changed I need to use -familiar[current] every single time I run the script.

There is a "pickFamiliar" configuration line at the top of the script. Alternately, you can "set familiarLock = 1"
 

DerDrongo

Member
I've been using equipt for a while and it has been working well, but the latest version broke a few things.
1) maxFreePulls is being set to 0 (even though I'm in aftercore), which is causing the conditional on line 824 to always execute if any pulls are used, which means the program loops infinitely.
2) Trying to maximize mysticality, an outfit was chosen with a teflon spatula (from inventory) in my mainhand, and a second one (from storage) in my offhand. I don't have a second teflon spatula in storage. I only have one, and it's in my inventory.
3) It would be nice if maximizing max hp/mp would use myst/muscle increasers as appropriate.
I think the pull stuff is being caused by mafia adding storage_amount() to available_amount() when you are out of ronin...
if you change line 824 to
Code:
if (!can_interact() && ret.pullCount > maxFreePulls) {
that should hopefully fix it... the next version will avoid all pull condition stuff when you are out of ronin and change Maximum HP and Maximum MP (with 0.5 extra bonus for matching my_primestat())
I am also trying to get better brimstone support without having to check way too many outfit combinations but progress is slow
 

psly4mne

Member
I tried that, and it doesn't loop, but it still finds the nonexistant extra spatula in storage.

available_amount($item[teflon spatula]) returns 1.
storage_amount($item[teflon spatula]) returns 0.

I'm not sure where the second spatula is coming from.
 

psly4mne

Member
> equipt -trace Mysticality
teflon spatula [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 15]
 
My girlfriend thinks that the character should have the priority for the best weapon
for a given Outfit rather than the disembodied hand.

e.g.

Searching for Mysticality
[outfit: (none)] [hobo: (none)] [rate: 35]
hat: Cloaca-Cola helmet
shirt: (empty)
pants: Cloaca-Cola fatigues
weapon: (empty)
offhand: Cloaca-Cola shield
acc1: solid baconstone ring
acc2: pulled porquoise ring
acc3: stainless steel scarf
familiar: Disembodied Hand
familiar item: Greek Pasta of Peril
 

Bale

Minion
Lol. I think that if you can't find something better than a Pasta of Peril to put in the empty slot, then you should probably use -familiar[none]. I'd only agree with her if there were two mysticality boosting weapons and the script put the better of the two in the disembodied hand.
 

DerDrongo

Member
> equipt -trace Mysticality
teflon spatula [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 15]
Found the problem, will do some more testing then post a new version later

My girlfriend thinks that the character should have the priority for the best weapon for a given Outfit rather than the disembodied hand.
I could check if the weapon slot is free and take the disembodied hand's weapon... I will also force a one handed weapon being selected if the outfit contains an offhand item (after main search has returned empty) and you are not currently using a one handed weapon
Lol. I think that if you can't find something better than a Pasta of Peril to put in the empty slot, then you should probably use -familiar[none]. I'd only agree with her if there were two mysticality boosting weapons and the script put the better of the two in the disembodied hand.
it should cause higher scores for the disembodied hand to be given the best one handed weapon then for the weapons/offhand to find the best remaining combination
 
For some reason the script appears to be hanging... infinite loop issue?

The trace works, but when I try to do -sim or do it for real it just hangs.
Here is the trace output:

> call scripts/equiptv1.5b.ash -trace Item Drop

Debugging modifier: Item Drop
Creating item map for: Item Drop
Slot: acc1
Aluminum Epsilon of Humility [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 9]
Baron von Ratsworth's monocle [can_equip: true] [available: 22] [storage: 0] [Single Equip] [remaining: 1] [score: 10]
Blue Diamond of Honesty [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 9]
Copper Alpha of Sincerity [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 5]
Green Clover of Justice [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 8]
Grimacite go-go boots [can_equip: true] [available: 0] [storage: 0] [Single Equip] [remaining: 0] [score: 30]
Grimacite gorget [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 25]
Iron Beta of Industry [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 6]
Jekyllin hide belt [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 45]
Lead Zeta of Chastity [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 10]
Mr. Accessory Jr. [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 25]
Nickel Gamma of Frugality [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 7]
Orange Star of Sacrifice [can_equip: true] [available: 5] [storage: 0] [Single Equip] [remaining: 1] [score: 6]
Order of the Silver Wossname [can_equip: true] [available: 4] [storage: 0] [Single Equip] [remaining: 1] [score: 11]
Pink Heart of Spirit [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 5]
Purple Horseshoe of Honor [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 10]
Radio KoL Maracas [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 15]
Red Balloon of Valor [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 11]
Uranium Omega of Temperance [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 11]
Yellow Moon of Compassion [can_equip: true] [available: 3] [storage: 0] [Single Equip] [remaining: 1] [score: 7]
Zinc Delta of Tranquility [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 8]
lucky rabbit's foot [can_equip: true] [available: 16] [storage: 0] [remaining: 16] [score: 7]
makeshift cape [can_equip: true] [available: 8] [storage: 0] [remaining: 8] [score: 5]
mayfly bait necklace [can_equip: true] [available: 1] [storage: 0] [Single Equip] [remaining: 1] [score: 10]

Slot: hat
bat hat [can_equip: true] [available: 2] [storage: 0] [remaining: 2] [score: 5]
bounty-hunting helmet [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 20]
ice pick [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 15]
miner's helmet [can_equip: true] [available: 30] [storage: 0] [remaining: 30] [score: 5]
straw hat [can_equip: true] [available: 3] [storage: 0] [remaining: 3] [score: 10]

Slot: none
Mr. Container [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 3]
hemp backpack [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 2]
none [can_equip: false] [available: 0] [storage: 0] [remaining: 0] [score: 0]

Slot: off-hand
Mer-kin takebag [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 5]
fancy opera glasses [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 5]
hypnodisk [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 25]

Slot: pants
bounty-hunting pants [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 15]
plexiglass pants [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 20]

Slot: shirt
Grateful Undead T-shirt [can_equip: true] [available: 5] [storage: 0] [remaining: 5] [score: 5]
flaming pink shirt [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 15]

Slot: weapon
Crimbo ukelele [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 10]
PVC staff [can_equip: true] [available: 0] [storage: 0] [remaining: 0] [score: 10]
bottle-rocket crossbow [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 10]
bounty-hunting rifle [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 15]
bubble bauble bow [can_equip: true] [available: 2] [storage: 0] [remaining: 2] [score: 5]
duck-on-a-string [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 5]
duct tape sword [can_equip: true] [available: 2] [storage: 0] [remaining: 2] [score: 5]
flamin' bindle [can_equip: false] [available: 4] [storage: 0] [remaining: 4] [score: 10]
freezin' bindle [can_equip: false] [available: 8] [storage: 0] [remaining: 8] [score: 10]
gnauga hide whip [can_equip: true] [available: 3] [storage: 0] [remaining: 3] [score: 3]
octopus's spade [can_equip: true] [available: 3] [storage: 0] [remaining: 3] [score: 5]
pixel boomerang [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 5]
roboduck-on-a-string [can_equip: true] [available: 1] [storage: 0] [remaining: 1] [score: 5]
sleazy bindle [can_equip: false] [available: 7] [storage: 0] [remaining: 7] [score: 10]
spooky bindle [can_equip: false] [available: 4] [storage: 0] [remaining: 4] [score: 10]
stinkin' bindle [can_equip: false] [available: 3] [storage: 0] [remaining: 3] [score: 10]
vampire duck-on-a-string [can_equip: true] [available: 2] [storage: 0] [remaining: 2] [score: 5]

This output can get very large, check your session logs to see everything... and rememebr if you are going to post your results on the forum please include relevant infomation only
debugging done.

> call scripts/equiptv1.5b.ash -sim Item Drop

Searching for Item Drop
(just hangs indefinitely here)
 

DerDrongo

Member
For some reason the script appears to be hanging... infinite loop issue?

The trace works, but when I try to do -sim or do it for real it just hangs.
This is caused by the script trying to add items from your storage when you are out of ronin, I am currently testing a new version to avoid this... but to fix it just now you can empty your storage
 
This outfit gave me 276 HP

> call scripts/equiptv1.5b.ash

Searching for Maximum HP
[outfit: (none)] [hobo: (none)] [rate: 114]
hat: reinforced beaded headband
shirt: (empty)
pants: (empty)
weapon: big bass drum
offhand: (two handed weapon)
acc1: bejeweled pledge pin
acc2: big red clown nose
acc3: big red clown nose
familiar: (empty)

But If I equip any other weapon, and my battered hubcap off-hand
I get 371 HP. If I replace a big red clown nose with my Orange Star
of Sacrifice, it goes up to 374 HP. If I replace the other clown nose
with pirate fledges, I'm still 374 HP, but my other stats are now better too.
 
Last edited:
Top