SmartStasis -- a complex script for a simple CCS

There should probably also be a repeat abort condition added to the stasis loop to stop and recalculate at round 10 if you have a Coco-type and full HP/MP, since the familiar calculations that BB does can't be performed in the macro itself. Don't like doing that since it adds more server hits back in, but even though it doesn't cost anything it's confusing for people if SS stasises pointlessly.

Also time consuming, which can be dangerous if adventuring close to rollover.
 
No, with the abort, it will be less confusing but more time consuming.

I suspect that fixing round tracking will mitigate this problem more than the extra abort would, though, since BB evidently has an erroneous picture of your current round, which could mean that it still thinks your familiar can produce meat even after the real round 10. I was pretty sure I tested the round tracking with macros before, so I find this confusing. Either there was a KoL-side change, or my memory is faulty. Both are likely. :)
 
This may have been brought up before, so I apologize if it was-

Is there any way to have it so when BatBrain aborts, it doesn't break the entire CCS? I find myself constantly finding my runs interrupted because I went under the HP minimum so BM/SS aborted, completely negating the rest of my script. I'd rather be able to set it up to automatically handle these critical conditions rather than a full interrupt.
 
The problem isn't BatBrain. Mafia will automatically abort if your KoL Macro aborts. I believe it's a good behavior.
 
The problem isn't BatBrain. Mafia will automatically abort if your KoL Macro aborts. I believe it's a good behavior.

Not always, you can catch it in a script. My consult script seems to manage to recover from a "Danger Danger" abort and gets called a 2nd time, but that may be because the call to fight.php is within a while-loop.
 
The low HP abort ought to be based on your next action (for example, it would be silly to abort when you have a healing skill or stunning item enqueued next -- which BB would do presently), and be missing entirely if there is no next action. This also means the abort check should precede the first action of the macro. However, that's something I haven't gotten to yet. It seems like all the checks in batround are gradually being distributed throughout the macro, and eventually batround will dwindle to nothing.

Since this does seem to be the biggest complaint with SS at the moment, I'll bump up the priority on fixing this.
 
The low HP abort ought to be based on your next action (for example, it would be silly to abort when you have a healing skill or stunning item enqueued next -- which BB would do presently), and be missing entirely if there is no next action. This also means the abort check should precede the first action of the macro. However, that's something I haven't gotten to yet. It seems like all the checks in batround are gradually being distributed throughout the macro, and eventually batround will dwindle to nothing.

Since this does seem to be the biggest complaint with SS at the moment, I'll bump up the priority on fixing this.

Thank you, sir
 
Hmm... I think I've found an interesting SS bug. Unfortunately I did the fight with verbosity = 7 so I don't know what the generated macro is but a general problem can probably still be concluded. I fought a Lobsterfrogman today and got the following:
Code:
Monster: Lobsterfrogman, ATT: 241, DEF: 216, HP: 264,     Value: 636.39
You will die in 2 rounds.
Your     attack will kill the monster in 43 rounds.
Custom     action: skill 4014 (stun first with skill 3004)
Custom     action: summonspirit (stun first with skill 3004)
Round 1: winterbay executes a macro!
Round 1: winterbay     casts ENTANGLING NOODLES!
Round 2: Tron bounces his disc off of him for     16 damage, and it ricochets into you, giving you quite a shock.
Round     2: lobsterfrogman takes 16 damage.
You gain 16 Mana Points
Round 2:     winterbay casts SAUCY SALVE!
You gain 15 hit points
You're     on your own, partner.

In the relay browser (which I fortunately was using) it first cast Noodles, followed by the sauce salve. Then it aborts because it can't cast Noodles. It seems it decided to do two things (heal and summon spirit) and that both those needed noodles but instead of casting noodles, healing and then summoning it tried to cast noodles, heal, cast noodles and then summon which obviously won't work...
 
I'm getting a lot of this lately: Expression syntax error for 'modifier_eval()': expected end, found )

I assume this has something to do with BatBrain, but I'm posting it here, because it's preventing SmartStasis from using my half-rotten brain's (I have two in inventory) against the conjoined zmombie.

I don't know enough about BatBrian's internals to find where this problem is occurring. Here's the gCLI output:

Code:
 Visit to Cyrpt: Defiled Alcove in progress...

 [792] Defiled Alcove
 Encounter: conjoined zmombie
 Strategy: C:\KoL\Mafia\KoLmafia\ccs\default.ccs [default]
 Round 0: Hysterectomy wins initiative!
 Running ZLib version: r29
 Running BatBrain version: 1.9
 1 MP costs 10.0μ.
 1 HP costs 6.6666665μ.
 cranberries (29.0 @ +0.0): 120μ * 29.0% = 34.8
 cranberries (8.0 @ +0.0): 120μ * 8.0% = 9.6
 loose teeth (8.0 @ +0.0): 17μ * 8.0% = 1.36
 Value of stat gain: 265.63μ
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Profit per round: 
[TABLE="width: 100%"]
[TR]
[TD][B]Action [/B]
[/TD]
[TD][B]Profit [/B]
[/TD]
[TD][B]Damage [/B]
[/TD]
[TD][B]Other [/B]
[/TD]
[/TR]
[TR]
[TD]base; Angry Goat (0μ)
[/TD]
[TD][B]0μ[/B]
[/TD]
[TD]1.47[B] (1.47)[/B] Actual: 4.4 (0 μ/dmg)
[/TD]
[TD][/TD]
[/TR]
[/TABLE]

Running SmartStasis version: 3.6
 Parsed round number: 1
 Building options...
 Evaluating 'min(19.0+3,10)+floor(sqrt(max(19.0-7,0)))'...
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Options built! (6 actions)
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 cranberries (29.0 @ +0.0): 120μ * 29.0% = 34.8
 cranberries (8.0 @ +0.0): 120μ * 8.0% = 9.6
 loose teeth (8.0 @ +0.0): 17μ * 8.0% = 1.36
 Value of stat gain: 265.63μ
 Monster: Conjoined Zmombie, ATT: 100, DEF: 82, HP: 150, Value: 600.81
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 You will die in 5 rounds.
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Your attack will kill the monster in 10 rounds.
 Building custom actions...
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Custom actions built! (0 actions)
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Custom action: (no stun)
 Unable to enqueue empty action.
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Custom action: (no stun)
 Unable to enqueue empty action.
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Stasis action chosen: skill 2023
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 Evaluating 'ceil(19.0/6.0)*0.1)'...
 Expression syntax error for 'modifier_eval()': expected end, found )
 This monster is not your huckleberry.
 Stasis loop complete.
 SmartStasis complete.
 Round 1: Hysterectomy attacks!
 Round 2: conjoined zmombie takes 10 damage.
 Round 2: Gog attempts to butt it, but misses.
 You lose 18 hit points
 Round 2: Hysterectomy attacks!
 Round 3: conjoined zmombie takes 9 damage.
 Round 3: Gog butts it for 9 (+18) damage.
 Round 3: conjoined zmombie takes 27 damage.
 You lose 18 hit points
 Round 3: Hysterectomy attacks!
 Round 4: Gog butts it for 9 (+20) damage.
 Round 4: conjoined zmombie takes 29 damage.
 You lose 17 hit points
 Round 4: Hysterectomy attacks!
 Round 5: conjoined zmombie takes 12 damage.
 Round 5: Gog butts it for 7 (+14) damage.
 Round 5: conjoined zmombie takes 21 damage.
 You lose 20 hit points
 Round 5: Hysterectomy attacks!
 Round 6: conjoined zmombie takes 10 damage.
 Round 6: Gog attempts to butt it, but misses.
 You lose 20 hit points
 Round 6: Hysterectomy attacks!
 Round 7: conjoined zmombie takes 13 damage.
 Round 7: Gog attempts to butt it, but misses.
 You lose 20 hit points
 You acquire an effect: Half-Eaten Brain (duration: 10 Adventures)

This is with SmartStasis 3.6 and BatBrain 1.9 and my ccs contains consult SmartStasis.ash & attack with weapon.
 
The call "ceil(19.0/6.0)*0.1)" to modifier_eval() has a parenthesis too much that is clear, however I'm not sure where it would come from.
What are your stats? Something in batfactors.txt is probably not entirely correct but without knowing what 19, 6 and 0.1 are it's a bti hard to figure out...

Edit: DO you have an angry goat as your familiar? There appears to be an extra ")" at the end of the Angry Goat line in BatBrain...

Edit, edit: Well, either that or a "(" too few at the beginning of the formula depending on if it should be
Code:
ceil((fweight/6.0)*0.1)
or
Code:
ceil(fweight/6.0)*0.1
 
Last edited:
Thanks Winterbay. Yes, my familiar is the angry goat like you discovered.

Although changing the offending line in batfactors.txt does get ride of all the expression syntax errors, SmartStasis is still not using the half-rotten brain against the conjoined zmombie. The gCLI output is basically the same as before without the errors. SmartStasis ends without doing anything and it moves on to the next line in my CSS which is attack. Any thoughts? I guess there is a problem with the way SmartStasis handles these boss monsters, perhaps something to do with the get_action function and/or the opts map??
 
Last edited:
So, today I was using this with OCW and after a certain point I noticed that it entered a loop of casting Lasagna Bandages every round, leeching all my MP away. Any ideas what caused it and what I can do to correct it?
 
So, today I was using this with OCW and after a certain point I noticed that it entered a loop of casting Lasagna Bandages every round, leeching all my MP away. Any ideas what caused it and what I can do to correct it?
Without some CLI output copy-pasted here, probably with verbosity turned up fairly high, chances are no one will have an idea of what happened.
 
This has also happened to me in the last couple days (but with saucy salve). That time, it resolved itself with a mafia restart. I've been trying to replicate it with higher verbosity since.
 
By design SmartStasis will cast healing if it thinks you need it and the "cost" of doing so is low enough. If you are running Bale's UR then SS and UR share a variable that deals with this. If you don't run UR then one possible fix is to set the variable manually. Of course now that I have said that, I cannot recall the name of the variable nor find it in five minutes of searching so this post is less than useless...
 
I am indeed running UR. I'll disable it and see if that helps. I'll also copy some CLI output for you with UR enabled.
Code:
Visit to IsleWar: Battlefield (Hippy Uniform) in progress...

[2958] Battlefield (Hippy Uniform)
Encounter: War Frat 151st Infantryman
Strategy: C:\Users\Dracura\Desktop\KoL Mafia\ccs\default.ccs [default]
Round 0: dracura wins initiative!
Round 0: dracura casts ENTANGLING NOODLES! (auto-attack)
Round 2: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 2: dracura executes a macro!
Round 2: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 3 but KoL thinks it is round 2
You gain 17 hit points
Round 3: With a furious growl, Gort leaps at your opponent and latches onto its head with his tiny (yet razor-sharp) fangs, and shakes it madly for 32 points of damage. Ai-yi-yi!
Round 3: war frat 151st infantryman takes 32 damage.
Round 3: dracura executes a macro!
Round 3: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 4 but KoL thinks it is round 3
You gain 10 hit points
Round 4: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 20 points of damage. Ai-yi-yi!
Round 4: war frat 151st infantryman takes 20 damage.
Round 4: dracura executes a macro!
Round 4: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 5 but KoL thinks it is round 4
You gain 16 hit points
Round 5: With a furious growl, Gort leaps at your opponent and latches onto its head with his tiny (yet razor-sharp) fangs, and shakes it madly for 16 points of damage. Ai-yi-yi!
Round 5: war frat 151st infantryman takes 16 damage.
Round 5: dracura executes a macro!
Round 5: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 6 but KoL thinks it is round 5
You gain 15 hit points
Round 6: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 6: dracura executes a macro!
Round 6: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 7 but KoL thinks it is round 6
You gain 16 hit points
Round 7: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 7: dracura executes a macro!
Round 7: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 8 but KoL thinks it is round 7
You gain 18 hit points
Round 8: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 16 points of damage. Ai-yi-yi!
Round 8: war frat 151st infantryman takes 16 damage.
Round 8: dracura executes a macro!
Round 8: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 9 but KoL thinks it is round 8
You gain 12 hit points
Round 9: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 25 points of damage. Ai-yi-yi!
Round 9: war frat 151st infantryman takes 25 damage.
Round 9: dracura executes a macro!
Round 9: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 10 but KoL thinks it is round 9
You gain 22 hit points
Round 10: With a furious growl, Gort leaps at your opponent and latches onto its torso with his tiny (yet razor-sharp) fangs, and shakes it madly for 17 points of damage. Ai-yi-yi!
Round 10: war frat 151st infantryman takes 17 damage.
Round 10: war frat 151st infantryman takes 2 damage.
Round 10: war frat 151st infantryman takes 8 damage.
Round 10: war frat 151st infantryman takes 3 damage.
You lose 4 hit points
Round 10: dracura executes a macro!
Round 10: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 11 but KoL thinks it is round 10
You gain 19 hit points
Round 11: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 11: dracura executes a macro!
Round 11: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 12 but KoL thinks it is round 11
You gain 20 hit points
Round 12: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
KoLmafia declares world peace.
You're on your own, partner.
Click here to continue in the relay browser.

That was with UR enabled. Interestingly, here is the output with UR removed. Notice, first encounter is fine...but then the next one starts it again.

Code:
Conditions list cleared.
Step 12 goal: 999 fratboys slain.

Visit to IsleWar: Battlefield (Hippy Uniform) in progress...

[2960] Battlefield (Hippy Uniform)
Encounter: War Frat Grill Sergeant
Strategy: C:\Users\Dracura\Desktop\KoL Mafia\ccs\default.ccs [default]
Round 0: dracura wins initiative!
Round 0: dracura casts ENTANGLING NOODLES! (auto-attack)
Round 2: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 32 points of damage. Ai-yi-yi!
Round 2: war frat grill sergeant takes 32 damage.
Round 2: dracura casts RAVIOLI SHURIKENS!
KoLmafia thinks it is round 3 but KoL thinks it is round 2
Round 3: war frat grill sergeant takes 78 damage.
Round 3: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 16 points of damage. Ai-yi-yi!
Round 3: war frat grill sergeant takes 16 damage.
Round 3: dracura wins the fight!
After Battle: Gort twitches and stares at you from underneath his sombrero with an expression that is almost certainly a smile, I guess. Probably.
You gain 13 Fortitude
You gain 33 Mysteriousness
You gain 14 Sarcasm
8 frat boys defeated; 119 down, 881 left.

+8 fratboysDefeated ( 119 / 999 )
Step 12 adventures remaining: 110
You are on Frat-slaying pic 10
You are on Hippy-slaying pic 1.

Visit to IsleWar: Battlefield (Hippy Uniform) in progress...

[2961] Battlefield (Hippy Uniform)
Encounter: War Frat Wartender
Strategy: C:\Users\Dracura\Desktop\KoL Mafia\ccs\default.ccs [default]
Round 0: dracura wins initiative!
Round 0: dracura casts ENTANGLING NOODLES! (auto-attack)
Round 2: Gort's bells jingle merrily.
Round 2: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 2: dracura executes a macro!
Round 2: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 3 but KoL thinks it is round 2
You gain 34 hit points
Round 3: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 3: dracura executes a macro!
Round 3: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 4 but KoL thinks it is round 3
You gain 16 hit points
Round 4: With a furious growl, Gort leaps at your opponent and latches onto its leg with his tiny (yet razor-sharp) fangs, and shakes it madly for 17 points of damage. Ai-yi-yi!
Round 4: war frat wartender takes 17 damage.
Round 4: dracura executes a macro!
Round 4: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 5 but KoL thinks it is round 4
You gain 20 hit points
Round 5: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 5: dracura executes a macro!
Round 5: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 6 but KoL thinks it is round 5
You gain 15 hit points
Round 6: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 6: dracura executes a macro!
Round 6: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 7 but KoL thinks it is round 6
You gain 10 hit points
Round 7: Gort trembles in fury as he stares at your opponent, eyes bulging and mouth frothing.
Round 7: dracura executes a macro!
Round 7: dracura casts LASAGNA BANDAGES!
KoLmafia thinks it is round 8 but KoL thinks it is round 7
You gain 17 hit points
Round 8: With a furious growl, Gort leaps at your opponent and latches onto its torso with his tiny (yet razor-sharp) fangs, and shakes it madly for 24 points of damage. Ai-yi-yi!
Round 8: war frat wartender takes 24 damage.
KoLmafia declares world peace.
You're on your own, partner.
Click here to continue in the relay browser.
 
I am indeed running UR. I'll disable it and see if that helps. I'll also copy some CLI output for you with UR enabled.

Oh dear. I should explain this more clearly for you.

UR passes information to SS about how much it costs to restore MP. If SS figures that it can equal or beat that cost, then it will cast healing skills in combat. You gain nothing by removing this functionality and if you have saucy salve, you definitely lose something.

If you don't run UR then one possible fix is to set the variable manually. Of course now that I have said that, I cannot recall the name of the variable nor find it in five minutes of searching so this post is less than useless...

There's no reason to set it manually. If you don't use UR, then SS will take its own best guess.
 
There's no reason to set it manually. If you don't use UR, then SS will take its own best guess.

I am misremembering something then. My recollection was that its best guess failed to recognize that I had Cocoon and that I had several thousand hit points so that even at 20% health there was no reason to stasis in order to restore HP. I think setting it manually improved that but ultimately I decided that running SS just did not make sense for that character, Hooray for edge cases!
 
Last edited by a moderator:
So would the best course of action here be to remove SS and run OCW by itself? Or does OCW depend too much on SS functionality to run correctly?
 
Back
Top