Goto page 1, 2, 3, 4  Next Software Documentation MQ2Meele
Reply
MQ2Meele
Overview
MQ2Melee, written by s0rCieR, is designed to provide intelligent use of SHORT TIME REUSE MELEE ABILITIES and PET HANDLING during combat, depending on current combat conditions. It was developed to replace melee-oriented functions typically used in macros.




Prerequisites
  1. You must have 1 point trained in any trainable Combat Ability you would like to use
  2. You must have purchased the Alternate Ability you would like to use
  3. You must have trained 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 plugin is needed to use /stick parmameters
  6. MQ2Cast is required to cast spells, activate Alternate Abilities or click items




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-usse of defined combat or other abilities.
    ○ User-configurable /stick arguments.
  ● MELEE (AGGRO MODE):
    ○ Auto Taunt when you loose 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 ammunitions 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.




Supported Abilities

Combat Abilities
BackStab, Bash, Begging, Disarm, Dragon Punch, Eagle Strike, Feign Death, Flying Kick, Forage, Frenzy, Hide, Intimidation, Kick, Lay Hands, Mend, Pick Pockets, Round Kick, Sense Traps, Sneak, Taunt and Tiger Claw.


Alternate Advancement Abilities
2-Hand Bash, Call of Challenge, Escape, Feral Swipe, Mend Companion, Replenish Companion, Seized Opportunity, and Pet Discipline (/pet hold).

Melee Disciplines
Ancient: Chaos Cry, Ancient: Chaos Strike, Ashenhand Discipline, Assasin Discipline(3), Assasin 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.

Detected Disciplines
The following Disciplines are detected to promote some combat abilities:
Ashenhand Discipline, Assassin Discipline(3), Heel of Kanji, Silentfist Discipline, and Thunderkick Discipline.




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, 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
   reload in game.



Commands
  ● All options below are listed with on/off as the arguments used to enable/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 dependant 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 <options>...
  ● [on|off]
   Turns plugin On/Off.
  ● 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.
  ● 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.
  ● 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).
  ● 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 and behind the target.
  ● bash=[on|off]
   Will try to bash target if you have a shield equipped or have have a 2-handed weapon and the 2 Hand Bash AA.
  ● begging=[on|off]
   Will turn attack off and beg target and turn back on.
  ● bow=[Item ID]
   Item ID for ranged weapon.
  ● callchallenge=[on|off]
   Will use Call of Challenge AA as it refreshes.
  ● challengefor=[on|off]
   Activate Challenge for Honor (Paladin) or Challenge for Power (Shadowknight) spells once aggro has been established?
  ● commanding=[0-100]
   Uses Commanding Voice Discipline if your endurance is over [X]%.
  ● cryhavoc=[0-100]
   Uses the Cry Havoc Discipline if your endurance is over [X]%.
  ● disarm=[on|off]
   Will try to disarm target if target is wielding a weapon.
  ● downflag0=[on|off]
   Whether or not to use defined DownShit0 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag1=[on|off]
   Whether or not to use defined DownShit1 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag2=[on|off]
   Whether or not to use defined DownShit2 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag3=[on|off]
   Whether or not to use defined DownShit3 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag4=[on|off]
   Whether or not to use defined DownShit4 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag5=[on|off]
   Whether or not to use defined DownShit5 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag6=[on|off]
   Whether or not to use defined DownShit6 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● downflag7=[on|off]
   Whether or not to use defined DownShit7 from ini. After enabling this option, you must edit the INI file with your relevant
   DownShit command and then issue /melee load to enable it.
  ● dragonpunch=[on|off]
   Will use dragon punch if available.
  ● eaglestrike=[on|off]
   Will use eagle strike if available.
  ● enrage=[on|off]
   Turns attack off and issues /pet hold (/pet back if hold not available) if target enrages and you are facing it. Automatically
   re-engages when enrage ends or if you are behind the target.
  ● escape=[0-100]
   Turn off Attack and use rogue escape skill if your life percentage goes below the designated value. Will never happen if
   aggro=on. (Needs more testing).
  ● evade=[on|off]
   Will attempt to evade in fight to drop some aggro each time hide skill available, strongly suggest that you set unhide=1 to
   authorise plugin to break invis and rejoin the fight.
  ● 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?.
  ● feigndeath=[0-100]
   Feigns death if your life percentage goes below this value. Will never feign if aggro=on. (Needs more testing).
  ● feralswipe=[on|off]
   Will trigger feral swipe AA as it refreshes.
  ● fistofwu=[0-100]
   Uses the Fist of Wu Discipline if your endurance is over [X]%.
  ● flyingkick=[on|off]
   Will use flying kick if available.
  ● forage=[on|off]
   Will try to forage up food/water if not in combat.
  ● frenzy=[on|off]
   Will try to use frenzy if available.
  ● harmtouch=[on|off]
   Enable Harm Touch ability?
  ● hide=[on|off]
   Will try to hide if you're not in a combat and not moving.
  ● holyflag0=[on|off]
   Whether or not to use defined HolyShit0 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag1=[on|off]
   Whether or not to use defined HolyShit1 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag2=[on|off]
   Whether or not to use defined HolyShit2 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag3=[on|off]
   Whether or not to use defined HolyShit3 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag4=[on|off]
   Whether or not to use defined HolyShit4 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag5=[on|off]
   Whether or not to use defined HolyShit5 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag6=[on|off]
   Whether or not to use defined HolyShit6 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● holyflag7=[on|off]
   Whether or not to use defined HolyShit7 from ini. After enabling this option, you must edit the INI file with your relevant
   HolyShit command and then issue /melee load to enable it.
  ● infuriate=[on|off]
   Turns attack off and issues /pet hold (/pet back if hold not available) 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-100]
   Jolt every # of hits (0=off).
  ● kick=[on|off]
   Will use kick if available.
  ● layhand=[0-100]
   Lay Hands on myself when my HP % falls below [X].
  ● leopardclaw=[0-100]
   Will use Leopard Claw or Dragon Fang discipline when your endurace is above [X]%. If not in aggro mode will wait till target
   HP get below 70% before using.
  ● melee=[on|off]
   Turn Melee Mode On/Off.
  ● 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
  ● mend=[0-100]
   Mend wounds if your life percentage goes below the designated value.
  ● petassist=[on|off]
   Will send pet attack on engage and backoff on enrage/infuriate if those options are enabled. The plugin will also use
   /pet hold if you have that AA.
  ● petdelay=[0-30]
   Will not engage pet until [x] seconds has passed.
  ● petmend=[0-100]
   Cast "Mend Companion" or "Replenish Companion" if pet is at or below given health % (will cast higher of the two if
   you have both).
  ● petrange=[0-150]
   Will not engage pet until mob is within [x] range of your pet.
  ● pickpocket=[on|off]
   Turn off attack & try to pickpocket if not in aggro mode.
  ● plugin=[on|off]
   Turn plugin on/off.
  ● poker=[Item ID]
   Item ID for backstabbing weapon. Will be swapped in before backstabbing if necessary.
  ● pothealfast=[0-100]
   Use fast heal potion when my HP falls below [X]% (default=30).
  ● pothealover=[0-100]
   Use heal over time potion when my HP falls below [X]% (default=60).
  ● provoke0=[Disc/AA/Spell ID #]
   ID of the Disc/AA/Spell to use for provoking (0=off).
  ● provoke1=[Disc/AA/Spell ID #]
   ID of the Disc/AA/Spell to use for provoking (0=off).
  ● provokeend=[0-100]
   Stop trying to provoke when target's health falls below [X]% (default=15).
  ● provokemax=[0-100]
   Number of times you will try provoking aa/disc/spells to regain aggro (default=1).
  ● provokeonce=[on|off]
   Only use provoke once to attempt to gain aggro.
  ● ragevolley=[0-100]
   Will use best ragevolley discipline that is available and ready.
  ● rake=[0-100]
   Use Rake ability when endurance above [X]%.
  ● range=[0-250]
   Enables ranged attacks when target is at or beyond this range. Note that 0 disables ranged attacks completely.
  ● resume=[0-100]
   Stand up and turn back attack on if your life percentage goes above this value. Used with /melee feigndeath=on.
  ● roundkick=[on|off]
   Will use round 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
  ● slam=[on|off]
   Will slam as often as possible.
  ● sneak=[on|off]
   Will try to sneak if not in combat.
  ● standup=[on|off]
   Will stand you if when you are feigning.
  ● stickdelay=[0-100]
   Wait [X] seconds before sticking to target.
  ● stickmode=[on|off]
   If on, it will use the stickcmd as defined in the INI file, if off, it will use the default stick command.
  ● stickrange=[0+]
   Enables sticking when target is at set distance away (0=no sticking).
  ● strike=[on|off]
   Use your best sneak attack disc?
  ● stun0=[Disc/AA/Spell ID #]
   ID of the Disc/AA/Spell to use for stunning (0=off).
  ● stun1=[Disc/AA/Spell ID #]
   ID of the Disc/AA/Spell to use for stunning (0=off).
  ● stunning=[0-100]
   Cast defined Stun spell(s) if target at or below [X]% and/or if detected that target is casting a spell.
  ● 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 Discipline if your endurance is over [X]%.
  ● throwstone=[0-100]
   Will use throw stone disc when ready and target in range. 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.
  ● twistedshank=[on|off]
   Use Twisted Shank ability?


  ● load
   Load all options from the INI file.
  ● save
   Save all current options to the INI file. Changes are not saved automatically.


/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 attack button! (Note about new attack key customization?)


/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.




Top-Level Objects
  ● bool ${Melee}
   Same as ${Melee.Enable} (see below).
  ● bool ${Melee.AggroMode}
   TRUE/FALSE if the plugin is operating in Aggro-mode or not.
  ● int ${Melee.Ammunition}
   Count of defined ammunition or current equipped ammunition.
  ● float ${Melee.BackAngle}
   Angle representing heading difference with current target's back.
  ● bool ${Melee.BackStabbing}
   TRUE/FALSE if backstab setting is on/off.
  ● int ${Melee.Casted}
   Time (in miliseconds) elapsed since last detected spell casting (60000 if none).
  ● bool ${Melee.Combat}
   TRUE/FALSE if plugin enable and got valid kill target. Should replace ${Me.Combat} logic.
  ● int ${Melee.DiscID}
   Spell ID of currently running discipline, 0 if none.
  ● bool ${Melee.Enable}
   TRUE/FALSE if plugin on/off, NULL if not loaded.
  ● bool ${Melee.Engage}
   TRUE if we have a valid kill target and it's okay to turn attack on, FALSE if not.
  ● bool ${Melee.Enrage}
   Is kill target enraged?
  ● bool ${Melee.GotAggro}
   TRUE/FALSE if current target seems to be aggroed on you (not perfect).
  ● bool ${Melee.Immobilize}
   TRUE if you have been standing still for more then 250ms, FALSE if not.
  ● bool ${Melee.Infuriate}
   TRUE if kill target is infuriated!
  ● int ${Melee.MeleeMode}
   Maximum distance to target to be considered in melee range.
  ● int ${Melee.RangeMode}
   Minimum distance to target to be considered in archery range.
  ● string ${Melee.Status}
   Current plugin status, can be one or more of the following: ENGAGED, WAITING, MELEE, RANGE, ENRAGE,
   INFURIATE, BACKING, ESCAPING, FEIGNING, EVADING, FALLING, STEALING, BEGGING.
  ● int ${Melee.Target}
   SpawnID of current valid kill target, otherwise 0.
  ● float ${Melee.ViewAngle}
   Angle of view with current target.




Debugging TLOs
  ● int ${meleemvb[idskill]}
   1 if the skill is ready and target in range, 0 if not. Most combat and/or character kills that can use an ID are testable here.
   Examples of idskills are: idleopardclaw, idslam, idforage, idfrenzy, idtigerclaw, idescape.
  ● int ${meleemvi[variable]}
   1/0 if the variable is set to on/off. This includes all variables that can be set on the command line.
  ● 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.




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) 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.
  ● 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 always be evaluated correctly.

  ● Your defined condition must not exceed 255 characters, or it will cause the plugin to crash.

  ● backstabif
  ● bashif
  ● beggingif
  ● callchallengeif
  ● challengeforif
  ● commandingif
  ● cryhavocif
  ● disarmif
  ● dragonpunchif
  ● eaglestrikeif
  ● evadeif
  ● fallsif
  ● feralswipeif
  ● fistofwuif
  ● flyingkickif
  ● forageif
  ● frenzyif
  ● harmtouchif
  ● pothealfastif
  ● pothealoverif
  ● hideif
  ● intimidationif
  ● joltif
  ● kickif
  ● layhandif
  ● leopardclawif
  ● mendif
  ● pickpocketif
  ● provokeif
  ● ragevolleyif
  ● rakeif
  ● roundkickif
  ● sensetrapif
  ● slamif
  ● sneakif
  ● strikeif
  ● stunningif
  ● tauntif
  ● thiefeyeif
  ● throwstoneif
  ● tigerclawif
  ● twistedshankif




Other Options
  ● stickcmd
   This command takes a list of options that should be passed to the /stick command. Eg. "hold 15"

  ● downshit0-downshit7
   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-holyshit7
   Each one of these takes a macro command that will be run at the beginning of combat.
   Remember, you have to enable each option with /melee holyflag#=on.




HolyShit and DownShit
MQ2Melee now supports up to 8 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!




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.

Macro
More +
; 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





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:

INI
More +
[Settings]
SpawnType=10
MeleeKeys=z
RangeKeys=x


   ● SpawnType: 0 + all desired target type modifier: (+1 PC) (+2 NPC) (+4 PC PET) (+8 NPC PET)
    (+16 PC CORPSE) (+32 NPC CORPSE) default is 10 (0 for base + 2 for NPC and + 8 for NPC PET).
   ● MeleeKeys: Melee Attack Key (not same as eq please unless you like problems) default is z.
   ● RangeKeys: Range Attack Key default is x.




Troubleshooting/FAQ

Q: I have made changes to my INI settings. How do I activate the new settings?
A: 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.

Q: I keep having to making changes to my melee settings from the command line. How do I save the new settings?
A: From the command line type /melee save.

Q: I can't get the StickCmd to work
A: 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=1 to tell the plugin to use stick arguments from ini and
  not built-in default /stick behaviour.
Fri Feb 06, 2009 6:46 pm
Co-Founder (Retired)
I'm actually having an issue with this and/or mq2moveutils where when combat is engaged it seems to work just fine except that it is defaulted for moveback in its stick... problem with it is the moveback distance is sometimes more then a mobs hit range so ill just continually walk backwards due to the mob running towards me.

this is what i see..

MQ2Melee::Attacking [xxxxx].
MQ2Melee::Sticking [24.00 id xxx moveback].
You are now sticking to xxxxx.

90% of the time it defaults to the stickdist of 24 sometimes 17 but no matter what i seem to do it always gets reset when i turn attack on.

Also auto taunt isnt working correctly either and when im boxing 5 characters, from time to time 1 or 2 of my boxed dps melees wont properly stick behind.

MQ2Melee version i am using is 4.808
MQ2MoveUtils version is 20070518

I was looking at the source for mq2melee and i couldnt find any part of it that defined the /stick to be a certain distance and/or stick moveback... so im unsure the direction i should be looking.
Thu Jun 18, 2009 1:52 am
this is probably a silly question, but your using the build from here? Just wanna make sure before I go start changing things
_________________
Give me your land!
Thu Jun 18, 2009 6:09 am
Co-Founder (Retired)
yeah im using the mq2emu build from this site


**edit** i was thinking there is an option for the stickmode to run the stickcmd from an ini file but im not sure what its looking for, i know it creates a ini file based per character but i tried a couple different things with no success. When i change the stickmode=1 it just doesnt work at all.
Thu Jun 18, 2009 11:23 am
I can get my plugin loaded and everything and it will auto stick for me but it won't do anything else....

I'm trying to get my sk to taunt

and my bers to frenzy
Mon Nov 16, 2009 9:18 am
the stuff with taunt sounds really familiar, and I think I made some changes to the source to accomidate that. I think a command or two was added, and may not have been put in the documentation. I don't have to code with me at work though so I'll have to snag it at home. I try to do stuff as I see the new post alert cause if I put stuff off I forget about it =P. So if I don't get back to you tonight you might have to re-tap me.
Mon Nov 16, 2009 1:04 pm
Project Lead
actually... i think i already mentioned checking out maudbot for some eqbc hud stuff. If you do download that, check out the meele, or combat include file(forgot what i called it). do a search for the stick command, there are either 2, or 4 versions of it. I commented it all so if you read the comments one of them will say its for tanking probably, or will evaluate a variable named cantank or istank or cantaunt or something like that. That stick command will probably have the alternative taunt command on it...

If you can't find it, or just don't feel like it i'll look at the source when I get home. I also can't unpack .rar files at work, no privelages to install winrar unfortunately.
Mon Nov 16, 2009 1:08 pm
Project Lead
Ok... i had it mixed up with moveutils, so ignore that stuff above. I know I suggested it, but I haven't really played with it alot :P I just knew I had heard good things. I looked at it, and I was having problems with it too, but I've only got 1 toon at the moment and according to the documentation and source you will only taunt when you don't have aggro. You might also need it assigned to a hotkey already. I'm still playing with it trying to figure out what the problem is
Mon Nov 16, 2009 6:20 pm
Project Lead
K... i didn't have any points in it =P lol.

It's a friends paladin i'm using, and its working for me now that I added a point.

1. Make sure it's on a hotkey (not sure if this matters, probably not)
2. Make sure you got points in it.
3. It only taunts when you DON'T already have aggro

Way to test it is if your server has PoK on, I ran in there and attacked a mob since you can't meele in there, and can't aggro the mob my toon kept spamming taunt trying to gain aggro.

If it just still doesn't work I'll swap out the plugin with the version from my PC... although I don't know why they wouldn't be identical. Lemme know.
Mon Nov 16, 2009 6:41 pm
Project Lead
alright sounds good I'll give it a try

seems understandable I use the regular stick command myself on a hotkey to do the work for me. The stick in melee is really unreliable haha
Mon Nov 16, 2009 8:28 pm
I think it might actually use the same stick... there is probably a way to customize it like the one you use on your hotkey
Tue Nov 17, 2009 7:21 am
Project Lead
it is a setting by default it will move you to max range based on npc id, I think on the EMU it might be off from Live so you end up out of range. in your mq2melee ini file add stickcmd= hold 10 or whatever value from stick you want. I use on my tank stickcmd=hold 10 and on everyone else stickcmd=hold 10 !front

then change the value for stickmode to 1 stickmode=1 this will use the value you assign in stickcmd.
Thu Nov 25, 2010 9:38 am
First, always use /melee and set as many things there as you can before you edit the INI.
Second, some skills may not show in the /melee list just try it anyway. The rogue assassinate ability is one of these. It does not show up in game, but if you type it, it will take (note it is spelled wrong)
Macro
More +
/melee assasinate=1

Third, always /melee save in game before you edit your INI.
Fourth, /melee load in game after you save the manual changes.

Some INI examples for MQ2Melee

General melee
ini
More +
;do not use default /stick instead use this to help stay in range of mobs
;MQ2Melee auto stick range is based on mob height and does not always work on the EMU servers
;I personally use stick distances between 10 and 15 on PEQ
stickmode=1
stickcmd=15 hold !front


Main Tank
ini
More +
stickmode=1
stickcmd=9 hold moveback



Monk Holyshit/Downshit examples
ini
More +
;downflag/downshit happens when you are not in combat
;click ornate legs if I have them on me and the buff will stack.
downflag0=1
downshit0=/if ( ${FindItem[Leggings of Enlightenment].InvSlot} && ${Spell[Health].Stacks[2]} && !${Me.Moving} && !${Me.Invis} && && ${Me.FreeBuffSlots}>=1 ) /casting "Leggings of Enlightenment" legs -targetid|${Me.ID}
;holyflag/holyshit happens when you are in combat
;click the ornate gauntlets if i have them on me and the buff stacks.
holyflag0=1
holyshit0=/if ( ${FindItem[Gauntlets of Enlightenment].InvSlot} && ${Spell[Celestial Tranquility].Stacks} && !${Me.Moving} && !${Me.Invis} && && ${Me.FreeBuffSlots}>=1 ) /casting "Gauntlets of Enlightenment" hands -targetid|${Me.ID}
;use combat abilities whenever they are ready and the mob is less than 90% (don't want to draw aggro too soon) and greater than 20% life (don't want to waste the disc)
holyflag1=1
holyshit1=/if ( ${Me.CombatAbilityReady[Speed Focus Discipline]} && ${Target.PctHPs}<=90 && ${Target.PctHPs}>=20 ) /doability "Speed Focus Discipline"
holyflag2=1
holyshit2=/if ( ${Me.CombatAbilityReady[Hundred Fists Discipline]} && ${Target.PctHPs}<=90 && ${Target.PctHPs}>=20 ) /doability "Hundred Fists Discipline"
;use Earthwalk if i'm getting beat on to mitigate damage until a healer heals me
holyflag3=1
holyshit3=/if ( ${Me.CombatAbilityReady[Earthwalk Discipline]} && ${Me.PctHPs}<=60 ) /doability "Earthwalk Discipline"

_________________
Sorvani
Sun Jan 23, 2011 4:49 pm
Senior Project Member
I need to figure out how to set up my rogue, but once i do i'll post his holyshit/downshit settings here too
_________________
Sorvani
Mon Jan 24, 2011 12:48 pm
Senior Project Member
somebody can explain me difference between .stacks stack[0] and stack[5]

found it already everything between[] means the duration
Wed Feb 02, 2011 6:53 am
Goto page 1, 2, 3, 4  Next Software Documentation MQ2Meele
Reply