Harvest – A highly customisable farming script

Hi, I've been pretty busy lately with other stuff and have just got round to looking at this. I'm really impressed Banana - nice job! I look forward to giving it a spin tomorrow.

I did notice that you have made a special case for the hobo monkey in your CCS and wonder if a similar case could be made for the stocking mimic which at full weight is a farmer best friend?
 
Thanks jwylot! Hope you find it useful :-)That's certainly something I could look at doing. I've never used a mimic, so what sort of things should I watch out for?
 
The mimic can produce extra meat in the first 10 rounds and can regen MP up to round 30 so I stasis for 25 rounds followed by a killing blow if it ever gets that far.
 
Harvest Combat has been updated as per jwylot's request! I don't have a mimic so if someone could confirm that it works as expected that'd be nice :)
 
Should be relatively easy to test... The stocking mimic is the IotM version of the Cocoabo (complete with same formula), which is a reduced version of the NZPR. If you could get your NZPR up to the same size as a mimic, the *6 instead of *4 on the meat would make it awesome... but it's not as easy to overcome a difference of 80 in the familiar weight, which makes Mimic>NZPR>Cocoabo. But if you have any of the 3, you can test the formulas... Just set a Cocoabo and see if your meat raises properly.

Sidenote... could/should add the other 2 similar familiars to the mimic-code. :)
 
I'm pretty confident that it'll work, it's only two lines of code (a conditional in ash followed by a 'while !pastround' loop in combat macro-speak). It's trivial to add those two but I don't like spamming people with updates so I'll wait a couple of days and release it with the next update to Harvest, which I'm currently testing.
 
Harvest and Harvest Combat updated! I've made the bountyhunting portion of the script a bit smarter to take advantage of days on which a bounty is available in your farming location and have added support for stasising with a cocoabo and NPZR.
 
Really amazing script. A couple of comments -

1. I had all my specter sceptres in my DC and it choked on the CCS and I had no idea why at the time. jwylot helped me out with this, but maybe either include it as settable what it uses or at least fail gracefully with a message (You have your ... in your DC you idiot!)
2. My understanding is that it doesn't arrange for Ode if you don't have it for drinking. This seems like an unfortunate limitation, is there some way to include this?

Thanks again for working on this great script.

apenny
 
Thanks for your kind words, I'm glad you're enjoying it :)

Haha, I knew that scepter thing would come back to bite me. The ode problem is an odd oversight because I usually try to remember those sorts of things. I'll add both of those features when I get a chance, but that may not be for a few days.
 
Hey, thanks for the script.
Unfortunately, I don't have torso permed, so I just get a "you can't make a shirt" and stop. Any way to fix this? I have the latest version of the script, zlib and mafia.


Also- how do I use this with limited buffs? (thingfinder etc.) If I set the buff in the farming mood, and then it runs out, what will it do when it runs out of casts?

Thirdly- anyway to use a stinky cheese eye and a diaper?

(I think I can do the last two by intergrating harvest into a script which pre-buffs and prepares for rollover, just wondering if there's a way to do this in the script itself...)
 
Last edited:
Could you copy/paste some more of the CLI output the next time you get that error? Alternatively, you could find the relevant part of your session log (/mafia/sessions).

When I wrote the script I assumed that no-one would be using the limited hobo buffs with it (it's almost always more profitable to sell them in /trade or in the mall as a record). I haven't tried it, but if you set them in your mood I think mafia will handle it perfectly. Maybe give it a try, you've got nothing to loose :)

I'll have a think about how to handle using two of the same foldable. Maybe I could add a option for turning off auto-folding.
 
Actually PartyBasher, Could you clarify something for me? Why are you using an eye AND a diaper? If you're doing it for the faster charging then surely a second eye would be better? But even then I'm not sure I understand, there are cheaper and better things to wear than a second stinky cheese eye.
 
Actually PartyBasher, Could you clarify something for me? Why are you using an eye AND a diaper? If you're doing it for the faster charging then surely a second eye would be better? But even then I'm not sure I understand, there are cheaper and better things to wear than a second stinky cheese eye.
Two eyes charge at the same rate as 1 eye, you need unique pieces to charge it faster. But there's no need to charge with 2 at a time as long as you'll have 100 combats for the day. Either start with the diaper and switch to the eye once it's charged enough, or maybe start with 1 eye and equip a second once it's charged enough if it's what you want to wear for farming.
 
Oh snap, forgot about that. But I'm still not sure I understand. I thought charging one piece of cheese gear charged it all? Why not just farm with the eye and equip the diaper afterwards? Or better yet, sell the second piece, farm with the eye then let Harvest fold it into a diaper to wear for rollover.
 
Auto folding? What I ment was using the eye to farm, and equip the diaper afterwards, as part of the rollover outfit. Sorry for the confusion. Didn't know harvest can autofold. Nevermind that part then.

Regarding hobo-buffs- you're probably right. So nevermind that part also.

Now, about the shirt thing- this is from the CLI.


"battleAction => custom combat script
CCS set to default

Commencing bountyhunting

_har_bounty_expected_lucre => 47
har_bounty_item => sammich crust
har_bounty_num_needed => 5
Taking off stinky cheese eye...
Equipment changed.
You can't make a shirt"


and from the session log-

(
"
> Commencing bountyhunting

Visiting the Bounty Hunter Hunter

Visiting the Bounty Hunter Hunter

accept bounty assignment to collect 5 sammich crusts
unequip acc1"

Then stops. So yeah, weird.
 
I'm no expert but there seems to be a logic problem in Harvest Combat.ash

Lines 142 and 148 use "while !pastround 25;" for stasising but line 160 which should finish the battle with attacks says "mac.append('while !pastround 25; attack; endwhile;');" which will stall.

Shouldn't this simply be "mac.append( attack; );"?
 
@PartyBasher: That is strange. I'll need a little more information to debug this so would you mind setting Verbosity to 3 from the relay script and reposting the CLI output when you get the error again? It might also be handy if I knew exactly what was in your bountyhunting outfit.

@jwylot: No, that's intentional. If the macro gets to round 25 and still hasn't won then either something's gone wrong, or you're fighting something too tough for regular attacks to deal with (FoB and corpse monsters can be a pain at lower levels). The idea is that the user can add an emergency finisher to their CCS after the "consult Harvest Combat.ash" line (e.g.: "skill weapon of the pastalord").
 
with verbosity 3-

"bountyhunt
best_hunt
Abandonned current bounty
can_access_hunt
Can access Dungeons of Doom: true
Current best_hunt is Dungeons of Doom: 5.0099983 turns
can_access_hunt
Can access Hole in the Sky: true
Current best_hunt is Dungeons of Doom: 5.0099983 turns
can_access_hunt
Can access Sleazy Back Alley: true
Current best_hunt is Dungeons of Doom: 5.0099983 turns
Accepted bounty for worthless pieces of yellow glass, Dungeons of Doom
get_putty_sheet
have_foldable
get_foldable
equip_gear
equip_gear
have_foldable
get_foldable
have_foldable
get_foldable
You can't make a shirt"

My outfit includes: ice pick, octupus spade, bag o' tricks, GAPs, stinky cheese eye But I don't think a specific equipment is the issue because I tried using a custom outfit with no items at all and it gave the same error.
 
You can't make a shirt
That message means the script is trying to fold something into a shirt. Since you don't have Torso, it's impossible, so Mafia stops and prints this warning.

Whatever line is causing this should be prefaced with
PHP:
if ( have_skill( $skill[ Torso Awaregness ] ) )
 
Back
Top