One-Click Wossname -- automatic level 12 quest completion

Thanks!

Just out of curiosity, why the redundancy between the true/false value and the frat/hippy value?

for example, in the first line of my plan, what would happen if I ran it as-is? does the script check both?
 

slyz

Developer
Each line of the plan contains the following:
Code:
number hippy_frat checkprop checktext
which means: "in step number <number>, dress up as a ( hippy_frat ? hippy : frat ), do the action that is tracked by the <checkprop> preference, until the value of that preference is <checktext>".
 

Tipmon

Member
Yeah, I ran into a strange problem... it complete the sonofa beach area but it doesn't seem to have registered that it has? I know I have completed it because I manually fought a lobsterman and he didn't drop a barrel. Is there anyway to manually change it so that the script knows that the lighthouse part of the quest has been completed by a fratboy? Or maybe you could add a check so that if a lobsterman doesn't drop a barrel then you know that it has already done the quest(it has a 100% drop rate unless you have already turned in 5 and the war is still going on)?
 

Theraze

Active member
Or unless there's a black cat and it bats it away, or unless there's an OAF and it determines it to not be optimal, or...

But you should be able to just manually change your step. To which? I can't tell you... that depends on which plan you're doing.
 

zarqon

Well-known member
If mafia is unaware the quest has actually been completed, you have to go visit Mr. Boom-boom at the lighthouse in the correct outfit so that mafia registers it (the appropriate letter will appear over the image when viewing the island). Sometimes, possibly due to lag when turning in the quest or not syncing settings between multiple machines or somesuch, things like this happen, and it takes a manual visit to let mafia know the sidequest was, in fact, finished. At that point, OCW will run correctly again.
 

atrak

New member
running into the 'bad location value: "castle" (Wossname.ash line 307) error', I've tried to change the value to giantcastle etc but nothing seems to work, I am assuming this is because the castle has been changed recently. Does anyone have an idea about how to rectify this issue?

Thanks
Atrak
 

Theraze

Active member
Try this.

The Giant Castle is now Giant Castle (Ground Floor) but there are also a few AoJ tweaks I've added as well.
 

Attachments

  • Wossname.ash
    32.7 KB · Views: 47

jbouzanquet

Member
running into the 'bad location value: "castle" (Wossname.ash line 307) error', I've tried to change the value to giantcastle etc but nothing seems to work, I am assuming this is because the castle has been changed recently. Does anyone have an idea about how to rectify this issue?

Thanks
Atrak


Repalce with the new location. I haven't yet seen if it gets the butterfly, but the script is runnable by using castle (ground floor)
Code:
   obtain(1,"chaos butterfly",$location[castle (ground floor)]);

Edit: Hmm, the threaded view doesn't show none-quoted responses.
 
Last edited:

Theraze

Active member
Additionally, I think castle still matches against the... yep.
case $location[Lord Flameface Castle Belfry]:
case $location[Lord Flameface Castle Entryway]:
So castle hasn't worked since Flameface got added to mafia. That's been a while. :)
 

Razorsoup

Member
If I want to complete the war the slowest way possible (to farm item drops), then complete the sidequests before the showdown, would the following warplan work and still get me the Wossname?
Code:
0	true	fratboysDefeated	999
1	false	hippiesDefeated	999
2	true	sidequestOrchardCompleted	hippy
3	false	sidequestLighthouseCompleted	fratboy
4	false	sidequestNunsCompleted	fratboy
5	false	sidequestFarmCompleted	fratboy
6	true	sidequestJunkyardCompleted	hippy
7	true	sidequestArenaCompleted	hippy
 
Last edited:

Theraze

Active member
I use this for selling Wossname items still, so... here's my version that I just updated to not have friendly warnings.
 

Attachments

  • Wossname.ash
    32.9 KB · Views: 32

zarqon

Well-known member
Working on totally rewriting this script from the ground up. Kind of exciting. The new script will scrap warplans altogether and use a single script setting -- an item, where you specify your target reward. It will also be much more flexible in the event that you do things manually out of order -- basically, as long as your target reward is still possible, it will be able to do it for you (so long as you did everything within mafia, of course). I've got most of the framework in place, and I must say I'm quite happy with it so far. I'll probably be re-using a lot of the code for sidequests, but most everything else will be new.

Theraze, try this next time and see if it works as I hope it will:

PHP:
boolean turn_stuff_in(boolean getmeat) {
  // turns all your stuff in for dimes/quarters (except 1 if equippable) when profitable
   foreach it,n in get_inventory() {
      int tot = max(0, n - to_int(can_equip(it)));
	  if (tot == 0 || !($coinmasters[Dimemaster,Quartersmaster] contains it.buyer) || sell_val(it) > buy_price(it.buyer,it)*200) continue;
      vprint("Turning in "+tot+" "+to_string(it)+"...",3);
	  outfit(right_outfit(it.buyer == $coinmaster[dimemaster]));  // avoid lots of checkpoint outfit switching
      sell(it.buyer, tot, it);
   }
   if (getmeat) {
      foreach it in $items[fancy seashell necklace, water pipe bomb, commemorative war stein, beer bomb]
         buy(it.seller, floor(it.seller.available_tokens / sell_price(it.seller,it)), it);
      if (my_path() != "Way of the Surprising Fist") {
         int prior_meat = my_meat();
         cli_execute("autosell * commemorative war stein; autosell * fancy seashell necklace");
         if (my_meat() > prior_meat) vprint("You gained "+(my_meat()-prior_meat)+" meat!",2);
      }
   }
   return (to_int(get_property("availableDimes")) + to_int(get_property("availableQuarters")) == 0);
}

This script was written long before we had a coinmasters data type. Now that we have one, I was able to reduce 70-ish lines of code to 7-ish. Untested though. I'm hoping I used everything correctly; "buy" and "sell" got a little confusing since it was sometimes hard to know which perspective they were being used from (it isn't always the same perspective).
 
Last edited:

Theraze

Active member
Eh, the problem is that some items are more valuable sold in the mall rather than being exchanged for coins... for frats, that would be everything but the rings and phone, for hippies, everything but the beads and windchimes.

I believe you account for that by using the sell_val check, correct? As that isn't in Wossname but is in zlib itself, I'll run that alias with an import to start it.
 

Fluxxdog

Active member
The new script will scrap warplans altogether and use a single script setting -- an item, where you specify your target reward.
The only finicky part I would ask is the Iron Beta (5 for frats) where sometime you want the nuns done, other times you don't. I had a custom warplan that would skip the nuns because it would take too long with big meat boosters. Other people might want those nuns done. Will there be a difference?
Gah, if I could write it up, I'd devise a relay script that could help set up the war plan instead.
 
Top