|-----------------------------------------------------------------------
| Program : Vxed.mac
| Author : Smarty
| Props : Yeti, gklauer.
| Purpose : AFK Vxed Exp for Bard.
|
| THIS MACRO IS TO BE ONLY POSTED ON MMOBUGS.COM FOR ITS USERS.
|
| Version : 3.0
|
| Useage: /mac vxed
| - Really need at least 7000 HP in order to run. If Bard has less then this, ensure to have a HP Buff such as Teme before you run it. Simply refresh the buff when it runs out. (This give you about 3.5 hours of AFK XP)
| - Start the macro in Barindu (if there are people in the zone, get expedition manually and start in Vxed)
| - Spell 1: Song of Travel or Invis | 2:Health Song | 3-6:DoT Songs | 8:Invul Song
| - Comment out the AA casting in "MainLoop" for your bard's AA
| - Put healing potions on your potion belt in slot 1ss
|
|READ FIRST:
| - Set potion belt 1 as HoT potion (Change the value of "/if (${Me.PctHPs}<=95) /potionbelt activate 1" to a suitable amount... The lower your HP the faster you will need it to fire)
| - Start in Barindu.
| - Gets another expedition automatically, uses warp AFTER doing a player check when it runs out or if the summoning mob pops
| - Automatically sets speed so you don't need to waste a twist on selo
| - Counts kills, XP, AA XP, and time running
| - On death it will /quit to ensure you can get a rez when you log back in
|
|SET UP - PLUGINS
| Following plugins are needed: (Loads automatically)
| MQ2DoCrack
| MQ2Twist
| MQ2MoveUtils
| MQ2SpeedUtils
|
|
|SET UP - SPELLS
| 1- Selo's Song of Travel
| 2- Health/Mana Regen Song
| 3- DoT (eg Fire)
| 4- DoT (eg Poison)
| 5- DoT (eg Ice)
| 6- DoT (eg Disease)
| 7- DoT (eg Magic)
| 8- Invulnerability
|-----------------------------------------------------------------------
#turbo 40
#event ExpeditionFail "#*#There is no expedition currently#*#"
#event named "#*#misguided beludu Creque murmurs#*#"
#event dead "#*#You have been knocked unconscious!#*#"
#event exp "#*#experience!#*#"
#event ping "You have gained an ability point!#*#"
|------------------------------------------------------------
|Sub: Cute little start-up message
|------------------------------------------------------------
Sub Main
/declare Kill_Count int outer 0
/declare Ping_Count int outer 0
/declare Exp float outer
/declare AAExp float outer
/varset Exp ${Me.PctExp}
/varset AAExp ${Me.PctAAExp}
/if (${Zone.ShortName.Equal[Vxed]}) /call VxedStart
/if (!${Zone.ShortName.Equal[Barindu]}) /multiline ; /echo ~-~-~-~-Please Start in Barindu-~-~-~-~ ; /end
/if (${Zone.ShortName.Equal[Barindu]}) /call GetExpedition
/return
|------------------------------------------------------------
|Sub: Gets Expedition/Enters Expedition/Warps To Spot
|------------------------------------------------------------
Sub GetExpedition
/call PlayerCheck
/delay 1s
/plugin MQ2DoCrack
/delay 1s
/plugin mq2moveutils
/delay 1s
/plugin MQ2SpeedUtils
/delay 1s
/plugin MQ2Twist
/delay 1s
/docrack nostun2 on
/delay 1s
/docrack nomeleepush on
/delay 1s
/echo ~-~-~-~Starting new expedition~-~-~-~
/echo ~-~-~-~-~-~-~-${Time.Time12}-~-~-~-~-~-~-~-
/circle off
/twist off
/keypress back
/target apprentice
/warp loc 262.10 -749.02 -124.37
/delay 1s
/face
/hail
/delay 2s
/say I would like Vxed please....
/delay 2s
/keypress esc
/doevents
/target stoneshifter
/warp target
/g zone in
/face heading 15
/delay 2s
/keypress forward hold
/delay 3s
/keypress right
/delay 30s
/face fast heading 270
/twist 8
/delay 6s
/warp loc 125 -300 447
/delay 1s
/circle on 60
/speed 3
/delay 10s
/stoptwist
/call GetTarget
/return
|------------------------------------------------------------
|Sub: Gets Target
|------------------------------------------------------------
Sub GetTarget
/twist off
/delay 1s
:TargetLoop
/if (${Zone.ShortName.Equal[GuildLobby]}) /call quit
/if (!${Target.ID}) /tar npc radius 220
/if (${Target.Name.Equal[#Misguided_beludu_Creque00]}) /tar npc next radius 220
/if (${Target.Name.Equal[#Misguided_beludu_Creque00]}) /goto :TargetLoop
/twist 3 4 5 6 7
/call MainLoop
/return
Sub VxedStart
/delay 1s
/plugin MQ2DoCrack
/delay 1s
/plugin mq2moveutils
/delay 1s
/plugin MQ2SpeedUtils
/delay 1s
/plugin MQ2Twist
/delay 1s
/docrack nostun2 on
/delay 1s
/docrack nomeleepush on
/delay 1s
/face fast heading 270
/delay 1s
/squelch /twist 8
/delay 6s
/warp loc 125 -300 447
/delay 1s
/circle on 60
/speed 3
/delay 10s
/stoptwist
/call GetTarget
/return
|------------------------------------------------------------
|Sub: Handles Death and camping out
|------------------------------------------------------------
Sub event_dead
/delay 5s
/stoptwist
/circle off
/return
Sub quit
/circle off
/stoptwist
/delay 5s
/q
/end
/return
|------------------------------------------------------------
|Sub: Main Loop for Controlling Things
|------------------------------------------------------------
Sub MainLoop
:Loop
/if (${Zone.ShortName.Equal[GuildLobby]}) /call quit
/if (${Me.PctHPs}<=95) /disc Deftdance
/if (${Me.PctHPs}<=95) /potionbelt activate 1
/if (${Me.PctHPs}<=95) /call HealTwist
/if (${Me.PctHPs}<=60) /call Evac
/if (!${Target.ID}) /call GetTarget
/if (${Me.AltAbilityReady["Boastful Bellow"]}) /alt act 199
|/if (${Me.AltAbilityReady["Cacophony"]}) /alt act 553
|/if (${Me.AltAbilityReady["Song of Stone"]}) /alt act 544
|/if (${Me.AltAbilityReady["Funeral Dirge"]}) /alt act 777
/if (${Zone.ShortName.Equal[Barindu]}) /call GetExpedition
/doevents
/delay 5
/goto :Loop
/return
Sub event_exp
/varcalc Kill_Count (${Kill_Count}+1)
/varset AAExp ${Math.Calc[${Me.PctAAExp}-${AAExp}]}
/varset Exp ${Math.Calc[${Me.PctExp}-${Exp}]}
/echo EXP: ${Exp} - AAXP: ${AAExp} - ${Math.Calc[${Macro.RunTime}/60]} minutes
/echo Kill Count - ${Kill_Count}
/echo Ping Count - ${Ping_Count}
/varset Exp ${Me.PctExp}
/varset AAExp ${Me.PctAAExp}
/return
Sub event_ping
/echo PING!
/varcalc Ping_Count (${Ping_Count}+1)
/return
|------------------------------------------------------------
|Sub: Evac Tasks
|------------------------------------------------------------
Sub Evac
/warp s
/circle off
/twist off
/delay 5s
/fade
/delay 10s
/twist 2
/delay 5s
/sit
:hploop
/if (${Me.PctHPs}<99) /goto :hploop
/stand
/twist off
/plugin mq2moveutils unload
/plugin mq2moveutils
/face fast heading 270
/twist 8
/delay 5s
/if (${Zone.ShortName.Equal[GuildLobby]}) /call quit
/delay 6s
/warp loc 125 -300 447
/delay 1s
/circle on 60
/speed 3
/delay 10s
/twist off
/call GetTarget
/return
|------------------------------------------------------------
|Sub: Deals With Healing
|------------------------------------------------------------
Sub HealTwist
/twist off
/delay 1s
/twist 2 3 4 5 6
:loopheal
/if (${Me.PctHPs}>=99) /call GetTarget
/if (${Me.PctHPs}<=60) /call Evac
/if (${Me.PctHPs}<=90) /potionbelt activate 2
/if (${Zone.ShortName.Equal[Barindu]}) /call GetExpedition
/if (${Zone.ShortName.Equal[GuildLobby]}) /call quit
/goto :loopheal
/return
|------------------------------------------------------------
|Sub: Player Check
|------------------------------------------------------------
Sub PlayerCheck
:Loop
/if (${SpawnCount[pc]}>1) {
/echo ~-~-~-~-~-~People in zone~--~-~-~-~-~
/echo ~-~-~-~-waiting five mintues~-~-~-~-~-
/echo ~-~-~-~-~-~-~-${Time.Time12}-~-~-~-~-~-~-~-
/afk
/twist 1
/delay 300s
/goto :Loop
}{
/echo ~-~-~-~-~-~-~Zone Empty~-~--~-~-~-~-
/echo ~-~-~-~-~-~-~Continuing~-~-~-~-~-~-~
}
/return
|------------------------------------------------------------
|Sub: Failed To Get An Expedition
|------------------------------------------------------------
Sub Event_ExpFail
/echo Attempt failed, trying again
/say I would like Vxed please....
/delay 3s
/doevents
/return