Harvest – A highly customisable farming script

slyz

Developer
Actually, it shouldn't really matter. The Spooky Putty Sheet is removed from your inventory if the response text contains "make a perfect copy".

Just to clarify: Mafia thinks you have a putty sheet when you don't? Does that mean you end up with a putty monster and a putty sheet in your inventory?

Are you adventuring with some kind of effect that alters combat text, like a preposition sword or the I can haz cheezburger effect?
 

Galanodel

Member
Just to let you know, I tracked down the bug all on my lonesome. It was Best Between Battle script trying to use my spooky putty for me, AFTER harvest had. Once I disabled it, all was well in the land.

Thanks for the help!
 

Banana Lord

Member
Sorry for not chiming in on this, for some reason I only got an email notification for Galanodel's most recent post. Weird. Anyway, glad you got it sorted. Maybe I should put a warning somewhere about the potential for interference with BBB, there are a few places where I could see it being an issue.
 

Banana Lord

Member
I've always wanted to add graphs to Harvest, but I'm not quite sure how to go about it in a way that would look neat, be useful, and not take a very long time to load. Can anyone point me towards a suitable resource? I assume this would have to be done with Javascript? This isn't likely to happen for a while yet, maybe not for another year, but I'll enjoy just looking and learning in the meantime.
 

Banana Lord

Member
@bsander: Looks good. Does it handle long strings of data?

@Ioeth: That looks really neat! Perhaps a little trickier than Google charts to implement, but perhaps worth it.
 

Galanodel

Member
Bananna, I've recently swapped farming methods, and am making close to 3k meat per adventure now, but for some reason, Eatdrink isn't handling that number very well. It's consuming some pretty crappy food. According to the logs, it appears that eatdrink only thinks it has 10k meat to spend on food. Any clue what is going on?
 

Banana Lord

Member
Yep. You need to tweak some of ED's settings is all (they're entirely separate from Harvest's). I can never remember the variable names, but there's a little bit of documentation at the top of the script (ED, that is). Obviously you can''t change the values in the script itself, you'll need to do that in kolmafia/data/vars_CHARNAME.txt. If you're unsure of anything to do with ED you're probably best to ask in that script's thread, that's what I do :).

EDIT: And congrats on the 3K. It's not easy to get there!
 
Last edited:

Craggles

New member
Eat drink fails to fill all my organs occasionally and as a result stops the program running. Any ideas on what i can do?
 

Banana Lord

Member
If he's quoting the readout from Harvest it'll be after removing all costs. I sincerely hope he's item farming, because I don't think it's possible to get anywhere near that with meat farming, and that would mean that Harvest wasn't calculating something correctly :p. It does seem impressively high. Galanodel, is that an *average* mpa value (i.e.: are you hitting that value consistently), or is it a value you sometimes get to (i.e.: your average value is lower). I sometimes hit 4K mpa, but those are days when either I got very lucky with item drops, or something else happened (FoB, el dia de los muertos borrachos (how much of that did I spell correctly?) etc.).

EDIT: @Craggles: Probably simplest if you post the log for a day that problem occurred. It's probably something similar to Galanodel's problem in that you'll just need to modify a couple of ED's settings.
 
Last edited:

fronobulax

Developer
Staff member
Eat drink fails to fill all my organs occasionally and as a result stops the program running. Any ideas on what i can do?

You probably want to set eatdrink_stepMeat to something higher than 10,000 or just make it -1. Go to the ED thread for discussion or further questions. This may also explain Galanodel's observation as well.
 

Galanodel

Member
Depending on the day, it averages between 2,500 and 3,000 MPA, and thats a combination item farming/meat farming area. I'll make the changes in Eat Drink today, after rollover. It's also failing to fill all my organs sometimes, but i'll see if the changes fix it :)
 

Theraze

Active member
EatDrink will only use up to STEPMEAT per category... so if you leave it at 10k and it costs 13k to fill spleen fully, it won't fill it up... it'll get the most adventures it can for 10k, but that may or may not be full. I find spleen generally takes about 11-12k to fill fully, more if you want better than 2 pastes and twinkly wads.

If you want it to fill up fully and you're raking in the meat, set STEPMEAT to -1 and it will use up as much meat as it can working towards your set VALUE_OF_ADVENTURE. I'd suggest simulating at least once to make sure that you're fine with how much it's going to spend, but if you're actually going to profit on each adventure, then... go for it.
 

Banana Lord

Member
Could you clarify how ED uses VALUE_OF_ADVENTURE? In the past I've raised VoA to equal my average MPA and found that my farming profit decreased sharply.

While we're talking about tweaking settings for farming efficiency, one thing that it's important to note is that MPA is not the metric you should be most interested in. Rather you should consider how much meat you're making per day on average. Maybe that seems obvious, but I've found myself falling into the trap of trying to optimize the one without considering the other.
 

Theraze

Active member
Believe what it does is counts substats (multiplied by prime and non-prime values) and adventures multiplied by VALUE_OF_ADVENTURE, with that value divided by fullness/booze/spleen. So VOA is the total value you're giving to an adventure... if you're making 2.5k meat per adventure, don't try to spend 2.5k for your adventures or you'll just break even, on average. :) Anyways, EatDrink will take whatever item has the most 'value' left after it's done.

Math example time:
First VOA: 2500.
Item 1 costs 4000 meat for 1 fullness and 4 adventures and no substats (to make it easier). 4*2500=10000 value, minus the 4000 meat cost, giving it a total 'value' per fullness of 6000.
Item 2 costs 1200 meat for 1 fullness and 3 adventures and no substats. 3*2500=7500 value, minus the 1200 meat cost, giving it a total 'value' per fullness of 6300.
Item 3 costs 3000 meat for 2 fullness and 7 adventures and no substats. 7*2500=17500 value, minus the 3000 meat cost, giving us 14500, divided by 2 fullness for a total 'value' per fullness of 7250.
If these were our only options for 15 fullness and no STEPMEAT (-1), EatDrink would eat 7 of Item 3 (7*3000) and 1 of Item 2 (1*1200), for a total of 22200 meat. For 22.2k meat, we'd get 52 adventures. If we actually make 2500 meat per adventure, we'd end up making a total of 130,000 meat from the farming, minus the 22.2, for a total profit of 107.8k meat.

Second VOA: 4000. Same items.
Item 1 costs 4000 meat for 1 fullness and 4 adventures and no substats. 4*4000=16000 value, minus the 4000 meat cost, giving it a total 'value' per fullness of 12000.
Item 2 costs 1200 meat for 1 fullness and 3 adventures and no substats. 3*4000=12000 value, minus the 1200 meat cost, giving it a total 'value' per fullness of 10800.
Item 3 costs 3000 meat for 2 fullness and 7 adventures and no substats. 7*4000=28000 value, minus the 3000 meat cost, giving us 25000, divided by 2 fullness for a total 'value' per fullness of 12500.
If these were our only options for 15 fullness and no STEPMEAT (-1), EatDrink would eat 7 of Item 3 (7*3000) and 1 of Item 1 (1*4000), for a total of 25000 meat. For 25k meat, we'd get 53 adventures. If we actually make 4000 meat per adventure, we'd end up making a total of 212,000 meat from the farming, minus the 25k, for a total profit of 187k meat.

Final VOA: 10000. Same items.
Item 1 costs 4000 meat for 1 fullness and 4 adventures and no substats. 4*10000=40000 value, minus the 4000 meat cost, giving it a total 'value' per fullness of 36000.
Item 2 costs 1200 meat for 1 fullness and 3 adventures and no substats. 3*10000=30000 value, minus the 1200 meat cost, giving it a total 'value' per fullness of 28800.
Item 3 costs 3000 meat for 2 fullness and 7 adventures and no substats. 7*10000=70000 value, minus the 3000 meat cost, giving us 67000, divided by 2 fullness for a total 'value' per fullness of 33500.
If these were our only options for 15 fullness and no STEPMEAT (-1), EatDrink would eat 15 of Item 1 (15*4000), for a total of 60000 meat. For 60k meat, we'd get 60 adventures. If we actually make 10000 meat per adventure, we'd end up making a total of 600,000 meat from the farming, minus the 60k, for a total profit of 540k meat.

Using the VoA from example 3 and making the actual profit from number 2 would be 240k (60*4000) minus 60k cost for a total profit of 180k. Using VoA from example 3 and actual profit of number 1 would be 150k (60*2500) minus 60k cost for a total profit of 90k. 180k is less than 187k and 90k is less than 107.8k... so basically, math shows us that knowing how much profit you make will help EatDrink pick the best items to help you actually gain meat instead of wasting it. :)

Anyways, hope that helps. It's a short example with just 3 hypothetical food items, but that's basically the way the comparison works. You tell it how much to value an adventure, and it checks what will be the best options to help you profit.

Edit: Also, my best farming VoA lately has averaged about 4400 meat per adventure... but that's not counting the buffs, which probably drag it down by a few hundred.
 
Last edited:

Banana Lord

Member
Sorry, I must be missing something.
If you're making 2.5k meat per adventure, don't set VOA to 2.5k or you'll just break even, on average.
This makes sense to me, but in all your examples (which also make sense to me) the VoA is equal to the MPA, and the profit > 0.
 
Top