MQ2Melee

Any suggestions on improving the performance of my ini file? Or any suggestions from other palyers.

I also want to add the aggromode to my holyflags. What would the && code to do that?


Code:
[MQ2NetBots]
Stat=1
Send=1
Grab=1
[MQ2Twist]
Delay=33
Quiet=0
Adjust=1
Recast=0
[MQ2Melee]
affiliation=10
affiliationif=${If[!${Melee.AggroMode} 1,0]}
aggro=1
ancestral=20
anger=1
angerif=${If[${Melee.AggroMode} 1,0]}
attention=1
attraction=20
attractionif=${If[${Melee.AggroMode} 1,0]}
attractionat=99
barbed=10
bash=1
battleleap=1
bladeguard=1
brace=1
bracerif=${If[${Melee.AggroMode} 1,0]}
commanding=10
defense=10
disarm=1
downflag0=1
downflag1=1
downflag10=1
downflag11=1
downflag12=1
downflag15=1
downflag16=1
downflag17=1
downflag18=1
downflag19=1
downflag2=1
downflag20=1
downflag3=1
downflag4=1
downflag5=1
downflag6=1
downflag7=1
downflag8=1
downflag9=1
enmity=1
enrage=1
enragingkick=25
facing=1
fieldarm=1
flash=10
flashif=${If[${Me.PctHPs}<=30,1,0]}
fundament2=1
fury=1
furyif=${If[${Melee.AggroMode} 1,0]}
glory=40
groupcheck=1
gutpunch=1
holyflag0=1
holyflag1=1
holyflag10=1
holyflag13=1
holyflag14=1
holyflag15=1
holyflag16=1
holyflag17=1
holyflag19=1
holyflag20=1
holyflag21=1
holyflag3=1
holyflag4=1
holyflag8=1
holyflag9=1
infuriate=1
kick=1
kneestrike=1
knuckle=1
melee=1
opportunisticstrike=10
override=1
petenrage=1
petinfuriate=1
petmend=20
petrange=75
plugin=1
pothealover=0
protect=20
provoke0=28023
provoke1=10367
provoke2=28023
provokeend=10
provokemax=10
provokeonce=0
respite=28
resume=20
roar=1
roarif=${If[${Melee.AggroMode} 1,0]}
standup=1
stickbreak=1
stickrange=30
stun0=10969
stun1=601
stun2=960
stunning=1
taunt=1
topple=10



downshit0=/if (${Spell[Form of Endurance XIII].Stacks} && !${Select[${Zone.ID},344,345]} && !${Me.Invis} && !${Me.Buff[Form of Endurance XIII].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 129210|Face
downshit1=/if (${Spell[Storm Guard].Stacks} && !${Me.Invis} && !${Me.Buff[Storm Guard].ID} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID} && !${Me.Moving}) /casting 71658|Item
downshit10=/if (${Me.Pet.ID}) /pet leave
downshit11=/if (${Me.PctEndurance}<25 && !${Me.CombatState.Equal[COMBAT]} && ${Me.CombatAbilityReady[Respite Rk. II]} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /disc Respite
downshit12=/if (${Spell[Sixth Wind Rk. II].Stacks[0]} && ${Me.CombatAbilityReady[Sixth Wind Rk. II]} &&  !${Me.Moving} && !${Me.Invis} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID} && ${Me.PctEndurance}<70 ) /disc Sixth Wind Rk. II
downshit13=/if (${Spell[Myrmidon's Skill VIII].Stacks}  && !${Me.Song[Commanding Voice].ID} && !${Me.Invis} && !${Me.Buff[Myrmidon's Skill VIII].ID} && !${Me.Moving}) /casting 129008|Shoulders
downshit14=/if (${Spell[Earth Elemental's Form].Stacks} && !${Me.Invis} && !${Me.Buff[Earth Elemental's Form].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 42923|Item
downshit15=/if (!${Me.Invis} && !${Me.Moving} && ${Me.Height}>2.15) /multiline ; /tar myself; /timed 20 /casting 67098|item
downshit16=/if (!${SpawnCount[NPC radius 30 zradius 30]} && ${Me.PctEndurance}<40 && !${Me.Moving} && ${Me.State.Equal[STAND]}) /sit
downshit17=/if (!${Me.Invis} && !${Me.Moving} && ${FindItemCount[=Fresh Cookie]}<20 ) /casting 71979|Item
downshit18=/if (${Cursor.Name.Find[Fresh Cookie]}) /autoinventory
downshit19=/if (!${Me.Invis} && !${Me.Moving} && ${FindItemCount[=Warm Milk]}<20 ) /casting 52191|Item
downshit2=/if (${Spell[Aura of Pure Arcanum].Stacks} && !${Me.Invis} && !${Me.Buff[Aura of Pure Arcanum].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 85573|Item
downshit20=/if (${Cursor.Name.Find[Warm Milk]}) /autoinventory
downshit3=/if (${Spell[Champion's Aura].Stacks[1]} && !(${Me.Aura[1].Equal[Champion's Aura]} || ${Me.Aura[2].Equal[Champion's Aura]}) && ${Me.CombatAbilityReady[Flash of Anger Rk. II]} && !${Me.Invis} && ${Me.PctEndurance}>5 ) /disc Champion's Aura
downshit4=/if (${Spell[Spikecoat].Stacks} && !${Me.Invis} && !${Me.Buff[Spikecoat].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 46055|Waist
downshit5=/if (${Spell[Prismatic Ward VII].Stacks} && !${Me.Invis} && !${Me.Buff[Prismatic Ward VII].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 129012|Range
downshit6=/if (${Spell[Pestilence Shock].Stacks} && !${Me.Invis} && !${Me.Buff[Pestilence Shock].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 20898|Item
downshit7=/if (${Spell[Might of Stone VI].Stacks} && !${Me.Invis} && !${Me.Buff[Might of stone VI].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 129001|Ear
downshit8=/if (${Spell[Familiar: Protective Mimic].Stacks} && !${Me.Invis} && !${Me.Buff[Familiar: Protective Mimic].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 50870|Item
downshit9=/if (${Spell[Ancient Power].Stacks} && !${Me.Invis} && !${Me.Buff[Ancient Power].ID} && !${Me.Moving} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID}) /casting 47295|Item
downshitif=${If[!${Select[${Zone.ID},344,202,151,345,33505]} && !${Me.Invis} && ${Me.Standing} && ${Me.Buff[Resurrection Sickness].Duration}<38 && ${Me.Buff[Revival Sickness].Duration}<18,1,0]}


holyshit0=/if (${Melee.Combat} && ${Melee.AggroMode}  && ${Cast.Ready[Bladed Fang Mantle]} ) /casting 70971|Item
holyshit1=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Cast.Ready[Elegant Archon Breastplate]} ) /casting 129086|Chest

holyshit10=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.CombatAbilityReady[Barbed Tongue Discipline Rk. II]}  ) /disc Barbed Tongue Discipline Rk. II
holyshit11=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.CombatAbilityReady[Undivided Attention Rk. II]}  ) /disc Undivided Attention Rk. II
holyshit12=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Resplendent Glory]}  ) /alt act 130
holyshit13=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Me.AltAbilityReady[Blade Guardian]}  ) /alt act 967
holyshit14=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Warlord's Bravery]}  ) /alt act 804
holyshit15=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Warlord's Resurgence]}  ) /alt act 911
holyshit16=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Hold the Line]}  ) /alt act 734
holyshit17=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Me.AltAbilityReady[Rage of Rallos Zek]}  ) /alt act 131
holyshit18=/if (${Melee.Combat} && ${Me.CombatAbilityReady[Knuckle Break Rk. II]}  ) /disc Knuckle Break Rk. II
holyshit19=/if (${Melee.Combat} && ${Me.PctHPs}<=30  && ${Me.AltAbilityReady[Warlord's Tenacity]}  ) /alt act 300

holyshit2=/if (${Melee.Combat} && ${Cast.Ready[Ring of Ill Touch]} ) /casting 41350|Item

holyshit20=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Mark of the Mage Hunter]}  ) /alt act 606
holyshit21=/if (${Cast.Ready[Darkwater Pauldrons]} && !${Me.Song[Commanding Voice].ID} && !${Me.Buff[Myrmidon's Skill VIII].ID}) /casting 129008|Shoulders
holyshit22=/if (${Melee.Combat} && ${Me.CombatAbilityReady[Cyclone Blades Rk. II]}  ) /disc Cyclone Blades Rk. II
holyshit23=/if (${Melee.Combat} && ${Me.AltAbilityReady[Rampage]}  )  /alt activate 109

holyshit3=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Cast.Ready[Gladiator's Plate Chestguard of War]} ) /casting 70858|Item
holyshit4=/if (${Melee.Combat} && ${Target.Named} && ${Me.AltAbilityReady[Vehement Rage]}  )  /alt activate 800
holyshit5=/if (${Melee.Combat} && ${Target.Named} && ${Me.CombatAbilityReady[Brutal Onslaught Discipline Rk. III]}  ) /disc Brutal Onslaught Discipline Rk. III
holyshit6=/if (${Melee.Combat} && ${Target.Named} && ${Me.CombatAbilityReady[Mighty Strike Discipline]}  ) /disc Mighty Strike Discipline
holyshit7=/if (${Melee.Combat} && ${Target.Named} && ${Me.CombatAbilityReady[Jab Through Rk. II]}  ) /disc Jab Through Rk. II
holyshit8=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Warlord's Fury]}  ) /alt act 912
holyshit9=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Projection of Fury]}  ) /alt act 3213


version=5.526
ShowAbility=0
ShowAltAbility=0
ShowAttacking=1
ShowBash=0
ShowCasting=0
ShowCombatAbility=0
ShowControl=0
ShowDebug=0
ShowEnrageDebug=1
ShowEnraging=1
ShowFeign=1
ShowOverride=1
ShowProvoking=0
ShowRange=0
ShowSkills=0
ShowSpecial=0
ShowSticking=1
ShowStunning=0
ShowSwitching=1
CADelay=500
AADelay=250
SpellDelay=350
SkillDelay=250
PotionDelay=500
DownDelay=0
HolyDelay=0
DownCycleDelay=0
HolyCycleDelay=0
 
I got bored after making it through downshits, but here are some things i saw:

All of your ${If statements, except a couple, seem to be wrong, ie.:

furyif=${If[${Melee.AggroMode},1,0]}
roarif=${If[${Melee.AggroMode},1,0]}


downshit12=/if (${Spell[Sixth Wind Rk. II].Stacks[0]} && ${Me.CombatAbilityReady[Sixth Wind Rk. II]} && !${Me.Moving} && !${Me.Invis} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID} && ${Me.PctEndurance}<70 ) /disc Sixth Wind Rk. II

But why use that at all when you have:
respite=28

downshit 13/14 not on, just fyi

holyshit 2/5/6/7/11/12/18 not on also
 
I got bored after making it through downshits, but here are some things i saw:

All of your ${If statements, except a couple, seem to be wrong, ie.:

furyif=${If[${Melee.AggroMode},1,0]}
roarif=${If[${Melee.AggroMode},1,0]}


downshit12=/if (${Spell[Sixth Wind Rk. II].Stacks[0]} && ${Me.CombatAbilityReady[Sixth Wind Rk. II]} && !${Me.Moving} && !${Me.Invis} && !${Me.Buff[Resurrection Sickness].ID} && !${Me.Buff[Revival Sickness].ID} && ${Me.PctEndurance}<70 ) /disc Sixth Wind Rk. II

But why use that at all when you have:
respite=28

downshit 13/14 not on, just fyi

holyshit 2/5/6/7/11/12/18 not on also

So just add the , (cama) to if's?

what about

flashif=${If[${Me.PctHPs}<=30,1,0]}
need a , (cama) before the <=30?

i need a respireif= do not respite if res sickness
 
Last edited:
what can i add to these to make them fire only if aggro mode is on /melee aggro=1


Code:
holyshit11=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.CombatAbilityReady[Undivided Attention Rk. II]}  ) /disc Undivided Attention Rk. II
holyshit12=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Target.Named} && ${Me.AltAbilityReady[Resplendent Glory]}  ) /alt act 130
 
you already have it in there. Now i wouldnt waste undivided attention, or some other ones, if you already have aggro.

you can use TargetOfTarget member to see if you are already on the mobs aggro (i think melee aggro stuff may already check that), or you could see if the mob is staring directly at you (i forget if htw added a .Member for that)

The long version to see if a mob is staring directly at you (thus is hopefully aggro on you) would be:

Code:
${If[${Range.Between[178,183:${Math.Abs[${Math.Calc[${Target.HeadingTo.Degrees}-${Target.Heading.Degrees}]}]}]},TRUE,FALSE]}
That checks +/- 3 degrees from a mobs facing direction to see if it is looking at you.
 
Last edited:
Is there a way to make my rogue not do the hokey pokey when engaging? He's set up to use his opener disc (Daggerstrike i think is the name these days? don't quote me, I'm at work), and he will target the mob, get behind it, back up, run back to his camp spot, then go back to the mob, move back and forth a little, then hit the opener disc and engage as normal.

The mob is hitting 88-ish percent before he even opens and this is on mobs in VoA T4. It takes a good 8-10 seconds per mob, versus the zerker using his opener engaging at 98%. I do realize there's a difference in requirements for the rogue and zerker openers, but I'm trying to make him as efficent as possible.
 
Is there a way to make my rogue not do the hokey pokey when engaging? He's set up to use his opener disc (Daggerstrike i think is the name these days? don't quote me, I'm at work), and he will target the mob, get behind it, back up, run back to his camp spot, then go back to the mob, move back and forth a little, then hit the opener disc and engage as normal.

The mob is hitting 88-ish percent before he even opens and this is on mobs in VoA T4. It takes a good 8-10 seconds per mob, versus the zerker using his opener engaging at 98%. I do realize there's a difference in requirements for the rogue and zerker openers, but I'm trying to make him as efficent as possible.
That's not MQ2Melee, or it would just get behind and engage. The running around, like to camp, positioning, etc. is some macro you are running fighting the positioning of mq2melee (technically, mq2moveutils stick). You need to either let mq2melee do positioning, or have your macro do it, but not both.

htw
 
For my bard I turned stick off cause I have him as my main window and like to be able to move around to watch mez targets etc, but i've found since doing that (or maybe since that terrible update broke everything) he will no longer use selo's kick and boastful bellow.

Are these supposed to work without stick? Is there a different issue with them? is there a work around?
 
Determined my issue is melee vs cast also. If i turn off twist they cast, is there a work around for this? Can i just write a macro that will cast them when in combat?

It's not really an issue with mq2melee. It's mq2cast. MQ2Melee uses MQ2Cast to cast AAs. That plugin (cast) could use a little TLC, with regards to bards.

I'm thinking about moving the AA part for bards to mq2melee internally, while cast would still handle items. MQ2Melee already handles the discs internally. I would also tune the holyshit/downshit routines at that time, as those need a special case also.

It's really a bit annoying, there are enough cases to consider - e.g., user clicked gem or /cast? Using melody? Using mq2twist? Using /casting (mq2cast)? Is song, item, disc, aa?

htw
 
/me drops the /melee beta=on grenade and runs away.

a little inside joke.. but.. Yes, you can do a macro for it, or you can modify mq2twist to use items/AAs/Spells. i would suggest the mq2twist route.
 
Thanks, sorry most questions are probably answerable if you spend the time doing the digging. But why reinvent the wheel if you can simply ask someone else for it :cool:
 
I want to use mq2melee with my casters to send in the pet, but when they do this they stadn the entire fight.


How can I get the casters to send in the pet, and sit to med?

Using modbot btw, but it justs calls for mq2melee for pets.
 
Couple questions:


I want to modify the following If's

attractionif=${If[${Melee.AggroMode,} 1,0]}

I want to add to this if there is only 1-2 mobs on aggro then attraction while keeping the aggromode part intact


holyshit18=/if (${Melee.Combat} && !${Melee.AggroMode}&& ${Me.CombatAbilityReady[Knuckle Break Rk. II]} ) /disc Knuckle Break Rk. II

since this is on same timer as Forceful Attraction, I want to use this when i'm /melee aggro=0 so I can reduce the damage the tank that is tanking takes by 6%. Does this look right?


&&


holyshit7=/if (${Melee.Combat} && ${Melee.AggroMode} && ${Me.CombatAbilityReady[Cyclonic Blades Rk. II]} ) /disc Cyclonic Blades Rk. II


however, since this is on the same timer as Knuckle Break & Forceful attraction, I want this to fire off if there are 3+ mobs in camp. If possible I would not want it to break mez so is there a way to check adds for mez before using this. I would want this to be very conditional. If we are mass killing I want to use it. I would turn it on and off ass needed if we are mezing and cant' detect mez on adds.
 
attractionif
I want to add to this if there is only 1-2
attraction is a good way to enhance your crowd aggro management
if u cant then really.... dont use it.....
spawncount check

knuckle (bleah waste of time) havent used that shitty line since day 1 it came out

cyconic blades if u think your gonna break mezs dont use it
when i did use it i wanted any and all mobs on me

your requests seem counter productive and not worthwhile, maybe rethink what kind of warrior u can actually play
 
attractionif
I want to add to this if there is only 1-2
attraction is a good way to enhance your crowd aggro management
if u cant then really.... dont use it.....
spawncount check

knuckle (bleah waste of time) havent used that shitty line since day 1 it came out

cyconic blades if u think your gonna break mezs dont use it
when i did use it i wanted any and all mobs on me

your requests seem counter productive and not worthwhile, maybe rethink what kind of warrior u can actually play

I play a good warrior, let me explain.

If you use attraction on raid mobs, it lets the dps go full burn early. I want this option to be single target for bosses.

If you sue knuckle and are not tanking, you improve the surv of the tank who is tanking, thus adding to the success of the raid.

Whena and if i'm PL'n some friends mass pulling 20+ mobs, I want to have this autofire so i can focus on other toons.


I do not think my requests are counter productive at all. I think they are optimizing MY game play and MY game style. A cut at my skill was not warranted.

Thanks though, at least you took the time to respond.