Winterbay's Helpful Automatic Monsterbasher (WHAM)

Theraze

Active member
That's because that code ia not yet supported. It's more of an informative message letting you know that it currently does not know how to handle that.

Actually, not quite. There's support. If you look at BatBrain itself, it does know what to do... elemental reSistance is a 30% elemental barrier. But as Veracity pointed out, including the specific location, it's a typo in the mafia code. For now, BatBrain could work around it by typoing itself.
 
It looks like Pop Wheelie isn't known? I've had combat stop a couple times today, saying it doesn't know how to win.

Code:
[139] The Laugh Floor
Encounter: Victor the Insult Comic Hellhound
Round 0: chef_rannos wins initiative!
You have hot plate equipped: (3) damage, retal
ATT: 90 (94% × 20.54, death in 4)
DEF: 83 (32.28% × 16.9 (3) (11) (3) (3) (28), win in 4)
HP: 90, Value: 373.13 μ, RES: 0
WHAM: Monster HP is 90.0.
WHAM: Running SmartStasis
Profit per round: ActionProfitDamageOtherbase (0μ)0μ--
WHAM: Starting evaluation and performing of attack
WHAM: We are going to 2-shot with attack with your weapon and attack with your weapon.
Round 1: chef_rannos executes a macro!
Round 1: chef_rannos attacks!
You lose 1 hit point
Round 2: victor the insult comic hellhound takes 3 damage.
You lose 18 hit points
Round 2: chef_rannos attacks!
Round 3: victor the insult comic hellhound takes 10 damage.
Round 3: victor the insult comic hellhound takes 4 damage.
You lose 17 hit points
WHAM: Current monster HP is calculated to 73.0
WHAM: Starting evaluation and performing of attack
WHAM: Unable to delevel until you can kill the monster without it killing you. Try it yourself.
WHAM: Unable to determine a valid combat strategy. For your benefit here are the numbers for your combat options.
WHAM: Attack with your weapon: 34.75 potential damage (raw damage: 34.75) and a hitchance of 32.28%.
WHAM: hair spray: 4.00 potential damage (raw damage: 4.00) and a hitchance of 100.00%.
WHAM: Knob Goblin firecracker: 3.00 potential damage (raw damage: 3.00) and a hitchance of 100.00%.
WHAM: razor-sharp can lid: 2.50 potential damage (raw damage: 2.50) and a hitchance of 100.00%.
WHAM: wussiness potion: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: disease: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: anti-anti-antidote: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: You now have the knowledge needed to go forward and be victorious
Round 3: chef_rannos executes a macro!
KoLmafia thinks it is round 4 but KoL thinks it is round 3
WHAM: Unable to figure out a combat strategy. Helpful information regarding your skills have been printed to the CLI
You're on your own, partner.
Click here to continue in the relay browser.


Round 4: chef_rannos casts POP WHEELIE!
KoLmafia thinks it is round 5 but KoL thinks it is round 4
Round 5: victor the insult comic hellhound takes 24 damage.
Round 5: victor the insult comic hellhound drops 13 attack power.
Round 5: victor the insult comic hellhound drops 13 defense.
Round 5: chef_rannos attacks!
KoLmafia thinks it is round 6 but KoL thinks it is round 5
Round 6: victor the insult comic hellhound takes 84 damage.
Round 6: chef_rannos wins the fight!
You gain 4 hit points
You gain 4 Mojo Points
You acquire an item: Victor, the Insult Comic Hellhound Puppet
You gain 9 Muscleboundness
You gain 5 Enchantedness
You gain 15 Sarcasm
 

zarqon

Well-known member
Ha, I fixed that spelling when I added Winterbay's video boss attribute support to BatBrain, not realizing that it was actually working with the typo.

I guess it's for the better -- BatBrain using the correct spelling resulted in the mafia typo being fixed.
 

Winterbay

Active member
Yeah, I just copied the values from the update notes without any kind of editing and I guess they came in turn from my copy from the wiki which may be where the error originated :)
 

fronobulax

Developer
Staff member
Yeah, I just copied the values from the update notes without any kind of editing and I guess they came in turn from my copy from the wiki which may be where the error originated :)

Well, I have a vague recollection that I checked in the code so I certainly missed an opportunity to fix it or at least ask about it.
 

Mr_Crac

Member
What do I have to do to stop the script from using combat items like:

Love song of smoldering passion
Love song of vague ambiguity

I don't want the script to waste combat items. I have spells. Big spells. Fry monsters with spells please. Thank you very much :)

Disclaimer: I do want to use the sea lasso, sea cowbell, Mer-kin healscroll and Mer-kin killscroll. So basically what is needed to do the Underwater stuff and get the gear for Clothing of Loathing.

Is there a way to achieve that?
 
Last edited:

Bale

Minion
I mirror the suggestion that it would be nice if there was a way to disallow all non-quest item usage while still allowing items to be used to further quests such as flyering, pirate insulting and the examples Mr_Crac just mentioned.

Right now WHAM_dont_use can only disallow item use for each and every item that I specifically mention by name. That's a bit unwieldy if someone wants to blacklist everything except for questing goals.
 

zarqon

Well-known member
BatMan RE has a very simple interface for blacklisting items you don't want being used. It shouldn't take more than a minute to blacklist all your current items.

I could see a setting for disallowing items not flagged "custom" though -- which means, generally, that only items explicitly selected in custom code would get used. I'll add that to BatBrain.

EDIT: Also, FWIW, if BatBrain is selecting combat items, it is actually more cost-effective to use those items than to use combat spells. In other words, it would cost you more to restore the MP than it would to buy a new love song.
 

Theraze

Active member
EDIT: Also, FWIW, if BatBrain is selecting combat items, it is actually more cost-effective to use those items than to use combat spells. In other words, it would cost you more to restore the MP than it would to buy a new love song.

Unless for some sad, masochistic reason the user isn't using UR. In which case, don't do that. Start using UR.
 

Razorsoup

Member
Getting the following during combat:
The string "1022; attack" is not an integer; returning 1022 (WHAM.ash, line 535)
The string "1004; attack" is not an integer; returning 1004 (WHAM.ash, line 535)
The string "1003; attack" is not an integer; returning 1003 (WHAM.ash, line 535)

This only happens on one character and that character is a seal clubber in bad moon.

KoLmafia version is r13806, winterbay-mafia-wham is at HEAD (r38), batbrain is at HEAD (r32)
 

xKiv

Active member
EDIT: Also, FWIW, if BatBrain is selecting combat items, it is actually more cost-effective to use those items than to use combat spells. In other words, it would cost you more to restore the MP than it would to buy a new love song.

Is that true even with MP regeneration? Because sometimes that MP goes into healing, sometimes into summoning, and sometimes it doesn't have anywhere to go but combat.
 

zarqon

Well-known member
BatBrain considers regen in profit evaluations. If you have an average MP regen of 4 and you are at 8 MP out of 10, a skill costing 3 MP is evaluated as costing 1 MP, since the first two are "free"; you'll get them back. Likewise, MP gain would not be considered profitable unless you have fewer than 6 MP.
 

xKiv

Active member
BatBrain considers regen in profit evaluations. If you have an average MP regen of 4 and you are at 8 MP out of 10, a skill costing 3 MP is evaluated as costing 1 MP, since the first two are "free"; you'll get them back. Likewise, MP gain would not be considered profitable unless you have fewer than 6 MP.

In other words, it won't consider MP regen at all if my max MP is very high, even if I am otherwise running at surplus and can't use that surplus outside combat?
 

zarqon

Well-known member
If you can't use MP outside combat, you'll gain it up to the point where it will be considered. Which would make combat skills much less costly (and thus more likely to be selected). Which means it considers it as I described.

On the other hand, are you suggesting that BatBrain should also know everything about possible uses of MP outside combat? Because wow.
 

elpasi

New member
WHAM is amazing. Incredible. A dream to use.

Just been running into one bug recently where it'll repeatedly kick me to relay for a trivial fight.

Encounter: Quantum Mechanic
Strategy: /home/simon/.kolmafia/ccs/default.ccs [default]
Round 0: elpasi wins initiative!
WHAM: Running SmartStasis
Round 1: elpasi executes a macro!
Round 1: elpasi tries to steal an item!
You acquire an item: large box
WHAM: Starting evaluation and performing of attack
WHAM: Unable to delevel until you can kill the monster without it killing you. Try it yourself.
WHAM: Unable to determine a valid combat strategy. For your benefit here are the numbers for your combat options.
WHAM: Attack with your weapon: 85.05 potential damage (raw damage: 373.60) and a hitchance of 95.45%.

I have 355 mus, 342 mys, 524 mox and, you guessed it, a single blow from my bounty hunting rifle defeats the monster. I also consistently have more than half of my 380HP, so even being attacked back isn't going to beat me.

One click later:
Round 2: quantum mechanic takes 382 damage.
Round 2: elpasi wins the fight!
After Battle: Trofflesby does a little fairy dance.
You gain 5 Muscleboundness
You gain 5 Mysteriousness
You gain 7 Sarcasm

I'm not sure why WHAM claims there's no valid combat strategy there.
 

Winterbay

Active member
Yeah me neither. I've run into the same issue at times but can never repeat it when I try to debug it. If you manage to catch one with verbosity of 9 or so that'd be great :)
 

elpasi

New member
Since it technically happens for every Quantum Mechanic I see (and I'm doing Extinctionist, so... there's bound to be more), I can likely reproduce this for you.

So... you just want me to crank verbosity to 9? No other changes? Which specific information do you then want, just the CLI's output?
 
Top