My personal Meat farming script

Hmm. cli_execute( "chat" ) will open the chat GUI (or switch to it, if already open).

I remember considering having the FaxRequestFrame (and/or the functions inside it which ASH uses to request faxes) do that if you were not already connected to chat, but, although we can tell if you have the chat GUI open, we have no way of knowing if you currently have ve chat running in the browser - although we will notice chat activity from there and faxing will work fine.

I may just make it open the chat GUI before asking for a fax; it doesn't harm anything to have that AND the browser chat running, and you can always close it after the fax is received.
 
Revision 32 adds the following configuration:

Code:
// *** Deluxe Fax Machine *******

// Which monster to fax in to a photocopied monster

monster fax_monster = define_property( "VMF.FaxMonster", "monster", "" ).to_monster();

// Items to use to make additional copies of faxed monster

boolean use_rain_doh = define_property( "VMF.UseRainDoh", "boolean", "true" ).to_boolean();
boolean use_spooky_putty = define_property( "VMF.UseSpookyPutty", "boolean", "true" ).to_boolean();

// Which familiar to equip while fighting copies of the faxed monster

familiar copied_monster_familiar = define_property( "VMF.CopyFamiliar", "familiar", "" ).to_familiar();
I ran with:

VMF.FaxMonster=Black Crayon Penguin
VMF.UseRainDoh=true (the default)
VMF.UseSpookyPutty=true (the default)
VMF.CopyFamiliar=Robortender

and it fought 7 Black Crayon Penguins and got 4 fish heads.

I'm content with this feature, although allowing a 4-d camera would actually be easy enough...

I would suggest adding digitizing as well as an option. Also, does drinking the required drink for the robortender make it permanent or is it just for the limit of the effect?
 
Feeding a drink to the Robortender is good until rollover.

Digitized monsters have a fixed schedule, not a range, right? So, just as with busting ghosts, we could switch to your copied monster familiar just before fighting it. Having both ghosts and digitized monsters will complicate my functions that adventure for "n" turns in a location. Doable, but not something I feel like doing right at the moment. I'll add it to the To Do list, though.
 
I may just make it open the chat GUI before asking for a fax; it doesn't harm anything to have that AND the browser chat running, and you can always close it after the fax is received.

I think I'd like that. For some reason chat was not opened in my set up and I spent about a week wondering why faxes did not seem to be working and then I remembered chat needed to be open.
 
Latest results: Net income = 2,335,697 Meat in 407 turns. Meat/Adventure = 5,738
Cumulative income = 2,698,399 Meat in 523 turns. Meat/Adventure = 5,159

Really appreciate this script!
 
This is my Barf Mountain outfit. The rest of the defined outfits are variations on it. My HP and MP will fully restore at 50%, and I have no moods defined. This is my main account with a fair amount of perms and shinies.

Barf Mountain Outfit.JPG
 
I would switch to the garbage sticker, that would up it even more. But there is nothing different for me otherwise and I make 1.2 to 1.5 a day
 
Another alternative would be the knife, assuming you have a pack of every card.
I managed to get +1585% meat going today, which surprised even me, but a 65 pound Robortender helped more than I expected. (It got me 55% more than a tot).
As for other differences, I use Carpe + Crown and the Lov Earring (instead of the Cheengs). The random drops are fun, but there's too damn many avatar potions to be worth much. For the Robortender I substituted a Belt of Loathing for that, and used Stephen's Labcoat as my shirt. (The rest of the weight was from Leash, Empathy, Sympathy, astral pet sweater and the pet-buffing spray.)

That wouldn't really explain the other 300% difference between us, well, unless you don't have Sweet Synthesis, the 300% meat drop buff is amazing, but the skill book is pricey.
 
Interesting. My script supports Deck of Every Card and the Tunnel of L.O.V.E. I don't currently support The Floundry, but seems like the script could get all of the "Lasts until Rollover" items you mentioned before suiting up and seriously farming.

I'm not quite ready for "supporting" the Robortender as a familiar, but the kind of input you just gave me is very helpful.

I already have Sweet Synthesis built-in. And yes - it's an amazing skill, and I feel for those who didn't get it during Crimbo last year. My main and all my multis have it, and it is well worth giving up 11-12 spleen per day to have the Meat Drop synthesis constantly active.

Here is my current To Do list:

Code:
// ***************************
//          To Do            *
// ***************************

// Bug: Use sufficient Inigo's when crafting SHC drinks to avoid spending turns
// Bug: Don't let Turtle Taming NCs satisfy the "1 choice" condition in Barf Mountain.
//
// If disco goal is "reduce drunk", handle after/during drinking
// If disco goal is neither "5 turns" or "reduce drunk", get it. Somewhere.
// Improved Garden harvesting (goals for all types of crop)
// Make moods configurable (Farming, Gingerbread City)
// Allow Digitizing monster we are copying
// Hatter buff
// Source Terminal: optionally use Extract and do daily extrusions
// Robortender as plausible Meat Drop familiar?
// Platinum Yendorian Express Card
// Better use of Dinsey foodcone and jumping horseradish
A few of my previous "To Do" entries are coded up but not submitted yet. Later today, after further testing.

I will add The Floundry - which I have never used, although, as it happens, I have donated hundreds of fish to my clan - and will probably move the Robortender up in the list.

Regarding Pooter's 5,000+ MPA for 1.5 days of this script: I suspect the figure was skewed by autoselling/using Screege drops you didn't know were worthwhile; one of my characters had 42 solid gold jewels (which I don't understand, since that was at least 4 times as many as another character) - and had a one-day windfall of +4,200,000 as a result.

I'm currently getting about 3,500+ MPA or so with my main (included 28 turns in the Gingerbread City), although that goes up, as I add this or that trick. Ofaction added 10% to my characters who can't go to Barf Mountain (who get about 1,800 MPA).
 
Last edited:
I already have Sweet Synthesis built-in. And yes - it's an amazing skill, and I feel for those who didn't get it during Crimbo last year. My main and all my multis have it, and it is well worth giving up 11-12 spleen per day to have the Meat Drop synthesis constantly active.

It is so very sweet. Yep, the adventures I get from that 11 spleen is worth far less than another 300% meat drop. Amazingly it still costs less than 10 million in the mall -- I recommend everyone get it while the price is still so reasonable. It actually pays for itself in a week if used for any sort of serious farming.
 
// Make moods configurable (Farming, Gingerbread City)

My personal solution to this problem is to do something like...

Code:
		cli_execute {
			mood default, balefarm
			mood clear
			trigger lose_effect, fresh scent, use either 1 chunk of rock salt, 1 deodorant
			trigger lose_effect, smooth movements, cast 1 smooth movement
			trigger lose_effect, the sonata of sneakiness, cast 1 the sonata of sneakiness
		}

That creates default, balefarm which extends my default mood with the new effects. It allows me to keep whatever the heck is in default (which ash won't let me check) along with the special purpose buffs for my current adventuring goal. If I clear the mood when I'm using a mood extension, it only clears the extension (in case I had other triggers there) without clearing default.

I'll be very interested to see if you've got a better solution. (Or create ash commands for checking the current contents of a mood.)
 
Revision 33 does this:

Starts the Chat Manager before requesting a fax. It waits 5 seconds after starting, to give it a chance to get the "open channels" response back and actually open the GUI.

You can configure the Clan Swimming Pool to be used at the end of the day. Neither buff is particularly useful for farming, but Silent Running supposedly makes you subject to fewer random PVP attacks, so, some people might want that.

You can configure the Clan Floundry to get an item before any adventuring (like the Deck and the Tunnel of L.O.V.E.) so, if you want lasts-until-rollover items in your outfits, you can get them.

The Deep Machine Tunnel choice adventure is now configurable. If you want "comprehension" and it will show up today (per the "encountersUntilDMTChoice" setting I added a few days ago), it will reserve 3 spleen and, when the choice is due, will chew the three necessary abstractions before adventuring to get the choice. This is not tested, yet. The choice will show up for me as the first DMT adventure in three days. I don't REALLY want comprehension, but, for the sake of science, I will test it then.

Adding new configurable features - even simple ones - takes longer now.

1) Define a configurable property
2) Add constants that define the valid options for the property
3) Validate the property at startup (e.g., just because it is an "item" doesn't mean all items are good)
4) Use the property to control the new feature at the appropriate place.

I didn't used to have steps 2 and 3. But now, hopefully, configuration is bullet-proof.

And, by the way, the reason so much stuff that doesn't necessarily look like "farming" is in this script is that my personal goal is to minimize the actual time I spend tending characters in aftercore. I want to log in, press script button 3, and, when it is done, logout.

Spending time coding this script is consuming all the time I save by running the script. But, at least it is fun!

I want to comment that hatter 22 works perfectly while hatter filthy knitted dread sack only works if you are already wearing the hat in question. Is that intended?
I expect it is not intended. I'll be looking at the "hatter" command, by and by.

Although "hatter 22" is the obvious choice for a Meat farming script, as in every other feature, I'll let you configure whatever you want. Presumably, that will involve listing all the hatter buffs, letting you choose the effect you want and validating it, mapping from effect to hat length, validating that you HAVE a hat of appropriate length, and, at the appropriate time, invoking the hatter command. Fortunately, we have an item proxy field for name_length, added because of a PVP mini, which will help here.

Back before I started obsessing on generalizing the actions of this script, a simple 'cli_execute( "hatter 22" )' would have done it. Life is not so simple now. :)

My personal solution to this problem is to do something like...

Code:
		cli_execute {
			mood default, balefarm
			mood clear
			trigger lose_effect, fresh scent, use either 1 chunk of rock salt, 1 deodorant
			trigger lose_effect, smooth movements, cast 1 smooth movement
			trigger lose_effect, the sonata of sneakiness, cast 1 the sonata of sneakiness
		}

That creates default, balefarm which extends my default mood with the new effects. It allows me to keep whatever the heck is in default (which ash won't let me check) along with the special purpose buffs for my current adventuring goal. If I clear the mood when I'm using a mood extension, it only clears the extension (in case I had other triggers there) without clearing default.

I'll be very interested to see if you've got a better solution. (Or create ash commands for checking the current contents of a mood.)
I will look closely at mood support in ASH, by and by. I recall an open Feature asking for access to mood triggers.

My initial thoughts when I put "moods" on the To Do list was to allow you to specify a variety of (configured) moods for various activities. For example, perhaps Gingerbread City will want to work a little harder on Familiar Weight, in order to boost sprinkles from the Lab. Perhaps free fights with scaling monsters that don't drop Meat want a mood which emphasizes stat gain, rather than Meat Drop. I don't know.

I wasn't planning on creating temporary moods composed of other moods - although, that is exactly what you did there, and it is a very interesting idea. This looks like it might be a fairly substantial "feature" whch will help from augmenting the ASH Run Time Library. It's handy being a KoLmafia dev - although I try very hard to make sure that new functions are really of general use, rather than coded specifically to the needs of one script.

Thanks for the inspiration.
 
As of revision 39, we will get the hatter buff of your choice. Defaults to "Dances with Tweedles" (Neat Drop +40) but you can configure it via VMF.HatterBuff.

As of revision 40, if you set VMF.FarmFamiliar to Robortender, you can configure VMF.RoboDrinks to be a set of drinks to feed to it.

I did this:

set VMF.FarmFamiliar=Robortender
set VMF.RoboDrinks=drive-by shooting|single entendre

and it worked as expected.

Note that it will "acquire" the drinks, which will use all the usual methods you have configured - use from inventory, buy from mall, create from ingredients - and at least one of the drinks is probably more expensive than your autoBuyPriceLimit. If the "acquire" fails, we say something like "Unable to acquire and use drink 'drive-by shooting' to feed Robortender; skipping." and continue.

I'm open to suggestions about better behavior. Perhaps it should attempt to acquire the drinks which will be used during validation and abort at that time, allowing you to decide what to do: buy the items, make them, use a different familiar, ...
 
Back
Top