Farmhand
Description
Farmhand adds dynamic buttons on the screen while you are at Sunsong Ranch.
The buttons allow quick access to the Plow, Shovel, Bug Spray and Watering Can if they are in your inventory. If you do not have a given item, there will be no button for it. Also adds buttons for seeds that are in your inventory. You can even sell unwanted seeds at a vendor without having to open your bags.
When you leave Halfhill, any tools remaining in your inventory will be dropped. You can pick them up again at the farm. (You can disable this feature.)
A special Crop Scanner tool will let you quickly find any plants you've overlooked that need special attention. (Very hand for the hard-to see Smothered and Runty plants.)
To move the buttons, hold SHIFT and drag a button with the left mouse button.
In the Interface Options panel, you can turn on/off tool dropping, turn on/off chat messages and sounds, turn on/off the portal shard buttons and control whether Farmhand automatically hides itself during combat.
I recommend using Masque (optional) to make your buttons pretty.
Localization
Farmhand has translations for all game-supported locales, but if you see a bad translation please visit the localization page and correct it. Then let me know so I can repackage the addon to pick up the changes.
Thanks to all the translators!
Translator Credits
Thanks as well to the Farmhand users who've made great suggestions:
TaraNTino
adore33
Sentinelum
Hello,
Thought of another idea that would be nice. Sometimes when you loot your crops you receive the gift items that are used to turn into the various npcs for rep. These items are the following...
Lovely Apple, Jade Cat, Marsh Lily, Ruby Shard and Blue Feather.
I myself am exalted with the Tillers and all the various other npcs that you need to turn these items into to reach a "Best Friend" status with. So when I loot these sometimes from my crops, they serve no purpose. No need to turn them in anymore, they have no vend value and since they are soulbound, they can't be traded either. So I have to manually delete them.
Would it be possible to make those items drop/delete when you move out of the zone, exactly how the tools are handled?
The problem I see with this is. Each item can be turned into two different npcs for max rep gains, or turned into any of them for lesser rep. So someone may/or may not need certain "gift items". I also know that you don't really want to add a options interface for this addon that could show these items individually with checkboxes or something unless you had to, which is understandable.
My solution would be to add another little icon "above or below" the "tool lock icon" you have for dropping tools/or not dropping tools so the user could make the choice to have all those "gift items" drop automatically/or not drop based on if they need them anymore.
-Thank You
In 5.1 those won't drop for you anymore once you have the achievement for being best friends with all the tillers.
Oh ok, didn't know that :) thank you.
Ok, shows that my memory is fading since my last addon development is long ago.
I was thinking it would be possible to call a function from a secure action template. While I found back some reference to such possibility on the internet as well I did not manage to get TargetUnit to work. So I remained with te macro.
Special UTF-8 characters do not seem to work in multi-line strings so I used concatenation. I have added a few lines for unused space in the farm which will show a message about this fact (first /run). Sinc ethis is in th ebeginning of th emacro the target will finally be any plant which requires attention, or if there is none, an empty space.
Also I have ordered the plant "states" in such an order that the most obvious ones (ex. Alluring) come first leaving the less visible (Parched) at the end, so that the less visible get targeted first by the radar.
Because of the empty space part I changed the "Farm looking good" into "Plants looking good" in the translation.
The modified code is below. Th eempty line marks the point to which I could test the wording in-game. I did not see the states below that point yet even though I replanted everything and 4 spaces even several times.
Probably it would be best to add an option to enable or disable the "empty space" part of the macro.
if(GetLocale()=="deDE") then
macro='/cleartarget\n'..
'/tar Ungepfl\195\188gtes Erdreich\n'..
'/tar Gepfl\195\188gtes Erdreich\n'..
'/run if UnitExists("target") then RaidNotice_AddMessage(RaidBossEmoteFrame,"Es gibt noch unbepflanzte Felder !", ChatTypeInfo["RAID_BOSS_EMOTE"]) end;\n'..
'/tar Verlockende\n'..
'/tar Wilde\n'..
'/tar Befallene\n'..
'/tar Ausgetrocknete\n'..
'/tar Zuckende\n'..
'/tar Bedeckte\n'..
'/tar Verk\195\188mmerte\n'..
'/tar Verwucherte\n'..
'/tar Beanspruchte\n'..
'/tar Hartn\195\164ckige\n'..
'/run if UnitExists("target") then SetRaidTarget("target",8) else RaidNotice_AddMessage(RaidBossEmoteFrame,"Die Pflanzen sehen gut aus !", ChatTypeInfo["RAID_BOSS_EMOTE"]) end;\n'
item.btn:SetAttribute("macrotext",macro)
else
...englishversion here...
Great idea with the macro. Not sure, but after a more thinking I would believe that the scanning I suggested would probably not work because the plands are "friendly".
I was thinking about using LUA
TargetUnit("name")
together with GetUnitName("target") . The Advantage of using LUA would be that the name could be specified including the space after the word (which in some languages may need more target names to be checked). The advantage of scanning the full word would be that there could be no accidental identification of a player name starting with the same word. I know that the farm is a phased area but there may be issues with phasing.Meanwhile I have inserted the german translation into the code but you may want to move it to a separate file. I will check th etranslation tomorrow when I setup new plants. I did check severaltoday but changed the words to longer ones afterwars leaving me with only one name really checked so far.
If I get some spare time I will also try to move to LUA code instead of the macro.
if(GetLocale()=="deDE") then
item.btn:SetAttribute("macrotext", [[
/cleartarget
/tar Ausgetrocknet
/tar Befallene
/tar Zuckende -- Checked
/tar Verlockende
/tar Bedeckte
/tar Wilde
/tar Verkümmerte
/tar Verwucherte
/tar Beanspruchte
/tar Hartnäckige
/run if UnitExists("target") then SetRaidTarget("target",8) else
RaidNotice_AddMessage(RaidBossEmoteFrame,"The farm is looking good!", ChatTypeInfo["RAID_BOSS_EMOTE"]) end; ]]);
else
...original english code...
Sorry forgot to update the UTF char sin the code with their proper UTF code. Currently trying the LUA code but TargetUnit gets blocked even with the secure template.
Just seems that all that is over-complicating things, the macro gets the job done as it is.
I'm working on localization now, including (hopefully) making the macro work for other languages. If you visit the project site, you can contribute to the localization effort. I'll have a new version soon.
@thewildcard
If it's working, then clicking the scanner will target any crop that needs attention and put a skull icon above it.
It does this by targeting by name, so if you're not using the English client then it might not work.
How does the plant scanner tool work? I can't seem to see any indicators.
I was looking at the comment below and came up with this simple macro...
/tar Parched
/tar Infested
/tar Wiggling
/tar Alluring
/tar Smothered
/tar Wild
/tar Runty
/tar Tangled
/tar Occupied
/tar Stubborn
/script SetRaidTarget("target",8);
The macro will target and put a Skull icon over top of problem crops. If you dont get a target with a skull, then all your crops are growing. I don't know if this could somehow be implemented into the addon.
-Thanks
I've added a button to the Tools bar that will target and mark a plant that needs attention using the macro you suggested. I really don't think a RaidTargetIcon is necessary, but it doesn't hurt either.
v0.10b should be available shortly.
Great idea!
Glad the idea worked... thanks for implementing.
Thanks for this nice addon !
Would it be possible to add a feature to count the number of growing and non-growing (needing attention) plants on the farm ?
As the plants are targetable like mobs I would think that this should be possible in the way rar-spawn detection mods work.
The plants are targetable yes, but the only way I can think of to do what you ask is by watching nameplates, which the plants do not seem to have.
Awesome. Many thanks!
New version v0.8b works great, thanks for your fast response :)
Its not letting me install "Farmhand" via Curse Client on this page. I downloaded it manually and put it in my Interface folder, but when I log into the game its not showing up in the addon list at all.
-Thanks
getting the same issue. Click the install with curse client link and it opens the client but nothing installs. Install it manually (and properly) and it does not show in the in game addon list.
The name was just changed. I think it takes a little while before the addon database for the client gets updated. Apologies for the inconvenience.
Edit: Found the issue. Fixed, hopefully. v0.8b should install properly. It might be a while before the Curse Client has the update, but you can manually install it.