• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver
Farm.mac

Release [Macro] Farm.mac 1.21

No permission to download

ChatWithThisName

⚔️🛡️🗡️
Moderator
Joined
Dec 29, 2017
RedCents
24,100¢
I was asked about releasing this. So here we have it.

|||||||||||||||||||||||||||||||||||||||||||||||||||
|Farm.mac by Chatwiththisname
|v1.01 ~ Initial release 3/8/2018
|
|Usage: /mac Farm radius target ~~ /mac farm 500 pyrilen
| /mac farm radius ~~ /mac farm 1000
|
|
|Purpose: Will kill and move anything forever in a radius
| near you. It -WILL- navigate the entire zone.
| IE: Used in RSS I started at entrance, come back
| an hour later and I was doing the raid mobs.
|
| If you provide it a target's partial/full name it will
| only hunt down those creatures. But it will react to adds.
|
| /ignorethis to ignore your current target only.
| /ignorethese to ignore all spawns with your targets full name.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||

Not intended to be left unattended because it WILL attack another players mobs/run into their camp and start banging on their kills. You've been warned.

I've used it with properly setup holyshits/downshits to level my bard and farm materials at the same time :)


The declares sub is at the very bottom. HealAt is when you want to consider yourself/group members low on health. HealTill is what you want to wait for it to be once you've started resting. etc etc for endurance and mana.

Setting UseEQBC to TRUE will make it tell group members to sit down when they are low on health/mana/end.
It's also supposed to get your boxes on your EQBC to assist you with mobs, but I haven't tried very hard to make that work correctly. For now it'll make sure they are following and sometimes they'll help you. Lol.

Enjoy.
 
Last edited:
It should be mentioned that I threw the endurance bit in there when I was using it to farm on my zerker. I made the check based on the GroupHealthChk sub and as such it will say you're group members are low on health when in fact they are low on endurance. My bad, I'll fix the echo later. Lol
 
Sometimes gets stuck trying to target a mob. Not sure what the deal is with that. It's like you've got a mob to kill, kill it and it doesn't realise this fact and still continues trying to target the mob to kill.

There are no spawns matching 0-200 any: ID xxxxx
 
I haven't had that issue occur. But I can think of a few ways to deal with it. I'll look into it and see about putting a check into the code for making sure the spawn still exists.
 
Finally got that error. Killing too fast would be my guess :-P

Rich (BB code):
/if (!${Target.CleanName.Equal[${Spawn[id ${NavTargetID}].CleanName}]}) {
        /goto :target
    }

was the culprit I believe. Added in a spawn check for this to exist.

Rich (BB code):
/if (!${Target.CleanName.Equal[${Spawn[id ${NavTargetID}].CleanName}]} && ${Spawn[id ${NavTargetID}].ID}) {
        /goto :target
    }


was the replacement code. If the spawn exists it'll return it's ID which means true If it doesn't it will return NULL which will cause it to fail this check. This will force it out of the loop.
 
Questions:

1. If I was to farm the entire zone for rabbits, would I simply type /mac farm rabbits ?
2. Does this handle objects very well? If I were in a zone with a million trees would it navigate around those trees to find the next rabbit?
 
1: Yes
2: It uses mq2nav, which can handle objects really well. Of course there are zones which do cause issues but you can use the editor to mark areas of concern if they get you.
 
1: No, you would type /mac farm somedistanceintegervaluesuchas1000 rabbit IE: /mac farm 1000 rabbit
2: What EQbackagain said.

3: You didn't ask but I'm going to tell you anyway, while farming said rabbits if you get aggro from something non-rabbit it will still kill it too.
 
Tired of hitting that /ignorethis and /ignorethese hotkey? Well I am too. So I decided to do something about it. Farm.mac now features permanent ignore lists by zone.


|||||||||||||||||||||||||||||||||||||||||||||||||||
|Farm.mac by Chatwiththisname
|v1.11 ~ Initial release 2/15/2018
| ~ Ignores Update 3/15/2018
| ~ Now generates a quick list of named, merchants,
| bankers, and NPCs, as well as a permanent ignore list
| that you can easily copy/paste from other list per zone.
| ~ Now features /permignore to add things to the permanent
| ignore list in FarmMobIgnored.ini [${Zone.ShortName}]
| Ignored=|mob1|mob2|mob3| etc. NOTE: /ignorethese and
| /ignorethis is temporary and uses alert lists which reset
| when you leave. You can access a list of temporarily ignored
| mobs by typing /alert list 1

Format would follow that of the generated list. Ignored=|mob1|mob2|mob3| etc.

Rich (BB code):
[shardslanding]
Ignored=|a well-groomed oashim corpse|an eerily familiar plant|a broken vase|a poorly crafted vase|Banker Ismena|Craftkeeper Bobus Tindlefoot|Craftkeeper Irus Tindlefoot|Purveyor Eilos Berenzaltek|Purveyor F`Devax|Master Hunter Jilare|Master Armorer Synlaris|Went Steelhaft|Noel Gladestrider|Varille Alyrinshar|Olivia Dawnlight|Gilbert Songcryer|Lirit T`Prakk|Gilab Flamesphere|Tomekeeper Kerkaz|Magus Burlshin|Engineer Eilisia|Treddletek Cogwobbler|Terrance|Councilman Nostulia|Overseer Drent|Director Idris Manaar|Harbinger Glask|Evoker Redwolf|Shardtender V`Rax|Jimothy the Delicious|Sherry Shambleboot|Shardtender Pureglade|Shardtender B`Drynn|Vdrakii|Eldwin Smashmasher|Shardtender Tyvale|Leopold Crunchbasher|Shardtender N`Laris|Shardtender Babblemok|Evoker Slowtail|Takzic of the Dark Circle|Drakk|Vaytok|Soulbound Construct|Evoker Waylight|Evoker Farleap|Grazik Rotscale|Lady Jenine|Camellia Spiretear|Rinaire Salvek|Sir Delvas|Sister Fealcrest|Sister Cyrinvale|Bygral Tamescale|Ashki the Forsaken|Lera the Forsaken|Keeper Nenth|Selya the Forsaken|Bodhessel the Caller|High Guard Stavus|High Guard Verichitek|High Guard Strakiv|High Guard Volintias|supply box|supply barrel|Armorer Jean Wenlaris|Ilana Sunmire|Weaponsmaster Lidelf|an emissary of shadow|Serroth Dantor|
NamedList=Jimothy the Delicious|Sherry Shambleboot|Drakk|Vaytok|Shardtender B`Drynn|Shardtender V`Rax|Vdrakii|Engineer Eilisia|Terrance|Treddletek Cogwobbler|Evoker Redwolf|Shardtender Tyvale|Harbinger Glask|Councilman Nostulia|Overseer Drent|Director Idris Manaar|Shardtender Babblemok|Bygral Tamescale|Grazik Rotscale|Evoker Slowtail|Shardtender N`Laris|Shardtender Pureglade|Evoker Farleap|Eldwin Smashmasher|Leopold Crunchbasher|Camellia Spiretear|Rinaire Salvek|Sister Fealcrest|Evoker Waylight|Sir Delvas|Takzic of the Dark Circle|Soulbound Construct|Sister Cyrinvale|Lady Jenine|Ashki the Forsaken|Lera the Forsaken|Selya the Forsaken|Bodhessel the Caller|Keeper Nenth|High Guard Volintias|High Guard Strakiv|High Guard Verichitek|High Guard Stavus|
Merchants=|Purveyor Eilos Berenzaltek|Purveyor F`Devax|Craftkeeper Irus Tindlefoot|Craftkeeper Bobus Tindlefoot|Master Hunter Jilare|Tomekeeper Kerkaz|Went Steelhaft|Noel Gladestrider|Olivia Dawnlight|Lirit T`Prakk|Master Armorer Synlaris|Varille Alyrinshar|Gilbert Songcryer|Gilab Flamesphere|Magus Burlshin|
Bankers=|Banker Ismena|
Objects=|a well-groomed oashim corpse|an eerily familiar plant|a broken vase|a poorly crafted vase|
NPCs=|Jimothy the Delicious|Sherry Shambleboot|Drakk|Vaytok|Shardtender B`Drynn|Shardtender V`Rax|Banker Ismena|Purveyor Eilos Berenzaltek|Purveyor F`Devax|Craftkeeper Irus Tindlefoot|Craftkeeper Bobus Tindlefoot|supply box|Vdrakii|Engineer Eilisia|Terrance|supply barrel|Treddletek Cogwobbler|Evoker Redwolf|Shardtender Tyvale|Master Hunter Jilare|Harbinger Glask|an emissary of shadow|an adventurer|Councilman Nostulia|Overseer Drent|Director Idris Manaar|Serroth Dantor|Shardtender Babblemok|Tomekeeper Kerkaz|Went Steelhaft|Noel Gladestrider|Weaponsmaster Lidelf|Armorer Jean Wenlaris|Bygral Tamescale|Olivia Dawnlight|Lirit T`Prakk|Master Armorer Synlaris|a venomshell pest|Varille Alyrinshar|Gilbert Songcryer|Grazik Rotscale|Gilab Flamesphere|Ilana Sunmire|Evoker Slowtail|an ivyscale slitherer|Torchbearer Lyrus Sinrathis|a slatescale slitherer|Shardtender N`Laris|a chillclaw wyvern|Shardtender Pureglade|Evoker Farleap|an iceclaw wyvern|Eldwin Smashmasher|Leopold Crunchbasher|Camellia Spiretear|Rinaire Salvek|Sister Fealcrest|Evoker Waylight|Sir Delvas|Takzic of the Dark Circle|Soulbound Construct|an icebeak pup|an impassive clergyman|Sister Cyrinvale|a pious believer|Lady Jenine|a slatescale serpent|a devout believer|a stoic believer|a zealous believer|a silent herald|an ivyscale serpent|a corrupted devourer|an icebeak matriarch|a blightshell scarab|a feeble devourer|a greater slatescale|a clickshell pest|Ashki the Forsaken|a forsaken believer|an oashim hoarder|a forsaken coordinator|a forsaken supervisor|an armory director|a forsaken overseer|a lesser hoarder|a lesser blightshell|a forsaken torchbearer|Lera the Forsaken|a conscripted miner|an armory ward|an armory guard|a greater ivyscale|an armory foreman|a conscripted edgecrafter|an armory sentry|a conscripted dredger|a conscripted ironshaper|a conscripted smith|a plainsdweller wyvern|a lesser plainskeeper|Selya the Forsaken|

Due to the nature of MQ2 the string cannot exceed a certain length without causing a crash. All generated account for this except /permignore currently. Assuming you don't add 2048 characters worth of ignores you should be fine. PS The above NPC list comes in at just over 1900 characters.

You can add them manually by opening FarmMobIgnored.ini to access the file after you've ran farm.mac at least once in the current zone. /mac farm 1 will generate a list and unless you have something in your XTarget window it will just stand around.

Now enjoy the luxury of creating a list of things to ignore one time per zone and then never having to worry about it again.
Missed something that you need to permanently ignore but don't want to restart the macro after updating the INI? No problem. Once they're targeted just type /permignore and it will add it to the list for you.

Remember that donate button. You're donations have made me able to get my toons power leveled to conduct testing in newer zones, keep gold to continue to update featured macros such as bazaar.mac, and even on occasion help pay the bills. Can't afford to donate your cold hard cash? Donate your time by helping improve our existing macros by making suggestions for improvement or reporting bugs. Remember, if you like it, chances are someone else does too. If you think you would like a feature, chances are someone else does too!

~Chat
 
Last edited:
How about a feature that checks your start zone at the beginning of the loop, and if you are in a different zone at the end of the loop it performs a command.

ie

Start farming something in Lower Guk, for some random pathing reason you die and end up at bind point.

I'd love to have the toon either logged out or /quit at that point rather than standing like a retard at the soulbinder.
 
Okay. As I said it wasn't really intended to be an AFK macro. But I see that this is something I'll need to add for people that choose to do that. Congratz. Feature was added! now the declares section includes a ${startZone} declaration and the main while loop will only run as long as, followed by a check to see if use

Rich (BB code):
        /while (${EverQuest.GameState.Equal[INGAME]} && ${Zone.ID} == ${startZone}) {
        /call Farmstuff ${FarmMob}
    }
    /if (${useLogOut} && ${Zone.ID} != ${startZone}) {
        /if (${UseEQBC}) /bca //exit
        /exit
    }

Cleaned up the /bc message that were actually for debugging. They now should only show when ${Debugging} is TRUE.

| ~ 3/15/2018
| ~ Now includes a UseEQBC & assistMe boolean in the declares sub found
| in the last sub of the code. UseEQBC will tell your crew to follow
| you every time you issue a navigation command. assistMe will tell
| your crew to target the same mobs, and assist with killing it.
| This assumes you are farming lowbie crap, and thus there is no
| required hp for engaging, it's immediate and often your group will
| engage first because the macro runner is waiting for the navigation
| path to finish. If you just want them to follow you for EXP or loot
| just turn on UseEQBC, if you want them to help kill, turn on assistMe
| WARNING: You -definitely- look like a bot with assistMe this lol.
| ~ Now verifies your starting zone and will end the macro if you change zones
| now includes useCamp boolean to know if you want to /exit when you leave
| your starting zone. If UseEQBC is TRUE it will /exit all other toons on
| the EQBC Server, that said, make sure that's what you want to do when using
| this feature.


Adjusted the formatting for the declares section to be more user friendly until I get around to putting these settings in an INI. The question is, do you want the INI per character, or do you want it global settings?

Rich (BB code):
Sub Declares(int Param0, string Param1)
    /declare FarmMob string outer ${Param1}
    /declare PullRange int outer ${Param0}
    /declare MobIgnore string outer FarmMobIgnored.ini
    /declare Targets string outer
    /declare myTargetID int outer 0
    /declare reportTarget timer outer 5s
    /declare startZone int outer ${Zone.ID}
    |** User variables below, don't worry about that crap above **|
        |** Use or don't use? **|
    /declare useLogOut bool outer FALSE
    /declare assistMe bool outer TRUE
    /declare UseEQBC bool outer TRUE
    /declare Debugging bool outer FALSE
    
        |** ZRadius maximum to check (above and below) **|
    /declare ZRadius int outer 500
    
        |** Health section **|
    /declare HealAt int outer 70
    /declare HealTill int outer 100
    
        |** Endurance section **|
    /declare MedEndAt int outer 8
    /declare MedEndTill int outer 100
    
        |** Mana Section **|
    /declare MedAt int outer 30
    /declare MedTill int outer 100
    |** End of User variables, please don't change anything other than user variables **|
/return
 
was it possible to have more than one farm mob? like wolfes and bears?
 
Thanks for the replies. I was planning on using this to farm trade skill materials.
 
new to all of this so its asking me to create a NavMesh dunno what that is or what not for riftseekers sanctum
 
Might need a delay in the loop to keep him from smashing the button too fast. My oversite. Will fix tomorrow. I've been up for like 28 hours or more at this point. But it's on my list. Last night I added course correction timer that autocorrects your course every 1s. This keeps you from being wayyyyy far away from a long run to the next mob and they've done moved. But I haven't uploaded that yet. I'll throw that in with the fix for merc later. Alternately goto Sub CheckMerc and add /delay 1s to the loop
 
Cool.

Also finding that sometimes if a mob has decided to stand below you on a ramp you just face into the wall and it proceeds to kill your merc dead.

Thats an issue of mq2nav though :)
 
Apologies for the delayed response on that fix for merc. I've added a 2s delay between hitting the button and checking to see if the mercenary is dead.
Additionally, I've added issuing /pet attack and /pet swarm to the UseEQBC list of assisting commands.
and finally, I've added "/bccmd names" prior to /bct commands to ensure that the most up to date list of users on the server is being used because this isn't updated unless you issue the command.

TODO:
make cleric stop sticking at the start of combat (bc command only. doesn't apply to cleric running the macro)
make pure casters not stick to the target. (unless they are running the macro)

Suggestion:
If you don't want your characters to melee but are ok with them sticking. /melee melee=0
 
Someone want to test my Pulling version of farm.mac to get it to pull back to a camp? Been using it and works great for my zerker using an ability and a disc. Still needs to be tested using a spell and an AA.

Uses the same ignore file generated/used by farm.mac and actually uses all of the subs used by Farm.mac with some minor modifications.

This upload was added to the first post.
 
Last edited:
Thank you so much for this. Farming ts mats is a lot quicker. Kiss Hunter works but has long delays. Your macro is very quick.
One thing I noticed is you need to have mq2melee running so your character auto snaps and faces adds. I noticed while running to a new mob, the adds along the way to the next target will not be faced automatically.
 
I personally don't have this problem. Have run it for hours whilst reading a book and keeping on top of things. My main problem has almost always been sometimes getting stuck (more of a mq2nav issue) and occasionally having mobs pile on my merc in a really weird spot (ie just under a ledge that I'm next to but unable to see the target.
 
This is great - is there a way to limit to a set number of mobs or a time frame? I do occasionally afk but cant frequently monitor always. Would be nice to limit so I can come back and check for players or tells before it becomes too obvious
 
After toying with this Farm macro for a bit since Kissassist Hunter/Pullertank modes are too broken to use.. I have come to the conclusion that it's the best.

When I made my Riftseekers Farming macro, this is more or less the macro that I envisioned it could be. I love it, it's beautiful. A tear rolled down my eye when I seen just how well it farmed up Tradeskill items for me.


*sniff sniff* It's just so beautiful
 
I agree. It's a thing of beauty :) farmed me all I needed for a number of things I was working on.
 
feature suggestion for a time as such where chats is bored.
check for if the mob you currently chasing has become engaged by another player.
then abandon it, of if another player is within say 60 of it. then abadon it.

whatever feels right, i know this is not something chats might want to do. but it would be nice feature nonetheless.
 
I was going to make my own macro, but remembered about this and thought I'd ask...

When you declare what type of mob you want to kill, is it declared by name or by race? I ask because I'm looking to kill a particular race of mob (for slayer), but not all mobs have that word in their name. I was coming here to look for a generic "if there are a mob of x race within y distance, target it and send the pet after it" kinda thing. I don't need to navigate the zone because I'm finding using pets to spank lowbies is easiest and fastest.
 
sum1, i gonna show you how to hack this thing in 4 simple steps.
find
Rich (BB code):
/call Farmstuff ${FarmMob}
change to
Rich (BB code):
/call Farmstuff "${FarmMob}"

find
Rich (BB code):
/varset FarmMob ${Enemy}
/change to
Rich (BB code):
/varset FarmMob "${Enemy}"
now do:
Rich (BB code):
/alert add 5 Race Gorilla
start macro with
Rich (BB code):
/mac farm 1000 "/alert 5"
 
sum1, i gonna show you how to hack this thing in 4 simple steps.
find
Rich (BB code):
/call Farmstuff ${FarmMob}
change to
Rich (BB code):
/call Farmstuff "${FarmMob}"

find
Rich (BB code):
/varset FarmMob ${Enemy}
/change to
Rich (BB code):
/varset FarmMob "${Enemy}"
now do:
Rich (BB code):
/alert add 5 Race Gorilla
start macro with
Rich (BB code):
/mac farm 1000 "/alert 5"

Thanks, dude! I'm on the fence about modifying this macro or just figuring out how to target a certain race of mob and using a /pet attack spamming macro I have. That one (plus some speed buffs) is REALLY good at killing lots and lots of mobs.

- - - Updated - - -

Is there a single /tar string that I can throw together that essentially says target any mob except a particular mob name?
 
yes, you need to look at nearestspawn spawn search, and using alert lists.
 
That's essentially what this macro does. But it does so using the shortest navigational path instead of the shortest straight line distance.

${NearestSpawn[npc noalert 1 radius 500 zradius 50 targetable]} will return the nearest mob. in a 500 radius around you, a 50 radius above and below you, that is targetable and not on alert list 1.

/target id ${NearestSpawn[npc noalert 1 radius 500 zradius 50 targetable].ID}

will do as you are asking.

However, the purpose of farm.mac is to do that for you, navigate to the mob and bash it's brain in then allow a plugin like MQ2AutoLoot to snatch his stuff off the corpse and then you can move on your merry way, however it uses an algorithm to determine the -actual- closest mob, it also uses alert list 1, so if there is something you don't want to target you can type
Rich (BB code):
/alert add 1 ${Target.CleanName}
to ignore any mob with that name, or to ignore a specific mob you can type
Rich (BB code):
/alert add 1 ${Target.Name}

If you do this manually you'll likely have to restart the macro.
It has built in ignore lists as well that go by zone, you can type /ignorethese, or /ignorethis to do the above mentioned. I'm unsure if the permignore made it to the Farm.mac yet, but I know in pullfarm.mac while targeting the mob in question you can type /permignore
the macro must be running for /ignorethese, /ignorethis, and /permignore to work.
Alternately you can edit the INI file to include the name of the mob you want to ignore.
Perm ignore only ignores entire groups of mobs, so if you ignore one "a bunny" then it will ignore all "a bunny" where as /ignorethis will ignore "a bunny02" or "a bunny01" etc.
 
That's essentially what this macro does. But it does so using the shortest navigational path instead of the shortest straight line distance.

${NearestSpawn[npc noalert 1 radius 500 zradius 50 targetable]} will return the nearest mob. in a 500 radius around you, a 50 radius above and below you, that is targetable and not on alert list 1.

/target id ${NearestSpawn[npc noalert 1 radius 500 zradius 50 targetable].ID}

will do as you are asking.

However, the purpose of farm.mac is to do that for you, navigate to the mob and bash it's brain in then allow a plugin like MQ2AutoLoot to snatch his stuff off the corpse and then you can move on your merry way, however it uses an algorithm to determine the -actual- closest mob, it also uses alert list 1, so if there is something you don't want to target you can type
Rich (BB code):
/alert add 1 ${Target.CleanName}
to ignore any mob with that name, or to ignore a specific mob you can type
Rich (BB code):
/alert add 1 ${Target.Name}

If you do this manually you'll likely have to restart the macro.
It has built in ignore lists as well that go by zone, you can type /ignorethese, or /ignorethis to do the above mentioned. I'm unsure if the permignore made it to the Farm.mac yet, but I know in pullfarm.mac while targeting the mob in question you can type /permignore
the macro must be running for /ignorethese, /ignorethis, and /permignore to work.
Alternately you can edit the INI file to include the name of the mob you want to ignore.
Perm ignore only ignores entire groups of mobs, so if you ignore one "a bunny" then it will ignore all "a bunny" where as /ignorethis will ignore "a bunny02" or "a bunny01" etc.

I had to add mobs manually to the permanent ignite list because the command didn't seem to work (farm.mac).

Also, what I'm finding with the farm.mac is I get really odd behavior because of the meshes. For example, it didn't handle the stairs and click ups in Stone Hive. So what I'm trying to do is still achieve what I need without having it run all over the zone.

I also think the radius check is being made from the point where the last mob was killed, so as you move through the zone the radius moves with you. So, if you do a /Mac farm 1000 it doesn't anchor you for 1000 unit radius to that point. Instead, it looks for all mobs not on your ignore list within 1000 units of the point where the Mac was started and from where you ended up after nav took you somewhere. I suppose I could try shortening the radius to like 200.

All in all this is super helpful/useful, though! Thank you for sharing!!
 
Aye, the idea of the radius wasn't so much to anchor you, I want to say I specifically mention in the code header that this -will navigate the entire zone-.

Pullfarm.mac anchors, but it also returns with the kill target. I may alter the code for farm.mac to allow for radius wandering in the future. as of now the radius is used to limit the amount of mobs that go into the array and the maximum distance between kills. I honestly threw that together while helping someone else who was making something similar in an effort to assist their understanding of the code. It wasn't really intended to be something that I released, but a few people asked and I provided it publicly in it's entirety at the time. I haven't really built onto it since then, though I did create the pullfarm.mac variant.

as far as the "Click ups" I assume that's a portal system of some sort?
Brainiac has mentioned that he wants to work towards portals being stored in the mesh, but as of now they are not. Therefore, through no fault of my own I cannot handle portals. The code was based on the tools available to me at the time, and since it's still limited by the same factors I cannot do anything to correct the issue.

As far as stairs, it depends on how the stairs were created in the zone file. If they have splits in them where there are actual gaps, then the mesh will read it as a separated tile. You can try increasing the cell size and it may fix the issue. If there are no splits you can try bumping the max climb to be more in line with your characters abilities.

https://www.redguides.com/community...ropbox-link-for-video?highlight=meshgenerator

The above is a link to the thread I recently created on using the MeshGenerator to create "Professional" meshes, as opposed to hitting build and save only. I encourage you, and anyone else having issues with the meshes, to check out my video -and- read the thread because brainiac doesn't like that I suggested deleting tiles instead of using the "Not walkable" option. I believe I ran into an edge case on my attempt to use the not walkable volume and due to that I opted not to use it again, but I've since tried it and found it to be more useful than I had anticipated when I created that video.

You will have to download the video to see more than the first 15 minutes. Apparently it's made it's way to youtube as well, so there's that lol.
 
Awesome!

Don't interpret my questions/feedback as criticism... this Mac is the only thing preserving my sanity as I work through the slayer achievements. It works great for the purpose, but I'm just trying to make it a little more stable for my purposes.

I think I might try to mod it so that if it tries to nav to something and it gets stuck or can't reach it the Mac will add it to the ignore list.
 
I am working hard on fixing hunter in Kiss as wekk

Thanks, man. I tried that first, but it didn't work very well for me. I really appreciate the hard work.
 
I actually intentionally didn't put any "Stuck logic" in the code. This was never intended to be a full blown afk macro. Just something that saves you some headaches. You're welcome to both modify the code, and distribute any changes openly for the use of the community without worries that I'll get butt hurt.
 
Trying to use this with a pet class, not sure if there's a way to get the pet to attack when in a certain range or anything. Any chance you can give me some pointers? Seems odd for a pet class to run around stabbing when they have a pet that can intercept quicker many times!
 
Cheers for pointing that out.

Rich (BB code):
/if (${Target.ID} && ${Target.Type.Equal[npc]}) {       
    /if (${Navigation.Active}) /squelch /nav stop
        /stick uw loose moveback behind 8 
        /setchattitle Killing ${Target.CleanName}
        /if (${UseEQBC} && ${assistMe}) {
            /if (${Debugging}) /bc (Line: ${Macro.CurLine}) killthis
            /timed 10 /bca //pet attack
            /timed 15 /bca //pet swarm
            /timed 20 /bca //killthis
        }
        /killthis
        :waitTillDead
    
        /if (${Target.ID} && ${Me.CombatState.Equal[Combat]} && ${Target.Type.Equal[npc]}) {
            /if (!${Me.Combat}) /attack
            /delay 10
            /goto :waitTillDead
        } else /if (${Target.Type.Equal[corpse]}) {
            /target clear
            /varset myTargetID 0
        }
    }

That code decides to attack. Specifically the /pet attack and /pet swarm are locked into telling group members to do so. Since this uses mq2melee the character running the macro is assumed to have /melee petassist=1

I've recently learned that KA turns off pet assist functionality as part of the useMQ2melee code.

Rich (BB code):
    /if (${UseMQ2Melee} && ${Bool[${Plugin[mq2melee]}]}) {        /squelch /melee aggro=0
        /squelch /melee melee=1
        /squelch /melee stickbreak=1
        /squelch /melee petassist=0
        /squelch /melee on
        /squelch /melee stickmode=0
    }

There-fore, I think one should only need to type
Rich (BB code):
/melee petassist=1 save
however, if that doesn't work. Search the macro and find anywhere that
Rich (BB code):
/killthis
is issued, then add

Rich (BB code):
/pet attack
/pet swarm

to said code.

Rich (BB code):
    /if (${UseEQBC} && ${assistMe}) {
        /if (${Debugging}) /bc (Line: ${Macro.CurLine}) killthis
            /timed 10 /bca //pet attack
            /timed 15 /bca //pet swarm
            /timed 20 /bca //killthis
        }
        /killthis
        /pet attack
        /pet swarm
        :waitTillDead
    
        /if (${Target.ID} && ${Me.CombatState.Equal[Combat]} && ${Target.Type.Equal[npc]}) {
            /if (!${Me.Combat}) /attack
            /delay 10
            /goto :waitTillDead
        }
 
Release [Macro] Farm.mac

Users who are viewing this thread

Back
Top
Cart