MQ2Melee - MMOBugs Wiki

Plugin Info
Name MQ2Melee
Version 2007+
Author s0rCieR/htw
Commands /melee /killthis /clickbelt /meleedebug /throwit /enrageon /enrageoff /infuriateon /infuriateoff
Uses INI File Yes

Description

MQ2Melee is designed to provide intelligent use of Combat Abilities, Alternate Abilities, and Combat Skills, as well as limited handling of pets and some items, depending on current combat conditions. It was originally developed by s0rCieR to replace melee-oriented functions typically used in macros. The current version has been added to, and maintained, by htw, while all the original code and work credit goes to s0rCieR.


Prerequisites

  1. You must have 1 point trained in any trainable combat skill (for example, kick) you would like to use
  2. You must have purchased the Alternate Ability you would like to use
  3. You must have scribed the tome for the Combat Discipline you would like to use
  4. You meet any prerequisites for the use of the ability (i.e. can't slam from a mount, can't bash without a shield or a two handed weapon and the AA ability, can't backstab without being behind target with a piercing weapon, etc.)
  5. MQ2MoveUtils v9+ plugin by pms is needed to use /stick parameters.
  6. MQ2Cast is required to cast spells, activate Alternate Abilities or click items (such as potions)
  7. Once you get a new skill, ability, etc., you must have it detected by using: /melee load, followed by /melee save

Features

  • Auto use abilities according to user settings and game conditions.
  • Auto-equip defined items for bashing, backstabbing or ranged attack.
  • Built in user conditions to restrain the use of certain abilities.
  • CHAT MONITORING:
    • Auto-stand on Failed/Broken Feign Death.
    • Monitoring of "Begin to Cast" messages for automatic Bash/Slam/Kick or casting of defined stuns.
    • Automatic turning on/off of Attack on Enrage/Infuriate.
  • MELEE:
    • Auto-equipping of weapon set(s) prior to engaging (agro/non-aggro sets).
    • Auto-use of defined combat or other abilities.
    • User-configurable /stick arguments.
  • MELEE (AGGRO MODE):
    • Auto Taunt when you lose aggro on target.
    • Configurable spells to cast to gain/maintain aggro.
  • MELEE (NON AGGRO MODE):
    • Back off/Feign/Evade fight if your health goes below a point.
    • Auto Resume fight if your health goes back above a point.
  • RANGED:
    • Toggle between Melee/Ranged mode according to Target distance.
    • Swap In/Out defined ranged items (bow/throwing).
    • Auto refill ammunition slot when less than 80 in a stack.
    • Built-in /throwit command you could use to pull (see below for explanation).
    • Auto-Sleep mode while autofire is on.
    • Configurable automatic facing of target.
  • PET HANDLING:
    • Issue /pet back and /pet hold after each mobs dies.
    • Configure pet to wait to assist till mobs within range.
    • Configure pet to wait for a specified time before assisting.
    • Pet mend if its life goes below a certain point.
    • Option to automatically re-engage target when no longer mezzed.
    • Backup pet on enrage/infuriate events and re-engaging of target.
    • Auto /pet hold if you manually hit back button or do /pet back.
  • USER DEFINED CONDITIONS:
    • Allows for conditional use of various abilities/disciplines.
    • Allows for customized actions based on conditional statements.
  • TOP-LEVEL OBJECTS:
    • Provides MQ2Data information for better macro integration and HUD designs.
    • Can be used with custom user-defined conditions.


  • Much more! Read up on all the options below.


Supported Abilities

Combat Skills

  • BackStab, Bash, Begging, Disarm, Dragon Punch, Eagle Strike, Feign Death, Flying Kick, Forage, Frenzy, Harm Touch, Hide, Intimidation, Kick, Lay Hands, Mend, Pick Pockets, Round Kick, Sense Traps, Slam, Sneak, Taunt and Tiger Claw. (see options list below for all supported skills)

Alternate Advancement Abilities

  • 2-Hand Bash, Call of Challenge, Escape, Feral Swipe, Mend Companion, Replenish Companion, Seized Opportunity, and Pet Discipline (/pet hold). (see options list below for all supported AA)

Melee Disciplines

  • Ancient: Chaos Cry, Ancient: Chaos Strike, Ashenhand Discipline, Assassin Discipline(3), Assassin Strike, Baffling Strike, Bazu Bellow, Bellow, Bellow of the Mastruq, Berate, Commanding Voice,Confusing Strike, ClawStriker Flurry(3), Cry Havoc, Daggerfall, Destroyer's Volley, Diversive Strike, Distracting Strike, Dragon Fang, Fists of Wu, Giant Slayer's Volley(3), Head Strike, Head Pummel, Head Crush, Heel of Kanji, Incite, Jarring Strike(3), Kyv Strike, Leopard Claw, Mind Strike, Provoke, Rage Volley, Rake, RazorArc, Scowl(3), Silentfist, Sneak Attack, Temple Blow(3), Thief's Eye, Thief's Vengeance, Throw Stone, and Thunderkick. (see options list below for all supported CA)

Detected Disciplines

The following Disciplines are detected to promote some combat abilities:

  • Ashenhand Discipline, Assassin Discipline(3), Heel of Kanji, Silentfist Discipline, Thunderkick Discipline, and Cleave. (see options list below for all supported CA)

Spell Handling

  • Provoke can be configured to cast any AA, disc or spell. It will auto-detect if you lose aggro, and then attempt to use any of the defined spells to regain it.
    • To determine the proper Spell ID for any Discipline, Alternate Ability or Spell to be used with the provoke/stun commands use one of the following commands:
      • For Disciplines use: /echo ${Me.CombatAbility[${Me.CombatAbility[<disc>]}].ID}, replacing <disc> with the name of the Discipline.
      • For AAs, use /aa info <AA name>. The first number (before the AA name) is the Spell ID.
      • For Spells, use /echo ${Spell[<spell>].ID}, replacing <spell> with the spell name.
    • Alternatively (for spells, discs, and items, but NOT aa's!), you can look on Lucy for the discipline/spell/AA and get the ID from there.
    • Some common discipline IDs are listed below:
      • Ancient Chaos Cry [id=5016]
      • Bazu Bellow [id=6173]
      • Bellow [id=4681]
      • Bellow of the Mastruq [id=5015]
      • Berate [id=4682]
      • Incite [id=4697]
      • Mock [id=8467]
      • Provoke [id=4608]
      • Crippling Strike [id=468]
  • Stuns can also be configured to cast any AA, disc or spells when MQ2Melee detects that your target begins to cast a spell.
  • Provoke and Stun have built-in values, but they can always be overwritten using the command line (eg. /melee provoke0=5015) or by editing the provoke0 setting in the INI file and then typing /melee load in game.

Commands

  • Most of these commands change your character's INI file in your MacroQuest2 directory as server_character.ini . Please see the INI File section for more details.
  • All [on|off] options listed below are controlled with on or off as the argument used to enable or disable the option, however true or 1 can be used in place of on, and false or 0 can be used in place of off.
    • Example: /melee on aggro=on taunt=on kick=1 bash=0 intimidation=false disarm=true
  • /melee by itself will list all abilities and settings that are available to you. Some settings are dependent on others being active, so may not show up until you enable the prerequisite option.
  • To find the relevant Item IDs for the various options, you can use the following command:
    • /echo ${FindItem[=<item>].ID}, replacing <item> with the name of the item you are looking for (no need to use quotes). Eg. /echo ${FindItem[=Blade of Carnage].ID} results in "25210".
  • /melee load
    Any changes you make manually by editing your INI file, if you are already in-game, will not be seen by MQ2Melee. You can force it to see these changes by using /melee load. This will load all options from the INI file, including any holyshits, downshits, or various if* options. This is also required if you scribe or purchase an upgrade to a spell/ability/disc/aa in game.
  • /melee save
    Changes to mq2melee options via the /melee command in-game, are not automatically saved. You must tell mq2melee to save, if you want any changed options to persist the next time you load EQ/MQ2. The save command will save all current options to the INI file. Any downshit, holyshit, or various *if options will not be affected.
  • /melee reset
    This will turn off attack, and reset melee engagement variables (stop stick, combat, etc.).
  • /melee key
    Displays the bound melee keys - attack, melee, range.


/melee [options]

  • [on|off]
    Turns plugin On/Off.
  • affiliation=[0-100]
    Uses the Weapon Affiliation/Weapon Bond/Weapon Covenant disc if endurance is over this %.
  • aggro=[on|off]
    Plugin tries to keep aggro on target using all enabled aggro abilities/disciplines until aggro is regained, or either you or the target dies (WAR/PAL/SHD only for regaining aggro). For some other class skills/discs/etc., this is required to be on or off to enable their use (it will be noted in the specific skill/disc entry in this wiki).
  • aggropri=[Item ID]
    Item ID for primary weapon to be used in aggro mode.
  • aggrosec=[Item ID]
    Item ID for secondary weapon to be used in aggro mode.
  • agony=[on|off]
    Will use Ragged Bite of Agony AA.
  • ancestral=[0-100]
    Will use Ancestral Guard AA if health below set percent (0=disable).
  • ancients=[0-100]
    Will use Call of the Ancients AA if health below set percent (0=disable).
  • anger=[on|off]
    Will use Blast of Anger AA.
  • arrow=[Item ID]
    Item ID of ammunition to use for ranged/throwing attacks.
  • assassinate=[on|off]
    Activate the assassinate skill (ie. Sneak, Hide, move behind target, activate Strike disc, backstab).
  • assault=[0-100]
    Will use Assault/Battery/Onslaught/Incursion/Barrage disc if endurance above this %.
  • attention=[on|off]
    Will use the disc: War=Undivided/Unbroken/Unflinching Attention, Pal=Undivided/Unbroken/Unflinching Affirmation, SK=Undivided/Unbroken/Unflinching Acrimory.
  • attraction=[0-100]
    Uses the Forceful Attraction disc if endurance is over this % (see option attractionat).
  • attractionat=[0-100]
    Controls when to use the attraction option (Forceful Attraction disc), if it is on. If your target's health is below this value (%), and attraction option is set and passes endurance test, Forceful Attraction will be used.
  • auspice=[0-100]
    Will use Warrior's Auspice/Bulwark disc if endurance above this %.
  • backoff=[0-100]
    Turns attack off if your life percentage goes below the designated value. Will never back off due to low health if aggro=on.
  • backstab=[on|off]
    Will try to backstab if you wielding a piercing weapon in your main hand (or have poker option set properly) and you are behind the target.
  • bane=[on|off]
    Will use Banestrike AA.
  • barbed=[0-100]
    Will use Barbed/Biting Tongue disc if endurance above this % (aggro and taunt options must be on).
  • bash=[on|off]
    Will try to bash target if you have a shield equipped or you have a 2-handed weapon and the 2 Hand Bash AA. If shield option is set, swap will take place for bash.
  • battlefrenzy=[0-100]
    Will use Battle Frenzy/Combat Frenzy/Fighting Frenzy/Steel Frenzy/Fearless Frenzy/Augmented Frenzy/Fearless Frenzy/Amplified Frenzy/Stormwild Frenzy disc if endurance above this %.
  • battleleap=[on|off]
    Will use Battle Leap/Battle Stomp AA.
  • begging=[on|off]
    Will turn attack off and beg target and turn back on.
  • beta=[on|off]
    If on, enables any beta code/options. Refer to forums for details.
  • bfeigndelay=[0+]
    Delay in milliseconds to wait after broken feign death (0=no delay).
  • blade=[0-100]
    Will use Toxic Blade/Asp Blade/Reefcrawler Blade disc if endurance above this %.
  • bladeguard=[on|off]
    Will use Blade Guardian AA.
  • blades=[0-100]
    Will use Storm of Blades/Squall of Blades/Gale of Blades/Blizzard of Blades disc if endurance above this %.
  • bladespurs=[0-100]
    Will use Reflexive Bladespurs disc if endurance above this %.
  • bleed=[0-100]
    Uses Bleed/Wound/Lacerate/Gash/Hack disc if endurance is over this %.
  • blindfury=[on|off]
    Will use Blinding Fury AA.
  • bloodblade=[on|off]
    Will use Blood Hatchet/Blood Axe/Blood Blade/Blood Brand disc.
  • bloodfury=[on|off]
    Will use Bloodfury AA.
  • bloodlust=[0-100]
    Uses Shared Bloodlust/Shared Brutality/Shared Savagery/Shared Viciousness/Shared Cruelty disc if endurance is over this %. If Cry Havoc is enabled, will only fire after Cry Havoc does.
  • bloodpact=[on|off]
    Will use Blood Pact AA.
  • boastful=[on|off]
    Will use Boastful Bellow AA.
  • bolster=[0-100]
    Uses Bolstered Frenzy disc if endurance is over this % and health < 90%.
  • bow=[Item ID]
    Item ID for ranged weapon.
  • brace=[on|off]
    Will use Brace For Impact AA.
  • breath=[0-100]
    Uses the Moment of Calm/Moment of Tranquility/Moment of Placidity/Five Breaths/Six Breaths/Seven Breaths/Eight Breaths disc if endurance is below this % (out of combat).
  • bvivi=[0-100]
    Uses Bestial Fury Discipline/Empathic Fury/Bestial Vivisection/Bestial Rending/Bestial Evulsing/Bestial Savagery disc if endurance is over this %.
  • cacophony=[on|off]
    Will use Cacophony AA.
  • callchallenge=[on|off]
    Will use Call of Challenge AA.
  • cblade=[0-100]
    Uses the Crimson Blade/Scarlet Blade/Carmine Blade disc if endurance is over this %.
  • challengefor=[on|off]
    Activate Challenge/Trial/Charge/Confrontation/Provocation/Demand/Impose for Honor (Paladin) or Challenge/Trial/Charge/Confrontation/Provocation/Demand/Impose for Power (Shadowknight) spells once aggro has been established?
  • chaos=[on|off]
    Will use Vicious Bite of Chaos AA.
  • cloud=[0-100]
    Uses the Cloud of Fists disc if endurance is over this %.
  • commanding=[0-100]
    Uses Commanding Voice disc if endurance is over this %.
  • compsac=[0-100]
    Use Companion's Sacrifice AA if your health is at or below given health %, and you have a pet.
  • crane=[0-100]
    Uses Crane Stance disc if endurance is over this %.
  • crescendo=[on|off]
    Will use Sionachie's Crescendo AA.
  • cripple=[on|off]
    Will use Crippling Strike AA.
  • cryhavoc=[0-100]
    Uses the Cry Havoc/Cry Carnage disc if endurance is over this %.
  • cstrike=[on|off]
    Will use Chameleon Strike AA.
  • curse=[0-100]
    Uses Curse of the Thirteen Fingers/Curse of the Fourteen Fists/Curse of the Fifteen Strikes disc if endurance is over this %.
  • defense=[0-100]
    Uses the Bracing/Staunch/Stalwart/Steadfast/Stout Defense disc if endurance is over this %.
  • defer=[0-100]
    Uses the Delay/Defer/Deny/Decry/Forestall/Refuse Death disc if your health is below this %.
  • disarm=[on|off]
    Will try to disarm target if target is wielding a weapon.
  • disconcert=[0-100]
    Uses Disconcerting Discipline if endurance is over this %.
  • downflag[#]=[on|off]
    Whether or not to use defined downshit# from ini. You can have up to 64 downshits, so the flags would be downflag0 through downflag63, which would correspond to associated downshits downshit0 through downshit63. downshits must be put into your INI manually, so after you edit your downshit options, and save them, you can initially do a '/melee load' to make mq2melee see your newly saved downshits, and then you can toggle any of those on/off with these downflag options. downshits are ONLY evaluated & executed during mq2melee NON-combat mode.
  • dragonpunch=[on|off]
    Will use dragon punch if available.
  • eaglestrike=[on|off]
    Will use eagle strike if available.
  • elbowstrike=[0-100]
    Uses the Elbow Strike disc if endurance is over this %.
  • enmity=[on|off]
    Will use Ageless Enmity AA.
  • enrage=[on|off]
    Turns attack off if target enrages and you are facing it. Automatically re-engages when enrage ends or if you are behind the target.
  • enragingkick=[0-100]
    Uses the Enraging Crescent Kicks/Enraging Heel Kicks disc if endurance is over this %.
  • escape=[0-100]
    Turn off Attack and use rogue escape AA if your life percentage goes below the designated value. Will never happen if aggro=on.
  • evade=[on|off]
    Will attempt to evade in combat to drop some aggro each time the hide skill is available. It is strongly suggested that you set unhide=1 to authorize plugin to break hide and rejoin the fight. Will never happen if aggro=on.
  • facing=[on|off]
    Whether or not to face target (checked every 2 seconds and only in ranged mode).
  • falls=[on|off]
    (Monk only) Auto-feign to reduce aggro?. Will never happen if aggro=on.
  • fang=[0-100]
    Uses Zalikor's Fang disc if endurance is over this %.
  • fblades=[0-100]
    Will use Focused Storm of Blades/Focused Squall of Blades/Focused Gale of Blades disc if endurance above this %.
  • fclaws=[0-100]
    Uses Flurry of Claws/Tumult of Claws/Clamor of Claws/Storm of Claws disc if endurance is over this %.
  • fcclaws=[0-100]
    Uses Focused Clamor of Claws disc if endurance is over this %.
  • feigndeath=[0-100]
    Feigns death if your life percentage goes below this value. Will never feign if aggro=on.
  • fieldarm=[0-100]
    Uses Field Armorer/Outfitter/Defender/Guardian/Protector disc if endurance is over this %.
  • fierce=[on|off]
    Will trigger Fierce Eye AA.
  • fist=[0-100]
    Uses the Whirlwind Discipline/Intercepting Fist disc if your health is below this %.
  • fistsofwu=[0-100]
    Uses the Fists of Wu disc if endurance is over this %.
  • fkick=[on|off]
    Will trigger Ferocious Kick AA.
  • flash=[0-100]
    Uses Flash of Anger disc if endurance is over this %.
  • flinch=[0-100]
    Uses the Flinch/Reflex disc if your health is below this %.
  • flyingkick=[on|off]
    Will use flying kick if available.
  • forage=[on|off]
    Will try to forage up food/water if not in combat (will not auto-inventory it, you will need to use MQ2Cursor or MQ2AutoDestroy or similar method to handle foraged items).
  • forsaken=[on|off]
    Will try to use Rage of the Forsaken AA if available.
  • frenzy=[on|off]
    Will try to use frenzy if available.
  • frenzyspirit=[on|off]
    Will try to use Frenzy of Spirit AA if available.
  • fundament=[on|off]
    Will use Spire of (class specific name). Note that this is a combat option, so if you have a non-melee class not engaged, it will not fire. You would need to engage with /killthis or the melee attack key (default=z).
  • fury=[on|off]
    Will use Warlord's Fury AA (must have aggro=on).
  • gblade=[0-100]
    Uses the Gouging/Gashing/Lacerating Blade disc if endurance is over this %.
  • gift=[0-100]
    Use Warder's Gift AA if your health is at or below given health %, and you have a pet.
  • glory=[0-100]
    Will use Resplendent Glory AA if your health is at or below the given %.
  • gouge=[on|off]
    Will use Eye Gouge AA as it refreshes.
  • groupcheck=[on|off]
    Use aggro control/provoke options only when grouped?
  • gutpunch=[on|off]
    Will try to use Gut Punch AA if available.
  • harmtouch=[on|off]
    Will try to use Harm Touch skill if available.
  • heel=[0-100]
    Will try to use Heel of Kanji/Kai/Kojai/Zagali disc if endurance is over this %.
  • hiatus=[0-100]
    Use Hiatus/Relax disc if endurance falls below this % (out of combat). If set to 0, disabled.
  • hide=[on|off]
    Will try to hide if you're not in a combat and not moving.
  • hidedelay=[0+]
    Delay in milliseconds to wait after end of combat before hiding (0=no delay).
  • holyflag[#]=[on|off]
    Whether or not to use defined holyshit# from ini. You can have up to 64 holyshits, so the flags would be holyflag0 through holyflag63, which would correspond to associated holyshits holyshit0 through holyshit63. holyshits must be put into your INI manually, so after you edit your holyshit options, and save them, you can initially do a '/melee load' to make mq2melee see your newly saved holyshits, and then you can toggle any of those on/off with these holyflag options. holyshits are ONLY evaluated & executed during mq2melee combat mode.
  • humility=[0-100]
    Uses the Guard of Piety/Guard of Humility/Guard of Righteousness/Armor of Righteousness/Armor of Decorum/Armor of Endless Honor/Armor of Courage/Armor of Zeal/Armor of Reverence disc if endurance is over this %.
  • impenetrable=[0-100]
    Uses the Stonestance Discipline/Earthwalk Discipline/Impenetrable Discipline/Earthforce Discipline if your health is below this % and you have aggro.
  • imperator=[on|off]
    Will try to use Imperator's Command AA if available.
  • indignation=[0-100]
    Will use Righteous Indignation/Righteous Vexation/Righteous Umbrage disc if endurance above this %.
  • infuriate=[on|off]
    Turns attack off if target infuriates and you are facing it. Re-engages when infuriate ends or if you are behind the target.
  • intimidation=[on|off]
    Will use intimidation if available.
  • jolt=[0-#]
    Jolt every # of hits (0=off). This is a de-agro routine, for BER (Divertive Strike/Distracting Strike/Confusing Strike/Baffling Strike/Jarring Strike/Jarring Smash/Jarring Clash/Jarring Slam/Jarring Blow/Jarring Crush disc), RNG (Jolt/Jolting Blades/Cinder Jolt spell, or Jolting Kicks/Snapkicks/Frontkicks/Hook Kicks/Crescent Kicks/Heel Kicks/Cut Kicks disc), ROG (Imperceptible/Indiscernible Discipline), and BST (Roar of Thunder AA). NOTE: jolt will not be used if you have aggro=on set.
  • juggernaut=[on|off]
    Will try to use Juggernaut Surge AA if available.
  • jugular=[0-100]
    Uses the Jugular Slash/Slice/Sever/Gash/Lacerate/Hack disc if endurance is over this %.
  • kick=[on|off]
    Will use kick if available.
  • kneestrike=[on|off]
    Will use Knee Strike AA if available.
  • knuckle=[0-100]
    Uses the Knuckle Smash/Crush/Snap/Break disc if endurance is over this %.
  • layhand=[0-100]
    Use Lay on Hands AA or Lay Hands skill on myself when my HP falls below this %.
  • leechtouch=[0-100]
    Will use Leech Touch AA when my HP falls below this %.
  • leopardclaw=[0-100]
    Will use Leopard Claw/Dragon Fang/Clawstriker's Flurry/Wheel of Fists/Whorl of Fists/Six-Step Pattern/Seven-Step Pattern/Eight-Step Pattern disc when endurance is over this %.
  • lifetap=[0-100]
    Will cast a Life Tap spell (best in series) when my HP falls below this %.
  • melee=[on|off]
    Turn Melee Mode On/Off.
  • meleeadjust=[0-#]
    Additional distance units added to auto-calculated combat distance (distance to be considered in melee range).
  • meleepri=[Item ID]
    Item ID for primary weapon to be used in non-aggro mode.
  • meleesec=[Item ID]
    Item ID for secondary weapon to be used in non-aggro mode (meleepri must also be set)
  • mend=[0-100]
    Mend wounds if your HP goes below this %.
  • modrod=[0-100]
    Use a mod rod when mana is below 'this %. 0 to disable. Will not activate with health below 50%.'
  • monkey=[0-100]
    Uses the Drunken Monkey Style disc if endurance is over this %.
  • nodown=[on|off]
    If this option is on, no downshits will execute regardless of any downflag that is set.
  • noholy=[on|off]
    If this option is on, no holyshits will execute regardless of any holyflag that is set.
  • opfrenzy=[0-100]
    Will use Overpowering/Overwhelming/Conquering/Vanquishing/Demolishing Frenzy disc if endurance is above this %.
  • opportunisticstrike=[0-100]
    Will use Opportunistic Strike/Strategic Strike/Vital Strike/Calculated Strike disc if endurance above this %. Additionally the mob needs to be <=20% health to fire.
  • override=[on|off]
    Normally, mq2melee will turn off attack if you change targets. Set this to off to change that behavior. Be aware that after killing a new target, it will swap back and continue killing the previous target.
  • palm=[on|off]
    Uses the Crystalpalm/Diamondpalm/Terrorpalm disc when available.
  • petassist=[on|off]
    Will send pet in to attack on mob engagement (and backoff on enrage/infuriate if those options are enabled). The plugin will also use /pet hold if you have that AA.
  • petassistat=[0-100]
    Will not send pet to attack until mob is at or below this health. Set to 0 to disable this and send pet immediately (if petassist=on).
  • petback=[on|off]
    Whether to issue /pet backoff commands or not.
  • petdelay=[0-30]
    Will not send pet to attack until this many seconds have passed.
  • petenrage=[on|off]
    Issues /pet hold (/pet back if hold not available) if target enrages. Automatically has pet re-engage when enrage ends.
  • pethold=[on|off]
    Will use /pet hold, if available.
  • pethot=[0-100]
    Cast "Companion's Blessing" if pet is at or below given health % (petmend option will be used before pethot, if both are on).
  • petinfuriate=[on|off]
    Issues /pet hold (/pet back if hold not available) if target infuriates. Automatically has pet re-engage when infuriate ends.
  • petmend=[0-100]
    Cast "Mend Companion" or "Replenish Companion" if pet is at or below given health % (petmend option will be used before pethot, if both are on).
  • petrange=[0-150]
    Will not engage pet until mob is within this range of your pet.
  • phantom=[0-100]
    Uses the Phantom Assassin/Phantom Assailant/Phantom Aggressor/Phantom Partisan/Phantom Pummeling disc if endurance is over this %.
  • pickpocket=[on|off]
    Turn off attack & try to use the pick pockets skill if not in aggro mode (aggro=off).
  • pinpoint=[0-100]
    Uses the Pinpoint Vulnerability/Weaknesses/Vitals/Flaws/Liabilities/Deficiencies disc if endurance is over this %.
  • plugin=[on|off]
    Turn plugin on/off. This lets you turn off all mq2melee processing without unloading the plugin.
  • poker=[Item ID]
    Item ID for backstabbing weapon. Will be swapped in before backstabbing if necessary. You must have at least 1 giant class bag with at least 1 slot available for this to work (safety measure for dropping items).
  • pothealfast=[0-100]
    Use fast heal potion (Distillate of Divine Healing) when your HP falls below this % (default=30).
  • pothealover=[0-100]
    Use heal over time potion (Distillate of Celestial Healing) when your HP falls below this % (default=60).
  • protect=[0-100]
    Warrior will use /shield, or Beastlord will use Protective Spirit disc or Ancestral Aid AA, on lowest HP group member if their health is below this %.
  • provoke0=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for provoking (0=off). provokemax must be set, and aggro must be on. This provoke skill is autodetected for: Warrior: Provoke, Bellow, Berate, Incite, Bellow of the Mastruq, Ancient Chaos Cry, Scowl, Sneer, Jeer, Scoff, Scorn, Ridicule, Insult, Slander, Aggravate. SK: Terror of Darkness/Shadows/Death/Terris/Thule/Discord/Vergalid/the Soulbleeder/Jelvalak/Rerekalen/Desalin/Poira/Narus. For Paladin AA, Monk, and Ber: See stun0 (below).
  • provoke1=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for provoking (0=off). provokemax must be set, and aggro must be on. This provoke skill is autodetected for paladin spell line the same as stun1 (see stun1 below here). For Warrior: Bazu Bellow, Bazu Bluster, Bazu Roar, Grendlaen Roar, Krondal's Roar, Cyclone Roar.
  • provoke2=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for provoking (0=off). provokemax must be set, and aggro must be on. This provoke skill is NOT autodetected, but if configured, will be used first (before provoke0 or provoke1).
  • provokeend=[0-100]
    Stop trying to provoke when target's health falls below this %.
  • provokemax=[0-###]
    Number of times you will try provoking aa/disc/spells to regain aggro (default=1). 0 = PROVOKE OFF, even if you have provoke0, provoke1, or provoke2 set! Set to some high number to just keep provoking. Remember you must have aggro turned on.
  • provokeonce=[on|off]
    Only use provoke once to attempt to gain aggro.
  • puncture=[0-100]
    Uses the Disassociative Puncture disc if your endurance is over this %.
  • quicktime=[on|off]
    Will use Quick Time AA.
  • ragevolley=[0-100]
    Will use Rage Volley/Destroyer's Volley/Giantslayer's Volley/Annihilator's Volley/Decimator's Volley/Eradicator's Volley/Savage Volley/Sundering Volley/Brutal Volley/Demolishing Volley disc if endurance is above this %.
  • rake=[0-100]
    Use Rake/Harrow/Foray/Rush/Barrage/Pummel/Maul/Mangle/Batter disc when endurance is above this %.
  • rallos=[0-100]
    Use Axe of Rallos/Axe of Graster/Axe of Illdaera/Axe of Zurel/Axe of Numicia disc when endurance above this %.
  • rally=[0-100]
    Uses the Lionhearted Rally-Cry disc if your target health is under this %.
  • range=[0-250]
    Enables ranged attacks when target is within this range. Target must still be > 35 distance, and outside melee engagement range. Note that 0 disables ranged attacks completely.
  • rending=[0-100]
    Uses the Reflexive Rending disc if your endurance is over this %.
  • resilience=[on|off]
    Will use Uncanny Resilience AA if on.
  • resolve=[0-100]
    Uses the Frenzied Resolve disc if your endurance is over this %.
  • respite=[0-100]
    Use Respite/Reprieve/Rest/Breather disc if endurance falls below this % (out of combat). If set to 0, disabled.
  • resume=[0-100]
    Stand up and turn back attack on if your life percentage goes above this value. Used with feigndeath option. Set to 100 to turn off. You must have aggro=off for this to work.
  • retaliation=[0-100]
    Uses the Conditioned/Reflexive Retaliation disc if endurance is over this %.
  • retaliation2=[0-100]
    Uses the Early/Advanced/Prior/Proactive/Premature Retaliation disc if endurance is over this % (and health required to be below 90%).
  • ritual=[0-100]
    Uses the Ritual Scarification disc if endurance is over this %.
  • roar=[0-100]
    Use Rallying Roar/Roar of Challenge disc when endurance above this %.
  • roaring=[on|off]
    Will use Roaring Strike AA if on (aggro must be turned on).
  • roundkick=[on|off]
    Will use the Round Kick skill if available.
  • rune=[0-100]
    Will use Armor of Draconic Runes/Armor of Timeworn Runes/Armor of Phantasmic Runes/Armor of Mystical Runes/Armor of Stalwart Runes/Armor of Darkened Runes disc if your health is below this %.
  • sapping=[0-100]
    Uses the Sapping Strikes disc if endurance is over this %.
  • scaledfist=[0-100]
    Will use Ashenhand Discipline/Scaledfist Discipline/Ironfist Discipline if endurance above this %.
  • sdagger=[0-100]
    Will use Shadow-Hunter's Dagger if endurance above this %.
  • selos=[on|off]
    Will use bard AA Selo's Kick if available.
  • sensetraps=[on|off]
    Will try to sense traps if not in combat.
  • shield=[Item ID]
    Item ID of shield to use for bashing
  • shieldnote=[0-100]
    Will use Shield of Notes AA if your health is below this %.
  • shout=[0-100]
    Will use Harassing Shout/Tormenting Shout disc if endurance above this %. aggro=on must be set.
  • slam=[on|off]
    Will slam as often as possible.
  • slap=[0-100]
    Will use Slap In The Face/Kick In The Teeth/Punch In The Throat/Kick in the Shins/Sucker Punch disc when ready and target is in range and your endurance is above this %. Note: As this is an out of combat engage style attack, it will only fire on first engagement of a mob - and ONLY if you use the mq2melee attack key (default is z) to engage, or /killthis. Using EverQuest's built in key binding to attack, or Attack hotbutton, will not fire this.
  • sneak=[on|off]
    Will try to sneak if not in combat.
  • sneakdelay=[0+]
    Delay in milliseconds to wait after end of combat before sneaking (0=no delay).
  • spirit=[0-100]
    Will use Spirit Call AA if target life is below this %.
  • standup=[on|off]
    Will stand you if when you are feigning. Only used if aggro and/or resume options are on.
  • steely=[on|off]
    Will use Steely/Stubborn/Stoic/Steadfast Stance/Staunch Stance spell if available.
  • stickbreak=[on|off]
    If on, it will allow you to break stick with keyboard movement keys.
  • stickdelay=[0-###]
    Wait this many seconds before sticking to target after target is in stick range. 0=no delay
  • stickmode=[0-2]
    If set to 1, it will use the stickcmd as defined in the INI file, if 0, it will use the default stick command. If set to 2, no stick commands are issued from the plugin.
  • sticknorange=[on|off]
    If on, no range checking is done with stick.
  • stickrange=[0+]
    Enables sticking when target is at set distance away (0=no sticking).
  • stomp=[on|off]
    Will use War Stomp AA if available.
  • storm=[on|off]
    Will use Eye of the Storm disc if available.
  • strike=[on|off]
    Whether to use your best sneak attack disc. If enabled, initial attack (backstab) may be a few seconds delayed while disc is readied. You must use the melee attack key (see Optional Global INI File section below), default is z, or /killthis to engage attack. If you do not, strike will not work. Strike line: Sneak Attack, Thief's Vengeance, Assassin's Strike, Kyv Strike, Ancient Chaos Strike, Daggerfall, Razor Arc, Swiftblade, Daggerlunge, Daggerswipe, Daggerstrike, Daggerthrust.
  • strikedelay=[0+]
    Delay in milliseconds to wait before engagement of rogue assassinate/strike script (0=no delay).
  • strikemode=[on|off]
    If on, it will use the strikecmd as defined in the INI file for rogue strike sticking. If off, it will use the default stick options the plugin determines.
  • stun0=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for stunning (0=off). This stun skill is autodetected for paladin AA, monk, rogue, and berserker. Paladin AA: Divine Stun, Hand of Disruption, Force of Disruption. Monk: Stunning Kick. Berserker: Head Strike, Head Pummel, Head Crush, Mind Strike, Temple Blow, Temple Strike, Temple Bash, Temple Chop, Temple Smash, Temple Crush. Rogue: Waylay, Ambush, Assail, Accost, Beset, Surprise Attack. This stun entry can't be changed, it is ONLY autodetected (or disabled).
  • stun1=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for stunning (0=off). This stun skill is autodetected for paladin stun line only. Paladin Spell: Cease, Desist, Stun, Holy Might, Force, Force of Akera, Quellious' Word of Tranquility, Force of Akilae, Quellious' Word of Serenity, Ancient Force of Chaos, Force of Piety, Serene Command, Ancient Force of Jeron, Sacred Force, Lesson of Penitence, Force of Prexus, Solemn Force, Lesson of Contrition, Force of Timorous, Devout Force, Lesson of Compunction, Force of the Crying Seas, Earnest Force, Lesson of Repentance, Force of Marr, Zealous Force, Lesson of Remorse, Force of Oseka, Reverent Force, Lesson of Sorrow, Force of Reverence, Force of the Iceclad, Force of Abrogation. Classes other than paladin can put a skill/aa/spell/disc ID here to use.
  • stun2=[Disc/AA/Spell ID #]
    ID of the Disc/AA/Spell to use for stunning (0=off). This stun skill is NOT autodetected, but if configured, will be used first (before stun0 or stun1).
  • stunning=[0-100]
    Cast defined Stun spell(s) if target HP is at or below this % and/or if it is detected that target is casting a spell.
  • stunningkick=[on|off]
    Uses the Stunning Kick AA if available. Will always check availability after calanin's synergy line, if synergy=on.
  • synergy=[0-100]
    Will use Calanin's/Dreamwalker's/Veilwalker's/Shadewalker's Synergy/Doomwalker's Synergy disc if endurance above this %.
  • taunt=[on|off]
    Will push taunt button if aggro=on and you're not the target's target. Without a tauntif statement, this will cause your toon to chain taunt. If you do not wish for that, use a tauntif command (see below).
  • thiefeye=[0-100]
    Uses the Thief's Eye/Thief's Vision disc if endurance is over this %.
  • throatjab=[on|off]
    Will try to use Throat Jab disc if available.
  • throwstone=[0-100]
    Will use Throw Stone disc when ready and target in range, and endurance above this %. Note: Will not use in aggro/provoke mode if provoke has not been used yet.
  • tigerclaw=[on|off]
    Will try to use Tiger Claw if available.
  • timebleed=[0-100]
    Uses the No Time To Bleed/Pain Doesn't Hurt disc if endurance is over this %.
  • topple=[0-100]
    Uses the Shield Topple/Shield Break disc if endurance is over this %. If opportunisticstrike=on, that will fire first if target health <= 20%.
  • tune=[on|off]
    Will use A Tune Stuck In Your Head AA.
  • twistedshank=[on|off]
    Will try to use Twisted Shank AA if available.
  • usetwist=[on|off]
    Will use MQ2Twist twisting detection for bard downshit evaluation.
  • vehement=[on|off]
    Will use the Vehement Rage AA. Must have aggro=on
  • veil=[on|off]
    Will try to use Veil of Darkness AA if available.
  • vigaxe=[0-100]
    Will use Vigorous Axe Throw/Energetic Axe Throw/Spirited Axe Throw/Brutal Axe Throw/Demolishing Axe Throw disc if endurance above this %.
  • vigdagger=[0-100]
    Will use Vigorous Dagger-Throw/Vigorous Dagger-Strike/Energetic Dagger-Strike/Energetic Dagger-throw/Exuberant Dagger-throw disc if endurance above this %.
  • vigshuriken=[0-100]
    Will use Vigorous Shuriken disc if endurance above this %.
  • warcry=[0-100]
    Will try to use War Cry of the Braxi AA if target health is at or below this %.
  • wasp=[on|off]
    Will use Two-Finger Wasp Touch AA if available.
  • wblades=[on|off]
    Will use the warrior disc: Whirlwind Blade/Cyclone Blade/Vortex Blade/Whorl Blade/Maelstrom Blade/Wheeling Blades/Cyclonic Blades/Stormwheel Blades/Stormstrike Blades/Dragonstrike Blades
  • whistle=[0-100]
    Will use Zan Fi's Whistle AA if endurance above this %.
  • wind=[0-100]
    Will try to use Second Wind/Third Wind/Fourth Wind/Fifth Wind/Sixth Wind/Seventh Wind disc if endurance is above this %.
  • withstand=[0-100]
    Will try to use Withstand/Defy/Renounce/Reprove/Repel disc if endurance above this %.
  • yaulp=[on|off]
    Will use Yaulp spell or AA.



/killthis

This command is generally to be used within macros, to tell the plugin that you want to engage the current target. If you are feigning death, this will stand you up. It will also reset all the plugin's internal values. If you play your toon manually you don't need to use this command at all, just press the melee attack key (default z). /killthis is mainly for use in macros, but you can use it via button assignment if you wish. See the section in this wiki on key customization (default z), for attack engagement with mq2melee, which does the same thing as /killthis does, but with a keypress instead of a / command.

/throwit

Tells the plugin to perform a single ranged attack on current target. This will use MQ2Melee's Built-In Enhanced Ranged Mode(tm)!, meaning it will do the following:

  1. Equip the defined ammunition and ranged item
  2. Refill ammunition
  3. Perform archery/throwing
  4. Swap back previous range item

/enrageon [<targetid>]

Tells the plugin to react as if there was an enrage event being detected.

  • If target ID is given it will make sure it matches internal killing target id.
  • This was designed to be used with 3rd party plugins and/or macros.
    • For example: using MQ2Events with MQ2EQBC, create a trigger to detect that the target is ENRAGED. Then set it to broadcast via MQ2EQBC "/bca //enrageon ${Target.ID}". This will allow casters that might be too far from melee to detect that the mob is enraged and back up their pet!

/enrageoff [<targetid>]

Tells plugin to react as if an enrage event has finished.

/infuriateon [<targetid>]

Same functionality as /enrageon, but for Infuriate.

/infuriateoff [<targetid>]

Tells plugin to react as if an infuriate event has finished.

/meleedebug

Causes MQ2Melee to toggle sending output MQ2 ChatWnd text to a file in your Logs dir, called MQ2Melee_Debug.log. If you need to turn on various debug (show) options, but spam makes it hard to see, you can turn this option on and then later review the log file. The Logs file dir for MQ2, is usually either your main MQ2 directory, or a subdirectory called Logs under your MQ2 main directory. This location is configuration via the macroquest.ini file. NOTE: Each time you turn this option ON, it will clear all contents of the MQ2Melee_Debug.log file.

/clickbelt

Causes MQ2Melee to click your potion belt entry. Format is: /clickbelt ButtonNumber
Example: /clickbelt 2

Top-Level Objects

  • bool ${Melee}
    Is MQ2Melee loaded?
  • bool ${Melee.AggroMode}
    Operating in Aggro mode?
  • int ${Melee.Ammunition}
    Count of defined ammunition (ID defined by option 'arrow' value) in your ammo slot, or if ammo slot is not 'arrow' ID, then total in inventory (bags) for ID 'arrow'.
  • string ${Melee.Animation}
    Pet animation as seen by plugin. NOPET, ATTACK, IDLE, or UNKNOWN.
  • string ${Melee.AnimationInfo}
    String of data used to help with defining pet animations.
  • int ${Melee.AnimationValue}
    Actual animation value for your pet's spawn to help with defining pet animations.
  • bool ${Melee.Attack}
    Attack on?
  • float ${Melee.BackAngle}
    Angle representing heading difference with current target's back.
  • bool ${Melee.BackStabbing}
    Backstabbing enabled?
  • bool ${Melee.Behind}
    Are we behind target?
  • int64 ${Melee.Casted}
    Time (in milliseconds) elapsed since last detected spell casting (60000 if none). Must have a valid kill target.
  • bool ${Melee.Combat}
    Is plugin enabled and we have a valid kill target? (Should replace ${Me.Combat} use)
  • int ${Melee.DiscID}
    Spell ID of currently running discipline, 0 if none.
  • float ${Melee.Distance}
    Distance to target.
  • bool ${Melee.Enable}
    Is MQ2Melee plugin enabled?
  • bool ${Melee.Engage}
    Do we have a valid kill target and it's okay to turn attack on?
  • bool ${Melee.Enrage}
    Is kill target enraged?
  • bool ${Melee.FDFail}
    Feign Death failure detected?
  • bool ${Melee.Fundament}
    Do we have AA Spire of XXX?
  • bool ${Melee.GotAggro}
    Does our current target seem to be aggro'd on us?
  • bool ${Melee.HaveSlam}
    Do we have the Slam skill? (skill must be assigned to either an ability or combat button in Alt-M menu)
  • int64 ${Melee.Hidden}
    Time (in milliseconds) since hiding was engaged.
  • bool ${Melee.Immobilize}
    Wave we been standing still for more then 250ms?
  • bool ${Melee.Infuriate}
    Is our target is infuriated?
  • float ${Melee.MDist}
    Calculated target distance value for troubleshooting (target melee engage).
  • bool ${Melee.MeleeMode}
    Is the 'melee' option turned on?
  • float ${Melee.MKill}
    Calculated melee distance value for troubleshooting (target ability use).
  • int ${Melee.NumHits}
    Number of melee hits.
  • bool ${Melee.PetEnrage}
    Is our pet's kill target enraged?
  • bool ${Melee.PetInfuriate}
    Is our pet's kill target infuriated?
  • int ${Melee.RangeMode}
    Maximum distance to target to use ranged mode. (defaults to 250 unless option 'range' is set)
  • int64 ${Melee.Shield}
    Time (in milliseconds) since /shield was activated.
  • int64 ${Melee.Silent}
    Time (in milliseconds) since sneaking was activated.
  • int ${Melee.SlamID}
    Returns the button ID number for Slam if you have it assigned to a ability/combat button in Alt-M menu (1-6 for Ability tab, 7-11 for Combat tab).
  • spawn ${Melee.Spawn}
    Spawn struct of engaged mq2melee target. Any spawn struct member can be accessed, e.g., ${Melee.Spawn.Name}.
  • string ${Melee.Status}
    Current plugin status, can be one or more of the following: ENGAGED, WAITING, MELEE, RANGE, ATTACK, ENRAGE, INFURIATE, BACKING, ESCAPING, FEIGNING, EVADING, FALLING, STEALING, BEGGING, PETENRAGE, PETINFURIATE, FLAG.
  • string ${Melee.Stickarg}
    Current stick argument.
  • bool ${Melee.Sticking}
    Are we sticking to target?
  • int64 ${Melee.Synergy}
    Time (in milliseconds) since Calanin's Synergy line was activated.
  • int ${Melee.Target}
    SpawnID of current valid kill target, otherwise 0.
  • float ${Melee.ViewAngle}
    Angle of view with current target.
  • bool ${Melee.XTaggro}
    We we have 100% aggro on all of our XTargets?

Debugging TLOs:

  • string ${meleemcd[option]}
    Displays the final evaulated result of the option. Options are all the options that you could see with /melee (or listed in command section above). Examples are: bash, begging, taunt, holyflag0, holyflag1, downflag1, slam, etc. Echoing one of these options will show the final evaluated result.
  • string ${meleemcde[option]}
    Displays the default formula for the given option. Options are all the options that you could see with /melee (or listed in command section above). Examples are: bash, begging, taunt, holyflag0, holyflag1, downflag1, slam, etc. Echoing one of these options will show the default value, or formula, for the given option.
  • string ${meleemcse[option]}
    Displays the evaluation formula for the given option. Options are all the options that you could see with /melee (or listed in command section above). Examples are: bash, begging, taunt, holyflag0, holyflag1, downflag1, slam, etc. Echoing one of these options will show the formula used to determine if the option is available for use.
  • int ${meleemvb[idskill]}
    1 if the skill is ready and target in range, 0 if not, -1 if error (such as invalid variable). Most combat and/or character skills that can use an ID are testable here. Examples of idskills are: idleopardclaw, idslam, idforage, idfrenzy, idtigerclaw, idescape.
  • string ${meleemvcd[option]}
    Evaluates option
  • string ${meleemvcde[option]}
    Evaluates option
  • string ${meleemvcs[option]}
    Evaluates option
  • string ${meleemvcse[option]}
    Evaluates option
  • int ${meleemvi[variable]}
  • int ${meleemvid[variable]}
    Most abilities that autodetect (such as AA's, spells, discs) have an associated idXX variable name that relates to the option. For example, for the withstand option in mq2melee, the ID associated with it that is autodetected, would be idwithstand. For synergy, it would be idsynergy. The meleemvid TLO will allow you to see what, if any, ability number has been detected for that option. A result of 0, means that no ability for that option was detected. An example would be: /echo ${meleemvid[idwithstand]}, or /echo ${meleemvid[idstun0]}. A result of -1 means invalid option.
  • string ${meleemvs[option]}
    Evaluates option based on the current conditions and target. Options are all the INI options that contain command lines that need to be evaluated. Examples are: bashif, beggingif, tauntif, holyshit0, holyshit1, downshit1, slamif, etc. Echoing one of these options will show you how they evaluate.
  • string ${meleemvse[option]}
    Displays the evaluation formula for the given variable, and the evaluation result. You can check any of the 'if' options, or holyshits/downshits, with this TLO. Echoing one of these variables will show the formula used, as well as the current formula result.

INI File

MQ2Melee saves most options for each character in the INI file called <server>_<charname>.ini. Most options in the INI file are set using the command line (/melee command=on|off, or /melee "command=value") and they are best set this way, and not by editing the INI file. Any options given this way are then saved to the INI file when you issue the command /melee save. Options that contain macro commands are set by editing the INI file and then loading the values with /melee load.

"IF" Options

  • The following "IF" options can be set in the INI file. They will then be evaluated before the relevant disc/skill is triggered, and that evaluation must result in true, or else the disc/skill will not fire.
  • They all need to take the form of ${If[condition,1,0]} statements and must return an integer. Any return of 0 is considered FALSE, any other integer is considered TRUE.
Eg. ${If[${Me.Combat},1,0]} will return TRUE if you are in combat, FALSE otherwise.

  • affiliationif
  • agonyif
  • ancestralif
  • ancientsif
  • angerif
  • assaultif
  • attentionif
  • attractionif
  • auspiceif
  • backstabif
  • baneif
  • barbedif
  • bashif
  • battlefrenzyif
  • battleleapif
  • beggingif
  • bladeif
  • bladeguardif
  • bladesif
  • bladespursif
  • bleedif
  • blindfuryif
  • bloodbladeif
  • bloodfuryif
  • bloodlustif
  • bloodpactif
  • boastfulif
  • bolsterif
  • braceif
  • breathif
  • bviviif
  • cacophonyif
  • callchallengeif
  • cbladeif
  • challengeforif
  • chaosif
  • cloudif
  • commandingif
  • compsacif
  • craneif
  • crescendoif
  • crippleif
  • cryhavocif
  • cstrikeif
  • curseif
  • defenseif
  • deferif
  • disarmif
  • downshitif
  • dragonpunchif
  • eaglestrikeif
  • elbowstrikeif
  • enmityif
  • enrageif
  • enragingkickif
  • evadeif
  • fallsif
  • fangif
  • fbladesif
  • fclawsif
  • fcclawsif
  • feigndeathif
  • fieldarmif
  • fierceif
  • fistif
  • fistsofwuif
  • fkickif
  • flashif
  • flinchif
  • flyingkickif
  • forageif
  • forsakenif
  • frenzyif
  • frenzyspiritif
  • fundamentif
  • furyif
  • gbladeif
  • giftif
  • gloryif
  • gougeif
  • gutpunchif
  • harmtouchif
  • heelif
  • hiatusif
  • hideif
  • holyshitif
  • humilityif
  • impenetrableif
  • imperatorif
  • indignationif
  • infuriateif
  • intimidationif
  • joltif
  • juggernautif
  • jugularif
  • kickif
  • kneestrikeif
  • knuckleif
  • layhandif
  • leechtouchif
  • leopardclawif
  • lifetapif
  • mendif
  • modrodif
  • monkeyif
  • nodownif
  • noholyif
  • opfrenzyif
  • opstrikeif
  • overrideif
  • palmif
  • petenrageif
  • petinfuriateif
  • phantomif
  • pickpocketif
  • pinpointif
  • pothealfastif
  • pothealoverif
  • protectif
  • provokeif
  • punctureif
  • quicktimeif
  • ragevolleyif
  • rakeif
  • rallosif
  • rallyif
  • rendingif
  • resilienceif
  • resolveif
  • respiteif
  • retaliationif
  • retaliation2if
  • ridiculeif
  • ritualif
  • roarif
  • roaringif
  • roundkickif
  • runeif
  • scaledfistif
  • sdaggerif
  • selosif
  • sensetrapif
  • shieldnoteif
  • shoutif
  • slamif
  • slapif
  • smashif
  • sneakif
  • spiritif
  • steelyif
  • stompif
  • stormif
  • strikeif
  • stunningif
  • stunningkickif
  • synergyif
  • tauntif
  • thiefeyeif
  • throatjabif
  • throwstoneif
  • tigerclawif
  • timebleedif
  • toppleif
  • torrentif
  • tuneif
  • twistedshankif
  • vehementif
  • veilif
  • vigorousaif
  • vigorousdif
  • vigoroussif
  • warcryif
  • waspif
  • wbladesif
  • whistleif
  • windif
  • withstandif
  • yaulpif


  • Any 'if' option can have a note show next to it, as a hint when showing options with /melee. This is done by adding the option under the [MQ2Melee_Notes] section of your server_toonname.ini. Example:
[MQ2Melee_Notes]
withstandif=Only do this if in raid.


Other Options


  • stickcmd
This command takes a list of options that should be passed to the /stick command, if you are using stickmode=1. E.g., "hold 15" (see the MQ2MoveUtils wiki, for available stick command options).
You can put a note for display next to your stickcmd entry, as a hint when showing options with /melee. This is done by adding the option under the [MQ2Melee_Notes] section of your server_toonname.ini.
Example:
[MQ2Melee_Notes]
stickcmd=Keep behind the mob, and closer than the default melee distance.
  • strikecmd
This command takes a list of options that should be passed to the /stick command when engaging for the rogue strike/assassination scripting ONLY (if you are using strikemode=1). E.g., "!front 10" (see the MQ2MoveUtils wiki, for available stick command options).


  • downshit0-downshit63
Each one of these takes a macro command that will be run when you are not in combat. Remember, you have to enable each option with /melee downflag#=on.


  • holyshit0-holyshit63
Each one of these takes a macro command that will be run during combat. Remember, you have to enable each option with /melee holyflag#=on.


  • ShowAbility
Shows ability messages in mq2 chat window.
  • ShowAltAbility
Shows alt ability info messages in mq2 chat window.
  • ShowAttacking
Shows attack status messages in mq2 chat window.
  • ShowBash
Shows bash related messages in mq2 chat window.
  • ShowCasting
Shows casting messages in mq2 chat window.
  • ShowCombatAbility
Shows combat ability info messages in mq2 chat window.
  • ShowControl
Shows control messages in mq2 chat window.
  • ShowDebug
Shows various debugging messages in mq2 chat window.
  • ShowEnrageDebug
Shows enrage/infuriate detailed debugging messages in mq2 chat window.
  • ShowEnraging
Shows enrage/infuriate messages in mq2 chat window.
  • ShowFeign
Shows feign death messages in mq2 chat window.
  • ShowOverride
Shows override messages in mq2 chat window, such as target switching.
  • ShowProvoking
Shows provoke messages in mq2 chat window.
  • ShowSkills
Shows skill messages in mq2 chat window.
  • ShowSpecial
Shows special debug messages in mq2 chat window (version dependent).
  • ShowSticking
Shows sticking messages in mq2 chat window.
  • ShowStrike
Shows messages for the rogue strike/assassinate script.
  • ShowStunning
Shows stunning messages in mq2 chat window.
  • ShowSwitching
Shows melee/range mode changing messages in mq2 chat window.


  • CADelay
Artificial delay (in milliseconds) added to Combat Ability (disc) reuse.
  • AADelay
Artificial delay (in milliseconds) added to AA reuse.
  • SpellDelay
Artificial delay (in milliseconds) added to spell reuse.
  • SkillDelay
Artificial delay (in milliseconds) added to skill reuse.
  • PotionDelay
Artificial delay (in milliseconds) added to potion reuse.


  • HolyDelay
Artificial delay (in milliseconds) added between each individual holyshit (default=0).
  • HolyCycleDelay
Artificial delay (in milliseconds) added between each evaluation cycle of all holyshits (default=0).
  • DownDelay
Artificial delay (in milliseconds) added between each individual downshit (default=0).
  • DownCycleDelay
Artificial delay (in milliseconds) added between each evaluation cycle of all downshits (default=0).


  • version
Version of plugin in use at the time the last /melee save was executed.

HolyShit and DownShit

MQ2Melee supports up to 64 macro command lines that will be executed when one of the following conditions are true:

  • Holyshit:
Commands will be exectuted when in combat, no casting going on and the cursor is free.
  • Downshit:
Commands will be executed when not in combat, not casting and the cursor is free.

When setting these commands, you must be careful not to fall into an endless loop or create a spam war. Make sure that when your line finishes, it will set up something that will force it to be FALSE for a while!

Any holyshit or downshit can have a note show up next to it, when listing with /melee in game. Edit your server_toonname.ini and put descriptions under a section called [MQ2Melee_Notes] that look like:

downshit0=Only do in POK.
holyshit5=Only do in group.

Descriptions can be anything you like, as a note or reminder.

INI File Examples

  • Please Note: Use this section only for adding useful examples that can be included in the INI file, not for copy/pastes of the INI files themselves. Anyone can see what a default INI is by loading up the plugin, running /melee on, /melee save and then opening the INI file in Notepad. Remember, each flag must be activated in-game after being created (ie: /melee holyflag0=on).
; Swapping an Avatar-proccing weapon when needed.
; - The first line swaps your Ancient Prismatic Spear [id=29435] into your offhand if you don't already have it equipped and you don't have the Avatar buff
; - The second line swaps your Orcish Bone Axe [id=82634] back into your offhand if it's not equipped and you have the Avatar buff already
holyshit0=/if (${Me.Inventory[offhand].ID}==82634 && !${Me.Buff[avatar].ID} && ${Spell[avatar].Stacks} && (${Melee.AggroMode} && ${Melee.GotAggro})) /exchange 29435 offhand
holyshit1=/if (${Me.Inventory[offhand].ID}==29435 && (${Me.Buff[avatar].ID} || !${Spell[avatar].Stacks} || (${Melee.AggroMode} && !${Melee.GotAggro}))) /exchange 82634 offhand
; Activating the Area Taunt AA when multiple mobs in range
holyshit2=/if (${Melee.Combat} && ${SpawnCount[npc radius 50 zradius 10]}>1 && ${Me.AltAbilityReady[area taunt]} && ${Melee.AggroMode}) /alt activate 110
; Forage if you have a chest item (usually used to check if you awaiting a rez) and your cursor is free
forageif=${If[${Me.Inventory[chest].ID} && !${Cursor.ID},1,0]}
;Swap in and click monk epic haste gloves [id=10652] (or monk ornate gloves [id=12623]) if needed
holyshit0=/if (!${Me.Buff[Celestial Tranquility].ID} && ${Spell[Celestial Tranquility].Stacks} && ${Me.FreeBuffSlots}>=1) /casting 10652|hands
;For monks, toggle enrage detection if you have Master's Aura (makes you immune to enrage)
holyshit2=/if (!${Me.Song[Master's Aura Effect].ID} && !${meleemvi[enrage]}) /melee enrage=1
holyshit3=/if (${Me.Song[Master's Aura Effect].ID} && ${meleemvi[enrage]}) /melee enrage=0
; During downtime, check my clicky buffs and recast them if needed
downshit0=/if (${Spell[Form of Defense I].Stacks} && !${Me.Buff[Form of Defense I].ID} && !${Me.Moving}) /casting "Shroud of the Fallen Defender"|back
downshit1=/if (${Spell[Shield of the Arcane].Stacks} && !${Me.Buff[Shield of the Arcane].ID} && !${Me.Moving}) /casting "Kizrak's Chestplate of Battle"|chest
; Cast my clicky DS ring during combat if needed (it's insta-cast, so I can do so while in combat without affecting anything)
holyshit4=/if (${Spell[Shield of the Eighth].Stacks} && !${Me.Buff[Shield of the Eighth].ID}) /casting "Velium Coldain Insignia Ring"|item
;Uses crippling strike to snare
holyshit4=/if (${Target.CurrentHPs}<20 && ${Target.Speed}>50) /disc crippling strike
;During downtime, check my aura's and recast if needed
downshit1=/if (${Spell[Myrmidon's Aura].Stacks[0]} && !${Me.Aura[Myrmidon's Aura].ID} && !${Me.Moving} && !${Me.Invis}) /disc Myrmidon's Aura


Class Specific Flags

Click here to see Class Specific Holyshit and Downshit Examples

Alt Adv Codes by Class

Click here to see Alt Adv Codes by Class

Checks for Building Holy/Down Flags

Click here to see Checks for Building Holy/Down Flags

Optional Global INI File

MQ2Melee also has 3 global (not character specific) parameters that can be set in a second, optional INI file. MQ2Melee uses default values for these parameters unless it finds a file named MQ2Melee.ini that you created in the same directory. Here is an example of a MQ2Melee.ini file and a description of the parameters:

[Settings]
SpawnType=10
MeleeKeys=z
RangeKeys=x
  • SpawnType: This is the allowed spawn 'types' that mq2melee will be allowed to engage. Add together the desired target types, the total is put in this parameter. (1 = PC) (2 = NPC) (4 = PC PET) (8 = NPC PET) (16 = PC CORPSE) (32 = NPC CORPSE). Default is 10 (2 for NPC + 8 for NPC PET = 10).
  • MeleeKeys: Melee Attack Key (not same as eq attack key, or it will cause problems). Default is z.
  • RangeKeys: Range Attack Key. Default is x.

Troubleshooting/FAQ

  • I have made changes to my INI settings. How do I activate the new settings?

If you have MQ2Melee loaded and use an editor to make changes to your INI file, use /melee load to reload your settings. Alternatively, you can unload and reload the plugin.

  • I keep having to making changes to my melee settings from the command line. How do I save the new settings?

From the command line type /melee save.

  • I can't get the StickCmd to work

With Version 4+ of the MQ2Melee plugin there was a change to the StickCmd, wherein it no longer requires "/stick" in the parameters. The old format of "StickCmd=/Stick hold 10 moveback" thus becomes "StickCmd=hold 10 moveback". Also you will have to execute /melee stickmode=on to tell the plugin to use stick arguments from ini and not built-in default /stick behaviour.

Availability

This plugin comes with the MMOBugs binary and install distributions. The latest publicly available source (4.9) can be provided on request, or is available on the MQ2 VIP Forums.