• 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 --->

Editing Siddin's Charm/Swarm kiting mac (1 Viewer)

Joined
Feb 24, 2005
RedCents
2,214¢
Rich (BB code):
#event DropCharm "#*#charm spell#*#"
#event EXP2 "You gain party experience!!"
#event EXP "You gain experience!!"


Sub Main
/combat off
/combat save
/declare KiteMob int outer 0
/declare Charmed int outer 0
/declare MyTargetID int outer 0
/declare MyPetID int outer 0
/declare InvisPct int outer 55
/declare InvisSong int outer 13
/declare CharmSong int outer 7
/declare SwamCount int outer 8
/declare StopSwarm int outer 2
/declare ReCharm int outer 0
/declare EXP int outer 0
/declare HealSong int outer 6
/declare HealPct int outer 75
/declare DotOne int outer 2
/declare DotTwo int outer 3
/declare DotThree int outer 4
/declare DotFour int outer 5


:MainLoop
/doevents
/if (${Target.Level}>57) {
/twist off 
/tar npc next
} 
/if (${SpawnCount[radius 150]}<=${StopSwarm}) /call WaitForMobs
/nomodkey /keypress forward hold
/if (!${Me.Pet.ID}) /call Charming
/goto :MainLoop
/return

Sub Event_EXP
/varset MyTargetID 0
/varset MyPetID 0
/varset ReCharm 0
/varset EXP 1
/varset KiteMob 0
/varset Charmed 0
/return

Sub Event_EXP2
/varset MyTargetID 0
/varset MyPetID 0
/varset ReCharm 0
/varset EXP 1
/varset KiteMob 0
/varset Charmed 0
/return


Sub Event_DropCharm
/if (${Target.PctHPs}>${InvisPct}) /varset ReCharm 1
/return

Sub WaitingForCharmDrop
:CharmDrop
/if (!${Me.Pet.ID} && ${Target.PctHPs}>=${InvisPct}) /return
/if (${ReCharm}==1 && ${Target.PctHPs}>=${InvisPct}) /return
/doevents
/if (${Target.PctHPs}<=${InvisPct}) {
/squelch /twist ${InvisSong}
/nomodkey /keypress forward hold
/delay 5s
/twist ${DotOne} ${DotTwo} ${DotThree} ${DotFour}
/varset KiteMob 1
/return
}
/goto :CharmDrop
/return

Sub Charmed
/if (${Target.ID}==${Me.Pet.ID}) {
/target id ${MyTargetID} notid ${Me.ID}
/pet attack
/delay 2
/target id ${MyPetID} notid ${Me.ID}
}
/doevents
/return

Sub KiteMob
/target ID ${MyPetID}
/squelch /twist ${DotOne} ${DotTwo} ${DotThree} ${DotFour}
:Doevent
/doevents
/if (${KiteMob}==1)/goto :Doevent
/return

Sub WaitForMobs
:WaitForMobs
/nomodkey /keypress forward hold
/doevents
/if (${SpawnCount[radius 150]}>=${SwamCount}) /return
/goto :WaitForMobs
/return

Sub Charming
/target npc radius 150 notid ${Me.ID}
/if (${Target.Level}>57) {
/twist off 
/tar npc next
} 
/varset MyPetID ${Target.ID}
/target npc next radius 150 notid ${Me.ID}
/varset MyTargetID ${Target.ID}
/target id ${MyPetID} notid ${Me.ID}
/squelch /twist off
/echo Charming a ${Target.CleanName}
/squelch /twist ${CharmSong}
/delay 4s
/varset ReCharm 0
/call RunSong
/if (!${Me.Pet.ID}) /return
/call Charmed
/call WaitingForCharmDrop
/if (${KiteMob}==1) /call KitingMob
/return

Sub RunSong
/if (${Me.PctHPs}<=${HealPct}) {
/squelch /twist ${HealSong} ${RunSong}
} else {
/nomodkey /keypress forward hold
/delay 4s
}
/return

Sub KitingMob
:kiting
/doevents
/if (${KiteMob}==1) /goto :kiting
/return

This is what I got:
Using Composer's Greaves for Run Song
and Tiny Cloak of Darkest Night for Invis Song

This works great as long as you get invis clicked before the mob dies. I have 3 things that I need help with and been trying wierd combinations of stuff, but I've had like 0 sucess.

How would I make it so that if the mobs kill my pet because I didnt get invis off in time that it would clear the PetID and start over just as if I did get exp sucessfully. The other thing I'm trying to do is that if I run out of mana to charm kite that it will just chant kite mobs down till I get like 80% mana again then start charming again.

Was toying with
Rich (BB code):
#Event Mana "Insufficient Mana to cast this spell!"

Sub Event_Mana
/goto :kite
/return

:kite
/tar npc radius 150
/twist 2 3 4 5
/if (!${Target.ID}) /goto :kite
/if (${Me.PctMana}>80) /goto :MainLoop


Which seems to work once in awhile but most the time i get a bunch of lame errors, but I was wondering if there was a more efficent way of doing this, or the whole macro in general. The pet dying to mobs thing is really what is hosing me atm.

Also would like to add a charm check with target lvl > 57 target a new one before wasiting mana/precious proximity agro on uncharmable mobs.
 
You're also going to get errors because you don't have the runsong declared anymore, which you need otherwise the macro won't twist selos and you'll die

your new #event you need to add
Rich (BB code):
         #Event Mana "Insufficient Mana to cast this spell!"
replace :MainLoop with the following
Rich (BB code):
     /declare RunSong int outer 8
         /declare mainloop int outer 0
         :MainLoop
         /varset mainloop 0
your mana event
Rich (BB code):
         Sub Event_Mana
        :kite
         /tar npc radius 150
    
    /twist ${DotOne} ${DotTwo} ${DotThree} ${DotFour}
        :kiting
    /if (${Me.Buff[${Me.Gem[${RunSong}].Name}].Duration<=2) {
    /twist ${RunSong}
    /delay 4s
    /twist ${DotOne} ${DotTwo} ${DotThree} ${DotFour}
  }
         /if (!${Target.ID}) /goto :kite
         /if (${Me.PctMana}>80) {
        /varset mainloop 1
        } else /goto :kiting
         /return

under every /doevents except for the one in sub main add the following line
Rich (BB code):
       /if (${mainloop}==1) /return
in the sub main doevents add the following line
Rich (BB code):
        /if (${mainloop}==1) /goto :Mainloop
 
Where do I send the cyber?

and yes I know I don't have the runsong delcared I was doing this in an indoor zone so was just using runspeed 5.. I have 2 versions swarm1 <indoor> swarm2 <outdoor>

I was adding events changing loops all sorts of shit was pissing me off thanks for the edit.
 
Editing Siddin's Charm/Swarm kiting mac

Users who are viewing this thread

Back
Top