Resource icon

Combat Assist KeepToonBuffed.mac 2.0.1

Download now:  Join us with Level 2 access or earn your way in with  RedCents.
Other Authors
TreehuginDruid, Wired420, Maskoi
Software Requirements
[Plugins]
MQ2Cast
MQ2MoveUtils
Server Type
🏢 Live Test
Although this and other macros I write are not exclusively for use by RedGuides,
I am authorizing its use for the community.
(This and other macros I write may be available at "other" MQ2 sites).

This macro has been tested using the most recent RedGuides MQ2 compile.

This macro and all others I submit for the community will be fully supported by myself
(as long as you have not altered the code for it).
Changing user specific (non global) declares is permissible.




I sometimes get bored to tears playing my normal killer bot army group.. and start new toons or Powerlevel baby toons I long forgot about.

To help me do this... I use a little macro I threw together to maintain PL'ing buffs and health of my lowbie ( and self ) toons while remaining out of groupn (so they get experience without the big uber PL'er in group).. lol

Its fairly easy to alter the user specific (non global) declares for the Character(s) names to buff... or check their health. Included example is just for 2 toons I am PL'ing.. so I'm sure you can figure out how to increase or decrease the number of declared toons to check on / define their names... and declare the spells to buff them with.

Enjoy ...

Another bonus from your friendly Tree Humper.

The macro requires: MQ2Cast and MQ2MoveUtils plugin to function.


How to run and install:

  1. Download the KeepToonBuffed.mac from the attached macro on this thread.
  2. Copy it into your Macros folder
  3. Log into toon you want to use as the "buffer"
  4. Type in /mac KeepToonBuffed
  5. Wait a few seconds and type in /endmac
  6. Go into Macros folder and find the KeepToonBuffed_[playername].ini
  7. Open and Edit to your liking with buffs you want casted, heal you want to use, and the players that it is to search for and keep buffed
  8. Go back to game and type in /mac KeepToonBuffed
  9. Enjoy!


[UPDATE] ---



Version 1.7.5 released.

Final Update to the macro ....

  • It is now INI file driven.

Never a need to touch the macro file itself.

Run the new version once.. and it will create the ini according to naming convention: KeepToonBuffed_[YourToonName].ini

Then just edit the default settings... and run.

  • Also added internal version update for ini file when i roll out an update...

  • Also in addition is the ability to turn on or off heals / buffs ... depending on what class you are using to PL the lowbie group.
    Realized that would be beneficial because of people using non healing classes to be the PL'er for the lowbie group.​

| --- Credit goes out to Maskoi as well, for providing the CreateIni and LoadInI code -
| --- (Ripped from ShamBot)

I am also extremely happy to announce that KeepToonsBuffed.mac will be made part of the official RedGuides compile release starting with the next compile.

I received the green light from "el hancho" RedBot for its inclusion in our distributions.




[UPDATE] ---

Version 1.8.0 released.

Provides ability to have pl'er follow the first toon defined in the [Toons] section of ini,

Default distance leash is 30 ... works fine if sitting or on a mount.

Enables you to either have a static camp where the pl'er does not attempt to follow defined toon.. or to actually move with a roaming camp.

Also included plugin check to ensure MQ2Cast and MQ2MoveUtils are loaded.

Plus updated the event trigger for blocked buffs.. to accommodate scenario if you are buff locked (max buffs already attained) instead of the original check just for a spell blocking a buff.


[UPDATE] ---

Version 1.8.3 released.

This update corrects the mis-spelling of the BuffsOn variable name... it was improperly fat fingered and was in the code as BuffssOn.

Also.. update provides resolution for issue where the name of the buff in the short or long term buff window does not match the actual name of the spell used to cast it.

This should fix the buff name not matching spell name issue.


Your ini file will update with syntax for the new buff/spell name handling in your config:

Rich (BB code):
[Buffs]
|======================================================================|
BuffsOn=1
NumberOfBuffs=5
TargetBuffNameHelp=Name of Spell to Cast|Name of Buff Effect in Buff Window
TargetBuffName1=Unity of the Doomscale|Doomscale Focusing
|======================================================================|

Users do NOT have to alter their current Buff configs if theirs is working fine.. they only need to change the entry to the new format if they have the same issue you do... the buff and spell name do not match. Otherwise keep the entry the same as you already have it.



[UPDATE] ---

Version 1.8.5 released.

This update adds the ability to assist the group by targeting the groups NPC or NPC pet that is being engaged... and casting a NON DAMAGE root or snare spell.

I added this out of necessity for myself.... been fighting undead so darn long with the baby toons I pL... that i forgot about the whole "hey some mobs run when they gonna die" thingy.. lol

The function is disabled by default.... but can be enabled in your ini by flipping AssistOn from 0 to 1 ....

Rich (BB code):
[Assist]
|======================================================================|
AssistOn=0
AssistSpellHelp=To be used for NON damage ROOT or SNARE spells ONLY!!!!!!
AssistSpell=Ensnaring Roots
AssistPct=40
|======================================================================|




[UPDATE] ---

Version 1.8.7 released.

Found a big bug in the code after the update for FollowGroup was added.

It was preventing toon#1 from being prioperly targeted for the heal and buff routines after a call for followgroup.

This has been fixed and fully tested... PLEASE GET UPDATED FILE.


[UPDATE] ---

Version 1.8.9 released.

This fix allows for Mercenaries and Pets to be valid targets for heals and buffs.
Original code only allowed PC character type. This adds mercenaries and pets to the allowed character types for functions.


[UPDATE] ---

Version 1.9.0 released.

Added BuffsPopulated check condition to ensure that all the buff packet data is returned to the client before we determine if a buff is missing form the target.
(${Target.BuffsPopulated}==TRUE)
This ensures that we are not wasting precious time and mana attempting to buff a toon that already has the buff, but we did not detect it because all the buff packet data was not returned yet.

ALSO: From this point on I will NOT be posting the entire macro code in the first thread, just the updated macro file for downloads.



[UPDATE] ---

Version 1.9.2 released.

This is a critical update to the macro that ensures packet data is returned for buffs of the target. There was also an issue where AssistOnTarget was causing issues with the buff cycle being broken.
Both issues are resolved in 1.9.2

I have noted an issue and am currently working on a solution in regards to the following:

Progression servers --- attempting to target a toon on a mount using even a CleanName return yeilds a return back of the Character's Mount.
Example: Target HorseFace .... return's "Horseface's mount" if HorseFace is on a mount.





[UPDATE] ---

Version 1.9.3 released.

Targeting a toon while mounted is now fixed.




[UPDATE] ---

Version 1.9.5 released.

Re-worked the ASSSIT portion to make it more responsive and not waste any cycles if a valid TargetOfTarget does not exist.
More intuitive logic on assisting.




[UPDATE] ---

Version 1.9.7 released.

Re-worked the ASSSIT portion to make it more responsive and not waste any cycles if a valid TargetOfTarget does not exist.



--- [UPDATE] ---

Version 1.9.8 released.

Issue: Buffing hangs after calling Assist portion when a mob dies it was meant to cast on.

The PopulateBuffs sub was the culprit. It is set to loop internally until all the buff packets are returned and the client can see all the buff on the particular target... in this case an unfriendly target.

However if the sub gets called when there is no valid target id targeted ( dead or null ).. it will just loop forever and screw you.

I went through the rest of the code and also made a change so that even if you don't have someone in zone who is listed in your array for toonstobuff... it wont halt you.. it will just skip that person.. and continue to the next valid toon to check. Discovered that when i was hanging because the ini had 6 toons defined.. but i was only testing with 5 in zone...

So that additional fix will prevent any issues with a toon not being in zone.. ( didn't load him/her but forgot to replace toon name with NULL in ini.. or the toon just isn't in zone atm ).

Also altered output text color for health/buff/assist messages to make target and function stand out.



[UPDATE] ---

Version 1.9.9 released.

Corrected a bug in the Assist routine, causing it to break... and improved the logic for toon selection if the nuber of toons or tioon names were not updated in the ini.... or the toons are not in zone.




Version 2.0.0 released.

This macro has been rewritten and modernized:

  • It now uses DanNet to keep track of the lowbie toons health and buffs
  • It now uses MQ2Nav for movement.

mq2dannet and mq2nav with a valid mesh are now required in order to function properly.

Please try it out and let me know of any bugs or suggestions!
Author
tweeb
First release
Last update
Rating
5.00 star(s) 2 ratings

More resources from tweeb

Share this resource

Latest updates

  1. 2.0.1

    Minor update: 1) Assist mode should work correctly now (thanks Sic!) 2) Added the...
  2. Major refactor

    This macro has been rewritten and modernized: * It now uses DanNet to keep track of the lowbie...
  3. Several Bug Fixes

    Fixed red errors in startup/ini creation. (Previously) - Fixed bug where it wouldn't snare if...

Latest reviews

Great Work! Thank you
Wow this thing is awesome!!
Back
Top