Draft:RGMercs
Draft:RGMercs | |
---|---|
High performace class specific macros with an out of the box config and unified command structure |
Authors | Morisato, Drwhompd, Noone, Vsab, ihc385 |
---|---|
Software type | Macro
|
Maintained | Yes and supported |
Links |
🏠Resource (download) (review) |
A short link to this manual: rgmercs.com
An Introduction to RGMercs
RGMercs is a set of class-specific macros designed to be easy to use "out of the box" with minimal configuration. This also means driving an RGMercs toon may require more effort in some cases.
If you need more configuration, you may write your own code in an rgcustom.inc
file.
Please use the forum for suggestions, help, or discussion.
History
They were originally based on the Auto series of macros and compiled into the IHC omnibus by @ihc385. When @ihc385 departed, @morisato took over as maintainer due to his passion and love for the macro's usability.
Installing RGMercs
By this point we're going to assume you've watched the following videos:
RGMercs is to install because its actually Included with VeryVanilla!
- Run the
RGMercsInstall.mac
on all your characters (/bcaa //mac RGMercsInstall.mac
)
While running RGMercsInstall.mac
is technically optional, it does a number of helpful things:
- Enables the DanNet plugin on the character who runs it.
- Creates the
/rgstart
alias for quickly starting rgmercs on one character. - Creates the
/rggroup
alias for quickly starting rgmercs for your whole group. - Creates the
/mgx
(Execute command on all but myself),/mgax
(Execute command on all including myself),/mgt
(send DNet tell to group leader) aliases so @ihc385 had DanNet commands that felt more like EQBC.
If you do not want to run RGMercsInstall.mac
you will need to manually start RGMercs with /mac rgmercs/RGMERC.mac
on every character you want to run the macro on.
RGMercs will load the following plugins on first use:
- MQ2Collections
- MQ2Exchange
- MQ2Rez
- MQ2AdvPath
- MQ2MoveUtils
- MQ2Nav
- MQ2DanNet
- MQ2Xassist
RGMercs will *unload the following plugins due to known conflicts:
- MQ2Twist
- MQ2Melee
Starting RGMercs for the first time
Pre-requisites:
- Make sure the Main Assist role is set for your group. This is necessary for RGMercs to know who to follow for targeting. If RGMercs is running on the Main Assist it lets them know that they need to seek out threats against the group.
- Set your puller and tank modes. These are used when setting hotkeys.
- RGMercs does not allow you to target a pet or a mercenary as main assist. If you do this you will break things so don't do it!
Assumptions:
- Never target a pet and start RGMercs. Pets should not be your Main Assist.
- Never target a Mercenary and start RGMercs. Mercenaries should not be your Main Assist.
Changing Settings
Unlike other macros, RGMercs expects you to change your settings in-game via the /rg
interface. INI-based editing is best done only when you're comfortable using RGMercs are and are aware of what changes are not reset when the macro is started. ALL INI based settings changes require a macro restart.
You can see instructions for getting the current settings values and changing settings values by typing /rg
. You can get help information by typing /rg help
for basic settings and /rg advanced
for advanced settings. If you're wondering what a setting does follow this mantra: When in doubt: /rg help
.
Changing settings always follows the same format:
/rg TheSettingYouWantToChange <value>
For example, to turn off the acverbose
core setting you would do:
/rg acverbose 0
To turn it on:
/rg acverbose 1
Many settings help will say "Set 0/1" you'll see this sort of pattern regularly.
If you want to be exact you can change your specific class setting by issuing:
/rg <Class Short Name> TheSettingYouWantToChange <value>
For example to disable Heal Nukes for the CLR, you would issue the following command:
/rg CLR UseHealNukes 0
Generally you can avoid putting the class short name (or Pull for pull setting) and RGMercs will figure it out. It will issue you a warning as it really would prefer you to be specific.
Setting tanks engagement range
RGMercs is different than KissAssist or MuleAssist. All RGMercs use AssistRange
to determine how far out they will engage aggressive enemies. This includes tanks. By default AssistRange
is 100 for everyone. Some tank modes may decrease this. You can determine what your currently engagement range is by typing: /rg AssistRange
. If this is too short you can raise the value, if it's too long, you can decrease it. For example, to set your AssistRange to 50 you can do:
/rg AssistRange 50
For dungeon zones with close together floors and highly dense mobs (e.g., Estate of Unrest, you may need to change your MAScanZRange
. This is an advanced setting defined as: "Maximum Z distance an MA will search to find roamers/pullers. Default: 0 [off]". This means it will only ever effect your play if it is set to a non-zero positive value (1-infinity). For zones like Estate of Unrest* you may want to try setting this to 10. A good way to test what a z-value setting should be (pulling or here) is to use the Height Filter feature of your EQ map. This will display what spawns are "visible" in the height range you specify in the two boxes. In each box put the number you'd like to set MAScanZRange to. If it only shows the mobs you want, you're good, if not, change the numbers. When it is finally appropriate, you can set MAScanZRange via:
/rg MAScanZRange 10
Class Mode Changes
Many RGMercs classes have class modes. Class modes allow you to change your role in the group or style of play of the class. These are set with the ClassMode
setting. For example, PAL has a tank class mode (the default 0), a DPS class mode (1), and an optimized high level end-game tank mode (10). Each of these modes may define different capabilities (healing, tanking, mezzing, curing) that will cause RGMercs to perform different things as part of its normal operation. After changing your ClassMode you must restart the macro.
You can see what class modes your class offers by looking at the help menu: /rg help
and looking for the ClassMode setting.
For a PAL, for example, if you wanted to change to the DPS class mode you would:
- Type
/rg ClassMode 1
- Restart the macro
/rgstart
.
Setting ClassMode to a number not listed in your help information (or a class mode you've created yourself -- beyond the scope of this beginner's manual), the macro will crash and you will need to manually edit the setting in your ini file.
Advanced Settings
RGMercs has a number of advanced settings that do not show with the normal /rg help
. These settings generally do not need to be changed and thus not shown on the normal menu to avoid clutter. You can view the advanced settings for a class by typing /rg advanced
. You'll also see Pull system and general RGMercs advanced settings.
For example, if you're noticing that your client starts getting choppy when you start RGMercs, you can enable the CPUThrottle advanced setting to slow the macro down a bit and give your system time to catch-up. This may be necessary depending upon your eqclient.ini configuration, the phases of the moon, or other odd issues beyond our control. To do this you could do the following:
- Type
/rg advanced
and look towards the top of the list (you may need to scroll/expand your mq2 chat window) to read the settings help information and look at its specific name. - After reading the settings help you decide you can deal with a decrease in responsiveness so you type
/rg CPUThrottle 1
to add a minor delay. - You realize that you'd still like a little more CPU reduction so you add
/rg CPUThrottle 2
. - You find this is good enough and continue playing.
Moving and Fighting with RGMercs
Moving and fighting with RGMercs is as easy as other macros. You have options for camping and chasing, you have the ability to back-off if you need to stop engagement, the ability to specifically target something to kill, and you have a few handy questing utilities.
Camping and Chasing
Camping in rgmercs is easy. When camped, RGMercs toons will only return to camp when they leave your AutoCampRadius
. If you ever need to remember how to camp, look at the help info in /rg
To set camp: /rg camphere
To stop camping: /rg campoff
To decrease or increase your camp radius you can set the AutoCampRadius
setting. If you'd like your RGMercs to return to camp after every single combat you will need to do: /rg camphard
. This "hard" camps you and will return you to your exact loc after every combat. Given this looks more "suspicious" it is not the default behavior.
Chasing is just as easy to use as RGMercs. RGMercs chasing will use a mq2nav to follow whenever possible. It will use /moveto
as a backup if you're in a bad spot on the navigation mesh or /afollow
if there's no mesh at all.
To start chasing: /rg chaseon
-- this will automatically chase your main assist To stop chasing: /rg chaseoff
To start chasing a specific toon named ExampleToon instead of your main assist: /rg chaseon ExampleToon
To change your chase distance, you can change the ChaseDistance
setting.
For added ease of use, if you start chasing while camping, RGMercs will disable camping. If you set camp while chasing, RGMercs will stop chasing.
Backing Off
There are times due to a quest script or other instances you need your group to stop attacking the mob you either were fighting or are currently fighting. To do that use the /backoffmob
bind (or simply /backoff
). This will turn on the back-off flag and your RGMercs will not engage the target until you call /backoff
again. You will see a status message in your MQ2 window when you issue these commands.
If you're just wanting to clear the ID of the mob your RGMerc is fighting so they can switch to your MA's new one. You can call /combatreset
. /combatreset
does not guarantee you will back-off and exit combat.
Sometimes turning off the main loop for RGMercs is necessary. In this case they will respond to binds but they won't perform any normal activities. To disable the main loop you type /rg off
. This will disable following, combat, buffing, healing, mezzing, medding, and every other activity RGMercs automates for you. When you are ready to re-engage RGMercs you type /rg on
. This is sometimes very useful for traveling if you don't like traveling in chase mode but you don't want to pause the full macro.
Killing Specific Targets
RGMercs has historically worked better in an assisting role versus your driving toon. We've provided some mildly improved quality of life features to help with further targeting.
If you are driving your main assist and want to enable manual targeting you need to turn off RGMercs autotargeting feature. To do this you set DoAutoTarget to 0: /rg DoAutoTarget 0
. Now when RGMercs determines you've changed targets it will set your auto target to be the target you selected. As main assist, all toons assisting you will switch targets as well as soon as they call FindTarget again. To speed this up you can ask them to initiate one of the binds discussed at the end of this section.
Helper binds for targeting:
/killnow
-- Any RGMerc who issues this command will reset their main assist, target the main assist's mob, set that as their autotarget, and engage in combat./autotarget
-- Set your auto target to your current target./killtarget
-- Focus on your current target and ignore others until its dead.
Questing Utilities
There are three binds that you may find useful while questing with RGMercs:
For when you need your group to all say the same text phrase:
/qsay "This is the sample quest text"
Note: because this is multiple words, you need to put quotes around them.
For when you need to give an item to someone or something there's /giveitem
. In the following example we're giving 1 item (Example Item) to the Example NPC.
/giveitem "Example Item" 1 "Example NPC"
The /giveitem
command also works to exchange items between your group members.
For when you need to give money to someone or something there's /givemoney
. In the following example we're giving 5pp to the Example NPC. Other available denominations are: gp, sp, cp.
/givemoney 5 pp "Example NPC"
The /givemoney
command also works to exchange items between your group members.
Very Vanilla Pulling
RGMercs also supports pulling. We'll only discuss Very Vanilla pulling in this section. This is the traditional style of set camp, find mob, pull mob, and return to camp. Other pull modes will be discussed in a specific advanced pulling guide.
First, you need to get your PCs into a camp. Using tools such as /kaenform <distance>
and /randomform <distance>
(where <distance> is an numerical value) can help with this. Then you need to start your camp (see the section on camping).
You then have two options:
- To enable constant pulling you set DoPull to 1:
/rg DoPull 1
(To pause pulling, just put the setting to 0:/rg DoPull 0
) - To perform a single pull you can call
/singlepull
To keep you safe and in control, the DoPull setting will reset to 0 whenever you restart the macro or leave the zone. It will restart pulling upon your return to zone. This is so that if you die, return to your bind point, but then are rezzed, you'll get back to pulling. This may continue to change in the future to avoid unwanted edge cases of suicidal PCs.
RGMercs also offers wo different group watch modes:
/rg GroupWatch 1
-- Make sure you and any healing classes are above the group watch threshold to continue pulling./rg GroupWatch 2
-- Make sure any group mates are about the group watch threshold to continue pulling.
RGMercs defaults to an allow listing approach (PullOnly) and falls back on an ignore list approach (PullIgnore). If your allow list is empty and your ignore list is empty, it will pull everything it finds.
If you add mobs to your allow list, it will ignore all other mobs in the zone and only target those on the list. To add a mob to your allow list, target it and type /addpull
.
If your allow list is empty, you can add mobs to the deny list. RGMercs will never pull a mob on your deny list. To add a mob to this list, target it and type /addignore
.
To quickly clear either of these lists and restart you can call /clearpull
and /clearignore
. If you only want to remove a single mob from either list, you will need to edit the pull info configuration file manually. You'll see a discussion of that shortly.
You can find more pull settings in /rg help
and /rg advanced
. If you require further details, you can find them in the more detailed pulling manual
RGMercs pulling information is setup per zone and stored in the RGPull_Info.ini
file. Details of this file will be discussed in the specific pulling manual. For new users it's suggested you use the binds discussed earlier to add and remove things from your list.
RGMercs Core Commands
- /rg - Displays the list of available commands in case you forget the order/syntax/style. Also shows version
- /rg help - Displays all available settings that can be changed
- /rg advanced - Displays advanced settings.
- /rg debug clear - Clears the debug log.
- /rg camphere - Sets your current loc as the camp and turns on return to camp. Does not save the setting to the ini. Only returns to camp when outside AutoCampRadius.
- /rg camphard - Like camphere but you’ll return to camp every time after combat.
- /rg campoff - Turns off return to camp. Does not save the setting to the ini.
- /rg chaseon - Turns on chase. - Chases Main Assist. Set By roles.
- /rg chaseoff - Turns off chase mode.
- /rg <setting> - Display the current value of a <setting>.
- /rg <setting> <value> - Set the value of a <setting>. Saves to INI.
- /rg <class shortname> <setting> - Get the current value of a class specific <setting>.
- /rg <class shortname> <setting> <value> - Set the current value of a class specific <setting>. Saves to INIT.
- /rg on - Turn RG Mainloop On
- /rg off - Turn RG Mainloop Off
RGMercs Core Commands Settings Examples
- /rg DoPull 1 - Start pulling
- /rg DoPull 0 - Stop pulling
RGmercs Binds
Up to date as of 11-18-2020. Pulling Related Binds -
- /addignore - Adds target to pull ignore list
- /addpull - Adds target to the pull only list
- /addwp - Adds your current loc as a waypoint.
- /singlehunt - Pulls nearest mob and does not return to start location
- /singlepull - Pulls nearest mob and returns to start location
- /clearpull - Clear the pull only list
- /clearignore - Clear the pull ignore list
General Binds -
- /aainfo - Spits out how Many unspent AA you have and how much % into current one you are - into mq2 window.
- /aebanish
- /autotarget
- /backoffmob - Backs off the currently targeted mob. - Must be ran per toon. Use again to disable backoff mode.
- /banish
- /campfire # - Drops a campfire. # specifies the type of campfire.
- /checkalliance - Check for alliances
- /classmode - Change classmodes without restarting the macro.
- /clickdoor - Clicks the Nearest Door on Whole Group for example Guildhall Door in lobby to enter.
- /combatreset - Resets Combat kill id and target good for Mobs Not inrange but stuck as priamry target
- /configpull - Reconfigure pull abilities
- /corpserun
- /cureice - Special CLR/SHM binds for manually curing ice.
- /defdisc
- /dropinvis
- /droplev
- /droptravel
- /evadedisc
- /giveitem <item name> <#> <name> - Given item name to name.
- /givemoney <#> <pp/gp/sp/cp> <name> - Given money to name.
- /go2ggh - Determines what zone u are in and Takes action to Get to a Known zone and then run to the GGH Automatically.
- /groupbehindme - Group gathers behind you.
- /groupfrontface - makes everyone face Front same heading as your toon yer on.
- /hotkeys - Special bind to set hotkeys. Bind by itself will show help.
- /hunttarget - Does a single hunt on the currnt target.
- /ihc - Displays help for root RGMercs command interface (see above).
- /kaenform - Moves group to a moon around you with minimal fuss. ( named for its creator)
- /killnow
- /killtarget - Reassigns this mob as Your Kill target.
- /lazylobbyrez - Works Just like the mac. Just type and you will summon yer corpse in the lobby to be rezzed.
- /lesson
- /levelinfo - Spits out Everyone In groups Current name Level and Exp % towards next level. into the mq2 window
- /makeammo # - Ranger Only. Makes Class 1 Silver arrows used as reagents.
- /navto - This will navto Yourself or to your Target. For Your entire Group
- /nextwp - Tells Farm mode to move to the next waypoint.
- /port - Special portal behind. Like relocate but you don’t need to pause the macro.
- /printlist - Debug bind for printing lists.
- /printmap - Debug bind for printing maps.
- /printrotation - Print the abilities in all your rotations.
- /printset - Debug bind for printing sets.
- /printspell
- /pullinfo - Displays pullinfo for the current zone
- /pulltarget <spawnid> - Pulls <spawnid> (e.g., /pulltarget ${Target.ID})
- /qsay <text> - Tells all your group members to say <text>
- /randomform <distance> - Randomly places your group around you w/ in square of area
(distance*2)^2
. - /rg - Displays help for root RGMercs command interface (see above).
- /scribe - Bind of the scribe macro. Scribes spells in inventory and buys spells up to your level from an open merchant window.
- /sheepmove
- /summonmerc
- /summonsnacks <#> - Summon snacks macro in bind form.
- /targroup2xtar - Adds target’s group to your xtarget list
- /testisalive
- /wp2tgt - Travels to target but will stop for combat on the way.
- /yes - this clicks yes on windows. For all Toons in party.
RGmercs Travel System
The RGMercs Travel System is Limited to travelling to the Grand Guild hall because it is not possible in current mq2 to do this feat Automatically. - /go2ggh - Determines what zone u are in and Takes action to Get to a Known zone and then run to the GGH Automatically.
RGmercs Portals
The RGMercs portal system is an alternative to mq2relocate for situations where the Macro may conflict with calls to /relocate
. /port
is the root bind. Each argument provides a portal to a different area: - /port air - /port fire - /port stone - /port pok - /port lobby – use throne of heroes. - /port guildhall - /port gorowyn - /port froststone - /port stratos - /port fm - /port ghlobby – Click your guild house door if in the guild house or use throne of heroes. - /port poh - /port tbm – use the Broken Mirror.
Creating RGMercs Debug Logs
RGMercs debug logs are easy to create. They're essential for any of the volunteer devs to help determine your issue in a minimal amount of time. For intermediate to advanced users of RGMercs they're also a good way to determine if it's something you're doing, a bug in MQ2, or a bug in the macro.
- Clear the current debug log: /rg debug clear
- Start debug logging on the current character: /rg DebugLog 1
- <wait for the macro to do the thing you're worried about a few times>
- Stop debug logging for the current character: /rg DebugLog 0
- Navigate to the following folder: <mq2 root folder where MacroQuest2.exe resides>/Logs/rgmercs
- You will see an RGMerc.mac.txt file -- this is the log you just created. Send this in a private message on the forums to one of the RGMercs volunteers (you will need to change the extension from .txt or paste the contents into the message) or send the log to them on discord.
NOTE: Debug logs may contain personal character information and it's not recommended these be placed in publicly viewable locations.
Never start debug logging on more than one character at a time as the mq2 log creation command only is able to write to one file at a time.