SmartStasis -- a complex script for a simple CCS

zarqon

Well-known member
Hmmm, it also doesn't work on scary pirates. I guess -- like basically every single thing else -- a general solution doesn't completely work and I should code in the exceptions. Sigh.

PHP:
// new check:
   if (m.phylum == $phylum[pirate] && !($strings[step5, finished] contains get_property("questM12Pirate")) &&
      !($monsters[scary pirate, migratory pirate, black crayon pirate] contains m))
 
Last edited:

Bale

Minion
If you're going to exclude the migratory pirate you should also exclude the ambulatory pirate and peripatetic pirate.

I say to ignore the miscellaneous pirates. If they show up, it probably won't kill a character to insult them.
 

xKiv

Active member
You can get insults while picking up the pirate outfit. It's probably never a good idea to have the insult book then, but if you have it you should use it.

If you are too weak for barr pirates, you might buy the book and get insults in cove. I did that in some runs.

That's less useful. It is better that it stops looking for insults once the Poop Deck has been unlocked. That saves me the trouble of having to actually define the setting. Better functionality. questM12Pirate is optimal.

I don't think so. If you have 8 insults, you shouldn't be looking for more, even if you haven't beer ponged yet, that's just senseless buffing of pirates.
 

Bale

Minion
I don't think so. If you have 8 insults, you shouldn't be looking for more, even if you haven't beer ponged yet, that's just senseless buffing of pirates.

Then you should be happy to know that SS has always counted insults and never insulted a pirate if you have 8 of them. That is unlikely to change.
 

xKiv

Active member
Then you should be happy to know that SS has always counted insults and never insulted a pirate if you have 8 of them. That is unlikely to change.

Well, I was quoting your response to Theraze's "we can stop at 6/7/8/user-defined-variable", said response starting with "That's less useful", which led me to believe that you were suggesting to replace the current behavior (stop at 8) with a new one (stop at poop unlock). Obviously, the combination of both is better than either on its own.
(also, I almost never see all 8 insults before beating beer pong, so I wouldn't know anyway)
 

Bale

Minion
If someone is still adventuring at the barrr and has not unlocked the f'c'le, then it would be a bad idea to stop at 6 insults so a user-defined variable to allow him to make that mistake would lack for usefulness. More insults are always better (up to the limit of 8, of course) as long as the f'c'le is locked. That's what I meant.
 

xKiv

Active member
"user-defined" way to stop at a certain # of insults is easy anyway: just choose to challenge rickets instead of ignoring him (and before that, go get cap's dentures instead of ignoring the blueprints)
 

zarqon

Well-known member
Everybody is right. The original discussion was about the code prior to counting insults. SS has always and will always skip insulting if you have all 8. And now, thanks to quest tracking, SS will always try for insults if you have less than 8 and haven't unlocked the F'c'le, even if the pirate was wandering or faxed. This is optimal, no setting needed.

I tested the new code using the questM12Pirate setting this run and it worked beautifully. I'm going to fix yellow rays for fxer and then we'll have us an update.
 

Theraze

Active member
Suggestion for BIG! runs:
Treat siphoning like aftercore, since people don't really need stats. Basically, turn
Code:
   if (can_interact()) return $familiar[happy medium].charges == 3;
into
Code:
   if (can_interact() || my_path() == "BIG!") return $familiar[happy medium].charges == 3;
 

zarqon

Well-known member
A grand suggestion. Version 3.21.

Also, when performing custom actions vs. GMoB or Cyrus, ignore death and throw the items anyway, like a maniac.

Also also, in the odd case that your stun action is your custom action, don't use your stun action to prepare your custom action because duh.
 

Magus_Prime

Well-known member
There's some interaction between Batbrain and SmartStasis that is resulting in SmartStasis using Candyblast inappropriately against physically resistant monsters. Today in the Boo Peak my character was beaten up four times out of six because SmartStasis just kept casting Candyblast until the character lost the combat.

The fifth time SmartStasis reached the round limit and the the character didn't have enough HP or MP to finish the combat.

The sixth time SmartStasis reached the round limit and there was enough MP left to finish the combat

This is in a HC Big! Sauceror run.

I posted verbosity 9 and 10 gCLI output in the WHAM thread for the combat that completed successfully.

Any thoughts?
 
Is this a SmartStassis issue, or a WHAM issue?

Why do we do a jiggle for a one round stun after doing entangling noodles, and not before? I can't imagine that the one round stun isn't known for the Staff of the November Jack-o-Lantern...

Code:
[141] Outskirts of The Knob
Encounter: sleeping Knob Goblin Guard
Round 0: chef_rannos wins initiative!
ATT: 59 (94% × 17.08, death in 5)
DEF: 59 (8.8% × 9.81, win in 11)
HP: 63, Value: 389.76 μ, RES: 0
WHAM: Monster HP is 63.0.
WHAM: Running SmartStasis
Profit per round: ActionProfitDamageOtherbase; Rogue Program (0μ)33.53μ5.2 (0 μ/dmg)MP: 5.2
WHAM: Starting evaluation and performing of attack
WHAM: Enqueuing a stun to help with the battle
WHAM: We are going to 4-shot with Entangling Noodles, jiggle your chefstaff, Stream of Sauce and Salsaball.
Round 1: chef_rannos executes a macro!
Round 1: chef_rannos casts ENTANGLING NOODLES!
Round 2: chef_rannos jiggles the Staff of the November Jack-O-Lantern
Round 3: You jiggle your staff, stirring up the rotting guts of the drooping pumpkin. Bowled over by the stench and the sadness, he suffers 8 damage and pauses to regain his composure.
Round 3: sleeping knob goblin guard takes 8 damage.
Round 3: chef_rannos casts STREAM OF SAUCE!
Round 4: sleeping knob goblin guard takes 30 damage.
You gain 3 hit points
You gain 1 Mana Point
You acquire an effect: Frozen Hands (duration: 1 Adventure)
Round 4: chef_rannos casts SALSABALL!
Round 5: sleeping knob goblin guard takes 10 damage.
WHAM: Current monster HP is calculated to 15.0
WHAM: Starting evaluation and performing of attack
WHAM: We are going to 1-shot with Stream of Sauce.
Round 5: chef_rannos executes a macro!
Round 5: chef_rannos casts STREAM OF SAUCE!
Round 6: sleeping knob goblin guard takes 30 damage.
You gain 3 hit points
You gain 1 Mana Point
You acquire an effect: Burning Hands (duration: 1 Adventure)
Round 6: MP-Gamer de-rezzes him for 12 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 6: sleeping knob goblin guard takes 12 damage.
You gain 12 Mana Points
Round 6: chef_rannos wins the fight!
You gain 5 hit points
You gain 3 Mana Points
You gain 6 Meat
You acquire an item: Knob Goblin pants
You acquire an item: Knob Goblin scimitar
After Battle: MP-Gamer 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
You gain 5 Strengthliness
You gain 7 Magicalness
You gain 4 Smarm
Look! You found 1 Game Grid token (5,900μ)!
Look! You found 1 Knob Goblin pants (30μ)!
Look! You found 1 Knob Goblin scimitar (20μ)!
 
It's also doing it with Silent Squirt...where the 1 round stun is being used after entangling noodles.

Code:
[154] Hey Deze Arena
Encounter: serialbus
Strategy: /~/.kolmafia/ccs/HC.ccs [default]
Round 0: chef_rannos wins initiative!
ATT: 105 (94% × (59.89), death in 2)
DEF: 99 (8.8% × 9.81, win in 18)
HP: 110, Value: 554.06 μ, RES: 0 (1) (-1) (-1)
WHAM: Monster HP is 110.0.
WHAM: Running SmartStasis
Profit per round: ActionProfitDamageOtherbase; Rogue Program (0μ)35.13μ5.45 (0 μ/dmg)MP: 5.45
WHAM: Starting evaluation and performing of attack
WHAM: Enqueuing a stun to help with the battle
WHAM: We are going to 3-shot with Entangling Noodles, Silent Squirt and Candyblast.
Round 1: chef_rannos executes a macro!
Round 1: chef_rannos casts ENTANGLING NOODLES!
Round 2: MP-Gamer tosses his identity disc at him for 19 damage, then invites you to drink some glowing blue liquid out of the disc. The whole thing's a little more intimate than you're comfortable with, but it's still refreshing.
Round 2: serialbus takes 19 damage.
You gain 19 Mana Points
Round 2: chef_rannos casts SILENT SQUIRT!
Round 3: serialbus takes 54 damage.
Round 3: chef_rannos casts CANDYBLAST!
Round 4: serialbus takes 44 damage.
You acquire an item: Mr. Mediocrebar
Round 4: chef_rannos wins the fight!
You gain 4 hit points
You gain 3 Mana Points
You gain 39 Meat
You acquire an item: bus pass
You gain 4 Strengthliness
You gain 18 Wizardliness
You gain 8 Smarm
You gain a Moxie point!
Look! You found 1 bus pass (745μ)!
Look! You found 1 Mr. Mediocrebar (50μ)!
 

Crowther

Active member
Why does it matter enough for you to ask that question? There is zero gameplay difference from switching the order.
There was a time it used to make a difference or at least no one had spaded it out and so most people thought it made a difference. I'd link it, but I don't remember where, but these things all stack now (or always did). The order doesn't matter as you said.
 

Winterbay

Active member
WHAM is stuning with noodles and then using the silent skill and the jiggle for its damaging properties. At that point it completely ignores the fact that it also stuns for one round since it has already done a stun.
The stun employed is always, when one is used, the first action and is always a >1 round stun because otherwise enqueueing it doesn't help with the rest of the combat.
 

xKiv

Active member
Why does it matter enough for you to ask that question? There is zero gameplay difference from switching the order.

Technically, if you have any passive damaging/special effects, the monster *might* die/do something that ends fight after your first action. In that case "jiggle, noodles" will save you 1-3 MP (or more, if you have +cost) wrt "noodles, jiggle".
 
Top