Menu

#194 Rocks Quest Needs Meet

open
nobody
None
None
2022-05-03
2022-04-06
Jamie Adams
No

This is just a placeholder to entice you to read the attached diary from a recent HC run. There is a clear misunderstanding on my part as to what available/unavailable means and how that status effects what is displayed in the task list. The log identifies a few tasks that need meat and executing them fails when there is no meat. They could be gated by an obtain X meat prerequisite. Some of the use clan equipment tasks need to be gated on whether a clan item is in Standard or not. Fax tasks need to be gated on literacy, fax machine in clan and fax machine in Standard.

I'll let this sit for a few days and then will probably try a SC run being a little more nuanced about which chains I enable.

1 Attachments

Discussion

  • zarqon

    zarqon - 2022-04-06

    This is great. I have just fixed like 12 things which I will detail here later when I have time.

     
  • zarqon

    zarqon - 2022-04-07

    Random notes from your log:

    Moods: Do you find that you prefer to manage your item drop yourself? Mercenary Mood could handle Loot Lyric / Singer's Ocelot for you if you have Item Drop in mm_modifiers.

    Your Plan: I think you discovered pretty quickly that most of the "helpers" category isn't quests per se and can probably be excluded from your plan.

    Fax: I have altered the prereqs of the fax quest chain to include literacy, as well as a be_good() check. However I do not presently have a mechanism for checking whether something is present in the clan so we are not yet making that check. Mostly fixed!

    Bounties: I'll look into making the availability of the "accepting the bounties" steps contingent on the specified area being available. There may be niche cases where someone wants to accept a quest for the next day in an area that isn't yet available, but for the majority of cases it will help avoid confusion. (TODO)

    Rocks quest: Evidently I misremembered that MM was handling the choiceadventure for starting that quest: it is not. I think I have permanently set mine to "accept". Anyway, now OQ will simply set the choiceadv before adventuring for that step. Fixed!

    Also if the property was still "unstarted" even after manually finishing the quest, that indicates that mafia does not set the property when the relevant quest progress happens. I note that when you reloaded OQ (which hits the quest log) then the property was set correctly.

    "buy" steps. It seems like another good thing to do here is to make OQ have an implicit "meat <cost of="" item="">" step as a prereq for all "buy" steps. I'll look into this. (TODO)</cost>

    Ballpit quest: I can at least add a be_good() check here, which ought to help in 95% of cases where the pit is actually unavailable. (TODO)

    Strange cube, etc. relevance: Those are not Hobo glyph items, they are for demon names. Again, the Helpers section is probably not relevant to most questing.

    Haiku challenge: This is a quest that mafia has no tracking for, so OQ is doing a once-daily server hit to check for it. Unfortunately I got a little too clever and OQ was using the stored value from the beginning of the day for the rest of the day -- which is a problem on the day when you complete the quest. I believe this is now fixed.

    Suggestions to add tentacle / Lyle to dailydeeds received! (TODO)

    "Ed the Undying" friendly warnings: I hadn't realized I never pushed the update to BatBrain that fixes this! I last edited BatBrain in January. Anyway that's updated now.

    EatDrink ate your bean! Glad the step reappeared -- I've so far not seen any of this "tasks not appearing when expected to" business that you have reported.

    Shore/dinghy: I believe the Shore step is working as intended. If you have enough meat to adventure there then the step is available. If you run out of meat along the way it will stop and give you meat step again. Step 189 however doesn't have a "meat" prereq so I should add that. (TODO)

    Epic weapon: not clear what you're reporting here. OQ got the weapon and then kept adventuring? I'm wondering if this is a choiceadv issue or a mafia quest tracking issue. I may need more detail than you've given to figure out what's going on here.

    Clovers: If you load OQ while Lucky! then it should dump you in Sera so you can make your choice of where to go.

    Clicking the prereqs to see that step will only work if that step is visible in another table (usually the case, but exceptions exist). The prereq step should then scroll into viewable range. Making steps from not currently selected chains visible when this happens would require a major headache and revamp of the code.

    Ran out of time to finish my responses here. Posting this for now.

     

    Last edit: zarqon 2022-04-07
  • zarqon

    zarqon - 2022-04-07

    Highlighting tasks that are urgent: Cool idea. We could do this within the existing flags framework. I'll have a look into this as well. (TODO)

    Leaflet: I recently added a few steps to use some quest rewards that I always tab over to the CLI to use right after getting them: the chest of the Bonerdagon and the steel item. I then promptly set them to 'free' on my personal settings. I could also add a similar step to use the Frobozz house. (TODO)

    Marty: investigate final turn-in step.

    Escape: I suspect that having 0 adventures probably interfered with OQ's normal operation.

    Dungeons of Doom: You ask whether unlocking the dungeon should be autofree. Possibly not? (TODO) Also, I have added the meat prereq before getting the cloak/mimic.

    Bounties: Investigate step names not appearing correctly. (TODO)

    "Could be possible to automate Twin Peaks" -- what does this mean? I have been automating it just about every run. It hasn't been necessary for me, but just in case I also added a nice maximize command that attempts to raise the tested stats up to the appropriate values (Stench res, food drop, init).

    Pagoda: investigate how this works post-cloverhaul. (TODO)

    Shen: I've added a new satisfied condition that I'm going to test next run. But so far flagging the steps as manual will at least prevent accidental turn wastage.

    "safe" column: This is calculated programmatically based on the location. Steps that do not have locations (such as Dr Awkward) and locations that do not have monsters therefore do not have a safe value.

    SimpleSmack and Ed: I automate this fight on my main and it works fine. However, my main has Manuel. For my multis, which lack Manuel, I have found that mafia gives Ed's HP for all his forms as 1, which definitely leads to problems. I haven't had time to look into this further to find out if it's a mafia bug or something BatBrain is doing wrong.

    SimpleSmack and Your Shadow: I also don't automate this; I tried once and it failed despite a possible path to victory.

    "Unconditionally selecting everything is amusing but ultimately dumb." Haha!

    I do hope your outfits issue was fixed with a mafia change.

    Step availability is determined for each step as follows:

    1) check prerequisites. If any are not complete, the step goes in Future.
    2) check the step's satisfied conditions. If any are complete, the step goes in Past.
    3) check the location's availability using CanAdv. If the location is not available, the step goes in Future.
    4) if the step passed all the above checks, the step goes in Present.

    At the moment for debugging purposes I am bypassing step 3. So if you see a step show up in Present with a slash through the location it means that normally that step would be in Future due to its location being unavailable. It also means the data file is almost certainly missing a prerequisite for that step.

    OKAY! I believe I have made all the replies I am able to make to your log. Lots of TODOs for me; thanks for the fun experiment and the thorough report!

     
  • Jamie Adams

    Jamie Adams - 2022-04-07

    I’m looking at your responses as emailed to me. My comments will again be disorganized but perhaps helpful.
    Moods – first as a general personality quirk know that once I have a solution to a problem I do not actively revisit the problem and see if there is a better solution. My mood strategy may date back to the beginning of OQ or earlier. I have had lots of problems in run that are caused by not having enough meat at the right time. A lot of that was caused by restoring MP that had been used maintaining moods. My solution for the non-Myst classes has been to use a mood that doesn’t cast anything and have my MP never restored. When I get to a point in run when I am comfortable with the meat on hand I switch my mood to cast some useful things and allow MP to be restored. I find I also tend towards 100% runs with a familiar that restores MP. That is probably suboptimal for speed but is much more fun than a mood that fails to execute and stops automation. I don’t like micromanaging moods so I have standardized on one mood for in run when meat is a problem and one run for everything else, which is the rest of the run and aftercore.
    So to your comment I don’t use mm_modifiers and I didn’t quickly find evidence it had been changed from the default. My concern about adding item drop to mm_modifiers would be if doing so cost me more in run than not having it cost. I tend to believe meat and item drop can never hurt so they are in a mood. Other things tend to be special cases – I don’t always need higher stats or HP etc.
    Plan – I will definitely be more selective although there was some benefit to trying everything because it identified opportunities for meat based gates. I will probably toggle on and off selectively.
    Fax – I keep forgetting that mafia doesn’t always know clan equipment because of changing clans so literacy and be_good are probably sufficient. CafeBoob was created to be a character that did not have chat access because In Ancient Times there were devs who wanted to implement features using chat commands only. That has changed but it is a matter of pride that CafeBoob is illiterate.
    Bounties – when I was collecting them and needed them I never accepted a bounty unless the cost of adventuring in the location was already paid or acceptable. Since my Elemental Airport access is always a one-day ticket accepting a bounty there is always a choice. If accepting the bounty was never auto and the “Accept Bounty” text indicated where the bounty could be found, that would be good enough. A task “Gain Access to Conspiracy Island to accept a Hard Bounty there” seems like more trouble than it is worth. In run the most important thing about a bounty is where it is. I may choose to accept a bounty if I am already there anyway.
    Rocks – I am not revisiting my original comments but I am pretty sure that if I found a case where I wasn’t happy with OQ, did the quest manually and mafia thought it remained unstarted, I would have flagged it because that is a KoLmafia bug to be reported. I suspect I may have made an unstarted comment in reference to the wrong quest.
    Strange cube – I almost certainly conflated hobo glyphs and demon names because they are both things I was unlikely to search for in run.
    EatDrink has eaten more beans than I care to recall but never so many as to motivate me to figure out how to blacklist the bean. For no specific, repeatable reason I also think there were times when it wasn’t planted when I expected it to be. But I have been known to remember things that didn’t happen, so…
    The shore issues as well as getting the Spooky temple map in the forest were not problems with this run. Since I refuse to believe they are not real I think I will do a logged run with CafeBabe. There may just be a bad setting that I have not been motivated to find.

    Epic weapon – I think what happened is that the item dropped. I expect OQ to make the weapon and show the Guild based upon a hope that those were auto tasks. That did not happen. The preference indicated the quest was unstarted and I don’t know why. In HC the presence of the item or the weapon should mean the quest has advanced or finished, regardless of what mafia thinks. But in SC a player could pull the weapon but still want to look for it. There may be a KoL or mafia hiccup since CafeBoob is still waiting for assassins according to KoL. I’ll try and watch closely on the next run.

    Clovers – I now understand if I run Sera I can see what Lucky adventures are available. So I now interpret the clover task to be a reminder – you have clovers in inventory. Why don’t you run Sera and use one? I can train myself to do that. I don’t think it is worth having you launch Sera for me. I never actually has OQ load Sera for me since I tended to get lucky and then manually adventure there. Hangover from the days of fortune cookie counters when there was less certainty. I remember the letters adventure and the knob food but tend to forget the other ones even exist. Now I’m going to flood the mall with fox gloves and frozen penguins.
    Click or prereq – I understand that what will happen depends upon whether the task is in in past or future. I might claim that if a prereq to a task in present is not in either place then there is a data bug. I think my action is to write down things when I can’t find them since there have been cases where the prereq chain did not extend as far as it could.
    Escape – there are a number of places where number_of_adventures > zero could be a prereq but I’m not sure how to find them all. But, in general, OQ has sometimes had trouble if the goal is achieved on the last available turn.
    Twin Peaks – the text says must meet prereqs manually. I wasted a lot of turns trying to deal with the prereqs and not understanding the clippers mechanic and MM using them whether the prereqs were met or not, thus wasting clippers. So my response was to just clear twin peaks manually. I like my outfit and so tend to meet the prereqs one at a time. What usually happens is I look at the unmet prereqs, buff to meet one of them, adventure until the test that needed the buff can be taken and move on to the next test. I will manually recast buffs as needed. I have not used a single maximize command because I can almost always meet the tests with buffs but I don’t want the buffs for any other purpose but meeting the test. Running Elemental Saucesphere when I no longer need +2 Stench seems wasteful especially if I have a lot of angst about MP restores. Me running a single maximizer command is not preferred because my experience is that I run the command, start OQ and the first thing OQ does is switch to my default outfit. If I work around that by creating a new default then I have to have an easy way to restore it. So for auto-peak… If I need the oil it will adventure to get the crude, if necessary, and make it, the adventure at twin peaks. For any test that I can pass with equipment changes it should change equipment and then adventure until I pass the test. For any test that can be passed with buffs it should obtain and maintain the buff until the test is passed. OQ should quit if equipment and buffs can’t pass the test. A maximizer string under OQs control and changing the text on the task should work. I will consider it sub-optimal if it maintains buffs longer than necessary, favors buffs over equipment when restoration is an issue or swaps out one piece of gear from my default outfit that for irrational reasons I want to use as much as possible. This is in the realm of quibbles and if it really mattered I would not be automating my play :)

    “safe” – I remembered there was a reason why there were zeros but forgot it was the absence of a location. If this needed to be fixed I’d explore whether the ML of the creature to be fought could be derived or just hard coded into an OQ data file and used as a stand in for safe. But as long as I remember…

    SS and Ed – CafeBoob doesn’t have Manual but CafeBabe does. Both have problems with Ed and often the Big W. In both cases if I am lacking patience I do the fight manually. I just top off on mana and cast saucestorm until I win. If I don’t win then I increase spell damage and HP and try again. SS often tries to stasis and goes a few rounds and loses. SS sometimes tries Implode the Universe with no effect. I can’t recall ever seeing healing items used. I have seen, to my amusement, SS stasis by casting Lasagna Bandages on a character with about 40,000 unbuffed HP who is buffed to about twice that and thus at less than 50% health. My past complaints suggest several things that I could do or review: The settings that control the value of stasis are probably too high; BatBrain’s data is incomplete or incorrect; KoLmafia’s data is incomplete or incorrect or the monster in question has some special mechanics that are not supported by KoLmafia’s or BatBrain’s data representation. I’ll keep complaining buy pay much closer attention.
    Step availability – I will note anything that shows up in present but with crossed out location. I’m still confused by the relationship between the “Show Unavailable” checkbox and the 4 step display algorithm (with one step currently disabled for debugging).
    New Stuff
    I haven’t used NewLife since new paths broke it after Bale had faded away. I am considering a run where I delete my preferences and zlib variables and start at the defaults. Some of my issues might be related to stale values.
    My next run is likely to be SC since you rarely play it. Having done 12 standard runs I find I always pull a few things and then let OQ pull what it wants. At the end of the day I pull adventure gear and then things I will need eventually. Of the top of my head, tomb ratchets and bowling balls get pulled every day since I need more than I can pull. Key lime pies are an early pull and there is usually budget for things like wet stew and a drum machine. Outfits and quest conditions often get pulled by OQ. If I have patience I should annotate what pulls were me, manually, and what were OQ.

    Have not proofread this very well and will try and check in before I start another diagnostic run, but maybe not.

     
  • zarqon

    zarqon - 2022-04-08

    I can confirm that the questM09Rocks property does not update correctly upon starting the quest. It did not update when the choiceadv was selected that began the quest, and nor did it update upon visiting the quest log and seeing it there. Mafia bug! Saving this here for a bug report:

    <b>When Rocks Attack</b><br> An injured Knob Goblin wants you to buy some Pungent Unguent from <a class=nounder target=mainpane href=place.php?whichplace=town_market><b>Doc Galaktik's Medicine Show</b></a>.<p>

     
  • zarqon

    zarqon - 2022-04-08

    Hmmm, just used a 31337 scroll and the step reappeared. Turns out the Hermit is evidently no longer hackable as of 2022. The 31337 scroll no longer drops a hermit script, only a stat script. So I've just 86ed the whole Hermit quest from the data file.

     
  • zarqon

    zarqon - 2022-04-10

    Organizing.

    DONE:
    - fax depends on be_good and literacy
    - Rocks: set choiceadv correctly to start quest. Discovered mafia bug in quest tracking.
    - ballpit also depends on be_Good()
    - haiku quest (literacy): better tracking on the day you complete the quest
    - add tentacle and Lyle to daily deeds
    - eliminate Ed the Undying friendly warnings
    - add meat prereq for vacationing for dinghy plans
    - Add framework for highlighting urgent steps. Use said framework to provide urgent conditions for filthworm steps, hidden apartment steps, and Arid Desert steps that depend on an effect being active.
    - add step to use Frobozz house, provided you don't already have better housing

    REMAINING:
    - Bounties: investigate making the location visible in the hint prior to accepting (probably requires server hit)
    - Also Bounties: investigate name not appearing correctly
    - "buy" steps: add implicit prerequisite "meat" step
    - Lucky chain doesn't seem to use clovers correctly
    - Marty: investigate final turn-in step
    - Pagoda: investigate how this works post-cloverhaul.
    - Add hardcoded Safe values for non-locations that contain monsters (probably a switch in safecell() function)

     
  • Jamie Adams

    Jamie Adams - 2022-04-18

    Because it hasn't been closed :-)

    Attached "diary" is from a SC run with CafeBoob. Compared to the above it is softcore, and the mental algorithms for selecting tasks is different. There are two or three side quests that didn't work as expected but otherwise things were OK. In particular, I hd no problems or concerns about autofree or pulls.

     
  • Jamie Adams

    Jamie Adams - 2022-04-18

    And because I can, HC run with a different character playing the way I normally do. I didn't have the default outfit equip problem so maybe mafia fixed that. Some specific examples of tasks I am not seeing so you have more to go on than just me whining.

     
  • zarqon

    zarqon - 2022-04-18

    I will have detailed feedback for you eventually but at the moment I believe I know what is causing a significant number of your issues. I was super confused as to why many tasks were not showing up for you, until I saw your list of chains in OQ_chains and it hit me. There is no "main", only child quests of "main" -- which would happen if you deselect any of the child quests, causing main to be only half-selected. That would make lots of steps that are at the base level (for instance the leveling steps) simply not appear. I don't think I have ever tried saving a partial selection of the main quests to OQ_chains so I never encountered this. I'll have to look into how to get around this -- it's a pretty big stupid error and is kind of fundamental to the jQuery plugins I'm using. But in the meantime I believe you'll have a much better experience for your runs with "main" in OQ_chains rather than just some of the child quest chains.

     

    Last edit: zarqon 2022-04-18
  • Jamie Adams

    Jamie Adams - 2022-04-30

    Started a new HC run. I wanted a second reward so it could be in my rollover outfit and display case. I could not force the GUI to enable main on QQ chains. Everything I tried in the GUI failed. I finally deleted the preference and let it repopulate from the default. main is now the first item on the list and various things I was missing are there. So the problem was the absence of main and the fix probably lies in how main, the gui, toggle, and show unavailable interact.

     
  • Jamie Adams

    Jamie Adams - 2022-05-01

    After restoring the defaults yesterday, I saw it wanted me to get a flare gun today. I'm not going for a Wossname so I displayed Unavilable, unchecked War Hippy and Nuns Meet and Saved the chain. Main disappeared from the chain.

     
  • Jamie Adams

    Jamie Adams - 2022-05-03

    Data Point.

    OQ_chains main, guild/delivery, guild/meatcar, main/bat, main/cyrptic, main/final, main/friar, main/garbage, main/goblin, main/islewar/fratboy, main/islewar/sidequestArena, main/islewar/sidequestFarm, main/islewar/sidequestJunkyard, main/islewar/sidequestLighthouse, main/islewar/sidequestOrchard, main/larva, main/macguffin, main/rat, main/topping, main/trapper, npc/artist, npc/azazel, npc/untinker, spookyraven/manor1, spookyraven/manor2

    In the GUI with show unavailable not checked, I uncheck Hippy. Tasks 127, 11000 and 11008 disappear (along with 12002, 12003, 12004 and 12020 which I did expect to disappear).

    I note there is nothing in OQ chains that suggests the Hippy is checked so I wonder whether there is a data problem - Hippy is attached to main differently compared to Frat?

     

Log in to post a comment.