TheSea.ash - Automated Underwater Quests

Magus_Prime

Well-known member
I've had the same problem getting the clues for the Dreadscroll. The only one the script seems to get without assistance is the one from the knucklebones.
 

Theraze

Active member
Yes... there are some issues/notes about the clues and quest in general, near the end of the scholar quest. Guess I can state or restate those.
1) The script will hunt for the dreadscroll.
2) It will also hunt for a knucklebone and use the knucklebone (clue 4), and then abort unless you have already gotten 6 other known clues during the period between the dreadscroll was found and when the knucklebone was found and auto-used.
3) Because clues 2 and 5 happen in combat, your easiest way of getting those is with a combat script that takes care of those, like WHAM. Your first underwater combat with the dreadscroll with the two mer-kin scrolls in inventory, you should acquire those.
4) Because clues 1/6/8 happen in noncombats in a random order, we can't definitely guarantee for people who mix automated and manual play that we won't doom them to never finishing the sea. Bale's modifications to BBB do make it auto-pick those however, which works for me because I'm not mixing. I've just been running a goal of 3 choiceadv on the mer library after the script aborts (post knucklebones) and that gets clues 1/4/5/6/8 for me.
5) We still need clue 3 from the deep dark visions (which the script will also farm for the skillbook on, if needed), but this is a character buffing and self-choice thing. I personally do it by running maximize hp, letting that finish, and then running maximize hp, 600 min, 1000 max, 1000 spooky res. This gives me enough health to survive and enough spooky res to make it not entirely painful. There will still usually be cocoons or other such major healings, but... I then run the following alias:
alias clue3 => ashq while(get_property("dreadScroll3") == "0") { restore_hp(500); restore_mp(100); use_skill(1, $skill[deep dark visions]); }
Basically just, while we don't have clue 3 known, make sure we have 500 health and 100 mp and then cast the skill. Repeat until completed.
6) Clue 7 is still unknown but that takes eating a bento box with worktea ready. Which takes planning. The script will auto-guess one spot. Guess which one I usually skip? Yep... I re-run the script now.
7) If you fail in combat against the boss for some reason, the dreadscroll is gone. I don't believe there's any questlog notification that you're the High Priest, making it hard for us to know that you've already gotten there. At some point, I'll get something worked out on this, but... since at the point where the script kicks you into the boss combat you should already have full health and the boss be at stats of 1 (as long as you have funkslinging), that means you probably don't have any good +elemental gear. And need to go buy a few cheap trinkets.
8) Seven also applies if you completed the dreadscroll yourself. :D
9) If 7/8 applied because I screwed something up on that run, I tend to do ashq import <TheSea.ash> prepHatred(); smiteHatred(); or just one at a time, so I can check the maximization panel after the prepping for the fight.
 

Theraze

Active member
Applied a modified form ("-combat, -tie", 0, 0, true, false) of the +combat string we run for farming gladiatorial weapons and gear to the big brother, grandpa, grandma, and stashbox hunts. Untested.
 

Theraze

Active member
Confirmed as working. The current form won't shrug off counter-effects. At some point I need to work through how to detect free shrugs (without hardcoding, because that's just lazy and isn't awesomely extensible through future content) and include those as well. Until then, this should at least function better...

Here's a somewhat interesting (to me, at least) question. Since the Gym NC is based on +combat chance, after we get the 3 weapons and the 2 outfit pieces through +combat, do we want to switch to -combat to avoid the NC again? Would allow people to save up their buff-rounds for actual fights rather than having them spent on getting fairly cheap bits. Let me know what you'd prefer. If nobody speaks up over the next... whatever time until I get to the Gym and need to +combat farm again... I'll probably set it to -combat after the needed items are done.
 
I keep getting

You need 1 more Mer-kin dreadscroll to continue.
Condition added: Mer-kin dreadscroll

But I have a dreadscroll in my inventory. What am I missing?
 

Theraze

Active member
Refresh your inventory. According to mafia, you don't have a dreadscroll.

If it's there in the relay browser, a simple refresh inv into the gCLI should fix it. If it's actually gone, you may had either 7 or 8 from post 182 happen. In which case, do number 9 to start the fight again.

Additional musing:
So, working through this a bit... we can tell if we've finished the Hatred quest because we have clues and no dreadscroll. That either means we have beaten the boss or at very least become High Priest. We can go through the prep/smite set without any real problems there, though I should eventually make smite a bit more intelligent in checking if we're actually in combat. :)

Is there any way to tell our Violent progress? Veracity added the known-skill tracker so we can actually know how ready we are for combat, but... do we have any tracker for which Colosseum round we've completed? Do we have (or need) a tracker for which outfit we've retrieved this time or which boss we've killed, or both? We could use a Colosseum round preference to know both which weapon we need for the next fight as well as when we become the champion (if it updates on initial loading and victory both, so that people who play outside mafia can avoid deep depression), and skip needing the first check by doing the (clues &&
!dreadscroll) || (colosseumRound > 15) checks, but to reduce boss-server hits, we need to know if the boss is still there...

Have I talked myself into two FReqs? Maybe.
 
Last edited:

Veracity

Developer
Staff member
Let me guess: you unsuccessfully used a Dreadscroll once and, since KoLmafia has it marked as "usable", KoLmafia removes it from its internal model of the inventory.

Near as I can tell, the only time using it actually removes it from inventory is if you have already gone all the way through the Colosseum. According to the Wiki:

The sigil burned into your forehead (you know, the one you got for winning the tournament in the Colosseum?) flares up in intense pain as you look at the dreadscroll. A tendril of fire curls out and burns the scroll to ashes.
KoLmafia currently has no code to handle this correctly.

Theraze, you do this all the time: KoLmafia doesn't handle a specific item correctly - typically one of this sort, which is only conditionally removed from inventory - and when you notice it, you do not make a bug report. Instead, you just tell people "Oh, KoLmafia always messes up my inventory for me, so I just refresh it frequently."

Can you please get into the habit of filing bug reports when KoLmafia removes something from its model of inventory when KoL did not remove it - or the reverse of that?

You can start with the dreadscroll.

Thanks.
 

Theraze

Active member
It's also removed when you become the high priest, which becomes an issue for people who fail the fight against the boss, since then there's no dreadscroll in the inventory and the script will currently try to get another, which will always fail because you've already finished those quest requirements. As I mentioned in post 182, items 7 and 8. :) Legitimate times when the dreadscroll is actually gone and you need to do something else.

Speaking of bug reports I can't make well yet, having gone back to the release BBB, my inventory count got out of sync for dolphin whistles again. No good tracking on why it happened though. Oh well. Maybe someday I can do a good report there. Or would you prefer a non-replicable bug report for now so that other people might try to figure out what's happening? Either way.
 

Veracity

Developer
Staff member
I'm not sure which I'd prefer. I do know that I'd prefer that you and Winterbay don't put inventory or status refreshes into your scripts because "KoLmafia loses track of things somehow". I'd prefer that you tell us what circumstances make it "lose track" so that we can fix it and you can stop doing extra server hits.
 

Theraze

Active member
Looks like there's a POSSIBILITY [speculation based solely on actions today and the session log] that it's due to mafia logging zarqon's added relay lines to fight.ash and considering that it's actually using the item maybe? From fight.ash:
Code:
	     if (get_property("dolphinItem") != "") abox.append("<p><img src='/images/itemimages/"+to_item(get_property("dolphinItem")).image+"' title='"+
            to_item(get_property("dolphinItem"))+" ("+rnum(sell_val(to_item(get_property("dolphinItem"))))+"μ)' height=23 width=23 border=0> <a href=# class='clilink'>use dolphin whistle</a>");
From today's session log:
trading 1 sand dollar for 1 dolphin whistle
You acquire an item: dolphin whistle
> Whistling for a Mer-kin cooljuice...

use 1 dolphin whistle

[1560] Dolphin Whistle
Encounter: rotten dolphin thief
That one obviously triggered, but...
use 1 dolphin whistle
> MCD: none has no known combats.

[1561] Mer-kin Library
Encounter: Mer-kin alphabetizer
The following one did not. Where it apparently tried to use a dolphin whistle just after the dolphin fight. And then the next time it wanted to use one, it had this:
A dolphin stole: Mer-kin knucklebone
You gain 52 Beefiness
You gain 122 Mysteriousness
You gain 50 Roguishness
> Restoring HP! Currently at 223 of 636 HP, 184 of 940 MP, current meat: 11362952 ... Target HP = 605.
> Restoring MP! Currently at 223 of 636 HP, 184 of 940 MP, current meat: 11362952 ... Target MP = 205.

buy 1 magical mystery juice for 100 each from Gouda's Grimoire and Grocery
You acquire an item: magical mystery juice
You spent 100 Meat

use 1 magical mystery juice
You gain 29 Mana Points

cast 1 Cannelloni Cocoon
You gain 413 hit points
> Whistling for a Mer-kin knucklebone...
> Whistling for a Mer-kin knucklebone...

use 1 dolphin whistle
> MCD: none has no known combats.

cast 1 Fat Leon's Phat Loot Lyric
You acquire an effect: Fat Leon's Phat Loot Lyric (duration: 10 Adventures)

cast 1 Leash of Linguini
You acquire an effect: Leash of Linguini (duration: 10 Adventures)

mall.php?category=allitems&consumable_byme=0&weaponattribute=3&wearable_byme=0&nolimits=0&max_price=0&sortresultsby=price&justitems=0&x_cheapest=10&pudnuggler=%22Knob+Goblin+eyedrops%22

buy 1 Knob Goblin eyedrops for 200 each from The Knob Dispensary
You acquire an item: Knob Goblin eyedrops
You spent 200 Meat

use 1 Knob Goblin eyedrops
You acquire an effect: Peeled Eyeballs (duration: 10 Adventures)
> Restoring MP! Currently at 636 of 636 HP, 164 of 940 MP, current meat: 11362652 ... Target MP = 377.

buy 7 magical mystery juice for 100 each from Gouda's Grimoire and Grocery
You acquire magical mystery juice (7)
You spent 700 Meat

use 7 magical mystery juice
You gain 207 Mana Points

buy 1 magical mystery juice for 100 each from Gouda's Grimoire and Grocery
You acquire an item: magical mystery juice
You spent 100 Meat

use 1 magical mystery juice
You gain 29 Mana Points

use 1 dolphin whistle
> MCD: none has no known combats.
> Whistling for a Mer-kin knucklebone...

use 1 dolphin whistle
> MCD: none has no known combats.

[1577] Mer-kin Library
Encounter: Mer-kin drifter
From that point on, inventory-whistles were out of sync. I've since commented out zarqon's fight.ash whistling, but don't know (yet) if that will fix it. Not sure why his relay-page-addition gets added to the session log though...
 
I'm not sure what happened. The script stopped and said to train my lasso skills. I did this, went away for awhile (mistake) and I look and I'm running low on adventures, and still adventuring in the Mer-Kin Outpost. I went to the Corral and got the seahorse in one adventure.

Here's from my session logs, the CLI buffer doesn't have anything interesting.

Code:
> You have already completed the Monkee quest.
> Making sure we have the items needed to tame our mount!

mall.php?category=allitems&consumable_byme=0&weaponattribute=3&wearable_byme=0&nolimits=0&max_price=0&sortresultsby=price&justitems=0&x_cheapest=10&pudnuggler=%22sea+cowbell%22

buy 1 sea cowbell for 5999 each from 2340786 on 20130813
You acquire an item: sea cowbell
 > Checking for updates (running CounterChecker ver. 1.6)...
 > Running CounterChecker version: 1.6 (current)

clan_hobopolis.php?place=2
 > Checking counters now.
 > Your semi-rare might happen any moment! You might want to eat a fortune cookie now. Or not?

From there it went to the Corral for adventures 941-943. Something on #943 said "> We need a lockkey before we can open the stashbox." However, I found the lockkey on #932. #932 also said I needed a stashbox, which I got on #938.

So something there seems to be amiss in tracking.

For some reason it switched me to the Outpost for adventures #944-1162 (when I aborted).

I have a METRIC !$!* ton of roundshields now too, thanks to this. Mafia's session results says I gained 48 of them today, over 219 adventures in the outpost! :O

Code:
[955] The Mer-Kin Outpost
Encounter: Into the Outpost
Took choice 312/2: unknown
choice.php?whichchoice=312&option=2&pwd
Encounter: Aggressive Intent
Took choice 314/1: unknown
choice.php?whichchoice=314&option=1&pwd
You acquire an item: Mer-kin roundshield


EDIT: Hrm, I may have to collect those now, since I'd be halfway to the #1 spot...
Since I worked last night and only have 3 hours of sleep in me, I'm planning to overdrink and look at this tomorrow, but if anyone has a suggestion to watch for when I fire up the script again please let me know. ;)

P.S. Theraze is awesome, this script does save me a ton of time trying to remember what to do and looking things up for a quest I rarely do. :D
 
Last edited:

Theraze

Active member
Guessing that means you opened your stashbox manually but didn't talk to Grandpa and open the Coral Corral. Unfortunately that's one of those things we can't tell... once the items are gone, there isn't anything we can actually do without throwing out a useless (for everyone else) server hit to force a chat to Grandpa. :(
 

Drkirre

Member
Rrgh. I think I broke it... I try adventuring, and it just errors out with "Unrecognized keyword: maximizestring". Any idea on how to fix? >.<
 

Theraze

Active member
Did you make custom changes? Because there's nothing named "maximizestring" in the script... well, except for TS_MAXIMIZE which loads off of the seafloor_maximizeString variable. If you've set seafloor_maximizeString to maximizestring, that would fail. Or if you've set seafloor_outfit to maximizestring, that would also fail.

seafloor_outfit is for if you have a favourite set of gear that you want to wear. Something like "Underwater" or something similar. The variable should be set to whatever would work with the gCLI outfit something or ASH outfit("something") commands, with something being the name of whatever outfit you want it to equip.

seafloor_maximizeString would be whatever maximization strings you want it to pass along. Something like 100 primestat, 5 items, equip make scuba, equip sea chaps, equip sea cowboy. Or whatever else you want. :)
 
Guessing that means you opened your stashbox manually but didn't talk to Grandpa and open the Coral Corral. Unfortunately that's one of those things we can't tell... once the items are gone, there isn't anything we can actually do without throwing out a useless (for everyone else) server hit to force a chat to Grandpa. :(

I did 2 manual things:

1) I went to the very first zone in the sea to train up my lasso skill.
After that I fired up the script.
2) I aborted and then manually tamed the seahorse.


EDIT: I fired up the script, and it started adventuring in the library...so we'll see how it goes. :)
 
Last edited:

Drkirre

Member
*snip*
[*] There are a few zlib variables* you can setup:
*snip 2 electric boogaloo*
- seafloor_maximizeString
*disco face snip*
*You can configure the variables above by typing zlib settingname = value in the gCLI. The script will either use the zlib setting if it has been set, or the setting you had on when you launched the script.
*nsnip13*
[*] maximizeString and outfit are mutually exclusive. If maximizeString is set, it will be used, otherwise the script will check outfit. If neither is set, it assumes you have equipped what you want to before running the script. The maximizeString will be set into the maximizer, the outfit will be sent into the outfit command, so if you would like to combine a portion of an outfit with modifications, you'll probably want to use maximizeString with +outfit. Do remember that you cannot combine the keywords of outfit and equip in the maximizer, so if you attempt to combine them such as "outfit groovelord, equip aerated" mafia will decide on one or the other instead of accomplishing both.
*the final snipdown*
That's the bit that confused me, I think - it seemed like I needed to set that up, based on initial post. ^.^;
 

Theraze

Active member
Ignore it if you like. I do. But people kept asking for the ability to set either an outfit or maximization. If you don't set either, it will only equip when it needs it for continuing and leave you with whatever you've equipped normally. If you set them, they get used.
 

fronobulax

Developer
Staff member
I don't remember what was manual and what was automated. I ended up finding what I needed and opening the lockbox but I never used the trail map. TheSea elected to continue looking for the lockbox even though the unused map was in inventory. When I manually used the map, it figured out everything was done and told me to go lasso something :)
 

fronobulax

Developer
Staff member
Problems with the mer-kin dreadscroll. I believe, and have so reported, that if it is unsuccessfully used in the relay browser then KoLmafia removes it from the inventory although KoL does not. An apparently concrete example where the advice to refresh the inventory is appropriate for the current state.

And I need to script something to get the clue from Deep Dark Visions....
 
Top