• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Infiltrating the Hive (Monster Mission)

EvenLessSpam

Active member
Joined
Oct 31, 2005
RedCents
91¢
Here's a small thing I've been using for a long time that I've decided to finally share ;)

BEWARE this might take some tries to get the hang off. I died a lot of times untill I got the routine. But then again, I suck at multiboxing ;)


The mission gives either a dagger or a mask. Nothing big. The dagger is pretty nice for gearing up. It also gives 1+ AA per run.

It needs at least 2 to be done (tricky) and is easier with 3 or 4.

Choose the classes in the following order: Warrior, Cleric, Rogue, Necromancer, Enchanter, Wizard.

First you warp to Vilsrin (can't remember his full name) who will start the event. Place the warrior in front of Vilsrin, near some of the surrounding mobs.
Buff up with the casters, get cleric to cast HoT on warrior. When HoT lands on warrior you start the event by giving Vilsrin a keyphrase, which I must admit I can't remember either. Just hail him and follow the text ;)
Don't attack Vilsrin, you can't attack him so don't waste the time, kill all the adds around him though. Only heal with HoT unless you're cutting it close, the heal with the CH.

Now, when the adds are dead get full HP on the warrior and get ready for next fight. On the map, find the Captain. He'll have an aide who heals. Don't warp to him. On the map, see the small camp in front of him with 3-4 spawns. Warp to that camp when HoT lands on the warrior. Follow with cleric and DPS. Kill the ones in the camp.

When those are dead, heal up and HoT the warrior, then kill Captain's Aide first. Will die fast. Then kill The Hive Captain. He's the toughest mob of the 3 that needs to die, so keep HoT on the warrior. Don't worry so much about dying, you will spawn at where Vilsrin were and can continue where you left off.

Next take The Hive Webmaster. Warp to the 2-3 adds around him and kill the adds first. Keep HoT up on the warrior. Kill The Hive Webmaster.

Next take The Hive Summoner. He has 2 pets and rampages, so keep HoT tank and ramp tank (preferably the rogue). Warp on top of one of the pets and kill the pets first. Kill The Hive Summoner.

That's it, almost.
/target race chest
warp to the chest, open it and loot a shard and item if you want it.
When standing on the path to the chest, and looking at the chest, you will see up to the left there's a small hill with 2 campfires which you most likely will recognize as the zone in/out from/to Stoneroot. Walk all the toons up between the campfires and the task will update. DON'T ZONE OUT.

Now you just /warp succor with them all and zone out at that spot. You will zone out where the zone-in is.

The mission id for this mission is 7521.

I've made the following 2 macros to semi-automate the warrior and automate (still buggy) the rogue.

The warrior macro.
Rich (BB code):
| ZWar.mac; Infiltrating the Hive (Illusionist Zimix), Warrior macro
|
| /macro ZWar.mac

#Event EnrageON     "#1# has become ENRAGED."
#Event EnrageOFF    "#1# is no longer enraged."

Sub Main
    /declare Enrage         bool    outer   FALSE
    /declare StickRange int     outer   12
    /if (${Defined[Param0]}) /varset StickRange ${Param0}
    :loop
        /call GetTarget
        /if (${Me.Combat} && (!${Target.ID} || ${Target.Type.NotEqual[NPC]} || ${Target.State.NotEqual[DEAD]})) /attack off
        /if (!${Target.ID} || ${Target.Type.NotEqual[NPC]} || ${Target.State.Equal[DEAD]}) /goto :loop
        /call AttackTarget
    /goto :loop
/return

Sub GetTarget
    /declare WhoString      string  local   npc radius 40 zradius 23
    /declare i              int     local   0
    /for i 1 to ${SpawnCount[${WhoString}]}
        /if (${NearestSpawn[${i},${WhoString}].Name.NotEqual[${Spawn[npc named ${NearestSpawn[${i},${WhoString}].Name}]}]} && ${SpawnCount[${WhoString}]} == 1) {
            /squelch /target id ${NearestSpawn[${i},${WhoString}].ID}
            /goto :break
        }
        /if (${i} == ${SpawnCount[${WhoString}]}) {
            /squelch /target id ${NearestSpawn[${i},${WhoString}].ID}
            /goto :break
        }
    /next i
    :break
/return

Sub AttackTarget
    /declare CurrentTarget  int     local   ${Target.ID}
    /declare CastTimer      timer   local   0
    :begin
    /doevents
    /stick ${StickRange} moveback
    /attack on
    :loop
        /doevents
        /if (!${Target.ID}) /return
        :enrage
            /if (${Enrage} && ${Me.Combat}) /attack off
            /doevents
            /delay 1
        /if (${Enrage}) /goto :enrage
        /if (!${Me.Combat} && ${Target.Type.Equal[NPC]} && ${Target.State.NotEqual[DEAD]}) /attack on
        /if (${Me.AltAbilityReady[4043]} && !${CastTimer}) {
            /alt act 4043
            /varset CastTimer 14s
        }
        /if (${Me.AltAbilityReady[4146]}) {
            /if (${Stick.Status.Equal[ON]}) {
                /stick pause
                /delay 1s (!${Me.Moving})
                /delay 5
            }
            /alt act 4146
            /delay 1s (!${Me.Casting.ID})
            /if (${Stick.Status.Equal[PAUSED]}) /stick unpause
        }
        /delay 1
        /if (${Me.Combat} && (!${Target.ID} || ${Target.Type.NotEqual[NPC]})) /attack off
    /if (${Target.ID} == ${CurrentTarget}) /goto :loop
/return

Sub Event_EnrageON
    /varset Enrage TRUE
/return

Sub Event_EnrageOFF
    /varset Enrage FALSE
/return

The rogue macro.
Rich (BB code):
| ZRog.mac; Infiltrating the Hive (Illusionist Zimix), Rogue macro

#Event EnrageON     "#1# has become ENRAGED."
#Event EnrageOFF    "#1# is no longer enraged."

Sub Main
    /declare Enrage     bool    outer   FALSE
    /declare StickRange int     outer   8
    /declare MA         string  outer   NA
    /declare AssistPCT  int     outer   95
    /call KillStuff
/return

Sub KillStuff
    :loop
        /target id ${Spawn[pc war].ID}
        /if (!${Target.ID}) /goto :loop
        /if (${Target.Distance} > 50) /squelch /warp target
        /assist
        /delay 1s
        /if (${Target.ID} == ${Spawn[pc war].ID} || ${Target.Type.NotEqual[NPC]}) /goto :loop
        /if (${Target.PctHPs} < ${AssistPCT} && ${SpawnCount[pc war loc ${Target.X} ${Target.Y} radius 30 zradius 20]}) /call AttackTarget
    /goto :loop
/return

Sub AttackTarget
    /declare CurrentTarget  int     local   ${Target.ID}
    :begin
    /doevents
    /stick ${StickRange} behind
    /attack on
    :loop
        /if (${Me.PctHPs} < 50) {
            /gsay Low Health (below 50), backing off...
            /if (${Me.Combat}) /attack off
            :lowhp
                /delay 1s
            /if (${Me.PctHPs} < 70) /goto :lowhp
            /gsay Good Health (above 70), resuming...
            /return
        }
        /if (${Target.Distance} > 50) /squelch /warp target
        /doevents
        :enrage
            /if (${Enrage} && ${Me.Combat}) /attack off
            /doevents
            /delay 1
        /if (${Enrage}) /goto :enrage
        /if (!${Me.Combat} && ${Target.Type.Equal[NPC]} && ${Target.State.NotEqual[DEAD]}) /attack on
        /if (${Me.AltAbilityReady[4147]} && ${Target.Distance} < 20) {
            /if (${Stick.Status.Equal[ON]}) {
                /stick pause
                /delay 1s (!${Me.Moving})
                /delay 5
            }
            /alt act 4147
            /delay 1s (!${Me.Casting.ID})
            /delay 5
            /if (${Stick.Status.Equal[PAUSED]}) /stick unpause
        }
        /if (${Me.AltAbilityReady[4148]} && ${Target.Distance} < 20) {
            /if (${Group.Member[${Group.Member[war]}].Spawn.PctHPs} < 40) {
                /if (${Stick.Status.Equal[ON]}) {
                    /stick pause
                    /delay 1s (!${Me.Moving})
                    /delay 5
                }
                /alt act 4148
                /delay 1s (!${Me.Casting.ID})
                /delay 5
                /if (${Stick.Status.Equal[PAUSED]}) /stick unpause
            }
        }
        /if (!${Target.ID}) /return
        /delay 1
    /if (${Target.ID} == ${CurrentTarget} && ${Target.State.NotEqual[DEAD]}) /goto :loop
/return

Sub Event_EnrageON
    /varset Enrage TRUE
/return

Sub Event_EnrageOFF
    /varset Enrage FALSE
/return


Below here is something I was working on, trying to fully automate it, but I found other things which is more rewarding to me, so I dropped this (one of the reasons I'm sharing it).

The fulling DOES NOT WORK. I'm merely sharing it for those that might be able to use some of it to make another and better macro for this mission :)
Rich (BB code):
| ItHMM.mac, Infiltrating the Hive Monster Mission.
| /don 7521
#Event EnrageON     "#1# has become ENRAGED."
#Event EnrageOFF    "#1# is no longer enraged."

#Event SlowON       "#1#'s attacks come more slowly."
#Event SlowOFF      "Your Dire Musings spell has worn off of #1#."
#Event SlowRES      "Your target resisted the Dire Musings spell."

#Event SleepON      "#1#'s head nods."
#Event SleepOFF     "Your Sleep V spell has worn off of #1#."
#Event SleepRES     "Your target resisted the Sleep V spell."

#Event ZoneBegin    "LOADING, PLEASE WAIT..."

#Event TaskUpdated  "Your task '#1#' has been updated."

Sub Main
    /if (!${Defined[Param0]} || 
        (
            
        )
    ) /call Syntax
    /declare Class              string  outer   ${Param0}
    :loop
        |Timer ${Window[TaskWnd].Child[TASK_TaskList].List[${Window[TaskWnd].Child[TASK_TaskList].List[Infiltrating the Hive,2]},3]}
        |Vilsrin   ${Window[TaskWnd].Child[TASK_TaskElementList].List[2,2]}
        |Captain   ${Window[TaskWnd].Child[TASK_TaskElementList].List[3,2]}
        |Summoner  ${Window[TaskWnd].Child[TASK_TaskElementList].List[4,2]}
        |Webmaster ${Window[TaskWnd].Child[TASK_TaskElementList].List[5,2]}
        |Campfires ${Window[TaskWnd].Child[TASK_TaskElementList].List[6,2]}
        | ${Window[TaskWnd].Open}
        | Stoneroot: 358
        | Instance: 354
        :loop
        /call Vilsrin
        /delay 2s
        /call Captain
        /delay 2s
        /call Webmaster
        /delay 2s
        /call Summoner
        /delay 2s
        /call Campfires
        /delay 2s
        /call ZoneOut
    /goto :loop
/return

Sub Init
    /if (!${Plugin[mq2moveutils].Name.Equal[mq2moveutils]}) {
        /echo Sorry! MQ2MoveUtils is required.
        /endmacro
    }
    /if (${Melee.Enable}) {
        /echo Sorry! MQ2Melee is not working well with this macro. Disabling it.
        /melee plugin=off
    }
    /declare OZID               int     outer   358
    /declare IZID               int     outer   354
/return

Sub SelectMonster(string Class)
|**
WAR: Drachnid Brutebone
ROG: Drachnid Sneakspinner
CLR: Drachnid Bloodsoothe
ENC: Drachnid Mindhavoc
NEC: Drachnid Deathreaper
WIZ: Drachnid Diremage
**|
    /notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect ${Window[TaskTemplateSelectWnd].Child[TaskTemplateSelectListOptional].List[NAMEGOESHERE]}
/return

Sub Vilsrin
    /if (!${Window[TaskWnd].Open}) /keypress CMD_TOGGLETASKWIN
    /if (!${SpawnCount[npc loc 1111.30 302.77 radius 60 zradius 20]} && ${Window[TaskWnd].Child[TASK_TaskElementList].List[2,2].Equal[Done]}) /return
    /declare JumpC              string  local   284.36, 1108.74, 454.59
    /declare JumpM              string  local   302.77, 1111.30, 454.30
    /if (${Class.Equal[WAR]} && ${Me.PctHPs} > 90 && ${Me.Buff[Blood Elixir].Duration.TotalSeconds} >= 18) /squelch /warp loc ${JumpM}
/return

Sub Captain
    /if (!${Window[TaskWnd].Open}) /keypress CMD_TOGGLETASKWIN
    /if (${Window[TaskWnd].Child[TASK_TaskElementList].List[3,2].Equal[Done]}) /return
    /declare JumpC              string  local   70.85, 1360.96, 262.69
    /declare JumpM              string  local   80.05, 1327.42, 255.10
    /if (${Class.Equal[WAR]} && ${Me.PctHPs} > 90 && ${Me.Buff[Blood Elixir].Duration.TotalSeconds} >= 18) /squelch /warp loc ${JumpM}
    :loop
        /if (${SpawnCount[npc Captain`s Aide]}) /squelch /target npc Captain`s Aide
    /goto :loop
/return

Sub Webmaster
    /if (!${Window[TaskWnd].Open}) /keypress CMD_TOGGLETASKWIN
    /if (${Window[TaskWnd].Child[TASK_TaskElementList].List[4,2].Equal[Done]}) /return
    /declare JumpM              string  local   -199.45, 1057.85, 85.65
    /declare JumpC              string  local   -191.01, 1081.36, 90.87
    /if (${Class.Equal[WAR]} && ${Me.PctHPs} > 90 && ${Me.Buff[Blood Elixir].Duration.TotalSeconds} >= 18) /squelch /warp loc ${JumpM}
/return

Sub Summoner
    /if (!${Window[TaskWnd].Open}) /keypress CMD_TOGGLETASKWIN
    /if (${Window[TaskWnd].Child[TASK_TaskElementList].List[5,2].Equal[Done]}) /return
    /declare JumpC              string  local   -140.89, 484.42, 237.08
    /declare JumpM              string  local   -154.33, 458.62, 237.08
    /if (${Class.Equal[WAR]} && ${Me.PctHPs} > 90 && ${Me.Buff[Blood Elixir].Duration.TotalSeconds} >= 18) /squelch /warp loc ${JumpM}
    
/return

Sub Campfires
    /if (!${Window[TaskWnd].Open}) /keypress CMD_TOGGLETASKWIN
    /if (${Window[TaskWnd].Child[TASK_TaskElementList].List[6,2].Equal[Done]}) /return
    /declare Jump               string  local   -79.80, 9.68, -18.67
    /squelch /warp loc ${Jump}
    :loop
        /delay 5
    /if (${Window[TaskWnd].Child[TASK_TaskElementList].List[6,2].NotEqual[Done]}) /goto :loop
/return

Sub LootChest
    /squelch /target race chest
    /if (!${Target.ID}) {
        /echo No chest could be targeted.
        /return
    }
/return

Sub ZoneOut
    /declare Jump[3]            float   local
    /varset  Jump[1]                            -1271.44
    /varset  Jump[2]                            533.01
    /varset  Jump[3]                            47.92
    /squelch /warp loc ${Jump[1]} ${Jump[2]} ${Jump[3]}

    /declare Face[3]            float   local
    /varset  Face[1]                            -1273.65
    /varset  Face[2]                            542.89
    /varset  Face[3]                            50.08
    /face nolook loc ${Face[1]},${Face[2]}
    /keypress forward hold
    /delay 5s
    /keypress forward
    /keypress back
/return
 
Infiltrating the Hive (Monster Mission)

Users who are viewing this thread

Back
Top
Cart