Post your completed (working) macros here. Only for macros using MQ2Data syntax!
Moderator: MacroQuest Developers
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Sat Jun 04, 2005 10:23 am
JimJohnson wrote:with Selos on sometimes it takes 30+ seconds after mob dies for him to stop looking for anchor spot. he runs back and forth while doing this he will not seek new target.
Makes sense, the bard with selo's moves so fast that he's passing by the thresholds in the ReturnHome sub because of some /delays in them.
Substitute this code for Sub ReturnHome and Sub AreWeStuck
Code: Select all
Sub ReturnHome
/if (${DEBUG}) /echo Entered Sub ReturnHome
/if (${FollowingTank} || ${MovingCamp} || !${StaticCamp}) /return
/if (${Me.Sitting}) /stand
/if (${Math.Distance[${HomeYLoc},${HomeXLoc}]}<20) {
/keypress forward
/keypress back
/keypress left
/keypress right
/delay 2
/return
}
:MoveHome
/doevents
/face fast nolook loc ${HomeYLoc},${HomeXLoc}
/if (${Math.Distance[${HomeYLoc},${HomeXLoc}]}>20) /keypress forward hold
/call AreWeStuck
/if (${Math.Distance[${HomeYLoc},${HomeXLoc}]}<25) {
/keypress forward
/keypress back
/keypress left
/keypress right
/if (${DEBUG}) /echo Leaving Sub ReturnHome
/return
}
/goto :MoveHome
/return
Sub AreWeStuck
/doevents
/declare StuckXLoc int local ${Me.X}
/declare StuckYLoc int local ${Me.Y}
/delay 5
/if (${StuckXLoc}==${Me.X} && ${StuckYLoc}==${Me.Y}) /call MoveAround
/return
-
Cr4zyb4rd
- Plugins Czar
- Posts: 1449
- Joined: Tue Jul 20, 2004 11:46 am
Post
by Cr4zyb4rd » Mon Jun 06, 2005 6:51 am
Glad to see something like this finally being worked on. People would constantly ask me for my "bard macros" as if I had some secret stash laying around, and just didn't seem to want to accept that for all of my plugin wizardry I still played my own toon 99% manually and at the most would load a mildly-modified RogueHelper if I were going to afk a few minutes or got stuck in a boring grind group and wanted to free myself up to chat.
I didn't look over the above code too well, but I do remember having to play around with the "standard" anchor-type codes a bit due to the fast run speed of selos. Also I'm sure you'll run into some minor annoyances that still linger in the twist plugin if you're trying to mez using /twist once. (in some cases the timers just don't get reset right when the twist restarts, and anything with a "long" recast goes a bit goofy) I'm not sure what I'd advise there, but if all else fails just keep track of what the plugin's currently doing and restart the twist "manually" I guess. When you get right down to it the twist plugin is really a pretty complicated way of doings something that a few lines of macro script can do much more elegantly. I wish I'd gotten to finish my total rewrite of it before I decided to bugger off, but it just wasn't in the cards.
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Mon Jun 06, 2005 11:17 am
Hehee, the man himself posts in my bard thread!
I was actually going to switch twisting over macro lines for just that purpose when I debugged the mezz code. My guild has been on a raiding rampage the last few days so I haven't even looked at it.
Today looks good for some debugging tho

-
Digi187
- decaying skeleton

- Posts: 2
- Joined: Mon Jun 06, 2005 12:25 am
Post
by Digi187 » Sun Jun 19, 2005 3:37 am
Stay with this DM don't let it die!!!
Alot of bards watching this thread I am sure :)
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Sun Jun 19, 2005 1:07 pm
Digi187 wrote:Stay with this DM don't let it die!!!
Alot of bards watching this thread I am sure :)
I've got the mezzing routines "working" but there's some logic to fix... Its about detecting second adds, but the bard will sit in proactive mezz mode and hold up to 3 targets without any problems.
I left my test bard in qeynos mezzing snakes for about 30 minutes the other day, worked great.
I've got some ideas for reworking song selection with a series of better triggers as well to make it a lot more dynamic, easier for the raiding bard to switch up buffs/debuffs on the fly... and I'm going to move towards an ini file I think to store what you set and how.
-
nils
- a grimling bloodguard

- Posts: 565
- Joined: Wed Jul 30, 2003 10:02 pm
Post
by nils » Sun Jun 19, 2005 5:33 pm
can't wait to see the changes DM I've been watching this tread, tried when first posted, worked good really wanted mez.... now you going to have me checking every 30 mins to see if you updated haha
Nils
-
JimJohnson
- a grimling bloodguard

- Posts: 1299
- Joined: Sat Oct 11, 2003 6:00 am
Post
by JimJohnson » Sun Jun 19, 2005 10:48 pm
Add in a Selos option if you could to keep it up. And those pauses you posted work great for fixing the problem with finding homepoint with selos on.
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Sun Jun 19, 2005 11:19 pm
JimJohnson wrote:Add in a Selos option if you could to keep it up. And those pauses you posted work great for fixing the problem with finding homepoint with selos on.
I've got a good idea of how to completely redo song selection with a series of /switches and .ini file stuff, just need to write it
Debugging the mezz stuff tonight after I get some 1.5 epic crap done first.
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Thu Jun 30, 2005 1:12 pm
All furture updates to bardhelper will be posted in the ViP section.
-
outlander
- a hill giant

- Posts: 232
- Joined: Mon Feb 14, 2005 11:40 am
Post
by outlander » Tue Jul 05, 2005 9:15 am
DM in your code block below the second highlighted section is redundent right? shoud this be changed/removed?
Code: Select all
Sub CheckForAdds
/delay 1
/if (${DEBUG}) /echo In Sub CheckForAdds
/declare s int local
/declare i int local 1
/declare j int local 1
/for i 1 to 4
/if (${DEBUG}) /echo i: ${i}
/varset s ${NearestSpawn[${i},npc].ID}
/if (${s} == ${TargetArray[4]}) /next i
[color=red]/if (${Spawn[${s}].Type.Equal["Corpse"]}) /next i[/color]
/for j 1 to ${AddArray.Size}
/if (${s} == ${AddArray[${j}]) /next i
/next j
/if (${Spawn[${s}].Distance}>${Spell[${Mezz}].Range} || ${Spawn[${s}].Distance} > ${AssistDistance}) {
/if (${DEBUG}) /echo Leaving CheckForAdds because next spawn is at: ${Spawn[${s}].Distance
/return
}
/varset AddArray[${i}] ${s}
/if (${DEBUG}) /echo Targeting ID ${s}
/squelch /target id ${s}
[color=red]/if (${Target.Type.Equal["Corpse"]}) {
/if (${DEBUG}) /echo Target.Type.Equal corpse, clearing target.
/squelch /target clear
/next i
}[/color]
/delay 2
/call Mezz
/if (!${MezzAllAdds}) /return
/next i
/return
-
DigitalMocking
- a grimling bloodguard

- Posts: 620
- Joined: Mon Apr 04, 2005 5:53 pm
Post
by DigitalMocking » Tue Jul 05, 2005 1:34 pm
That entire section has been rewritten, I'm debugging a few things now before I post the macro.
-
gindo
- orc pawn

- Posts: 17
- Joined: Sat Apr 16, 2005 4:24 pm
Post
by gindo » Mon Feb 08, 2016 5:28 pm
Any idea why this macro is giving me a 'Subroutine Main wasn't found' error? I have verified that the Sub Main is there, followed by all the declares.
I verified from start to finish the macro and it's named bard.mac, but it will not start. Tried running on multiple toons, got same error and tried running other macros on the bard, they work but the bard one does not.
Scratching my head..don't think it's necessarily an error in the macro..but I don't know, it's saying something that is definitely there can't be found.