One-Click Wossname -- automatic level 12 quest completion

Another quirk - when the script tried to do the orchard quest, it failed to use the stench glands as it acquired them. On re-starting the script it picked them up fine and used them, so I just re-ran it 4 times.
 
i don't know if it's an issue with kolmafia not seeing the quest items or what but running with daily build 5715 it keeps trying to adventure in the junkyard after you've completed the quest...maybe a more sure-fire method of checking for completion would be to have it check the message yossarian gives you once you've completed the quest.
 
I've run this successfully several times now but when my partner tried to run this she got

Code:
> call scripts\Wossname.ash

Checking for updates (running OCW ver. 1.3.1)...
"optimal.txt" loaded (14 steps).
Current step: 0
Verifying Wossname progress...
Current step: 0
Completing step 0 of 14...
Using 10 Knob Goblin pet-buffing spray...
You acquire an effect: Heavy Petting (duration: 100 Adventures)
Finished using 10 Knob Goblin pet-buffing spray.
Mood swing complete.
Mood swing complete.
You can't wear that outfit.
Warning: there was a problem equipping your chosen familiar/outfit.
Putting on War Hippy Fatigues...
Equipment changed.
Countdown: 5 seconds...
Countdown: 4 seconds...
Countdown: 3 seconds...
Countdown: 2 seconds...
Countdown: 1 second...
Waiting completed.
Conditions list cleared.
Step 0 goal: 1 fratboys slain.

Visit to IsleWar: Battlefield (Hippy Uniform) in progress...
Encounter: War, Man. Like, Wow.
You acquire an item: lead pipe
You acquire 3 water pipe bombs
You acquire an item: communications windchimes

Delay between requests: 0.8 seconds
Delay added this session: 0 minutes, 0 seconds

Visit to IsleWar: Battlefield (Hippy Uniform) in progress...
Encounter: War Frat 110th Infantryman
Strategy: custom: default.ccs
Round 0: Princess Luna Bleu wins initiative!
Unexpected error, debug log printed.

Visit to IsleWar: Battlefield (Hippy Uniform) in progress...
Unexpected error, debug log printed.

Any thoughts as to why? - on daily build 57715



Tom
 
functionality request:
a way to mark a step as complete...say you did the flyers by yourself...need a way to mark that step completed

**edit**
the main reason i suggested this is because the script can't seem to figure out that the junkyard is already completed....
 
[quote author=Qmanol link=topic=1395.msg7131#msg7131 date=1202625273]
Another quirk - when the script tried to do the orchard quest, it failed to use the stench glands as it acquired them. On re-starting the script it picked them up fine and used them, so I just re-ran it 4 times.
[/quote]

I had the same/similar issue. I posted code that works for me. zarqon states the current nested while code should work correctly.
 
Yeah, I've continued to have issues with the orchard as well. And it was exactly as if it wasn't registering that it had gotten the glands. I usually end up using the glands it has given me and manually finishing it off. Not a huge deal, considering it usually only takes about 15 adventures, or less, from there.
 
[quote author=Qmanol link=topic=1395.msg7131#msg7131 date=1202625273]
when the script tried to do the orchard quest, it failed to use the stench glands as it acquired them.[/quote]

I just had that problem too. Apparently adventure() returns false if it stops because of satisfied conditions. (?) Not the behavior I expected. Anyway, that's fixed but it's not as nice as my ideal, because now the script won't exit gracefully if you run out of adventures mid-quest, it'll just abort. I prefer graceful, but this will have to do for now.

Dev question: Does adventure() really return false when it auto-stops due to satisfied conditions? Shouldn't that return true, since it accomplished its purpose successfully?

@kethoth: OCW does absolutely nothing to mark quests as completed, mafia does. OCW just reads mafia's settings. Try visiting Yossarian again via relay in proper attire. If that fails, you'll have to change your settings file manually. Look for the "sidequestJunkyardCompleted" property.

@dangerpin: Thanks for the thanks! I collect ultrarares. :)
 
[quote author=zarqon link=topic=1395.msg7159#msg7159 date=1202752436]
@dangerpin: Thanks for the thanks! I collect ultrarares. :)
[/quote]

Don't we all. I sent you a nice package. Enjoy!
 
[quote author=zarqon link=topic=1395.msg7159#msg7159 date=1202752436]
@kethoth: OCW does absolutely nothing to mark quests as completed, mafia does.  OCW just reads mafia's settings.  Try visiting Yossarian again via relay in proper attire.  If that fails, you'll have to change your settings file manually.  Look for the "sidequestJunkyardCompleted" property.
[/quote]


learn something new every day
 
[quote author=zarqon link=topic=1395.msg7112#msg7112 date=1202577531]
@Xerxes: thanks for the suggestions. I added your item code in. I also don't think the if statements are necessary because the use_upto() function calls retrieve_item(), which buys from NPC stores if possible. I think that includes automatic outfit swapping but I could be wrong (if anyone would like to test this I would be grateful). I never go out of my way to get the Elite Guard outfit, so I don't think I've ever had it in HC. Also, I got your message (both times) -- I've just been too busy to get you a proper response yet. One will come though. I made some warplan-loading changes to the latest update that might be of great interest to you.
[/quote]

Looking forward to it. Sorry about the double message - the first disappeared from my outbox, and I wasn't sure I hadn't just imagined sending it.

You are right, retrieve_item() does buy from NPC stores if possible, and I do think that means it will automatically outfit swap. At least, I know that KoLmafia automatically swaps to buy items when I type "use 1 knob goblin eyedrops" in the relay browser, and I assume the same code is called in mafia when I do that as when you call the ASH function.

On that note, while I was pondering this, I saw that you use retrieve_item() when you ensure outfit possession to start the war. Just FYI, retrieve_item() only pulls from Hagnk's after you are out of ronin; you need take_storage to ensure an in-Ronin pull. I'm not a softcore guy, and I don't think many people are hitting the IsleWar while still in Ronin, but if they are, they might want to use pulls to get the Warrior outfits, rather than adventures in the pre-War camps.
 
simple spading request

I've been modifying the junkyard quest to use mafia's properties. Unfortunately, it will be a good long while before I get to level 12 again with anyone (my characters all just passed it, which of course is where I got the idea...). So, I'd like to request your help for a little mafia spading. Should be a breeze if you can a) open the source or b) play through this sidequest manually, checking your settings file as you go.

There are two properties I'm concerned with: currentJunkyardTool and currentJunkyardLocation. I want to know what values go here and what triggers them to be changed. I've made some pretty safe assumptions but I would like confirmation before posting. Starting with the easy one:

currentJunkyardLocation
What I know:
[*] is not set to empty on acquiring a tool or finishing the quest
[*] one possible value is "out by that rusted-out car"
What I want to know:
[*] what are the other possible values exactly?


currentJunkyardTool
What I know:
[*] is set to empty post-quest
What I want to know:
[*] is this set to empty on acquiring the tool, or only when visiting Yossarian? I'd guess it's empty when you get the tool, which would also be handy when scripting.
[*] what are the exact possible values? Do they include the word "molybdenum"?

I'd appreciate any help figuring this out.
 
Re: simple spading request

[quote author=zarqon link=topic=1395.msg7176#msg7176 date=1202840291]
There are two properties I'm concerned with: currentJunkyardTool and currentJunkyardLocation.  I want to know what values go here and what triggers them to be changed.  I've made some pretty safe assumptions but I would like confirmation before posting.[/quote]

If Yossarian says "The last time I saw my wrench, it was ...location...", then currentJunkyardTool is set to "molybdenum crescent wrench" and currentJunkyardLocation is set to ...location....

The value of currentJunkyardTool is always the actual name of the item.
Possible values of currentJunkyardLocation:

next to that barrel with something burning in it
near an abandoned refrigerator
over where the old tires are
out by that rusted-out car

When you acquire a molybdenum tool, currentJunkyardTool is immediately set to "" but currentJunkyardLocation is left alone until you visit Yossarian again; that's the signal that KoLmafia should tell you to "Visit Yossarian for your next assignment."

When you complete the quest, currentJunkyardLocation is set to ""; that's the signal that KoLmafia shouldn't tell you about the progress of the Junkyard quest.

I just noticed that since Yossarian doesn't give you your first assignment at the same time he gives you the magnet - you have to visit him again - KoLmafia SHOULD tell you to "Visit Yossarian for your next assignment" when you get the magnet, but doesn't. I'll fix that by setting currentJunkyardLocation to Yossarian and leaving currentJunkyardTool as "", but it will be a long time before I can test it; I'm doing a basement dive and will ascend into Bad Moon...
 
[quote author=zarqon link=topic=1395.msg7176#msg7176 date=1202840291]Should be a breeze if you can a) open the source or b) play through this sidequest manually[/quote]

Forgot to add c) remember how you originally wrote the code. Thanks Veracity! That's everything I wanted to know.
 
I've gotten most of the way through the IsleWar again with my SC guy, so I could really watch the item use at work. I finished the filthworm sidequest in an astonishing 7 adventures! Yay items! And as usual when I actually get the chance to USE this difficult-to-test script, I thought of more ways to improve it. So here we are: version 1.3.3.

First, as mentioned above I rewrote the junkyard script to use mafia's properties, which means it needed fewer variables. I also did some other things to it, the most functionally important thing being that your ccs will now work against gremlins once OCW determines it doesn't have a tool. It also no longer unnecessarily visits Yossarian, thanks to mafia properties.

And some tweaks for item usage on all sidequests:
[*]Switch to your chosen outfit after using items, in case of outfit switching to buy something. (mafia does not switch back to your previous outfit after buying something!!)
[*]Check for existing effects before using items. So if you still have "fresh scent", it won't unnecessarily use another deodorant.

Some item/optimization additions:
[*]added deodorant to GMOB hunting
[*]added summon greed demon to nuns
[*]added winklered to nuns, in the event that buff is available

And various other changes:
[*]Added more useful battlefield statistics between combats, including the number of adventures remaining (as a float). It ought to always end in .0, but if this number ever changes to x.5, your count or your warplan is off somehow and you're quite possibly screwed for getting the Wossname.
[*]Removed repeat loop from GMOB hunting, relying instead on mafia properties.
[*]obtain() now attempts to pull from storage, so if for some reason you're still in Ronin when running this script, OCW may use up some of your daily pulls. This is probably a nonissue for most.
[*]Re-simplified filthworm code. (This is the version that finished the quest for me in 7 adventures and about 15 seconds...)
[*]Return previous outfit on script exit.

@dangerpin: one more: I realized the ending is a little anticlimactic, so I added a short countdown before getting the Wossname. :)
 
[4606] Battlefield (Frat Uniform)
Encounter: The Last Stand, Bra
Encounter: Big Wisniewski
Round 0: wins initiative!
Round 1: uses the flaregun!
Round 2: extends a robotic arm with a chainsaw on the end. Before you can say "Hail to the king, baby," it chops him for 34 damage.
Round 2: extends a cybernetic mouth and smiles broadly.
Round 1: big wisniewski takes 34 damage.
You gain 60 Beefiness
You gain 134 Mysteriousness
You gain 71 Chutzpah
You gain a Moxie point!
Getting the Wossname in...
Countdown: 3 seconds...
Countdown: 2 seconds...
Countdown: 1 second...
Waiting completed.
You acquire an item: Order of the Silver Wossname
Victory! Veni, vidi, vici and all that stuff.

AWESOME SAUCE!!!! Thanks a million!
 
When I tried to run the newest version on the latest daily, I get

Bad item value: "Lockenstock sandals" (Wossname.ash, line 196)

When I changed this to
Code:
Lockenstock™ sandals
, it worked fine.

These may all be a reflection of the changes in fuzzy matching, but this morning I had a problems with line 540

Bad location value: "battlefield(frat uniform)" (Wossname.ash, line 540)

I put a space between battlefield and the left paren and it liked it, but I ended up making a similar change to line 541 before it would work
for me again. So...

Code:
   location where_to = $location[battlefield (frat uniform)];
   if (plan[step].hippy_frat) where_to = $location[battlefield (hippy uniform)];
 
I tried using the script and it hit an error because I forgot to buy meat vortex's (I am not sure why it doesn't check for this), then I tried to rerun it and it started again at the first step, killed a fratboy and then tried to return to the orchard, told me step 1 could not be completed.

I was using 12.2 and just modified the CSS files as the instructions are and ran it.
 
I am getting 3 errors.

[size=10pt]Checking for updates (running OCW ver. 1.3.3)...
battleAction => custom: default.ccs
Internal checkpoint created.
"optimal.txt" loaded (14 steps).
Verifying Wossname progress...
Current step: 11
Completing step 11 of 14...
Mood swing complete.
Mood swing complete.
You can't wear that outfit.
Warning: there was a problem equipping your chosen familiar/outfit.

Countdown: 5 seconds...
Countdown: 4 seconds...
Countdown: 3 seconds...
Countdown: 2 seconds...
Countdown: 1 second...
Waiting completed.
Conditions list cleared.
Step 11: Mysterious Island Arena sidequest
battleAction => attack with weapon
There was a problem acquiring the flyers for the Arena quest.

[/size]Every time I have run the script I got the first two errors and the script continues with out stopping. The third error has stopped the script every time after the first time I ran version 1.3.3. If that makes sense.
 
Back
Top