My personal Meat farming script

Veracity

Developer
Staff member
I've been thinking about the muffin tin.

KoLmafia has two properties to track the state of the breakfast counter:

muffinOnOrder - none, blueberry muffin, bran muffin, chocolate chip muffin, earthenware muffin tin
(The last is set when you ascend and we reset properties: if you had a muffin on order, that's not what you will get when you visit the breakfast counter after you ascend.)
_muffinOrderedToday - true or false

Assuming KoLmafia sees all of your interactions with KoL, those should be everything you need.

We decorate the gash with "things you might want to do":

If you have an earthenware muffin tin and nothing on order: "order a muffin at the Breakfast Counter"
If you have a blueberry, bran, or chocolate chip muffin: "order a muffin at the Breakfast Counter"

That last one is problematic, since you probably are full at the gash.

VMF would have the same issue.

It has properties: VMF.EatMuffins and VMF.MuffinToOrder

if the former, as part of consumption, it will (pull and eat) a muffin - if you have one - and then order a new muffin.
If you don't have a muffin and do have an earthenware muffin tin, it will visit the breakfast counter - and pick up and eat a muffin, if one is there - and then order a new muffin.

So, if, you have VMF.EatMuffins - and fullness available - it will order and eat a muffin and then order one for tomorrow.
If one or the other of those is not true, perhaps we should also have VMF.OrderMuffins which will ensure you have a muffin in the oven for tomorrow.

The only issue would be if KoLmafia's properties are incorrect and we think muffinOnOrder is "none", but when we visit the breakfast counter, we are given a muffin and can't/won't eat it.

I'll write up an "Issue" proposing something like that.
 

Magus_Prime

Well-known member
I double-checked the logs for the day in question and can confirm that the character ate the muffin for that day. I just neglected to return it to the vendor, for a refill, prior to ascending.

I agree that there isn't much that can be done if there is a full muffin tin in inventory when the character ascends. There aren't a lot of options to, inexpensively, increase fullness at the last minute. A quick look at the wiki only presents three, realistic, candidates:
  • Cuppa Voraci tea
  • Distention pill
  • Multi-using 11 possessed sugar cubes
Of the above, if I'd realized the problem in time, I would have gone for the Voraci tea as I have some in inventory after pulling everything from storage. I have quite a few sugar cubes too but I think the tea is the cheaper option.

Perhaps a configuration option to use one or the other if VMF "notices" the predicament before jumping the gash?
 
Last edited:

MCroft

Developer
Staff member
I think you're right in that it's a KoLmafia issue, which means this may not be the best thread to discuss this.

1: Do we want to give extra weight to a muffin in cases where fullness is 0, to allow "Started your day right" on the first consumption? Or do anything special around it? (sort of like how we ask before someone drinks without Ode)
2: Do we want to automatically return the earthenware tin to the breakfast counter when we eat the muffin?

I don't know, but it feels like we could make this more automated even for non-scripters.
 

fronobulax

Developer
Staff member
My skulldozer is not being fought.

I do recall that I reported this as working recently so I don't know whether my report was in error or something changed.

VGH.GardenCrops is set to skulldozer and as far as I can tell the VMF options that might effect the garden are at their defaults.

It is possible that some other script is interfering but I don't think so.

VMF and VGH are both installed via git and up to date. The version of GH that is present has the space in the name.
> Your Bone Garden has a Skulldozer in it.
> It's time to harvest!
custom outfit Item Drop

familiar Jumpsuited Hound Dog (51 lbs)

Unequip Leprechaun

equip familiar ittah bittah hookah
> Fighting Eldritch Tentacles

and

> Your Bone Garden has a Skulldozer in it.
> It's time to harvest!
> Getting Fortune Teller buff (meat)

Visiting Fortune Teller in clan VIP lounge
Took choice 1278/1: Consult with Zatara
choice.php?whichchoice=1278&option=1&which=-3&q1=pizza&q2=batman&q3=null
You acquire an effect: Meet the Meat (100)
custom outfit Item Drop

familiar Jumpsuited Hound Dog (36 lbs)

Unequip Leprechaun

equip familiar ittah bittah hookah
> Fighting Eldritch Tentacles

cast 1 Manicotti Meditation
You acquire an effect: Pasta Oneness (5)

cast 1 Spirit of Garlic
You acquire an intrinsic: Spirit of Garlic
> Recommended Combat Rate: +0 (now: 5)
> Recommended Initiative: +0 (now: 115)
> Recommended Item Drop: +0 (now: 566.34)
> Recommended Monster Level: +0 (now: 48)

Visiting a Science Tent

Different characters. In both cases it looks to me as if the need to fight was recognized but the fight did not occur and VMF just moved on.

Thanks.
 

Veracity

Developer
Staff member
That would be in Garden Harvester; VMF outsources and simply calls VGH to handle your garden.

I'll look at it (soon, like this morning) and figure out the issue.

The good news is that you can just run VGH again to fight the skulldozer - even if you are overdrunk.
 

fronobulax

Developer
Staff member
A heads up even though this is not a VMF problem. I finished a Legacy run and had a replica Source Terminal. After freeing the King the replica went away but the settings were not cleared and so VMF tried to get an enhancement and failed. I deleted the preference "sourceTerminalEnhanceKnown" and VMF ran as expected.
 

fronobulax

Developer
Staff member
As above. A LoL run leaves sourceTerminalEnhanceKnown set to something besides empty. VMF tries and fails to get an enhancement. In a discussion about what to reset the claim was made that sourceTerminalEnhanceKnown had information that could be useful after a LoL run or during the next one. So the resolution was to ask the script author to check for a Source Terminal in the campground rather than have KoLmafia reset the preference.
 

Veracity

Developer
Staff member
Revision 14 fixes that.

I've been focused on KoLmafia features & bugs for a month or so.
Time to get back to updating & documenting my scripts.

I think an early project will be investigating how to automatically generate a relay configuration script for scripts that use vprops.
 

fronobulax

Developer
Staff member
Thank you.

zarqon's PrefRefPlus does almost everything I want with vprops variables. The omission is that vprops variables at their default setting are not displayed. So I look forward to the relay script.
 

Veracity

Developer
Staff member
Revision 16 does two things (one of them visible):

1) If we are in "nofarm" mode, if there is available fullness when we are about to exit (from Pantsgiving, say), fill it up.
2) Rename a variable named "function" to "function_name". Just because. :)
 

Veracity

Developer
Staff member
cheesefax has been offline for the last month. Fortunately, EasyFax exists.

- I used cheesefax to consult with Madam Zatara. I just learned that EasyFax can do that too - either coming to your clan (up to) three times when you summon it, or camping in BAFH.
- I used cheesefax to fax in Black Crayon Penguins or Black Crayon Constellations. I like those, since they inspire my Robortender to drop mixing ingredients needed to making the drinks to lubricate him for Meat or Item drop. Also, they are free fights. EasyFax does not have, at least, the latter of those.

I liked the old FaxBot, since it had access to all user-provided monsters in individual clans - the Fax Network. Do cheesefax and/or EasyFax have access to all of those clans? Why is there a difference in provided monsters? What monsters does cheesefax advertize that EasyFax does not?

It should be easy to answer that last question by parsing the config files of the two bots and seeing what differs.

In any case, I need to do the following:

1) modify my "consult with Madam Zatara" function to work with either bot - use EasyFax (configurable, default)
2) Modify fax receiving as follows:
a) If you have the correct photocopied monster, use it.
b1) If you have the wrong photocopied monster, dump it
b2) Otherwise, receive a fax and see what it is.
b2a) It it is correct, use it
b2b) Otherwise, dump it.
c) We need to request a fax.
c1) Configure faxbots
c2a) If EasyFax advertises your desired monster, use EasyFax
c2b) If not and we are configured to use cheesefax (false by default), see if cheesefax has it. If so, use cheesefax
c3) If no allowed faxbot has the monster, fail
d) Request a fax from the chosen faxbot

I am also pondering improving clan hopping. I have 2 multis in private clan A and 2 in private clan B. The 2 which are clan leaders cannot clan hop - and all those clans have is a fax machine. I didn't even bother buying a VIP key for them.

If a character has clan leader permissions for a particular clan, can they cede leadership to another character, and then seize it back?
If so, my clan leaders could buy VIP keys, get whitelists for BAFH, and do clan hopping.

And there are a bunch of Clan furniture that all those characters could hop to BAFH to and then return home to their home clan.

That'll be later development.
 

Magus_Prime

Well-known member
I've been thinking about the issue of non-responding FAXbots since cheesefax went off-line. This wouldn't help with the consults but would it be feasible to substitute using a charge of the Combat Lovers Locket, if there are no responding FAXbots, for fighting photocopied monsters?
 

Veracity

Developer
Staff member
Yes, that would work well. It's also all new code. I've been focusing on ShadowRift and BeachComber in recent months, but VMF has a pretty heft TODO list, and that IOTM is on it. A few more BeachComber improvements, and I'll take a look at it.

I expect I'll be suspending my BeachComber spading in a month or so, depending on what Crimbo brings us.
 

heeheehee

Developer
Staff member
Do cheesefax and/or EasyFax have access to all of those clans?
I want to say at least EasyFax has access to the original faxnet clans.

I forget who I know with whitelist-granting privileges to all those clans. IIRC, Cheesefax wasn't around in 2015, when Faxbot first went offline for a prolonged period of time. I recall being at least somewhat involved in getting EasyFax and Faustbot (apparently now defunct) whitelist access at that time.

If a character has clan leader permissions for a particular clan, can they cede leadership to another character, and then seize it back?
You can't seize back leadership, but you can cede leadership to player B, clanhop, then have player B cede leadership to you once you're done.

Or just make an account whose sole purpose is to hold the clan, and just log in periodically so you don't lose leadership due to inactivity.
 

Veracity

Developer
Staff member
OK. I only run one character at a time to completion. I can do what I need as follows:

My two private clans each have two members. Each has “leader” privileges. They are co-leaders; only one at a time is the leader, but they are equals.

Both characters “park” every day in their home clan after they run their turns.

When the leader wants to run turns, they cede leadership to their peer, do what they need to do in BAFH, and return home.

When the non-leader wants to run turns, they do what they need in BAFH and return home.

Every day, each character is leader at least once.

As long as I accept that so-and-so is not THE clan leader, all is peachy.
 

Magus_Prime

Well-known member
Would you entertain another addition to VMF in the form of handling the use of the August Scepter skills? In particular the use of "Aug. 16th: Roller Coaster Day!" grants an extra point of available fullness after eating to capacity.
 

Veracity

Developer
Staff member
Revision 17 requires KoLmafia r27718 and soups up faxing as spec'd earlier:

If your desired fax is already in the fax machine, no need to call a faxbot.

Code:
Receiving a fax.
You acquire an item: photocopied monster
You receive a photocopied Knob Goblin Embezzler from the fax machine.
The fax machine already contains a 'Knob Goblin Embezzler'.

If wrong monster is in the fax machine, dump it and call a faxbot

Code:
Receiving a fax.
You acquire an item: photocopied monster
You receive a photocopied ungulith from the fax machine.
Sending a fax.
You load your photocopied monster in the fax machine.
Configuring faxable monsters.
Configuring Easyfax (2504737)
Configuring CheeseFax (3038166)
Faxable monster lists fetched.
Requesting a fax...
Trying to get Knob Goblin Embezzler from EasyFax...
Receiving a fax.
You acquire an item: photocopied monster
You receive a photocopied Knob Goblin Embezzler from the fax machine.
EasyFax sent us a Knob Goblin Embezzler

If the monster is not available from an online faxbot, give up.

Code:
Receiving a fax.
You acquire an item: photocopied monster
You receive a photocopied Knob Goblin Embezzler from the fax machine.
Sending a fax.
You load your photocopied monster in the fax machine.
Configuring faxable monsters.
Configuring Easyfax (2504737)
Configuring CheeseFax (3038166)
Faxable monster lists fetched.
Monster 'Black Crayon Constellation' is not currently available in the fax network.

Note that if the monster you want is aready in the fax machine, no need to contact a faxbot, so, you don't even have to be chat literate.

Upcoming (this month?):

1) Consult with Madam Zatara via EasyFax
2) Use combat lover's locket to reminisce, if necessary
3) And, sure - Autumn Scepter support.

I'm think I'm done with BeachComber coding and it's not just using it to automate spading, so I have time for other ASH scripts. :)
 

fronobulax

Developer
Staff member
Note that if the monster you want is aready in the fax machine, no need to contact a faxbot, so, you don't even have to be chat literate.

Challenge accepted :)

I can pretty easily have my illiterate character request something that is already there and request something that is different and report unexpected behavior.
 
Top