• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

{Target.LineOfSight} (1 Viewer)

IamBigDaddy

Member
Joined
Oct 14, 2005
RedCents
80¢
Am I using {Target.LineOfSight} properly here? What I am trying to do is target a different mob if I can not see the one I have targetted.

Rich (BB code):
:loopstart


/call GMcheck
/echo waiting
/call MoveToLoc 2113 335
/delay 20s

:selecttarget

/if (${Target.ID}==FALSE) /tar NPC radius 195
/delay 10
/if (${Target.LineOfSight}==FALSE) /goto :loopstart
/delay 10
/echo checking

/if (${Target.ID}==FALSE) /goto :selecttarget

:havetarget
/if (${Target.ID}==FALSE) /goto :loopstart
/if (${Me.AltAbilityTimer[Fortified Bellowing]} == 0) { 
   /delay 5s
   /aa act Fortified Bellowing
 }

/delay 10
/if (${Target.ID}==FALSE) /goto :loopstart
/if (${Me.AltAbilityTimer[Cacophony]} == 0) {
  /delay 5s 
  /aa act Cacophony
}
/if (${Target.Type.Equal[NPC]}) /goto :havetarget
/goto :loopstart
/return
 
The one problem i see with this mac is that if the mob is a non roamer (stationary) it will target it then get the no LOS then it will delay and target the same mob still no LOS. It would endless loop. The only way it would target another mob is if mob B paths closer to you then mob A. Now in some situations this would work. Ill see if i can come up with something better
 
This is for a situation where there are no roamers. They are all static spawns on about a 20 min timer. Occasionally my bard will get pushed out of position and target a mob that is around a corner. I want wait 20 sec. for a new mob to spawn and try to retarget.

Indoor level room, no z changes
 
BTW, this is the line of code that (from AutoEnc) gave me the idea to try this...


Rich (BB code):
     /if ( ${refreshTime}<20 && ( ${Target.PctHPs}<${mobHPStart} || ${minHP}==100 ) && !${newAdds} && ${Target.LineOfSight} && !${Me.TargetOfTarget.Name.Equal[${Me.Name}]} && !${nukeWaitTimer} && ${nukeMode} && ( ${Me.PctMana}>=${nukeMana} || ${nukeMode}==2 ) && ( ${Target.Type.Equal[NPC]} || ${Target.Type.Equal[pet]} ) ) {
 
try this one, cleaned up the false statments a little too (personal preference)
Rich (BB code):
:loopstart
/call GMcheck
/echo waiting
/call MoveToLoc 2113 335
/delay 20s
:selecttarget
/if (!${Target.ID) /tar NPC radius 195 noalert 3
/delay 10
/if (!${Target.LineOfSight}) {
/squelch /alert 3 add ${Target.ID}
/squelch /alert 3 add ${Target.Name}
/goto :loopstart
}
/delay 10
/echo checking
/if (!${Target.ID}) /goto :selecttarget
:havetarget
/if (!${Target.ID}) /goto :loopstart
/if (${Me.AltAbilityTimer[Fortified Bellowing]} == 0) { 
/delay 5s
/aa act Fortified Bellowing
}
/delay 10
/if (!${Target.ID}) /goto :loopstart
/if (${Me.AltAbilityTimer[Cacophony]} == 0) {
/delay 5s 
/aa act Cacophony
}
/if (${Target.Type.Equal[NPC]}) /goto :havetarget
/goto :loopstart
/return
 
siddin said:
Rich (BB code):
/if (!${Target.ID) /tar NPC radius 195 noalert 3
/delay 10
/if (!${Target.LineOfSight}) {
/squelch /alert 3 add ${Target.ID}
/squelch /alert 3 add ${Target.Name}

Thx Siddin

I am not clear on what this is doing but it seems it will store the target.ID/Name and not target them again. If so will the names stored be more unique than the displayed names? The unwanted target has the same displayed name as the targets I do want.

Siddin, If you are interested I will give you the specific zone and area. I would really like to develop this more to allow me to expand this from an 8 mob rotation to a 14 mob rotation but that would require moving my bard depending on who she was pulling. It has taken me about 3 weeks to get this this far and I figure another 2 weeks to get the movement worked out to pull all 14. With someone who actually knows what they are doing maybe it would only take a couple of hours...
 
Rich (BB code):
/if (!${Target.ID) /tar NPC radius 195 noalert 3
/delay 10
/if (!${Target.LineOfSight}) {
/squelch /alert 3 add ${Target.ID}
/squelch /alert 3 add ${Target.Name}
ok, basically this is saying target an npc within a radius of 195 but not on alert 3.
/squelch /alert 3 add ${Target.ID} and the same for target.name will add them to alert 3 if they are not in line of sight.
since its target.name and not target.cleanname you'll have different names for the target ie some_mob_00 and some_mob_01, etc. so you shouldn't have to worry about whether or not the mob has the same display name.
feel free to send me the idea you're looking for and i can send you snippets of other macros that i've done to move the character around if thats what you're looking for.

i'm not on mq right now, but do /alert help when you have the chance. at the start of the macro you're running you'll want to clear your alert 3.
 
{Target.LineOfSight}

Users who are viewing this thread

Back
Top