advchant.mac

Post your completed (working) macros here. Only for macros using MQ2Data syntax!

Moderator: MacroQuest Developers

Bardmad
a lesser mummy
a lesser mummy
Posts: 36
Joined: Mon Apr 05, 2004 4:55 am

Post by Bardmad » Mon May 10, 2004 9:26 am

hi, it is possible to upgrade the present kite with levi (singing steel boot) and with /lock function (as requested before). it's better to run around statics point than running around the mobs. It is a great macro, but it's more suitable to run around the flat ground.

student_01
orc pawn
orc pawn
Posts: 17
Joined: Tue Jul 22, 2003 9:22 pm

Post by student_01 » Mon May 10, 2004 11:15 am

Ok when i set up this script do i have to edit anything here:
/echo usage: chant.mac <DOTs, LVL6 Selos> <49selo> <radius> [<heal song>]
/return


Or if my spell gems are set up correctly do i not have to edit anything and just setup/run like this:
Usage Examples:
| -Scenario 1: If you are using...
| ...DOTs in Gems 4, 5, 6, and 7
| ...Level 49 Selo in Gem 2
| ...Radius of 55
| ...Hymn of Restoration in Gem 1
| ...If you wanted the script to start paused
| syntax: /mac chant 4567 2 55 1 1


I tried to ask the question as best as i could i hope i was detaild enough for yout to understand.

**EDIT** A coupel of things , if this seems like a stupid question let me explain.I usaly just use macro quest for tracking/foraging , also i like the built in anti cpu hog feature.

User avatar
wilso132
Contributing Member
Contributing Member
Posts: 106
Joined: Thu Oct 17, 2002 11:53 am

Post by wilso132 » Mon May 10, 2004 12:44 pm

student_01 wrote:Ok when i set up this script do i have to edit anything here:
/echo usage: chant.mac <DOTs, LVL6 Selos> <49selo> <radius> [<heal song>]
/return


Or if my spell gems are set up correctly do i not have to edit anything and just setup/run like this:
Usage Examples:
| -Scenario 1: If you are using...
| ...DOTs in Gems 4, 5, 6, and 7
| ...Level 49 Selo in Gem 2
| ...Radius of 55
| ...Hymn of Restoration in Gem 1
| ...If you wanted the script to start paused
| syntax: /mac chant 4567 2 55 1 1


I tried to ask the question as best as i could i hope i was detaild enough for yout to understand.

**EDIT** A coupel of things , if this seems like a stupid question let me explain.I usaly just use macro quest for tracking/foraging , also i like the built in anti cpu hog feature.
Notice the line I highlighted. That's the one you would use if you had the same setup described above it.

student_01
orc pawn
orc pawn
Posts: 17
Joined: Tue Jul 22, 2003 9:22 pm

Post by student_01 » Tue May 11, 2004 12:52 pm

Mac runs great i love it ,however i have 1 problem.The circels he runs are all well and good but i have a problem with my toon running all over the zone.Like the circels pan out i would like him to stay in the genral area i start the mac.

kasodo
a lesser mummy
a lesser mummy
Posts: 64
Joined: Fri Feb 13, 2004 9:41 am

Re: Static Kite Change

Post by kasodo » Tue May 11, 2004 1:27 pm

Is it bad to quote yourself? This will be the last time I mention this if you cant figure out how to kite around a static loc then dont run this damn macro you will get everyone in trouble if you use this and dont know what the hell you are doing.

kasodo wrote:For all those wanting this mac to kite at a certain loc you can change the following code:

Code: Select all

Sub Circ 
   /declare CirX local 
   /declare CirY local 

   /call CheckObst 

   /if (${Target.ID}) { 
      /varset CirX ${Target.Y} 
      /varset CirY ${Target.X} 
   } else { 

        /if (${TargetUpNext}!=0) { 

            /varset CirX ${Spawn[ID ${TargetUpNext}].Y} 
            /varset CirY ${Spawn[ID ${TargetUpNext}].X} 

            /if (${Spawn[ID ${TargetUpNext}].Distance}<=${Math.Calc[${CirR}*2]}) { 
                /if (${Target.ID}) { 
                    /if (${Target.ID}!=${TargetUpNext}) { 
                        /target id ${TargetUpNext} 
                    } 
                } else { 
                    /target id ${TargetUpNext} 
                } 
                /varset TargetUpNext 0 
            } 
        } 
   } 

   /if (${Math.Distance[${CirX},${CirY}]}<${Math.Calc[${CirR}/2]}) { 
      /face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+180]} 
   } else { 
      /face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+${Math.Calc[90*${CirR}/${Math.Distance[${CirX},${CirY}]}]}]} 
   } 
/return 
to

Code: Select all

Sub Circ 
   /declare CirX local 
   /declare CirY local 

   /call CheckObst 

   /if (${Target.ID}) { 
[color=red]      /varset CirX ${RubberY} 
      /varset CirY ${RubberX}[/color] 
   } else { 

        /if (${TargetUpNext}!=0) { 

[color=red]            /varset CirX ${RubberY} 
            /varset CirY ${RubberX}[/color] 

            /if (${Spawn[ID ${TargetUpNext}].Distance}<=${Math.Calc[${CirR}*2]}) { 
                /if (${Target.ID}) { 
                    /if (${Target.ID}!=${TargetUpNext}) { 
                        /target id ${TargetUpNext} 
                    } 
                } else { 
                    /target id ${TargetUpNext} 
                } 
                /varset TargetUpNext 0 
            } 
        } 
   } 

   /if (${Math.Distance[${CirX},${CirY}]}<${Math.Calc[${CirR}/2]}) { 
      /face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+180]} 
   } else { 
      /face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+${Math.Calc[90*${CirR}/${Math.Distance[${CirX},${CirY}]}]}]} 
   } 
/return 
Note: this isn't a great fix but does the trick for me. It will kite around the loc you start the mac at..... if you want to be able to pass a loc to it you would have to add more code and I don't feel like doing it.
<Oid> You know whats sad
<Oid> here soon, lax will log in
<Oid> and go "You fucking idiots!"
* Lax has joined #macroquest
* ChanServ sets mode: +o Lax
...
<Lax> you fucking idiots!

phazor
a lesser mummy
a lesser mummy
Posts: 46
Joined: Tue May 11, 2004 1:56 pm

Post by phazor » Tue May 11, 2004 2:12 pm

Code: Select all

#event NeedTarget "#*#You must first select a target for this spell!#*#"
#event Exp        "#*#You gain #*#"
#event Died       "#*#You have entered#*#"
#event Caster     "#*# begins to cast a spell.#*#"
#event Tell       "#*#tells you#*#"
fixed events.. very roughly... might want to add a tell log or something like:

Code: Select all

#event Tell      "#1#tells you #2#"
where 1 is the persons name and 2 is the message. (too lazy to write the rest, in middle of makign another macro)

RDPidb
a lesser mummy
a lesser mummy
Posts: 69
Joined: Mon Dec 15, 2003 1:14 am

Post by RDPidb » Tue May 11, 2004 3:28 pm

Is it bad to quote yourself? This will be the last time I mention this if you cant figure out how to kite around a static loc then dont run this damn macro you will get everyone in trouble if you use this and dont know what the hell you are doing.
thats a rubber anchor ... he wants a static anchor. i.e. NO movement.

Try reading next time.

*golf clap* 4 u.

~

kasodo
a lesser mummy
a lesser mummy
Posts: 64
Joined: Fri Feb 13, 2004 9:41 am

Hi Moron

Post by kasodo » Tue May 11, 2004 3:33 pm

RDPidb wrote:
Is it bad to quote yourself? This will be the last time I mention this if you cant figure out how to kite around a static loc then dont run this damn macro you will get everyone in trouble if you use this and dont know what the hell you are doing.
thats a rubber anchor ... he wants a static anchor. i.e. NO movement.

Try reading next time.

*golf clap* 4 u.

~
Hi Jackass... know how macros work? I didn't think so. Know how to read macro code? Didn't think so..... take your dumbass comments somewhere else if you dont want to read the fucking god damn code... asshole....

This WILL kite around YOUR rubber anchor WHICH is SET WHEN YOU RUN THE FUCKING MACRO

example:

go to the loc you want to kite around and run the god damn fucking macro asshole!

remove head from ass

jump off a very tall building

die.

Thanks,

kasodo
<Oid> You know whats sad
<Oid> here soon, lax will log in
<Oid> and go "You fucking idiots!"
* Lax has joined #macroquest
* ChanServ sets mode: +o Lax
...
<Lax> you fucking idiots!

student_01
orc pawn
orc pawn
Posts: 17
Joined: Tue Jul 22, 2003 9:22 pm

Post by student_01 » Tue May 11, 2004 5:00 pm

No he answerd right , the problem was this.I would start macro it would run and target a mob and start kitting it near to were he targets mob.When the mob was dead it would run off and target mob and start kiting there.It seems this fix will keep him in the genral area i start in right??

GuardianX99
a lesser mummy
a lesser mummy
Posts: 43
Joined: Tue Dec 31, 2002 6:31 pm
Contact:

Post by GuardianX99 » Tue May 11, 2004 6:46 pm

GOD DAMN Can we fucking get rid of the bard macro's OBVIOUSLY morons are trying to run them.

Kasodo, don't fight them, they are morons, they will drag you to their level and beat you with experience. If people want to whine and bitch about macro's LET EM. They ride on your shoulders.

Okay, for the rest of you non-commiting pricks, how about this. try posting IDEAS on how to ijmplement your idea instead of saying "IT DOESN'T WORK Waaaaahhhhh FIX FIX FIX IT!!!! WAAAHHHHH"

Fuck bard chant kite macro's there are plugins that work way better and they don't have to but updated every patch or every time they update macroquest.
I can't believe you had the gall to bitch about that and be like oh lax doesnt have a job because hes a DICKFACE. Yeah im a dickface, because you're a fucking COCKSUCKER. OHNOES.


--Lax

User avatar
dont_know_at_all
Developer
Developer
Posts: 5450
Joined: Sun Dec 01, 2002 4:15 am
Location: Florida, USA
Contact:

Post by dont_know_at_all » Tue May 11, 2004 9:36 pm

GuardianX99 wrote:Fuck bard chant kite macro's there are plugins that work way better and they don't have to but updated every patch or every time they update macroquest.
Yeah, CTD is way better.

A plugin is the *wrong* way to do chant kiting.

GuardianX99
a lesser mummy
a lesser mummy
Posts: 43
Joined: Tue Dec 31, 2002 6:31 pm
Contact:

Post by GuardianX99 » Wed May 12, 2004 2:35 am

I dunno about that. Personaly I have had alot less problems in general with the plugins than I have with the actual macro's.

Circles are more steady and the twisting can be changed on the fly. Try using them DKAA. I was skeptical at first as well. Then I tried them and found that they kicked ass.

Only thing you need to run macrowise would be a targeting macro based on location.
I can't believe you had the gall to bitch about that and be like oh lax doesnt have a job because hes a DICKFACE. Yeah im a dickface, because you're a fucking COCKSUCKER. OHNOES.


--Lax

User avatar
wilso132
Contributing Member
Contributing Member
Posts: 106
Joined: Thu Oct 17, 2002 11:53 am

Post by wilso132 » Wed May 12, 2004 1:39 pm

I like running the static circle version of this macro, but it has a few problems with acquiring new targets and bringing them in to kite. Does anyone else already have a modified version that uses the static circle but will still pull mobs back to the circle?

If not, expect one to be posted soon :) .

grayfox107
decaying skeleton
decaying skeleton
Posts: 5
Joined: Thu May 13, 2004 12:23 am

just an idea but i think it could work

Post by grayfox107 » Thu May 13, 2004 12:46 am

I know this is just an idea but would it be possible for me to make the macro run so after some time of getting the monsters together (running in the circle) i would then begin to go in a square pattern to use my AE songs rather than dotting one creature at a time. And then go back into the circle pattern after some time to have the adds come closer together and then back yet once more.


**********************************************************

/declare HealSong int outer
/declare OrigSong int outer

/declare HealthMin outer
/declare HealthMax outer

/declare DBLevel outer

/declare TargetUpNext int outer

/declare RubberX int outer
/declare RubberY int outer
/declare AnchorX int outer
/declare AnchorY int outer
/declare AnchorX2 int outer
/declare AnchorY2 int outer
/declare AnchorX3 int outer
/declare AnchorY3 int outer
/declare AnchorX4 int outer
/declare AnchorY4 int outer



/declare AvoidList[50] string outer UNDEFINED-ARRAY-ELEMENT

/declare MyXLOC float outer
/declare MyYLOC float outer

***********************************************************

/varset TargetUpNext 0

/varset RubberX ${Me.X}
/varset RubberY ${Me.Y}
/varset AnchorX (${Me.X}+${CRadius})
/varset AnchorY ${Me.Y}
/varset AnchorX2 ${Me.X}
/varset AnchorY2 (${Me.Y}+${CRadius})
/varset AnchorX3 (${Me.X}-${CRadius})
/varset AnchorY3 ${Me.Y}
/varset AnchorX4 ${Me.X}
/varset AnchorY4 (${Me.Y}-${CRadius})


/echo Rubber Anchor dropped at ${RubberX},${RubberY}
/echo Anchor dropped at ${RubberX},${RubberY}


************************************************************



|CIRCLE Start-up Pattern *********************************************************************************************************************

Sub Circ
/declare CirX local
/declare CirY local
/declare iCount int local

/varset iCount 0

/call CheckObst


/if (${Target.ID}) {
/varset CirX ${Target.Y}
/varset CirY ${Target.X}
} else {

/if (${TargetUpNext}!=0) {

/varset CirX ${Spawn[ID ${TargetUpNext}].Y}
/varset CirY ${Spawn[ID ${TargetUpNext}].X}

/if (${Spawn[ID ${TargetUpNext}].Distance}<=${Math.Calc[${CirR}*2]}) {
/if (${Target.ID}) {
/if (${Target.ID}!=${TargetUpNext}) {
/target id ${TargetUpNext}
}
} else {
/target id ${TargetUpNext}
}
/varset TargetUpNext 0
}
}
}

/if (${Math.Distance[${CirX},${CirY}]}<${Math.Calc[${CirR}/2]}) {
/face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+180]}
} else {
/face heading ${Math.Calc[${Heading[${CirX},${CirY}].DegreesCCW}+${Math.Calc[90*${CirR}/${Math.Distance[${CirX},${CirY}]}]}]}
}


/if (${iCount}>200) {
/call MoveToAnchor
/varset iCount 0
}

/varcalc iCount ${iCount}+1

/return


|Square Run Pattern (handling several adds)****************************************************************************************************

|THIS DOES NOT WORK YET with the twisting (or at all hehe)

Sub MoveToAnchor

/echo Moving to Anchor at Loc: ${AnchorY}, ${AnchorX}.

:AnchorMoveLoop
/delay 1
/doevents
/face fast nolook loc ${AnchorY},${AnchorX}

/if (${Math.Distance[${AnchorY},${AnchorX}]}>12) {
/keypress forward hold
} else {
/keypress forward
/return
}

/goto :AnchorMoveLoop
/return



|********************************************************************************



Sub MoveToAnchor2

/echo Moving to Anchor 2 at Loc: ${AnchorY2}, ${AnchorX2}.

:AnchorMoveLoop2
/delay 1
/doevents
/face fast nolook loc ${AnchorY2},${AnchorX2}

/if (${Math.Distance[${AnchorY2},${AnchorX2}]}>12) {
/keypress forward hold
} else {
/keypress forward
/return
}

/goto :AnchorMoveLoop2
/return



|********************************************************************************



Sub MoveToAnchor3

/echo Moving to Anchor 3 at Loc: ${AnchorY3}, ${AnchorX3}.

:AnchorMoveLoop3
/delay 1
/doevents
/face fast nolook loc ${AnchorY3},${AnchorX3}

/if (${Math.Distance[${AnchorY3},${AnchorX3}]}>12) {
/keypress forward hold
} else {
/keypress forward
/return
}

/goto :AnchorMoveLoop3
/return


|********************************************************************************


Sub MoveToAnchor4

/echo Moving to Anchor 4 at Loc: ${AnchorY4}, ${AnchorX4}.

:AnchorMoveLoop4
/delay 1
/doevents
/face fast nolook loc ${AnchorY4},${AnchorX4}

/if (${Math.Distance[${AnchorY4},${AnchorX4}]}>12) {
/keypress forward hold
} else {
/keypress forward
/return
}

/goto :AnchorMoveLoop4
/return







|**********************************************************************************************************************************************

RDPidb
a lesser mummy
a lesser mummy
Posts: 69
Joined: Mon Dec 15, 2003 1:14 am

Post by RDPidb » Thu May 13, 2004 9:30 am

Hi Jackass... know how macros work? I didn't think so. Know how to read macro code? Didn't think so..... take your dumbass comments somewhere else if you dont want to read the fucking god damn code... asshole....
Kasodo: Yes I do, I write my own thanks.
Let me ask you a question: DO you know how to read before you respond? No ? .. Didn't think so.

P R E P A R E to be PPPPWWWNNNNEEEEDDDD

Here is what I said:
thats a rubber anchor ... he wants a static anchor. i.e. NO movement.
and here is what you just replied:
This WILL kite around YOUR rubber anchor WHICH is SET WHEN YOU RUN THE FUCKING MACRO

Hmmmmmmmmmmmmmmm.

Like I said. that is a RUBBER anchor. and he wants a static anchor.
I.e. absolutly no movement in the circle. with rubber youi DRIFT.

You , need to go read a dictionary, leave the coding to me. k.

Ok, so i guess that doesn't realy PWN you too bad, but your still not very smart. IMHO.


...anyway, if u want it static
take this part

Code: Select all

Sub Circ 
   /declare CirX local 
   /declare CirY local 

   /call CheckObst 

   /if (${Target.ID}) { 
      /varset CirX ${Target.Y} 
      /varset CirY ${Target.X} 
   } else { 

        /if (${TargetUpNext}!=0) { 

            /varset CirX ${Spawn[ID ${TargetUpNext}].Y} 
            /varset CirY ${Spawn[ID ${TargetUpNext}].X} 
change it to

Code: Select all

Sub Circ 
   /declare CirX local 
   /declare CirY local 

   /call CheckObst 

   
      /varset CirX ${LOCY} 
      /varset CirY ${LOCX} 
   
and pass LOCy and LOCX in the main function when u call it.

in fact u can just set them global outside the circ function if you like.