Destroy All Monsters

zarqon

Well-known member
I believe that would probably be appropriate for SS to handle in custom actions. I'll make a post about it over there.
 

garbled

New member
I'm having a wierd problem with this script. For no apparent reason, it just gives up in combat.

HP:902/932
MP:1872/2175
Request 1 of 119 (The Sea: The Mer-Kin Outpost) in progress...

[15333] The Mer-Kin Outpost
Encounter: Mer-kin raider
Strategy: /root/.kolmafia/ccs/DAM.ccs [default]
Round 0: pastopheles wins initiative!
Run SmartStasis! (-187 profit to stasis with Lasagna Bandages -- low)
Round 1: pastopheles executes a macro!
Round 1: pastopheles casts ENTANGLING NOODLES!
Round 2: pastopheles casts SAUCY SALVE!
You gain 10 hit points
DestroyAllMonsters starts now! (0mp option attack -- killrounds: 8, dierounds: 27)
Round 3: pastopheles executes a macro!
Round 3: pastopheles casts FEARFUL FETTUCINI!
KoLmafia thinks it is round 4 but KoL thinks it is round 3
DestroyAllMonsters starts now! (0mp option attack -- killrounds: 3, dierounds: 27)
Round 4: pastopheles executes a macro!
KoLmafia thinks it is round 5 but KoL thinks it is round 3
You're on your own, partner.
Click here to continue in the relay browser.

Once I bring it up in the mini-browser, I just fearful or saucegeyser:
KoLmafia thinks it is round 6 but KoL thinks it is round 3
Round 6: pastopheles casts FEARFUL FETTUCINI!
KoLmafia thinks it is round 7 but KoL thinks it is round 4
Round 7: pastopheles wins the fight!
You gain 395 Meat
You gain 75 Beefiness
You gain 100 Mysteriousness
You gain 41 Chutzpah

Why does it just give up?

Actually, examining a few more failures.. It seems to give up 100% of the time if the first fearful doesn't kill the mob. Shouldn't it just cast it again? no?
 
Last edited:

garbled

New member
So, one of the problems I've noticed, is that it will sometimes pick Volcanometeor, when I don't have any volcanic ash in inventory. This leads to it automatically bailing out after doing absolutely nothing. (I don't have any ash in inventory, because it just kept picking volcano for really easy fights over and over, and used like 30 of them before I caught it and closeted them all). Given my preference, I would rather it picked some big "bomb" attack, like geyser, and just spammed that at the end if things get hairy.
 

garbled

New member
I'm at least assuming that was what was going on. Occasionally it would enter DAM, do absolutely nothing, then enter it again, then give up. I'm guessing that prior to that, those were the combats where it was using up all my ash.
 

Theraze

Active member
This is a bit odd, but... noticed today that DAM was using options that guaranteed failure for some reason:
DestroyAllMonsters starts now! (0mp option spectre scepter -- killrounds: 90, dierounds: 154)
With a 35 pound purse rat as my familiar, not sure why it would be guaranteeing failure. Don't think there's a single fight in the game that will work with 90 rounds... Is this one of those cases where I need a 9 verbosity log-dump, or is this just because, when looking at crippling failure, it will take the best of a bad selection that at least does damage?
 

Theraze

Active member
Well, it followed that up with 29 rounds of using the scepter, giving me one round to try to do 200+ damage as a no-combat-skill AT. Rather depressing.
 
I'm using DAM as my consult script and I'm in the middle of the giant castle quest (using bumcheekascend) and it just olfacted a goth giant when my only remaining goal is a giant needle. I assume this is not DAM, but maybe SmartStasis or BatBrain but I'm not entirely sure how to tell which is why i'm mentioning it here. Is there a setting to have goth giant only olfact in aftercore, or to tell the suite of scripts to olfact based on goals (ie: sniff a raver giant in this case since my only goal is a giant needle?)
 

slyz

Developer
SmartStasis will always olfact if:

1) The monster drops the bounty item you are currently hunting
2) The monster is in your ftf_olfact zlib variable
3) Mafia would have decided to olfact the monster as a 'special action' because of the way autoOlfact has been set.

This means that you should remove goth giants from your ftf_olfact zlib variable, and you (or, in this case, BCCAscend) should do something like "set autoOlfact = goals" once you have only one goal left.
 
This means that you should remove goth giants from your ftf_olfact zlib variable

thats kind of what i figured, but then it's not there for aftercore where i would want it. it almost seems like there could/should be a distinction drawn between monsters you'd want to olfact in run and those out of run. for another example i'd always want to olfact dairy goats in run, but probably not outside of a run. vice versa for goth giants.
 

Theraze

Active member
That would also make sense. :) Probably more, since it only checks once and does the change exactly when he wants it.
 

Theraze

Active member
Similar to this, pasted from my preAscension script for setting up the next 100% familiar run:
Code:
import <zlib.ash>

void next_familiar() { 
    vars["is_100_run"] = normalized(my_familiar(),"familiar");
    updatevars();
}
 

slyz

Developer
Or just do
PHP:
cli_execute( "zlib ftf_olfact = zlib ftf_olfact = Blooper, Dairy Goat, Shaky Clown, Some Zombie Waltzers, Goth Giant, Knott Yeti, Violent Fungus, Spectral Jellyfish, Gnarly Gnome, Gnasty Gnome, Fruit Golem, Quantum Mechanic, C. H. U. M., Rotund Duck,     Pufferfish, Wealthy Pirate, Skeletal Sommelier, Endless Conference Call" );
 
Top