• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Click "RG3" at the very bottom-left of this page to change it. To dismiss this notice, click the X --->
Very Vanilla MQ2 (Emulated servers)

Vanilla Very Vanilla MQ2 (Emulated servers) 2020-05-28

Download now: Join us with Level 2 access
or earn your way in with RedCents.
Code:
May 27 2020 by RedGuides
- MQ2AutoLogin (eqmule) Added Rizlona support
- MQ2Rez (Knightly) Fix issue with Rez not being consistent 
- MQ2Status (Sic) Code cleanup
- MQ2AdvPath (Knightly) Remove "failed to create directory" message when dir exists
- New paid plugin! MQ2Eskay (ChatWithThisName, Sic) For when you need a good tank.
- New paid plugin! MQ2Bst (ChatWithThisName, Sic) It's a Beastlord.
- CWTN Plugins: fixed issues with MQ2Headshots, MQ2Cleric updated low-level healing, MQ2Bst & MQ2Eskay fixed pet issues.

May 26 2020
- Updated for TEST
- Added a /mqcopylayout command
  Usage: /mqcopylayout <charname> <server> opt: res:XxY (not specifying a res, will default to "Windowed") | nohot | noload | nosoc | none
- Example: /mqcopylayout eqmule test
  Will Copy the layout from UI_eqmule_test.ini setting including hotbuttons loadouts and socials to your UI.
  Ok, so the default behaviour is to copy everything.
  Now if you wish to exclude stuff:
- Example: /mqcopylayout eqmule test nohot
  Will Copy the layout from UI_eqmule_test.ini setting including loadouts and socials to your UI but NOT hotbuttons.
- Example: /mqcopylayout eqmule test nohot noload
  Will Copy the layout from UI_eqmule_test.ini setting including socials to your UI but NOT hotbuttons and NOT loadouts.
- Example: /mqcopylayout eqmule test nohot noload nosoc
  Will Copy the layout from UI_eqmule_test.ini setting excluding hotbuttons loadouts and socials to your UI.
- Example: /mqcopylayout eqmule test none
  Will Copy the layout from UI_eqmule_test.ini setting excluding hotbuttons loadouts and socials to your UI.
- Example: /mqcopylayout eqmule test res:1600x900
  Will Copy the layout from UI_eqmule_test.ini setting including hotbuttons loadouts and socials to your 1600x900 UI (if that resolution actually exist in your UI ini).

May 21 2020
- Updated for TEST

May 21 2020
- Updated for LIVE
Code:
May 19 2020 by RedGuides
- New Plugin! MQ2React (drwhomphd) Allows users to define actions, as well as conditions that will perform those actions. Think of it like the holyshit/downshit part of
  mq2melee, without the melee. MQ2React also allows for complex conditions to be defined as global conditions and reused throughout multiple reacts, thus making reacts 
  considerably easier to maintain and reuse.
- CWTN plugins (ChatWithThisName, Sic) updated. Named Spawn checks improved, and several fixes including ones for shrink clickies and AutoStandOnDuck. See the changelog
  thread for a full list of changes.
- MQ2Status (Sic, brainiac, Knightly) "/Status Quest blah" will now return if you have a quest called "blah"
  Fixed issue with the GetColorCode that didn't correctly use Dark mode for EQBC
- MQ2TsTrophy (Sic) Adding the "Collapsible Fishing Pole" to the list of used items for Fishing
- MQ2AFNuke (jimbob) Fixed Wizard nuke bug introduced with pet attack code. Added timer to pet check, added pet attack code to Enchanter. Fixed timer issues.

May 19 2020
- Updated for LIVE

May 18 2020
- Misc updates and fixes for rof2 build

May 14 2020 by RedGuides
- MQ2AdvPath (Knightly, alynel, ChatWithThisName, brainiac) code cleanup
- MQ2AASpend (Knightly, Sic, brainiac) code cleanup
- MQ2Camera (Knightly) code cleanup
- MQ2FarmTest (ChatWithThisName) refactored, cleaned up, and various bugs fixed
- MQ2HUDMove (ChatWithThisName, brainiac) fix crash with /hudlist
- MQ2AutoLoot (Knightly, alynel) Minor code cleanup
- MQ2TsTrophy (Sic) This quick-fix eliminates trying to swap items that are no longer valid.
- MuleAssist.mac (eqmule) Sit fixes
- MQ2Heals & MQ2AFNuke (jimbob) Changeset 2160: Refactored a ton of code. Fixed a couple bugs & typos in MQ2Heals. Added Mage pet support (pets and swarm pets should now 
  switch targets with the mage). Fixed mage spire AA. DoMed is still broken, so turn it off if you're having issues. Also, send me your issues.
- CWTN Plugins (ChatWithThisName, Sic) Fixes for various bugs and crashes. Various updates to MQ2Eskay, MQ2Bst, MQ2Monk, MQ2Berzerker, MQ2Cleric, MQ2Rogue and MQ2Warrior

May 14 2020
- Updated for TEST
- Filled in the CGuild class

Apr 30 2020
- Me.Invis now takes an optional index or a name to return invis vs undead and animals
  Example 1: /echo ${Me.Invis} just return the normal one like before, are u invis of any kind.
  Example 2: /echo ${Me.Invis[ANY]} or just ${Me.Invis[0]} returns true if you are invis of any kind, same as just doing ${Me.Invis}
  Example 3: /echo ${Me.Invis[NORMAL]} or just ${Me.Invis[1]} returns true if you are normal invis.
  Example 4: /echo ${Me.Invis[UNDEAD]} or just ${Me.Invis[2]} returns true if you are invis vs undead
  Example 5: /echo ${Me.Invis[ANIMAL]} or just ${Me.Invis[3]} returns true if you are invis vs animal
  Example 6: /echo ${Me.Invis[SOS]} or just ${Me.Invis[4]} returns true IF you are a ROG AND in fact hidden AND have a skill of at least 100 in HIDE AND have the AA for SoS
  
Apr 29 2020 by RedGuides
- MuleAssist.mac (eqmule) More buff fixes
- MQ2AutoAccept (Knightly, alynel) code cleanup
- MQ2AutoForage (Knightly) code cleanup
- MQ2KissBuffs (ChatWithThisName) workaround for chain-casting issues after zoning
- CWTN plugins (ChatWithThisName, Sic) updated with new windows, reset camp options, and various fixes and improvements.

Apr 29 2020
- .CachedBuff now accepts = for exact match and if not specified it will do partial match
  Example 1: Lets say you have United Surety Rk. II on.
  /echo ${Target.CachedBuff[United Surety]} will work and return United Surety Rk. II
  /echo ${Target.CachedBuff[=United Surety]} will return NULL since the buff on you is actually United Surety Rk. II
- Misc Cleanup of CachedBuffs stuff

Apr 28 2020
- Optimized the GetGroupMainAssistTargetID inline.
- Fixed /foreground to respect maximizzed window pos - bug reported by Kaen01
- Added .SpellRankCap to the character TLO. It returns an int representing your characters spell rank cap.
  if it returns:
  1 = you CAN cast Rk. I spells
  2 = you CAN cast Rk. II spells
  3 = you CAN cast Rk. III spells
- Fixed a crash in ${Zone.blah} when in Guild Halls - bug reported by Shin Noir.

Apr 24 2020
- Optimized the GetRaidMainAssistTargetID inline.

Apr 22 2020 by Redguides
- MQ2DataVars (drwhomphd, Knightly) a minor patch expanding EQMule's original Chat event fix for tells spoken in different languages. 
- MQ2FeedMe (Sic, brainiac) Added an option to turn off consumption messages.

Apr 21 2020
- Updated for TEST

Apr 15 2020
- Updated for LIVE

Apr 14 2020
- Updated the FellowShip struct for TEST
- Updated the FellowShip struct for LIVE

Apr 13 2020
- Updated for TEST

Apr 11 2020 by RedGuides
- MQ2XAssist (drwhomphd, brainiac) two new TLO's: XTFullHaterCount and XTAggroCount. These provide alternatives to the core MQ2 TLOs for XTargets XTHaterCount and XTAggroCount. 
  XTFullHaterCount returns all auto haters including the one that is being targted. XTXAggroCount allows the aggro range to be expanded to 1000 for situations where someone 
  wants to check the >=100 aggro values. The original XTAggroCount TLO only allows for 1-99.
- MQ2DPSAdv (Knightly) Fix crash in setting name
- MQ2AutoLoot (Plure) fixed a fash, thanks to Sic for the report
- Buy.inc (cannonballdex) Addresses the issue with the declarations being called in a loop causing error messages when purchasing more than 100 items from a vendor in a macro.
- LazyLobbyRez (cannonballdex) Uses Throne of Heroes if available or Origin, MQ2Nav and MQ2EasyFind.

Apr 09 2020 by RedGuides
- MQ2DPSAdv (wired420, brainiac, Knightly, ctaylor22, Redbot, drwhomphd) Added DPS Meter logic for self and pet. Added a TLO so you can access the information.
  This update does not require the DPSADV UI window to be open. Added MyStart, MyStop, MyReset, and help commands.
  New TLO DPSAdv and members: MyDamage, PetDamage, TotalDamage, MyDPS, PetDPS, TotalDPS, TimeElapsed, MyStatus.
- CWTN Plugins (ChatWithThisName) Huntertank mode added, plus MQ2Cleric, MQ2Eskay, and MQ2Berzerker all updated with new fixes.
  Full changelog in the CWTN subforum of Plugins.
- MQ2Rez (ChatWithThisName, brainiac, Knightly) Fixed a slew of bugs including the switching characters error, massive code cleanup, added "/rez silent" option which will suppress
  MQ2 window spam when accepting a rez.

Apr 09 2020
- Updated for TEST
- Fixed the ITEMINFO struct.

Apr 08 2020
- Updated for TEST
- Todo: go over the newcharinfo struct there are 0x104 bytes of stuff left to check.

Apr 06 2020
- Added .MyDuration to the Spell TLO. It returns a ticktype of YOUR duration for the spell in question.
- Caption redrawing has been optimized to use less cpu cycles.

Apr 02 2020
- Add bSeeInvis, bSeeSOS and bSeeIVU to SpawnSearch - CTWN

Apr 01 2020
- Fixed ZoneFlags
- Fixed the _ZONELIST struct
- Added .CanMount to the Character TLO it's a bool it returns true if u can mount in the zone u are in and if it won't collide with an illusion u have on. 
- Added .ToiletPaper to the Character TLO it returns true if you need to go out and get more.

Mar 31 2020
- Fixed all Spell Stack checks. (yes again, hopefully for good this time.)

Mar 28 2020
- Fixed all Spell Stack checks.
- Stacks, WillStack, StacksWith, StacksSpawn
  StacksTarget and StacksPet
- Added a lock for CachedBuffsMap access
- Removed a WriteChatf from Task.Timer
- Added a function which can be used by plugins to format numbers:
    EQLIB_API void PrettifyNumber(char* string, size_t bufferSize, int decimals = 0);
  If the given string is a number, it will add commas and set the desired number of decimals.
  For integers, leave decimals as 0. For floats, a value of 2 is recommended. Min is 0, max is 9.
- Added .Prettify to Int, Int64, Float and Double types. 
    Example: ${Me.MaxHPs.Prettify} => 30,103
    Example: ${Target.Distance.Prettify} => 1,151.24
  Prettify takes a number of decimals of precision as a parameter:
    Example: ${Target.Distance.Prettify[4]} => 1,151.2395
    
MAR 28 2020
- CWTN Plugins (ChatWithThisName, Sic) Fixed some casting issues, pet buffs. MQ2BerZerker: ${Berzerker.Mode} will 
  now correctly display all modes  MQ2Rogue: Add some missing discs. 
        
MAR 27 2020 by RedGuides
- CWTN Plugins (ChatWithThisName, Sic) Bug fixes, Targeting for AA's now happens before use rather than when ready.
  Added "ShowTargeting" option. IE: /zerk showtargeting on, which will output when the plugin is targeting something. 
  Class shortnames for commands added, which will allow you to /docommand /${Me.Class.ShortName} mode 1.
  MQ2Cleric: Will rez before buff, healing overhauled, bug fixes.
  MQ2Bst: Added Spiritual regen to gems in certain cases.
  MQ2Monk: Should no longer use Purify Body when inappropriate, Add FeignAtAggro and FeignAtHealth values for Feign control.
  MQ2Eskay: Added buffing for Concordant in our spell/buffs check so we don't only check it on downtime.
        
Mar 26 2020 by RedGuides
- MQ2Relocate (Sic) Added /relocate Bronze to use Harbinger's Staff
- CWTN Plugins (ChatWithThisName, Sic) Improved stun handling. More CLI options, i.e.: /zerk HPMedStart 60. 
  Spellbook searching more accurate. Better buff handling. Safe zones updated. Clearer reporting of missing spells/abilities.
  Hopefully fixed "intermittent screen stalling" that was reported. Improved pulling. 
  MQ2Eskay: Added logic for those without Azia AA, added Remorseless Demeanor, EndRegen. 
  MQ2Cleric: Checks for GroupHot or GroupHotCure before trying to re-cast them. 
  MQ2Monk: "Swift Tails' Chant" and burn options should now work. Destructive Force and Vehement Rage bugs fixed. 
        
Mar 26 2020
- Updated for TEST
- Added CAAWnd__UpdateSelected_x
- Added CAAWnd__Update_x
- Changed ShowSpellSlotInfo so it takes a custom linebreak.

Mar 25 2020 by ChatWithThisName
- MQ2ChatWnd: Added ingame toggles for SaveByChar, Autoscroll, NoCharSelect to the /mqchat command
  Available options are:
    no parameter, will output what it's currently set to. Example: /mqchat SaveByChar
    On - Turn on the option. Example: /mqchat autoscroll on
    Off - Turn off the option. Example: /mqchat NoCharSelect off

Mar 19 2020 by RedGuides
- CWTN Plugins (ChatWithThisName) PercentMana will show correct value.
  Classes with SpellCheck/Memorize/Buff section should no longer check when they're pulling
  MQ2Cleric: Added Hand and Vie and options to toggle

Mar 19 2020
- Updated for LIVE
- Added CXRect__operator_and
- Fixed CTextureFont::DrawWrappedText
- Added CTextureAnimation::Draw
- Added CTAFrameDraw::Draw
- Fixed the CPageWnd class for EMU
- Added members to the CTAFrameDraw class
- Made the CTabWnd class a proper CXWnd class and added members to it.

Mar 19 2020 by brainiac
- Made a couple additional changes to /taskquit from the update on Mar 16 2020:
  - fix /taskquit <name> to search solo tasks when a shared task is present.
  - fix /taskquit <name> to be exact match only
  - change /taskquit <name> to no longer use quotes.

Mar 18 2020 by RedGuides
- CWTN Plugins (ChatWithThisName) Any class using the window will now have the first tab called "Plugin Output" instead of "Zerker". 
  Added a window to the rogue, warrior and monk classes. type "/rog show", "/war show" and "/monk show" respectively  to show the window.

Mar 18 2020
- Updated for LIVE

Mar 17 2020
- Updated for TEST
- Fixed the SListWndCell struct

Mar 17 2020 by RedGuides
- CWTN Plugins - ALL
  Characters should now cast other spells, even if there is an empty spell slot above the spell needing to be casted.
- MQ2Cleric
  Updated the list of spells in the "Ward" group.
  Dissident/Undyling life are no longer linked to normal heals.
  Normal heals (Category Heal, Subcategory Heal) currently will not function, this means Minor healing, light healing, complete healing etc.
  A change for this will be added at a later date.
- MQ2Bst
  New spell group "SlowSpell" was added. (in case we don't have the AA yet)
  New spell group "STHaste" (single target haste) was added.
        
Mar 16 2020
- Extended the /taskquit command. It now takes an optional argument, "Name of Task" so we can use it to remove solo tasks as well. -Feature Cred: drwhomphd
   /taskquit without any argument works like before, i.e it removes the shared task if there is one.
- Usage /taskquit "No Heroism Without Fear"

Mar 15 2020
- Fixed a bug with ${Macro.CurSub} it will now correctly return the sub its used in.
- Fixed a bug where tells you would not be detected in all languages. Thanks Kaen01 for report.

Mar 14 2020 by RedGuides
- CWTN Plugins (ChatWithThisName, Sic) Fix incorrect order of the GroupWatch help output for Healer and Healer and Crowd Control.
  MQ2BerZerker: Revert a change to the cry havoc/cry canage line. Two zerkers should no longer fight over who's buff should be active. Cry Havoc and 
  Cry Carnage will overwrite each other. It will also not work with Secondary Burn, so it won't fire during a secondary burn. 
  MQ2Cleric: Clerics should no longer try to buff in combat (Like when someone dies and doesn't have the HP buff).

Mar 14 2020 by Sic
- Added ParcelStatus to the character TLO.
  Usage: /echo ${Me.ParcelStatus}

Mar 11 2020 by RedGuides
- MQ2DanNet (dannuic) The elusive Zoning crash should now be fixed. Please notify me if you believe you are having ANY DanNet related crash.

Mar 11 2020
- Updated for LIVE
- Fixed the Lucy Button on itemdisplay for the internal browser. (you can still right click to launch externally)

Mar 09 2020 by RedGuides
- MQ2Eskay (CWTN) Spire will now fire during burn, not waiting for Guardian
- MQ2Cleric (CWTN) if UseDivineIntervention is on, we will DI ourselves as well as the tank
- MQ2Status (Sic) Fixed some issues about which macro is running and other display issues.
  Requests to Report back ${Role} even if your macro doesn't have kissassist in the name. The original intention of this was to report back 
  if your macro has "kiss" in the name to accomodate beta/dev verisons of kissassist, kissmule/muleassist, and anyone running a custom/modified kiss version.
  I specifically don't want to check it against ${MacroName} to equal kissassist because again - the intention is to include any 
  forks or kissasist like kissmule/muleassist and the like.

Mar 08 2020
- Updated for TEST
- Updated for LIVE
- Fixed ${Spell[permanent spell here].Stack} so it actually returns true when they DO stack.

Mar 06 2020
- Added CTabWnd::RemovePage
- Fixed CXWnd::DrawColoredRect crash

Mar 03 2020 by Redguides
- MQ2TSTrophy (Sic) Added TLO's to TSTrophy as well as a new video explaining the functionality and the available TLOs
- MQ2Relocate (Sic, Knightly) Updated to version 2.0, cleaned up code
- MQ2Status (Sic, brainiac) Will now use Dannet if you have dannet loaded and don't have eqbc loaded, Standardized output color/format 
  for readability. Fixed some typos and spacing issues, Huge refactoring "under the hood", check the resource for a video of the new features!
- CWTN Plugins (ChatWIthThisName, Sic) Autodismounting has a message, target switch issues with switchwithma fixed, spelling issues fixed, 
  MQ2Bst: Corrected issue with Alliance, spell memorization. MQ2War: Correct a "Can I Bash" error

Mar 03 2020
- Updated for TEST
- Updated for LIVE
- Added CPageWnd::FlashTab

Feb 28 2020 by Redguides
- CWTN Plugins (ChatWithThisName) Fix overlooked crash dealing with pulling with AA. Thanks to everyone who sent crash reports. 

Feb 27 2020 by RedGuides
- CWTN Plugins (ChatWithThisName) fixed various crashes, detect unusable abilities, added "/addclicky pullitem" for item-click pulls
  Fixed multiple spelling and zone errors, improved SwitchWithMA, improved pet healing with MQ2Cleric.
- MQ2KissBuffs (ChatWithThisName) Update MQ2KissBuffs to also track pet buffs if you have a pet. 
- MQ2TSTrophy (Sic, brainiac, Knightly) - Added check if your trophy evolves !Ding. Improved custom UI compatibility. Fixed issues when
  zoning. Eliminted "spam swaps", improved compatibility with other macros/plugins.

Feb 27 2020
- Updated for TEST
- Updated for LIVE
- Added support for spaces in /hotbutton Name. Use /hotbutton "Button Name With Spaces" in quotes.
- Fixed GetChildWndAt
- Updated CAAWnd::ShowAbility
- Filled in CPageWnd members
- Updated CHARINFO struct etc.
- Previously Updated:
- Fixed the CursorAttachment Struct
- Macro Authors, take notice: Fixed ${Me.AltAbility[blah].Rank} it now properly returns 0 if you don't have any points spent in a AA.

Feb 18 2020
-Updated for TEST
-Updated for LIVE

Feb 17 2020 by Redguides
- CWTN Plugins (ChatWithThisName, Sic)
     CWTN Plugins - ALL
        Backend fixes
        QuickHeal fix for self
        Chasemode will no longer chase corpses (lul)
        Should no longer send in your pet if you are melee pulling until you are back to camp
        ValidateTarget should no longer allow you to attack a player's pet.
        New autodetection for stuck gems and hard coded autofix for them.
        Should no longer spam trying to memorize a spell during group watch downtime.
        Melee pulls should now correctly turn on attack when near the mob to pull.
        When last stood check added to waiting for valid targets or aggro downtime.
        No longer allowed to set Group Main Tank's Target as one of your XTarget slots.
        PullAbility (Shadow Knight) should no longer shuffle step as the margin for inrange/out of range was adjusted.
    MQ2Rogue:
        MQ2Rogues have re-discovered thier lost book of "Rogue Tips and Tricks" and will now use all their abilities again
        Added a toggle for Ligament Slice
        Corrected output for UsePet to display correctly
        Backend updates
    MQ2Cleric:
        Will now automatically use Yaulp to fix stuck gems.
        Backend updates
        in !byos we will use syllable (synergy proc) instead of seventeenth - we will use seventeenth if usecurate is off
    MQ2Bst:
        No longer checking group pets for group shrink (issue with some pets who don't have AA)
        Added some additional PetTanking functionality for mode 4, 5, or 7
        We won't send in our pet if we are pulling
        Added GroupShrink and toggle.
        Added Paragon of Spirit Toggle.
        Added Memming alliance if UseAlliance is on.
    MQEskay:
        Will use "Bobbing Corpse" to break our stuck spell gems
        We won't send in our pet if we are pulling

Feb 14 2020 by Redguides
- MQ2Status (Sic) Small fix for output of MQ2Eskay during /status

Feb 14 2020
-Updated for LIVE

Feb 12 2020 by Redguides
- MQ2Status (Sic, brainiac) Added /status parcel to return if we have any parcels (thanks CWTN) 
  Added /status invis
- CWTN Plugins - All: 
        Correct bug in triggers checking.
        ShowSettings should now report the correct ZRadius being used for pulling - my bad :-)
    MQ2Cleric:
        Re-add Shining Defense now that triggers are checking correctly.
        Check Restless Ice on Pulse and moved all other cures to after heals.
        Adjustments were made to Quiet Prayer and Yaulp checks.
        UseYaulp is now a toggle.
        DivineIntervention now has a toggle.
    MQ2BerZerker:
        Make sure to check that the disc is ready for Synergy Specific Demolishing Frenzy to fire the Synergy.
    MQ2Bst:
        Fix mana checks for Paragon and Focused Paragon.
        Fix pet taunt toggle output message to output correctly.
    MQ2Monk:
        Added UseIntimidate options
    MQ2War:
        Blade guardian should now be used full time.

Feb 11 2020
-Updated for LIVE

Feb 09 2020
- Fixed a bug where our version of /hotbutton would not save the button to the ini. - reported by DrWhomPhd

Feb 06 2020
- Updated for TEST

Feb 05 2020
- Updated for TEST

Jan 30 2020 by RedGuides
- MQ2Relocate (Sic) Updated to ensure we fall to the secondary anchor. Added a check to ensure we don't have the anchor in our inventory
- CWTN Plugins (CWTN, Sic)     MQ2Cleric will now use gem slot 8 for "buffing/misc" and will save domelee settings. 
  MQ2War will kick if you don't have a shield and you have a stunning kick AA.
- Bazaar.mac (kaen01) removed alias

Jan 26 2020 by RedGuides
- MQ2Status (Sic, Knightly, brainiac) Updated to allow toggling off show plugins and/or specific classes
- MQ2DanNet (dannuic) Updated code, and implemented macro end detection in order to clear out previously used variables so they can be reused.
- MQ2War (ChatWithThisName) Will now use Wars Sheol's in Tank Mode burn, will also  use Rampage in "Tank Modes" when UseAoE is on

Jan 25 2020
-// ***************************************************************************
-// Function:    DoHotbutton
-// Description: our '/hotbutton' command
-//              Extends the built in /hotbutton command with multiple lines support
-// Usage:       /hotbutton [Name] <color> <Line:><Cursor:>[Text]
-//                <Line can be 1-5
-//                <Cursor can ONLY be 0 which means DO NOT put the hotbutton on the cursor.
-//                Usage:
-//                /hotbutton TheName 14 1:0:/echo hi    (Where 14 1:0: in this case means use color 14, then place /echo hi on LINE 1 and NO Cursor Attachment.)
-//                /hotbutton TheName 14 1:/echo hi    (Where 14 1: in this case means use color 14, then place /echo hi on LINE 1.)
-//                /hotbutton TheName 1:0:/echo hi        (Where 1:0: in this case means place /echo hi on LINE 1 and NO Cursor Attachment.)
-//                /hotbutton TheName 1:/echo hi        (Where 1: in this case means place /echo hi on LINE 1.)
-//                /hotbutton TheName 0:/echo hi        (Where 0: in this case means NO Cursor Attachment.)
-//                Finally, just doing /hotbutton TheName 14 /echo hi OR /hotbutton TheName /echo hi just calls the eq function like before.
-// ***************************************************************************

Jan 21 2020 by RedGuides
- MQ2LinkDB (eqmule) multiple items fixed
- MQ2KissBuffs (ChatWithThisName) Now writes anytime updates immediately for changes. Now tracks Disease, Poison, Curse, and Corruption counters. 
  This includes covering short durations buffs. (Restless Ice for example).
- MQ2AutoClaim (ChatWithThisName) Fixed an issue with parsing dates.

Jan 20 2020
- Misc Fixes to triggers etc - braniac
- Me.CountersXXX now also count ShortBuffs (${Me.Cursed} now returns Restless Ice, for example.)

Jan 15 2020 by RedGuides
- MQ2RelayTells (ChatWithThisName, brainiac) Confirmed fix for mail and relaying the tells on my end by sending myself a bunch of tells :-)
- MQ2DPSAdv (ChatWithThisName) Make columns sizeable again
- MQ2Status (Sic) Added check for MQ2Cleric and MQ2Bst
- MQ2AFNuke & MQ2Heals (jimbob) Fixed an issue with /nuke memorize array bound checking that caused a crash. Also, made (only for Wizards 
  at this point) /nuke memorize try to pick the ideal spells for your current level (of course, you must have them in your spellbook to mem them). 
  Re-Factored a ton of code to eventually combine MQ2AFNuke and MQ2Heals into a single plug-in. It will be especially handy for Droods and Shaman 
  that like to DPS (though I haven't added Shaman DPS to AFNuke yet). There is some sort of bug with Drood DPS occasionally breaking. 
- MQ2FarmTest (Sic) Updated to add an option to toggle off "use discs"

Jan 15 2020
- Added /invoke to the list of commands that can trigger a bind.
- Updated for LIVE

Jan 14 2020 by Sic
- Updated MQ2Melee
- If you use builder dont forget to recheck it.

Jan 13 2020
- Updated max level to 115
- Updated the skillmanager for all builds.

Jan 13 2020 by Chatwiththisname
- Added MQ2SpellType Members: HastePct, SlowPct.
- Added GetMeleeSpeedPctFromSpell(PSPELL, bool) (Exported in Main)
- Added GetMeleeSpeedFromTriggers(PSPELL, bool) (not exported)
- Added HasTrigger(PSPELL) (not exported)
        GetMeleeSpeedPctFromSpell is used in HastePct and SlowPct.
        If the pSpell has a trigger it will automatically check the triggers for the modification speed. 
        Examples: 
            ${Target.Slowed.SlowPct}
            ${Me.Hasted.HastePct}
            ${Spell[Slowing Helix].SlowPct}
            etc etc.
- Fixed GetSelfBuffBySPA(int, bool, int);
- Fixed GetTargetBuffBySPA(int, bool, int);
- Fixed GetSelfShortBuffBySPA(int, bool, int);
- Fixed HasCachedTargetBuffSPA(int, bool, PSPAWNINFO, PcTargetBuff);

    In all the above SPA buff checks if the SPA matched, but wasn't the increase or decrease
    desired, it would stop checking anymore buffs. 
    Example: ${Target.Slowed} should return a pSpellType of a slow debuff on the target. But
        if the target had a haste buff before the slow buff it would find SPA 11 and since it was
        an increase instead of a decrease it would return -1, or NULL. Changing it to break; for those
        SPA's allows it to continue checking the buffs and find any subsequent SPA 11's correctly.

Jan 12 2020
- Updated for TEST

Jan 11 2020 by RedGuides
- MQ2AFNuke (jimbob) Added wizard new harvest spells
- MQ2Berzerker, MQ2Cleric, MQ2Rogue (ChatWithThisName) updated
- MQ2DPSAdv (ChatWithThisName) columns will now save/load their place.

Jan 11 2020
- Fixed the ZoneGuideManagerClient class for TEST build.
  (Read: /travelto crash fixed.)

Jan 10 2020
- ${Me.Spell[blah]} now searches for rank spells as well - brainiac
  Example:  You have Demand For Power Rk. II in your spellbook.
  Usage:    /echo ${Me.Spell[Demand for Power]}
  Output:   Demand For Power Rk. II
- MQ2Melee has been updated for ToV - Sic

Jan 09 2020 by RedGuides
- MQ2Linkdb (eqmule) Updated to not require an item on cursor to do /link /import and to not poof the item used as the template.
- MuleAssist.mac (eqmule) Fixed some issues with GoM, will now read your kissassist_info & kissassist_buff ini's.

Jan 09 2020
- Added Me.Spell it return a SpellType selecting spells only from YOUR SpellBook. - brainiac
  Usage: /echo ${Me.Spell[Spirit of Wolf].ID}
  Output: 278
  Usage: /echo ${Me.Spell[278].Name}
  Output: Spirit of Wolf
- Fixed a wrong offset for pinstCBlockedBuffWnd_x for TEST build - SwiftyMuse
- Book Icon and Gem Icon IDs will no longer be shown in ItemDisplay when they are 0 - SwiftyMuse

Jan 08 2020
- Updated for TEST
- CONTENTS changed by dbg. The evolving stuff is now in its own struct, plugins that use it need to be edited.
  Example: PrePatch: pCont->EvolvingCurrentLevel
  Now: pCont->pEvolutionData.p->EvolvingCurrentLevel
  The Following are members of pEvolutionData: GroupID, EvolvingCurrentLevel, EvolvingExpPct, EvolvingMaxLevel, LastEquipped;
- ItemColor is now gone from CONTENTS.
Jan 05 2020 by RedGuides
- MQ2AASpend (Sic) Updated MQ2AASpend to reflect appropriate AutoGrant Expansion
- MQ2Melee (ChatWithThisName) Update MQ2Melee for new Berserker abilities. Rearranged the code to group all Berserker abilities in one spot.
- MQ2Data (ChatWithThisName) Update MQ2Data for Ground TLO. If a groundspawn item is not found, it will now correctly say so.
- MQ2Feedme (Sic, brainiac, CWTN) code cleanup and a crash fixed
- MQ2Relocate (Sic, Knightly) moved all functions into the plugin directly so anyone can compile from source, code cleaned up
Will now twist off for bards when mq2twist is loaded
- MQ2Heals (jimbob) Fixed xtarget rez problem, added new spells
- MQ2AFNuke (jimbob) Updated Cleric, Druid, Enchanter, Wizard, Magician, Ranger, Beastlord, and Shaman spells. Happy Hunting!
- Alctol.mac (wirlin) Goes to your max alcohol tolerance for your level and sobers up before camping
- CWTN Plugins (ChatWithThisName) updated, check their resource pages for updates
Dec 23 2019 by Redguides
- MQ2Commands (ChatWithThisName) Plugins can now be loaded with "/plugin name load"
- MQ2AFNuke (Jimbob) Updated Wizard spells for ToV, Updated Enchanter burns to use Calculated Insanity after IoG or if Megaburn is on.
Updated Druid burn Black Wolf to Great Wolf.
- MQ2Relocate (Sic, review:Knightly) Updated /relocate crystal for ToV pre-order item "Froststone Crystal Resonator", cleaned up coding.
- MQ2Status (Sic) updated for emu. Added "xp" and "aaxp" to help. Updated options, cleaned up coding.
- MQ2Spawns (ChatWithThisName) Fix issues with visibility with the window.
- MQ2PortalSetter (ChatWithThisName) - New ToV zone added, new button for Eastern Wastes (ToV).
- CWTN Plugins updated

Dec 21 2019
- Fixed a crash in mq2chatwnd.cpp on /camp desktop
- Fixed the chatwindow disappearing act.
- Fixed mq2eqbc window disappearing act.

Dec 21 2019 by RedGuides
- (ChatWithThisName) A temporary fix for some of the MQ2 and EQBC window issues.

Dec 20 2019 by RedGuides
- MQ2Status (Sic) Added "Monk" to the /status output for check on CWTN class plugins

Dec 20 2019
- Updated for LIVE

Dec 19 2019
- Updated for TEST
- /plugin without specifying unload now acts like a toggle, if plugin is loaded it unloads it.

Dec 18 2019 by RedGuides
- New Plugin! MQ2TSTrophy (Sic, review: brainiac) Equip the proper Tradeskill Trophy when opening an environmental crafting container.
- New Plugin! MQ2AutoClaim (Dewey2461, ChatWithThisName, review: Knightly) will automatically claim Daybreak Cash eligible for your account.
- MQ2Medley (Plure) Fixed MQ2Medley after the changes to HideDoCommand
- MQ2KissBuffs (ChatWithThisName) remove old ID's from the .ini file, no longer writes blocked buffs based on a separate timer.
- fish.mac (wired420) fixed an issue that was causing lag

Dec 18 2019 Torment of Velious Build
- Updated for LIVE

Dec 17 2019
- Updated for BETA
- Fixed a bug in GetCachedBuffs

Dec 16 2019
- Updated for BETA
- Fixed MQ2Twist in global plugins
- Added GetCachedBuffs to exports so plugins can make use of it.
Usage:
std::map<int, std::map<int,cTargetBuff>>cbuffs;
GetCachedBuffs(cbuffs);

Dec 15 2019
- Updated for BETA

Dec 14 2019
- Updated for BETA

Dec 13 2019
- Updated for BETA

Dec 12 2019
- Updated for BETA

Dec 11 2019
- Updated for BETA

Dec 10 2019 by Redguides
- CWTN Plugins updated
- MQ2AFNuke (Jimbob) Updated Mage: Heart of Flames to Heart of Skyfire

Dec 10 2019
- Updated for TEST
- Updated for BETA

Dec 09 2019
- Updated for BETA

Dec 08 2019
- Multiple fixes for the EMU build

Dec 06 2019 by RedGuides
- MQ2Status (Sic) fixed lifetime subscription display
- MQ2Twist (Plure) Fixed MQ2Twist after the changes to HideDoCommand, fixed interruption with /useitem
- LootSort (DrWhomPhd) Updated LootSort to explicitely leverage stdlib data type and the experimental::filesystem library.
- CWTN (ChatWithThisName) line of class plugins updated, welcome mq2war and mq2rogue
- Thank you to DrWhomPhd, brainiac, and Knightly for cleaning up AutoLootSort, MQ2Speaker and MQRez

Dec 06 2019
- Updated for BETA
- Added .SpellIcon and .GemIcon to the Spell TLO.
- Fixed the Button structure

Dec 05 2019
- Updated for BETA

Dec 04 2019
- Updated for BETA

Dec 03 2019 by RedGuides
- MQ2AFNuke (jimbob) Updated for Spire changes
- Fish.mac (wired420) modernized, includes alcoholism option

Dec 03 2019
- Updated for BETA

Dec 02 2019
- Updated for BETA

Dec 01 2019
- Updated for BETA

Nov 30 2019
- Updated for BETA

Nov 29 2019 by Redguides
- MQ2Status (Sic) added "/status sub" to check for EQ subscriptions, /status will now also return if you are silver or bronze

Nov 29 2019
- Updated for BETA

Nov 28 2019 Happy Thanksgiving!
- Updated for BETA
- Updated MQ2Melee. Yaulp in now default "off" by Sic/CWTN

Nov 27 2019
- Updated for BETA
Nov 26 2019
- Updated for TEST
- Added SubscriptionDays to the Character TLO it returns an int. Cred request: @Sic
Usage: /echo I have ${Me.SubscriptionDays} left before my all access expires.
- Updated MQ2AutoForage at https://www.macroquest2.com/phpBB3/viewtopic.php?f=50&t=9588&p=70471
- Added MQ2AutoForage to builder global plugins.
- Fixed a crash in MQ2AutoForage when inventory was full.
This crash would result in the EQGraphicsDX9.dll dumps some people has sent me. (Thank you.)

Nov 25 2019
- Updated for BETA

Nov 24 2019
- Updated for BETA
Nov 23 2019 by RedGuides
- MQ2Main (ChatWithThisName) Add /removelev command. typing /removelev will remove any levitation in the buff or shortbuff window.
- MQ2Berzerker, MQ2Rogue, MQ2EsKay, MQ2War (ChatWithThisName) updated
- MQ2Status (Sic) Added /status fellowship - returns some information on your fellowship (WIP)
Added /status campfire - returns information on your campfire
Added /status bagspace - returns how many free inventory spaces you have
Corrected a missing return; for /status aa
- MQ2DPSAdv (ChatWithThisName) Correct divide by zero crash in new SDPS output.
- MQ2Rez (ChatwithThisName) Add Rez datatype. ${Rez.Accept} ${Rez.Percent} ${Rez.Pct} ${Rez.SafeMode} ${Rez.Voice} ${Rez.Release}

Nov 23 2019
- Updated for BETA

Nov 22 2019
- Updated for BETA
- Fixed a bug where /aa wouldn't parse input

Nov 21 2019
- Updated for BETA

Nov 20 2019
- Fixed ${Me.SpellInCooldown} for LIVE
- Fixed ${Me.InInstance} for LIVE

Nov 20 2019 by RedGuides
- MQ2Autogroup (plure) Fixed a couple bugs
- CWTNCommons, MQ2Berzerker (ChatWithThisName) various updates, no changelog
- MQ2DotNet removed for repair.

Nov 20 2019
- Updated for BETA
- Added .LeaderFlagged to the DynamicZoneType TLO it returns true if the dzleader can successfully enter the dz (this also means the dz is actually Loaded.)
- Usage: ${DynamicZone.LeaderFlagged}
- Added .Flagged to the DZMemberType TLO it returns true if the dzmember can successfully enter the dz.
- Usage: ${DynamicZone.Member[x].Flagged} where x is either index or the name.

Nov 19 2019
- Updated for BETA

Nov 18 2019
- Updated for BETA

Nov 18 2019 by SwiftyMUSE
- MQ2Cast Fixes:
- Increased delay_cast to handle casting not happening for spells loading delays
- Added blocked spell handling.
- Fixed compile typecast warning.

Nov 17 2019
- Updated for BETA

Nov 16 2019
- MQ2Dpsadv (ChatWithThisName) Add SDPS (DPS over duration of fight), debug changes, more color information.
- MQ2Relocate (Sic) Updated /relocate fellowship to make you visible before clicking fellowship insignia

Nov 16 2019
- Updated for BETA

Nov 15 2019
- Updated for BETA
Nov 14 2019
- Updated for BETA

Nov 14 2019 by brainiac
- Re-fixed EQINVSLOTWND
- Added ALT_MEMBER_GETTER macro that defines an alternate name that a member can be
accessed with, thereby removing the need to immediately update all code to use new
variable names.
- You can now use the old, or the new names for Slot1, Slot2, Slot3, Location and *suprise* Wnd.

Nov 13 2019 by RedGuides
- MQ2AutoGroup (Plure) added MQ2DanNet compatibility, fixed a bug with suspending mercs that you want to keep around.
- MQ2AutoForage (Sic) Lowered PulseDelay to better avoid conflicts with other plugins and macros

Nov 13 2019
- Updated for BETA
- Fixed EQINVSLOTWND.
- Renamed WindowType in the EQINVSLOTWND struct to Location
- Renamed InvSlot in the EQINVSLOTWND struct to Slot1
- Renamed BagSlot in the EQINVSLOTWND struct to Slot2
- Renamed GlobalSlot in the EQINVSLOTWND struct to Slot3

Nov 12 2019 by RedGuides
- New utility! MeshUpdater.exe (wired420) keep all of your nav meshes up to date. Find it in Very Vanilla's root folder.
- MQ2MyButtons (ChatWithThisName, Knightly) hover over a button to get a tooltip of the command, various bug fixes
- Ninjadvloot.inc (Maskoi) Renamed a zdist variable to avoid conflicts with Kiss.
-
Nov 12 2019
- Updated for BETA
- Updated for TEST
-
Nov 11 2019 by RedGuides
- MQ2Status (Sic) Corrected an Else statement with /status merc
- MQ2KissTemplate (ChatWithThisName) Various bugfixes, correct NULL in Spells section to copy the item from GetPrivateProfile
-
Nov 11 2019
- Updated for BETA
-
Nov 10 2019 by RedGuides
- MQ2Status (Sic) added commands: help, merc
- MQ2DPSAdv (ChatWithThisName) wrong UI fix
- MQ2XPTracker (ChatWithThisName) fixed conflict with other plugins
-
Nov 10 2019
- Updated for BETA
-
Nov 09 2019 by Eqmule
- Fixed MQ2ItemDisplay for emu
- Added Lucy Button to MQ2ItemDisplay for emu
-
Nov 09 2019
- Updated for BETA
-
Nov 08 2019 by RedGuides
- Various plugins fixed for NEWCHARINFO (thanks eqmule!)
- MQ2KissTemplate (ChatWithThisName) Update to convert MySpells to Spells section if KAVersion shows greater than 11.004,
as well as handle older versions.
-
Nov 08 2019
- Updated for BETA
- Activated NEWCHARINFO for BETA, this is a chance for you to fix your plugins.
I will activate it for live next patch because we have tested it for a year and
and im confident in it now.
I will then just remove the old charinfo which is just half filled anyway.
- Plugins I know for sure needs fixes:
MQ2AutoLoot,MQ2Posse
Top