Winterbay's Helpful Automatic Monsterbasher (WHAM)

I've been attempting to use WHAM in my last Bad Moon run and for some reason it decides none of my combat skills are workable and aborts. From the basic output it appears that Wham is trying to do the fight, but reports that Wave of Sauce or Saucestorm won't do any damage and aborts. I can finish fights with either of these skills, so I'm assuming that I'm missing something here and I hope I can tweak something to help out.

Code:
[469] Infernal Rackets Backstage
Encounter: suckubus
Strategy: /home/duncan/.kolmafia/ccs/Farming.ccs [default]
Round 0: caphector loses initiative!
Round 1: You lose 23 hit points
1 HP costs 6μ. ( 13 / 64 )
1 MP costs 6.452μ. ( 78 / 117 )
WHAM: We currently think that the round number is: 0 and that the turn number is 468.
WHAM: Checking to see if WHAM sould adjust the unknown_ml for suckubus.
WHAM: No need to do anything with suckubus.
WHAM: Setting up variables via BatBrain
Setting monster to suckubus...
bus pass (20.0 @ +45): 1,180μ * 29% = 342.2
folder (rainbow unicorn) (1.0 @ +45): 30,000μ * 1.45% = 435
Value of stat gain: 193.81μ
Monster information loaded from cache.
Base round: damage, player damage, 0 meat
ATT: 56 (94% × (58.66), death in 1)
DEF: 49 (8.59% × 8.72, win in 55)
HP: 55, Value: 1,019.01 μ, RES: 0 (1) (-1) (-1), Happenings: 0, ID: 977
Parsed round number: 0 (real: 1)
Building options...
Events created: attack, (blank)
Events created: use 2, use 208, use 469, use 559, use 747, use 1777
Events created: skill 4020, skill 4024, skill 4003, skill 4014, skill 4005, skill 4029, skill 4009, runaway; repeat
Base round: damage, player damage, 0 meat
Options built! (15 actions)
WHAM: We currently think that the round number is: 1 and that the turn number is 468.
WHAM: Current MP = 78 out of 117.
WHAM: You have no profitable MP restoratives.
WHAM: Current HP = 13 out of 64.
WHAM: You have no profitable HP restoratives.
WHAM: You are fighting a suckubus. Mafia considers that this monster has an attack of 56 or 55 when given a monster name.
WHAM: Mafia further considers that this monster has a defense value of 49 or 49 when given a monster name.
WHAM: Mafia further further considers that this monster has a HP value of 55 or 55 when given a monster name.
WHAM: Your current ML-adjustment is: 0.
WHAM: You have muscle = 33, mysticality = 61, and moxie = 38
WHAM: Monster HP is 55.0.
WHAM: WHAM added the following to BatRound: if pastround 29; abort "Stopping fight because it has gone on for too long (set WHAM_maxround to a higher value if you think this was in error)"; endif; 
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping use 1777 since it is too risky.
Skipping attack since the hitchance is too low.
Skipping use 747 since it is too risky.
Skipping use 559 since it is too risky.
Skipping skill 4024 since it is too risky.
Skipping skill 4029 since it is too risky.
Skipping use 2 since it is too risky.
Skipping skill 4020 since it is too risky.
Skipping skill 4003 since it is too risky.
Skipping skill 4014 since it is too risky.
Skipping use 469 since it is too risky.
Skipping use 208 since it is too risky.
Skipping skill 4005 since it is too risky.
Skipping skill 4009 since it is too risky.
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping runaway; repeat since it is not ok.
WHAM: No valid attack options (Best option, 'use 1777', not good enough)
WHAM: Running SmartStasis
Profit per round: ActionProfitDamageOtherbase (0μ)0μ--
Building custom WHAM actions...
Custom WHAM actions built! (0 actions)
Building custom actions...
3/3 monsters drop goals here.
Custom actions built! (1 actions)
No valid attacks (Best attack 'use 1777' not good enough).
No stun action chosen.
Custom action: skill 4014 (no stun)
Queued round 1: skill 4014
Building options...
Events created: attack, (blank)
Events created: use 2, use 208, use 469, use 559, use 747, use 1777
Events created: skill 4020, skill 4024, skill 4003, skill 4014, skill 4005, skill 4029, skill 4009, runaway; repeat
Options built! (15 actions)
WHAM: Stasis option chosen: skill 4014 (round 1, profit: 52.19)
Skipping use 1777 since it is too risky.
Skipping attack since the hitchance is too low.
Skipping use 747 since it is too risky.
Skipping use 559 since it is too risky.
Skipping skill 4024 since it is too risky.
Skipping skill 4029 since it is too risky.
Skipping use 2 since it is too risky.
Skipping skill 4020 since it is too risky.
Skipping skill 4003 since it is too risky.
Skipping skill 4014 since it is too risky.
Skipping use 469 since it is too risky.
Skipping use 208 since it is too risky.
Skipping skill 4005 since it is too risky.
Skipping skill 4009 since it is too risky.
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping runaway; repeat since it is not ok.
WHAM: No valid attack options (Best option, 'use 1777', not good enough)
Stasis loop complete (queue still contains 1 actions).
Constructed macro: scrollwhendone; sub batround; if pastround 29; abort "Stopping fight because it has gone on for too long (set WHAM_maxround to a higher value if you think this was in error)"; endif; endsub; skill 4014; call batround; 
Round 1: caphector executes a macro!
Round 1: caphector casts SAUCY SALVE!
KoLmafia thinks it is round 2 but KoL thinks it is round 1
Round 2: You gain 12 hit points
Happened round 1: skill 4014
Parsed round number: 1 (real: 2)
Building options...
Events created: attack, (blank)
Events created: use 2, use 208, use 469, use 559, use 747, use 1777
Events created: skill 4020, skill 4024, skill 4003, skill 4014, skill 4005, skill 4029, skill 4009, runaway; repeat
Base round: damage, player damage, 0 meat
Options built! (15 actions)
WHAM: SmartStasis complete.
WHAM: Running SmartStasis took 0.34 seconds.
WHAM: SS did not finish the fight, continuing with script execution. 
WHAM: We currently think that the round number is: 2 and that the turn number is 468.
WHAM: Starting evaluation and performing of attack
WHAM: We currently think that the round number is: 2 and that the turn number is 468.
Skipping use 1777 since it is too risky.
Skipping attack since the hitchance is too low.
Skipping use 747 since it is too risky.
Skipping use 559 since it is too risky.
Skipping skill 4024 since it is too risky.
Skipping skill 4029 since it is too risky.
Skipping use 2 since it is too risky.
Skipping skill 4020 since it is too risky.
Skipping skill 4003 since it is too risky.
Skipping skill 4014 since it is too risky.
Skipping use 469 since it is too risky.
Skipping use 208 since it is too risky.
Skipping skill 4005 since it is too risky.
Skipping skill 4009 since it is too risky.
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping runaway; repeat since it is not ok.
WHAM: No valid attack options (Best option, 'use 1777', not good enough)
Skipping use 1777 since it is too risky.
Skipping attack since the hitchance is too low.
Skipping use 747 since it is too risky.
Skipping use 559 since it is too risky.
Skipping skill 4024 since it is too risky.
Skipping skill 4029 since it is too risky.
Skipping use 2 since it is too risky.
Skipping skill 4020 since it is too risky.
Skipping skill 4003 since it is too risky.
Skipping skill 4014 since it is too risky.
Skipping use 469 since it is too risky.
Skipping use 208 since it is too risky.
Skipping skill 4005 since it is too risky.
Skipping skill 4009 since it is too risky.
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping runaway; repeat since it is not ok.
WHAM: No valid attack options (Best option, 'use 1777', not good enough)
runaway; repeat is not OK since it is marked as a custom action.
WHAM: No profitable stun option
Monster HP is 55 according to Mafia and 55.0 according to BatBrain.
WHAM: We estimate the round number to currently be 2 (loop variable 0)
Monster HP is 55 according to Mafia and 55.0 according to BatBrain (loop variable i = 0).
WHAM: Your most profitable deleveling option is use 469.
Queued round 2: use 469
Building options...
Events created: attack, (blank)
Events created: use 2, use 208, use 469, use 559, use 747, use 1777
Events created: skill 4020, skill 4024, skill 4003, skill 4014, skill 4005, skill 4029, skill 4009, runaway; repeat
Base round: damage, player damage, 0 meat
Options built! (15 actions)
WHAM: Your most profitable deleveling option is use 469.
Skipping use 1777 since it is too risky.
Skipping attack since the hitchance is too low.
Skipping use 747 since it is too risky.
Skipping use 559 since it is too risky.
Skipping skill 4024 since it is too risky.
Skipping skill 4029 since it is too risky.
Skipping use 2 since it is too risky.
Skipping skill 4020 since it is too risky.
Skipping skill 4003 since it is too risky.
Skipping skill 4014 since it is too risky.
Skipping use 469 since it is too risky.
Skipping use 208 since it is too risky.
Skipping skill 4005 since it is too risky.
Skipping skill 4009 since it is too risky.
runaway; repeat is not OK since it is marked as a custom action.
runaway; repeat is not OK since it is marked as a custom action.
Skipping runaway; repeat since it is not ok.
WHAM: No valid attack options (Best option, 'use 1777', not good enough)
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.
Base round: damage, player damage, 0 meat
runaway; repeat is not OK since it is marked as a custom action.
WHAM: leftovers of indeterminate origin: 18.00 potential damage (raw damage: 18.00) and a hitchance of 100.00%.
WHAM: Attack with your weapon: 4.01 potential damage (raw damage: 4.01) and a hitchance of 8.59%.
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: Curse of Vichyssoise: 2.50 potential damage (raw damage: 2.50) and a hitchance of 100.00%.
WHAM: Curse of Marinara: 2.50 potential damage (raw damage: 2.50) and a hitchance of 100.00%.
WHAM: seal tooth: 1.00 potential damage (raw damage: 1.00) and a hitchance of 100.00%.
WHAM: Salsaball: 1.00 potential damage (raw damage: 1.00) and a hitchance of 100.00%.
WHAM: Stream of Sauce: 1.00 potential damage (raw damage: 1.00) and a hitchance of 100.00%.
WHAM: Saucy Salve: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: wussiness potion: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: patchouli incense stick: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: Saucestorm: 0.00 potential damage (raw damage: 0.00) and a hitchance of 100.00%.
WHAM: Wave of Sauce: 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 2: caphector executes a macro!
KoLmafia thinks it is round 3 but KoL thinks it is round 1
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.
 
Finally hit this bug when I was able to notice.
Custom action: use 547 (stun first with skill 7182)
Custom action: use 547 (no stun)
Custom action: use 549 (no stun)
Auto-funk: merging 'use 547' and 'use 549'.
Custom action: use 550 (no stun)
Round 1: Theraze executes a macro!
Round 1: Theraze casts SOUL BUBBLE!
Round 2: Theraze uses the 334 scroll!
Round 3: Theraze uses the 334 scroll and uses the 30669 scroll!
You acquire an item: 668 scroll
Round 4: Theraze uses the 33398 scroll!
Round 5: Theraze casts SUCKERPUNCH!
Looks like the auto-funk only works on non-stun sets - the initial stun makes it not funksling the first scroll, which makes everything else not work properly, which makes it waste a TON of adventures hoping for the right combination. Since I have commit rights, I'll try to fix it if I don't see it's been fixed before. Just need to stare at the auto-funk code and see how that works with stuns. I hope.

Edit: Actually, the auto-funk code is BatBrain. I'll post this there for Zarqon to look at when he has time. Will still see if I can sort of why it fails, but it's not a WHAM fix.
 
Is anyone else having trouble with WHAM not recognizing the AWoL combat skills?

EDIT: Nevermind. Reading the BatBrain thread makes it clear it's being worked on.
 
Last edited:
Code:
WHAM: Running SmartStasis
WHAM:     Starting evaluation and performing of attack
WHAM:     Enqueuing a stun to help with the battle
WHAM:     We are going to 2-shot with Soul Bubble and Soul Blaze.
Round 1:     Jennisage executes a macro!
Round 1: Jennisage casts SOUL BUBBLE!

So... once soul bubble is cast, my soulsauce goes from 100 to 95, and thus it cannot cast Soul Blaze. Maybe the script should be aware of this?
 
Is wham/smartstasis capable of drawing out a fight with the Intergnat equipped to drop more Bacon? Right now wham appears to be just ending the fight with an attack ASAP with the gnat equipped, even though it could get another 5 bacon to drop by drawing out the fight
 
You could do that but zarqon's latest update to Batbrain added support for BACON. Smartstasis should take it into account when deciding on stasis. If it isn't doing so them I would suggest posting a note in the Batbrain thread. The update note stated that it was untested functionality.
 
Last edited:
well the only thing in my ccs is 'consult wham.ash' and even after the latest batbrain update it's not maximizing bacon. So wasn't sure where the breakdown may be happening

batbrain is at HEAD (r94)
winterbay-mafia-wham is at HEAD (r47)
 
Now, maybe I broke something. But right now I'm a myst class whose muscle is 100, and I'm fighting enemies whose defense is 200. And wham is deciding to attack with my weapon when my MP is full? How do I tell it that it is doing something unwise?
 
Last edited:
I'll start here although the fix might end up being in Batbrain. What is an automated way to handle Agent Conner in a Source run? I can't call him out as a special case in the CCS because he is always the second stage of a two stage encounter. (If you can then help me with syntax, please). In a perfect world WHAM would just make a selection from the available Source skills but at the moment it does not understand that only the Source skills will work. Is that something Batbrain could handle if someone entered the data or do I just ask for WHAM to abort if it sees an agent?
 
I'll start here although the fix might end up being in Batbrain. What is an automated way to handle Agent Conner in a Source run? I can't call him out as a special case in the CCS because he is always the second stage of a two stage encounter. (If you can then help me with syntax, please). In a perfect world WHAM would just make a selection from the available Source skills but at the moment it does not understand that only the Source skills will work. Is that something Batbrain could handle if someone entered the data or do I just ask for WHAM to abort if it sees an agent?

There is a section of wham that habdle special cases. My guess, without having played much kol for the last 6 months and looked at the code of wham even less, is that you could add a case for the agent there and filter out all skills that are unavailable/unusable in the fight and then pass the limited list on to main batbrain.

I may be very wrong though. And it may be impossible if the monster itself is not recognised as a new monster but that would be up to Mafia I guess.
 
I can't call him out as a special case in the CCS because he is always the second stage of a two stage encounter. (If you can then help me with syntax, please).
Maybe that was true at some point, but mafia recognizes him now and I had no trouble making a CCS abort on them during my recent run.
Code:
[ agent ]
abort
Yes, I know that syntax is obvious, but I just want to be clear the obvious solution worked for me.
 
Maybe that was true at some point, but mafia recognizes him now and I had no trouble making a CCS abort on them during my recent run.
Code:
[ agent ]
abort
Yes, I know that syntax is obvious, but I just want to be clear the obvious solution worked for me.

I may have had agent conner but I can certainly try again. If the monster name in brackets is not recognized by KoLmafia, does it generate a warning message of some kind?

Edit: Kolmafia does not give any feedback when the monster named in a ccs does not exist (and that is probably reasonable from a future proof standpoint) so I probably has connor instead of conner.
 
Last edited:
No idea how the ccs handles monsters with multiple names but the agent's actual name (as recognized by the manuel) is "Source Agent".
 
No idea how the ccs handles monsters with multiple names but the agent's actual name (as recognized by the manuel) is "Source Agent".
Oh, right. That's part of why I just used agent. I figured it covered any name.

Code:
> ash $monster[source agent]

Returned: Source Agent
 
I use a slightly customized version of wham, adding the following code to build_custom_WHAM():

PHP:
	// Use the romantic arrow if we've got our Obtuse Angel with us
	if(my_fam() == $familiar[Obtuse Angel]
			&& get_putty_monster() == m
			&& get_property("_badlyRomanticArrows").to_int() == 0){
		vprint("Enqueuing to olfact: Fire a badly romantic arrow", 4);
		encustom(get_action($skill[Fire a badly romantic arrow]));
	}

It works fine, I use a photocopied monster and wham does fire the romantic arrow. Mafia is also setup to auto putty the photocopied monster (clod hopper), but this action is *not* taken by wham when using a photocopied monster. BUT! when directly fighting a putty-item monster, and on all the reappearances of the clod hopper (from the romantic arrow), wham *does* putty it. Is there something I'm missing? my entire ccs is 'consult wham.ash'


Putty *is not* used when using a photocopied monster

Code:
use 1 photocopied monster

[558120] photocopied monster
Encounter: clod hopper
Round 0: fxer wins initiative!
> Updating batfactors.txt from '2016-05-19T05:16:57-05:00' to '2016-05-23T16:47:18-05:00'...
> ...batfactors.txt updated.
> WHAM: Monster HP is 188.0.
> WHAM: Running SmartStasis
> Enqueuing to olfact: Fire a badly romantic arrow
Round 1: fxer executes a macro!
Round 1: fxer tries to steal an item!
Round 2: fxer casts FIRE A BADLY ROMANTIC ARROW!
Round 3: Angel Dustin' fires a badly romantic arrow at your opponent. It roars an angry "RAAAH! RAAAH!" but it quickly turns into an "OOO LA LA!" It gazes at you, too stunned by your beauty to attack this round.
> WHAM: Starting evaluation and performing of attack
> WHAM: We are going to 1-shot with attack with your weapon.
Round 3: fxer executes a macro!
Round 3: fxer attacks!
Round 4: clod hopper takes 9009 damage.
Round 4: fxer wins the fight!
After Battle: Angel Dustin' dances around like a pinhead.
You acquire an item: floaty sand
You acquire an item: floaty sand
After Battle: You gain 23 Beefiness
After Battle: You gain 19 Wizardliness
After Battle: You gain 37 Roguishness

Putty *is* used when the clod hopper shows up as a wandering monster:

Code:
558141] Barf Mountain
Encounter: clod hopper
Round 0: fxer wins initiative!
Round 1: Angel Dustin' says, "warm it up, Organ Bump N' Grinder," and Organ Bump N' Grinder responds, "I'm about to.'
> WHAM: Monster HP is 180.0.
> WHAM: Running SmartStasis
Round 1: fxer executes a macro!
Round 1: fxer tries to steal an item!
You acquire an item: floaty sand
You gain 26 Meat.
Round 2: Angel Dustin' shoots you with a tonic-water arrow. The tonic heals the wound the arrow caused, and your blood fizzes merrily. If only you had some gin and a lime in your blood, too.
Round 2: You gain 5 Mojo Points
You gain 46 Meat.
Round 2: fxer casts POCKET CRUMBS!
Round 3: clod hopper drops 16 attack power.
Round 3: clod hopper drops 12 defense.
Round 3: Angel Dustin' shoots you with a tonic-water arrow. The tonic heals the wound the arrow caused, and your blood fizzes merrily. If only you had some gin and a lime in your blood, too.
Round 3: You gain 6 Mojo Points
Round 3: Organ Bump N' Grinder jumps out of the Buddy Bjorn and dances around your opponent's feet, burning it with his cigar (16 damage) and yanking at its shoelaces (or whatever it has).
Round 3: clod hopper takes 16 damage.
Round 3: clod hopper drops 5 attack power.
Round 3: clod hopper drops 5 defense.
Round 3: Party Probe bounces his disc off of it for 45 damage, and it ricochets into you, giving you quite a shock.
Round 3: clod hopper takes 45 damage.
Round 3: You gain 45 Mojo Points
Round 3: fxer uses the Rain-Doh black box!
You acquire an item: Rain-Doh box full of monster
Round 4: Angel Dustin' shoots you with a tonic-water arrow. The tonic heals the wound the arrow caused, and your blood fizzes merrily. If only you had some gin and a lime in your blood, too.
Round 4: You gain 5 Mojo Points
Round 4: You lose 6 hit points
> Revised monster value: 3,706.5
> Revised monster value: 3,706.5
> WHAM: Starting evaluation and performing of attack
> Revised monster value: 1,853.25
> Revised monster value: 1,853.25
> WHAM: We are going to 1-shot with attack with your weapon.
Round 4: fxer executes a macro!
Round 4: fxer attacks!
Round 5: clod hopper takes 6596 damage.
Round 5: Party Probe de-rezzes it for 47 damage, then offers you a drink out of his identity disc. It's a little too intimate for your comfort, but it's still refreshing.
Round 5: clod hopper takes 47 damage.
Round 5: You gain 47 Mojo Points
Round 5: fxer wins the fight!
After Battle: Party Probe sees some extra stuff through the snow suit's coal eyes and points it out to you.
After Battle: You gain 7 Mojo Points
After Battle: Angel Dustin' surveys the scene from atop the throne and sighs.
After Battle: Organ Bump N' Grinder surveys the scene from your back and sighs.
You acquire an item: floaty sand
You acquire an item: floaty sand
After Battle: Party Probe says "Please accept this token of my devotion to my user," and hands you an actual, literal token. Now that you think of it, you actually are kind of using him. Is this really a healthy relationship?
You acquire an item: Game Grid token
After Battle: You gain 9 Strongness
After Battle: You gain 10 Mysteriousness
After Battle: You gain 32 Chutzpah

Putty *is* used when fighting directly from a putty item:
Code:
use 1 Rain-Doh box full of monster

[558142] Rain-Doh box full of monster
Encounter: clod hopper
Round 0: fxer wins initiative!
> WHAM: Monster HP is 198.0.
> WHAM: Running SmartStasis
Round 1: fxer executes a macro!
Round 1: fxer tries to steal an item!
Round 2: The Stones on that Guy passes the tanning butter. Ahh, that's soothing.
Round 2: You gain 13 Mojo Points
Round 2: Morty "The Heeb" Goldfarb glares at a passerby with his blue eye. The passerby shivers and breaks out in goosebumps. Or possibly Fear Street.
Round 2: fxer uses the Rain-Doh black box!
You acquire an item: Rain-Doh box full of monster
Round 3: The Stones on that Guy passes the tanning butter. Ahh, that's soothing.
Round 3: You gain 10 Mojo Points
Round 3: Morty "The Heeb" Goldfarb's red eye alights on a short guy with a huge, red, handlebar mustache. The guy screams, "my biscuits are burnin'!" and leaps into a pond.
Round 3: You lose 6 hit points
Round 3: fxer casts CONSUME BURROWGRUB!
Round 4: You gain 30 hit points
Round 4: You gain 15 Mojo Points
Round 4: The Stones on that Guy passes the tanning butter. Ahh, that's soothing.
Round 4: You gain 13 Mojo Points
Round 4: Morty "The Heeb" Goldfarb's yellow eye gazes upon a passing frat boy. There's a gentle *pop,* then just the lingering scent of cheap cologne and desperation.
Round 4: fxer casts POINT AT YOUR OPPONENT!
Round 5: Morty "The Heeb" Goldfarb swings his eyestalk around and unleashes a massive ray of yellow energy, completely disintegrating your opponent.
You acquire an effect: Everything Looks Yellow (1)
Round 5: fxer wins the fight!
After Battle: The Stones on that Guy surveys the scene from your back and sighs.
After Battle: You gain 35 Mojo Points
You acquire an item: floaty sand
You acquire an item: floaty sand
You acquire an item: floaty sand
After Battle: You gain 7 Beefiness
After Battle: You gain 10 Enchantedness
After Battle: You gain 40 Smarm
 
Well, you check for putty monsters. Specifically. And only for what the putty monster is.

Do photocopied monsters count as putty monsters? That doesn't seem likely.
 
get_putty_monster() just returns $monster[clod hopper] but I don't think that's relevant? The auto-putty (built into mafia) happens when a putty sheet or rain-dox box is used, why wouldn't it happen with a photocopied monster?
 
Back
Top