DANSTOCK'S ULTIMATE TRI-BARD/CHIVARLY/ARCHER AUTO PILOT SCRIPT by danstock._98439

Related: Musicianship

Description: I play often on a handheld gaming device (ROG Ally) so my goal is to create scripts that automate as much as possible! This script is a constant work in progress as I develop my first PVM character and relearn how to build scripts (I am no expert!). I update very often. Check back frequently. I am also working on a harvesting script with the same goal - check out my other uploads. Thanks!

Warning: This is potentially a huge script, skipping formatting.

You can still click [Copy Script] but you may want use [Download Script] as a file instead.

////// UO Outlands Razor script - Last updated Nov 21, 2024 (email any bug reports/tips to dan@danstockman.com) ///// Compiled by DanStock. //// ULTIMATE TRI-BARD/CHIVARLY/ARCHER AUTO PILOT SCRIPT /// // Recommended skill template: # 120 Peacemaking # 120 Discordance # 120 Provocation # 120 Chivalry # 100 Tactics # 80+ Archery # 59 Healing (or utility skill of choice) # 1 Alchemy // TIPS: # Recommend using LYRIC ASPECT ARMOUR and DAMAGE TO BARDED CREATURES and/or EFFECTIVE BARDING SKILL links # BARD CODEX: Must have 6 pts in "Self Taught" in order to drop musicianship skill # If using 1H archery weapon, add a shield for extra AR (and enable variable below) # Toggle WAR MODE to clear barding cooldowns and retarget (while no REDS nearby) # Otherwise, toggle WAR MODE to auto TARGET and ATTACK nearby REDS! # Having 1 point in Alchemy gives a 2m 5s potion duration w/ a 2m cooldown - allowing new strength pot to take effect before old one wears off # Make sure [ShowBardingDurations is set to "Display All Barding Durations" in UO client under Commands -> Text Displays # This script depends heavily on COOLDOWNS. Please make sure to add them all in UO client under Options -> Cooldowns (list below) # The COOLDOWNS just need to exist - you don't need to set any triggers or anything (but they are very important!) # Recommend using Razor FILTERS to cancel instrument sounds and redundant system messages # This script can be used to play with a game controller (start script, stop script, warmode toggle and joystick movement is all that is needed) // VERY IMPT: MUST add the following COOLDOWNS (case sensitive - no triggers necessary): # Musicianship # Peacemaking # Provocation # Discordance # Pacified # Provoked # Discorded # Peace Check # Disco Check # Provo Check # Peacemaking Buff # Provocation Buff # Discordance Buff # Song Buff Delay # Healing Potion # Cure Potion # Refresh Potion # Purple Potion # Holy Light # Noble Sacrifice # Cleanse By Fire # Close Wounds # Divine Fury # Enemy Of One # Chivalry # Prevented # Codex # Weapon Ability # Skirmish # Full Draw # Repeater # Target Timer # Target Check # Next Target Timer # No Target Timer # Satchel Timer # Inventory Timer # Weight Warning # Cleanup # Radar # Ammunition // The COOLDOWNS just need to exist... no further configuration necessary! // // (though some are very helpful to add to your UI screen) // ############################################# ####### USER VARIABLES: ####### ############################################# ////////////////////////// // BARDING: // ////////////////////////// @setvar! EnablePeacemaking 1 @setvar! EnableDiscordance 1 @setvar! EnableProvocation 1 @setvar! EnablePeacemakingBuff 1 @setvar! EnableDiscordanceBuff 1 @setvar! EnableProvocationBuff 1 @setvar! PeacemakingReapply 30000 @setvar! DiscordanceReapply 30000 @setvar! ProvocationReapply 30000 ////////////////////////// // DEFENSIVE: // ////////////////////////// @setvar! EnableHealPotion 1 @setvar! EnableCurePotion 1 @setvar! EnableRefreshPotion 1 @setvar! EnableStrengthPotion 0 @setvar! EnableAgilityPotion 0 @setvar! EnableMagicResistPotion 0 @setvar! EnableHolyLight 1 @setvar! EnableNobleSacrifice 1 @setvar! EnableCleanseByFire 1 @setvar! EnableCloseWounds 1 @setvar! HolyLightHPdiff 30 @setvar! HealPotHPdiff 45 @setvar! NobleSacrificeHPdiff 60 @setvar! CleanseByFireHPdiff 15 @setvar! RefreshPotSPdiff 10 @setvar! EnableShield 0 @setvar! EnableParalyzePouch 1 ////////////////////////// // OFFENSIVE: // ////////////////////////// @setvar! EnableDivineFury 1 @setvar! EnableEnemyOfOne 1 @setvar! EnableConsecrateWeapon 0 @setvar! EnableWeaponAbility 1 @setvar! EnableSkirmish 0 # or @setvar! EnableFullDraw 0 # or @setvar! EnableRepeater 1 ////////////////////////// // UTILITY: // ////////////////////////// @setvar! EnableAutoCarving 1 @setvar! EnableArrowCleanup 1 @setvar! EnableOverheadMessages 1 @setvar! EnableAmmoWarningMessage 1 @setvar! LowAmmoWarningAmount 15 @setvar! EnableWeightWarningMessage 1 @setvar! GreenWarningDiffWeight 50 @setvar! YellowWarningDiffWeight 20 @setvar! RedWeightLimitDiffWeight 5 #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### ############################################# ######### SCRIPT STARTS HERE: ######### ############################################# if not varexist BardAutoPilot overhead "DanStock's Ultimate Bard Auto Pilot Script" 77 overhead "Last updated Nov 21, 2024" 84 wait 2500 overhead "Thank you for trying my barding script! It appears this may be your first time running it..." 0 wait 4000 overhead "IMPT: Please make sure to setup all the required COOLDOWNS and adjust any VARIABLES!" 153 wait 4500 overhead "Read the TIPS section at the beginning of the script" wait 4000 overhead "Email any questions/bugs to: dan@danstockman.com" 0 wait 4000 setvar BardAutoPilot 1 sysmsg "Beginning DanStock's Ultimate Bard Auto Pilot script...... " 0 wait 500 endif if not varexist StartFarming if EnableOverheadMessages = 1 overhead "[ TIME TO FARM! ]" 77 wait 1000 endif @setvar! StartFarming 1 endif while not dead ########################## ### WEAPON CHECKS: ### ########################## if not findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" self overhead "[ NO INSTRUMENT! ]" 337 sysmsg "Please acquire a musical instrument before you start this script!" 0 wait 2000 stop endif if not findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' self overhead "[ NO WEAPON! ]" 337 wait 2000 sysmsg "Please acquire an archery weapon before you start this script!" 0 stop endif if not findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' hand if findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' backpack as weapon for 5 getlabel weapon WeaponLabel wait 250 if "unidentified" in WeaponLabel @ignore weapon if findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' backpack as weapon getlabel weapon WeaponLabel endif else break endif endfor dclick weapon wait 250 endif endif if EnableShield = 1 if not findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' lefthand if findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' backpack as shield getlabel shield ShieldLabel for 5 wait 250 if "unidentified" in ShieldLabel @ignore shield if findtype 'metal shield|Chaos shield|heater shield' backpack as shield getlabel shield ShieldLabel endif endif endfor dclick shield wait 250 endif endif endif @setvar! PreviousTarget lasttarget @setvar! SwitchStance 0 @setvar! NeedtoProvoke 0 @setvar! NeedtoDiscord 1 @setvar! NeedtoPacify 1 @setvar! ClosestTarget 0 @setvar! NextClosestTarget 0 @setvar! SongReapply 900000 hotkey 'Cancel Current Target' if insysmsg "Captcha successful" and EnableOverheadMessages = 1 wait 500 overhead "[ CAPTCHA SUCCESSFUL! ]" 84 endif clearsysmsg if skill 'Tracking' > 50 and not findbuff 'tracking' while not gumpexists 4267467659 useskill 'tracking' wait 250 endwhile if gumpexists 4267467659 while not insysmsg "You will now hunt all hostile players." gumpresponse 8 4267467659 waitforgump 4267467659 5000 endwhile gumpresponse 6 4267467659 wait 1000 clearsysmsg endif gumpclose 4267467659 if EnableOverheadMessages = 1 overhead "[ TRACKING ENABLED! ]" 149 endif wait 1000 endif if warmode cooldown "Target Timer" 0 hotkey 'Cancel Current Target' wait 150 hotkey 'Next Murderer Player Target' wait 500 if insysmsg "No one matching that was found" cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 if EnableOverheadMessages = 1 overhead "[ NO NEARBY REDS... ]" 337 endif wait 500 hotkey 'Toggle Peace Only' replay else @setvar! MurdererTarget lasttarget wait 500 while not dead MurdererTarget if noto MurdererTarget = "Murderer" and find MurdererTarget ground -1 -1 10 if not cooldown "Weapon Ability" and not cooldown "Skirmish" yell "[WeaponAbility1" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ SKIRMISH! ]" 339 endif cooldown "Weapon Ability" 61000 cooldown "Skirmish" 15000 endif endif if not cooldown "Target Timer" if EnableOverheadMessages = 1 overhead "[ STANDING GROUND! ]" 37 endif cooldown "Target Timer" 3500 endif wait 500 attack MurdererTarget wait 750 if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" hotkey "Bandage Self" cooldown "Healing Potion" 2500 endif endif endif if not findtype 'crossbow|balestra|stubnose crossbow' hand if findtype 'crossbow|balestra|stubnose crossbow' backpack as fastweapon dclick fast weapon wait 500 endif endif if not findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' lefthand if findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' backpack as shield dclick shield wait 250 endif endif if findtype "Purple Potion" self as pot and not cooldown "Purple Potion" getlabel pot desc if "next usable in 15" in desc @setvar! purplePotionCD 15000 elseif "next usable in 14" in desc @setvar! purplePotionCD 14000 elseif "next usable in 13" in desc @setvar! purplePotionCD 13000 elseif "next usable in 12" in desc @setvar! purplePotionCD 12000 elseif "next usable in 11" in desc @setvar! purplePotionCD 11000 elseif "next usable in 10" in desc @setvar! purplePotionCD 10000 elseif "next usable in 9" in desc @setvar! purplePotionCD 9000 elseif "next usable in 8" in desc @setvar! purplePotionCD 8000 elseif "next usable in 7" in desc @setvar! purplePotionCD 7000 elseif "next usable in 6" in desc @setvar! purplePotionCD 6000 elseif "next usable in 5" in desc @setvar! purplePotionCD 5000 elseif "next usable in 4" in desc @setvar! purplePotionCD 4000 elseif "next usable in 3" in desc @setvar! purplePotionCD 3000 elseif "next usable in 2" in desc @setvar! purplePotionCD 2000 elseif "next usable in 1" in desc @setvar! purplePotionCD 1000 else @setvar! purplePotionCD 0 endif cooldown "Purple Potion" purplePotionCD wait 250 if find MurdererTarget ground -1 -1 10 and not cooldown "Purple Potion" dclick pot wft 1000 target MurdererTarget wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE EXPLOSION POTION! ]" 419 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ EXPLOSION POTION... ]' 419 endif clearsysmsg endif cooldown "Purple Potion" 15000 wait 250 endif else if EnableOverheadMessages = 1 overhead "[ NO EXPLOSION POTS! ]" 337 endif cooldown "Purple Potion" 30000 endif if diffhits > 10 and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot cooldown "Healing Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Healing Potion" 30000 endif endif wait 500 endif if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot cooldown "Cure Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Cure Potion" 30000 endif endif wait 500 endif if stam < maxstam and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Refresh Potion" 30000 endif endif wait 500 endif wait 1000 endif endwhile if EnableOverheadMessages = 1 overhead "[ RED TARGET LOST... ]" 37 endif wait 500 replay endif endif if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" hotkey 'Toggle War Only' replay else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if EnableHolyLight = 1 if diffhits > HolyLightHPdiff and skill "Chivalry" >= 95 and not cooldown "Holy Light" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[HolyLight" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else if EnableOverheadMessages = 1 overhead "[ HOLY LIGHT! ]" 254 endif cooldown "Holy Light" 31000 cooldown "Chivalry" 500 endif wait 250 endif endif if EnableHealPotion = 1 if diffhits > HealPotHPdiff and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot wait 250 cooldown "Healing Potion" 11000 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif endif endif if EnableNobleSacrifice = 1 if diffhits > NobleSacrificeHPdiff and skill "Chivalry" >= 80 and not cooldown "Noble Sacrifice" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[NobleSacrifice" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else wft 1000 target 'self' if EnableOverheadMessages = 1 overhead "[ NOBLE SACRIFICE! ]" 155 endif cooldown "Noble Sacrifice" 31000 cooldown "Chivalry" 500 endif wait 250 endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" if EnableOverheadMessages = 1 overhead '[ BANDAGING...]' 88 endif hotkey "Bandage Self" elseif counttype 'clean bandage%s%' < 10 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ BANDAGES LOW! ]" 339 endif cooldown "Inventory Timer" 6000 elseif counttype 'clean bandage%s%' = 0 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO BANDAGES! ]" 337 endif cooldown "Inventory Timer" 6000 endif endif endif if EnableCloseWounds = 1 if findbuff "bleed" or findbuff "disease" if skill "chivalry" >= 70 and not cooldown "Close Wounds" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CloseWounds" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else cooldown "Close Wounds" 31000 cooldown "Chivalry" 500 if EnableOverheadMessages = 1 overhead "[ CLOSE WOUNDS! ]" 48 endif endif wait 250 endif endif endif if EnableCurePotion = 1 if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot wait 500 cooldown "Cure Potion" 11000 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnableCleanseByFire = 1 if diffhits > CleanseByFireHPdiff and poisoned and not cooldown "Cleanse By Fire" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CleanseByFire" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else cooldown "Cleanse By Fire" 31000 cooldown "Chivalry" 500 if EnableOverheadMessages = 1 overhead "[ CLEANSE BY FIRE! ]" 43 endif endif wait 250 endif endif if EnableRefreshPotion = 1 if diffstam >= RefreshPotSPdiff and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 250 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif hotkey 'Target Closest Grey Monster' wait 500 ######################### ### NO TARGET LOOP: ### ######################### if insysmsg "No one matching that was found on your screen" if not cooldown "No Target Timer" overhead "[ NOTHING TO TARGET... ]" 6 cooldown "No Target Timer" 3500 endif if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack if not cooldown "Satchel Timer" and findtype "reagent satchel" self as MyWizardBag menu MyWizardBag 0 wait 500 cooldown "Satchel Timer" 15000 endif endif if findtype "arrow|crossbow bolt" backpack if not cooldown "Satchel Timer" and findtype "quiver" self as MyQuiver menu MyQuiver 0 wait 500 cooldown "Satchel Timer" 15000 endif endif if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack if not cooldown "Satchel Timer" and findtype 31262 self as MyPotBag menu MyPotBag 0 wait 500 cooldown "Satchel Timer" 15000 endif endif if findtype 'Elven SpellBlade' backpack and EnableAutoCarving = 1 if findtype "corpse" ground -1 -1 2 as body wait 500 dclicktype "Elven Spellblade" wft 1000 target 'self' if EnableOverheadMessages = 1 overhead "[ SKINNING... ]" 339 endif wait 500 @ignore body endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO SKINNING KNIFE! ]" 337 endif cooldown "Inventory Timer" 6000 endif endif if not findbuff 'food satisfaction' and findtype "tray" self if findtype "tray" backpack as Food if EnableOverheadMessages = 1 overhead "[ EATING FOOD... ]" 88 endif dclick Food wait 1000 endif endif if warmode cooldown "Target Timer" 0 hotkey 'Cancel Current Target' wait 150 hotkey 'Next Murderer Player Target' wait 500 if insysmsg "No one matching that was found" cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 if EnableOverheadMessages = 1 overhead "[ NO NEARBY REDS... ]" 337 endif wait 500 hotkey 'Toggle Peace Only' replay else @setvar! MurdererTarget lasttarget wait 500 while not dead MurdererTarget if noto MurdererTarget = "Murderer" and find MurdererTarget ground -1 -1 10 if not cooldown "Weapon Ability" and not cooldown "Skirmish" yell "[WeaponAbility1" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ SKIRMISH! ]" 339 endif cooldown "Weapon Ability" 61000 cooldown "Skirmish" 15000 endif endif if not cooldown "Target Timer" if EnableOverheadMessages = 1 overhead "[ STANDING GROUND!! ]" 37 endif cooldown "Target Timer" 3500 endif wait 500 attack MurdererTarget wait 750 if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" hotkey "Bandage Self" cooldown "Healing Potion" 2500 endif endif endif if not findtype 'crossbow|balestra|stubnose crossbow' hand if findtype 'crossbow|balestra|stubnose crossbow' backpack as fastweapon dclick fast weapon wait 500 endif endif if not findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' lefthand if findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' backpack as shield dclick shield wait 250 endif endif if findtype "Purple Potion" self as pot and not cooldown "Purple Potion" getlabel pot desc if "next usable in 15" in desc @setvar! purplePotionCD 15000 elseif "next usable in 14" in desc @setvar! purplePotionCD 14000 elseif "next usable in 13" in desc @setvar! purplePotionCD 13000 elseif "next usable in 12" in desc @setvar! purplePotionCD 12000 elseif "next usable in 11" in desc @setvar! purplePotionCD 11000 elseif "next usable in 10" in desc @setvar! purplePotionCD 10000 elseif "next usable in 9" in desc @setvar! purplePotionCD 9000 elseif "next usable in 8" in desc @setvar! purplePotionCD 8000 elseif "next usable in 7" in desc @setvar! purplePotionCD 7000 elseif "next usable in 6" in desc @setvar! purplePotionCD 6000 elseif "next usable in 5" in desc @setvar! purplePotionCD 5000 elseif "next usable in 4" in desc @setvar! purplePotionCD 4000 elseif "next usable in 3" in desc @setvar! purplePotionCD 3000 elseif "next usable in 2" in desc @setvar! purplePotionCD 2000 elseif "next usable in 1" in desc @setvar! purplePotionCD 1000 else @setvar! purplePotionCD 0 endif cooldown "Purple Potion" purplePotionCD wait 250 if find MurdererTarget ground -1 -1 10 and not cooldown "Purple Potion" dclick pot wft 1000 target MurdererTarget wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE EXPLOSION POTION! ]" 419 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ EXPLOSION POTION... ]' 419 endif clearsysmsg endif cooldown "Purple Potion" 15000 wait 250 endif else if EnableOverheadMessages = 1 overhead "[ NO EXPLOSION POTS! ]" 337 endif cooldown "Purple Potion" 30000 endif if diffhits > 10 and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot cooldown "Healing Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Healing Potion" 30000 endif endif wait 500 endif if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot cooldown "Cure Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Cure Potion" 30000 endif endif wait 500 endif if stam < maxstam and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Refresh Potion" 30000 endif endif wait 500 endif wait 1000 endif endwhile if EnableOverheadMessages = 1 overhead "[ RED TARGET LOST... ]" 37 endif wait 500 replay endif endif if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" hotkey 'Toggle War Only' replay else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if EnableWeightWarningMessage = 1 if diffweight < GreenWarningDiffWeight and diffweight > YellowWarningDiffWeight and not cooldown "Weight Warning" overhead "[ WEIGHT WARNING... ]" 77 cooldown "Weight Warning" 6000 elseif diffweight < YellowWarningDiffWeight and diffweight > RedWeightLimitDiffWeight and not cooldown "Weight Warning" overhead "[ WEIGHT WARNING! ]" 153 cooldown "Weight Warning" 6000 elseif diffweight < RedWeightLimitDiffWeight and not cooldown "Weight Warning" overhead "-[ WEIGHT LIMIT REACHED!! ]-" 37 cooldown "Weight Warning" 6000 sysmsg "Time to head home and unload our loot!" 0 endif endif if EnableAmmoWarningMessage = 1 if findtype 'stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' hand # BOLTS @setvar! AMMO 1 elseif findtype 'long bow|bow|recurve bow|composite bow' hand # ARROWS @setvar AMMO 2 endif if counttype "crossbow bolt" self < LowAmmoWarningAmount and not cooldown "Ammunition" and AMMO = 1 overhead "[ AMMO LOW! ]" 37 cooldown "Ammunition" 6000 endif if counttype "arrow" self < LowAmmoWarningAmount and not cooldown "Ammunition" and AMMO = 2 overhead "[ AMMO LOW! ]" 37 cooldown "Ammunition" 6000 endif endif if EnableArrowCleanup = 1 if findtype 7163|3903 ground -1 -1 2 as item and not cooldown "Cleanup" if EnableOverheadMessages = 1 overhead '[ CLEANUP... ]' 93 endif hotkey "Grab Item" wft 1000 target item wait 500 if findtype "quiver" self as MyQuiver menu MyQuiver 0 wait 250 else hotkey 'Organizer Agent-03' wait 250 endif cooldown "Cleanup" 750 endif if findtype 7163 ground -1 -1 10 as bolt and not cooldown "Radar" overhead "▼" 93 bolt cooldown "Radar" 3500 endif if findtype 3903 ground -1 -1 10 as arrow and not cooldown "Radar" overhead "▼" 37 arrow cooldown "Radar" 3500 endif endif if insysmsg "something invisible out of" and EnableOverheadMessages = 1 overhead "▼ SOMEONE HIDING! ▼" 6 wait 500 endif if insysmsg "world is saving" if not timerexists "WorldSaveTimer" createtimer "WorldSaveTimer" endif settimer "WorldSaveTimer" 0 while timer "WorldSaveTimer" < 4000 if insysmsg "save complete" break endif wait 250 endwhile if EnableOverheadMessages = 1 overhead "[ SAVE COMPLETE! ]" 253 endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" if EnableOverheadMessages = 1 overhead '[ BANDAGING...]' 88 endif hotkey "Bandage Self" elseif counttype 'clean bandage%s%' < 10 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ BANDAGES LOW! ]" 339 endif cooldown "Inventory Timer" 6000 elseif counttype 'clean bandage%s%' = 0 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO BANDAGES! ]" 337 endif cooldown "Inventory Timer" 6000 endif endif endif if EnableHealPotion = 1 if diffhits > HealPotHPdiff and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot cooldown "Healing Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnableHolyLight = 1 if diffhits > HolyLightHPdiff and skill "Chivalry" >= 95 and not cooldown "Holy Light" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[HolyLight" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else if EnableOverheadMessages = 1 overhead "[ HOLY LIGHT! ]" 254 endif cooldown "Holy Light" 31000 cooldown "Chivalry" 1000 endif wait 250 endif endif if EnableNobleSacrifice = 1 if diffhits > NobleSacrificeHPdiff and skill "Chivalry" >= 80 and not cooldown "Noble Sacrifice" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[NobleSacrifice" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else wft 1000 target 'self' if EnableOverheadMessages = 1 overhead "[ NOBLE SACRIFICE! ]" 155 endif cooldown "Noble Sacrifice" 31000 cooldown "Chivalry" 1000 endif wait 250 endif endif if EnableCurePotion = 1 if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot cooldown "Cure Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnableCleanseByFire = 1 if diffhits > CleanseByFireHPdiff and poisoned and not cooldown "Cleanse By Fire" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CleanseByFire" wait 250 if not insysmsg "You do not have enough holy" cooldown "Cleanse By Fire" 31000 if EnableOverheadMessages = 1 overhead "[ CLEANSE BY FIRE! ]" 44 endif cooldown "Chivalry" 1000 else cooldown "Prevented" 5000 clearsysmsg endif wait 250 endif endif if EnableCloseWounds = 1 if findbuff "bleed" or findbuff "disease" if skill "chivalry" >= 70 and not cooldown "Close Wounds" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CloseWounds" wait 250 if not insysmsg "You do not have enough holy" cooldown "Close Wounds" 31000 if EnableOverheadMessages = 1 overhead "[ CLOSE WOUNDS! ]" 2117 endif cooldown "Chivalry" 1000 else cooldown "Prevented" 5000 clearsysmsg endif wait 250 endif endif endif if EnableRefreshPotion = 1 if diffstam >= RefreshPotSPdiff and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnablePeacemakingBuff = 1 and not findbuff "Song Of Peacemaking" and not cooldown "Musicianship" and not cooldown "Peacemaking" and not cooldown "Song Buff Delay" skill "Peacemaking" wait 250 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ PEACEMAKING BUFF... ]" 84 endif cooldown "Peacemaking Buff" SongReapply cooldown "Song Buff Delay" 11000 endif wait 250 endif if EnableDiscordanceBuff = 1 and not findbuff "Song Of Discordance" and not cooldown "Musicianship" and not cooldown "Discordance" and not cooldown "Song Buff Delay" skill "Discordance" wait 250 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ DISCORDANCE BUFF... ]" 69 endif cooldown "Discordance Buff" SongReapply cooldown "Song Buff Delay" 11000 endif wait 250 endif if EnableProvocationBuff = 1 and not findbuff "Song of Provocation" and not cooldown "Musicianship" and not cooldown "Provocation" and not cooldown "Song Buff Delay" skill "Provocation" wait 250 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ PROVOCATION BUFF... ]" 334 endif cooldown "Provocation Buff" SongReapply cooldown "Song Buff Delay" 11000 endif wait 250 endif if not cooldown "Inventory Timer" hotkey 'Organizer Agent-04' wait 500 cooldown "Inventory Timer" 5000 endif if targetexists hotkey 'Cancel Current Target' endif clearsysmsg replay else ######################## #### TARGET ID: #### ######################## @setvar! ClosestTarget lasttarget getlabel ClosestTarget descTarget wait 100 if find ClosestTarget ground -1 -1 6 hotkey 'Next Grey Monster Target' wait 100 @setvar! NextClosestTarget lasttarget getlabel NextClosestTarget descNextTarget for 4 if find NextClosestTarget ground -1 -1 6 break else hotkey 'Next Grey Monster Target' wait 100 @setvar! NextClosestTarget lasttarget getlabel NextClosestTarget descNextTarget endif endfor else if not cooldown "Target Timer" overhead "[ GET CLOSER! ]" 69 cooldown "Target Timer" 3500 endif replay endif if NextClosestTarget != ClosestTarget and find NextClosestTarget ground -1 -1 6 @setvar! NeedtoProvoke 1 else @setvar! NeedtoProvoke 0 endif if PreviousTarget != ClosestTarget cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 endif hotkey 'Target Closest Grey Monster' wait 100 @setvar! ClosestTarget lasttarget getlabel ClosestTarget descTarget wait 100 cooldown "Target Check" 6000 ############################# #### COMBAT LOOP: #### ############################# while not dead ClosestTarget if not timerexists "FindTarget" createtimer "FindTarget" settimer "FindTarget" 3000 endif if timer "FindTarget" >= 3000 getlabel ClosestTarget descTarget if not cooldown "Target Timer" if "Paragon" in descTarget overhead " ▼ PARAGON! ▼ " 12 ClosestTarget cooldown "Target Timer" 3500 attack ClosestTarget else overhead " ▼ TARGET ▼ " 253 ClosestTarget cooldown "Target Timer" 3500 attack ClosestTarget endif endif settimer "FindTarget" 0 endif if not timerexists "FindNextTarget" createtimer "FindNextTarget" settimer "FindNextTarget" 3000 endif if timer "FindNextTarget" >= 3000 and find NextClosestTarget ground -1 -1 6 and NextClosestTarget != ClosestTarget and NextClosestTarget != 0 getlabel NextClosestTarget descNextTarget if not cooldown " Next Target Timer" if "Paragon" in descNextTarget overhead " ▼ PARAGON! ▼ " 12 NextClosestTarget cooldown "Next Target Timer" 3500 else overhead " ▼ TARGET ▼ " 2117 NextClosestTarget cooldown "Next Target Timer" 3500 endif endif settimer "FindNextTarget" 0 @setvar! NeedToProvoke 1 endif if not cooldown "Target Check" hotkey 'Next Grey Monster Target' wait 100 @setvar! NextClosestTarget lasttarget getlabel NextClosestTarget descNextTarget if NextClosestTarget != ClosestTarget for 4 if find NextClosestTarget ground -1 -1 6 break else hotkey 'Next Grey Monster Target' wait 100 @setvar! NextClosestTarget lasttarget getlabel NextClosestTarget descNextTarget endif endfor endif if NextClosestTarget != ClosestTarget and find NextClosestTarget ground -1 -1 6 @setvar! NeedtoProvoke 1 else @setvar! NeedtoProvoke 0 endif hotkey 'Target Closest Grey Monster' wait 100 @setvar! ClosestTarget lasttarget getlabel ClosestTarget descTarget cooldown "Target Check" 4000 endif if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" hotkey 'Toggle War Only' replay else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if warmode cooldown "Target Timer" 0 hotkey 'Cancel Current Target' wait 150 hotkey 'Next Murderer Player Target' wait 500 if insysmsg "No one matching that was found" cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 if EnableOverheadMessages = 1 overhead "[ BREAK... ]" 43 endif wait 500 hotkey 'Toggle Peace Only' replay else @setvar! MurdererTarget lasttarget wait 500 while not dead MurdererTarget if noto MurdererTarget = "Murderer" and find MurdererTarget ground -1 -1 10 if not cooldown "Weapon Ability" and not cooldown "Skirmish" yell "[WeaponAbility1" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ SKIRMISH! ]" 339 endif cooldown "Weapon Ability" 61000 cooldown "Skirmish" 15000 endif endif if not cooldown "Target Timer" if EnableOverheadMessages = 1 overhead "[ STANDING GROUND!! ]" 37 endif cooldown "Target Timer" 3500 endif wait 500 attack MurdererTarget wait 750 if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" hotkey "Bandage Self" endif endif endif if not findtype 'crossbow|balestra|stubnose crossbow' hand if findtype 'crossbow|balestra|stubnose crossbow' backpack as fastweapon dclick fast weapon wait 500 endif endif if not findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' lefthand if findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' backpack as shield dclick shield wait 250 endif endif if findtype "Purple Potion" self as pot and not cooldown "Purple Potion" getlabel pot desc if "next usable in 15" in desc @setvar! purplePotionCD 15000 elseif "next usable in 14" in desc @setvar! purplePotionCD 14000 elseif "next usable in 13" in desc @setvar! purplePotionCD 13000 elseif "next usable in 12" in desc @setvar! purplePotionCD 12000 elseif "next usable in 11" in desc @setvar! purplePotionCD 11000 elseif "next usable in 10" in desc @setvar! purplePotionCD 10000 elseif "next usable in 9" in desc @setvar! purplePotionCD 9000 elseif "next usable in 8" in desc @setvar! purplePotionCD 8000 elseif "next usable in 7" in desc @setvar! purplePotionCD 7000 elseif "next usable in 6" in desc @setvar! purplePotionCD 6000 elseif "next usable in 5" in desc @setvar! purplePotionCD 5000 elseif "next usable in 4" in desc @setvar! purplePotionCD 4000 elseif "next usable in 3" in desc @setvar! purplePotionCD 3000 elseif "next usable in 2" in desc @setvar! purplePotionCD 2000 elseif "next usable in 1" in desc @setvar! purplePotionCD 1000 else @setvar! purplePotionCD 0 endif cooldown "Purple Potion" purplePotionCD wait 250 if find MurdererTarget ground -1 -1 10 and not cooldown "Purple Potion" dclick pot wft 1000 target MurdererTarget wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE EXPLOSION POTION! ]" 419 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ EXPLOSION POTION... ]' 419 endif clearsysmsg endif cooldown "Purple Potion" 15000 wait 250 endif else if EnableOverheadMessages = 1 overhead "[ NO EXPLOSION POTS! ]" 337 endif cooldown "Purple Potion" 30000 endif if diffhits > 10 and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot cooldown "Healing Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Healing Potion" 30000 endif endif wait 500 endif if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot cooldown "Cure Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Cure Potion" 30000 endif endif wait 500 endif if stam < maxstam and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 500 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Refresh Potion" 30000 endif endif wait 500 endif wait 1000 endif endwhile if EnableOverheadMessages = 1 overhead "[ RED TARGET LOST... ]" 37 endif wait 500 replay endif endif if EnableOverheadMessages = 1 if insysmsg "Barding break avoided" overhead "[ BREAK AVOIDED! ]" 84 ClosestTarget wait 250 endif if insysmsg "something invisible out of" overhead "▼ SOMEONE HIDING! ▼" 6 wait 500 endif if insysmsg "mastery chain" overhead "[ NEW LINK UNLOCKED!! ]" 149 wait 250 endif if insysmsg "You have unlocked a codex upgrade point" overhead "[ CODEX POINT UNLOCKED! ]" 2114 wait 250 endif if insysmsg "enough experience to upgrade" overhead "[ ASPECT TIER UNLOCKED!! ]" 2241 wait 250 endif if insysmsg "Cacophony activated" overhead "[ CACOPHONY!!! ]" 2241 wait 250 endif if insysmsg "causes you to bleed" overhead "[ BLEEDING... ]" 2118 wait 250 endif if insysmsg "Your shot hinders" overhead "[ HINDERED! ]" 44 ClosestTarget wait 250 endif if insysmsg "Your target overpowers" overhead "[ VICIOUS WOUND! ]" 1664 ClosestTarget wait 250 endif if insysmsg "Your shot turns the target into" overhead "[ PIN CUSHION!! ]" 2115 wait 250 endif if insysmsg "Your shot ricochets" overhead "[ RICOCHET!! ]" 2115 wait 250 endif endif if targetexists hotkey 'CancelCurrentTarget' endif if not find ClosestTarget ground -1 -1 6 break endif ################################# #### DEFENSIVE CHECKS: #### ################################# if paralyzed and EnableParalyzePouch = 1 if findtype "pouch" self yell "[pouch" hotkey 'Toggle War Only' replay else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif if EnableHolyLight = 1 if diffhits > HolyLightHPdiff and skill "Chivalry" >= 95 and not cooldown "Holy Light" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[HolyLight" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else if EnableOverheadMessages = 1 overhead "[ HOLY LIGHT! ]" 254 endif cooldown "Holy Light" 31000 cooldown "Chivalry" 500 endif wait 250 endif endif if EnableHealPotion = 1 if diffhits > HealPotHPdiff and not cooldown "Healing Potion" if findtype "Yellow Potion" self as healpot dclick healpot wait 250 cooldown "Healing Potion" 11000 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE HEAL POTION! ]" 253 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ HEAL POTION... ]' 253 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO HEAL POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif endif endif if EnableNobleSacrifice = 1 if diffhits > NobleSacrificeHPdiff and skill "Chivalry" >= 80 and not cooldown "Noble Sacrifice" and not cooldown "Prevented" and not cooldown "Chivalry" clearsysmsg yell "[NobleSacrifice" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else wft 1000 target 'self' if EnableOverheadMessages = 1 overhead "[ NOBLE SACRIFICE! ]" 155 endif cooldown "Noble Sacrifice" 31000 cooldown "Chivalry" 500 endif wait 250 endif endif if skill 'Healing' > 38 if not bandaging if hp < maxhp or poisoned or findbuff "bleed" or findbuff "disease" if EnableOverheadMessages = 1 overhead '[ BANDAGING...]' 88 endif hotkey "Bandage Self" elseif counttype 'clean bandage%s%' < 10 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ BANDAGES LOW! ]" 339 endif cooldown "Inventory Timer" 6000 elseif counttype 'clean bandage%s%' = 0 and not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO BANDAGES! ]" 337 endif cooldown "Inventory Timer" 6000 endif endif endif if EnableCloseWounds = 1 if findbuff "bleed" or findbuff "disease" if skill "chivalry" >= 70 and not cooldown "Close Wounds" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CloseWounds" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else cooldown "Close Wounds" 31000 cooldown "Chivalry" 500 if EnableOverheadMessages = 1 overhead "[ CLOSE WOUNDS! ]" 48 endif endif wait 250 endif endif endif if EnableCurePotion = 1 if poisoned and not cooldown "Cure Potion" if findtype "Orange Potion" self as curepot dclick curepot wait 500 cooldown "Cure Potion" 11000 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE CURE POTION! ]" 44 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ CURE POTION... ]' 44 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO CURE POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnableCleanseByFire = 1 if diffhits > CleanseByFireHPdiff and poisoned and not cooldown "Cleanse By Fire" and not cooldown "Chivalry" and not cooldown "Prevented" clearsysmsg yell "[CleanseByFire" wait 250 if insysmsg "You do not have enough holy" cooldown "Prevented" 5000 clearsysmsg else cooldown "Cleanse By Fire" 31000 cooldown "Chivalry" 500 if EnableOverheadMessages = 1 overhead "[ CLEANSE BY FIRE! ]" 43 endif endif wait 250 endif endif if EnableRefreshPotion = 1 if diffstam >= RefreshPotSPdiff and not cooldown "Refresh Potion" if findtype "Red Potion" self as refreshpot dclick refreshpot cooldown "Refresh Potion" 11000 wait 250 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE REFRESH POTION! ]" 34 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ REFRESH POTION... ]' 34 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO REFRESH POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 250 endif endif if EnableStrengthPotion = 1 if insysmsg "You may now use a strength" or not findbuff 'Strength' if findtype "White Potion" self as strengthpot dclick strengthpot wait 250 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE STRENGTH POTION! ]" 956 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ STRENGTH POTION... ]' 956 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO STRENGTH POTS! ]' 337 endif cooldown "Inventory Timer" 15000 endif endif wait 500 endif endif if EnableAgilityPotion = 1 if insysmsg "You may now use an agility" or not findbuff 'Agility' if findtype "Blue Potion" self as agilitypot dclick agilitypot wait 250 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE AGILITY POTION! ]" 93 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ AGILITY POTION... ]' 93 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO AGILITY POTS! ]' 337 endif cooldown "Inventory Timer" 15000 endif endif wait 500 endif endif if EnableMagicResistPotion = 1 if not findbuff 'Magic Resist Potion' wait 500 if findtype "Black Potion" self as resistpot dclick resistpot wait 250 if insysmsg "Potion satchel used" if EnableOverheadMessages = 1 overhead "[ FREE RESIST POTION! ]" 808 endif clearsysmsg else if EnableOverheadMessages = 1 overhead '[ RESIST POTION... ]' 808 endif clearsysmsg endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead '[ NO RESIST POTS! ]' 337 endif cooldown "Inventory Timer" 6000 endif endif wait 500 endif endif if not find ClosestTarget ground -1 -1 6 break endif ############################### #### BARDING SKILLS: #### ############################### clearsysmsg if not cooldown "Provo Check" and EnableProvocation = 1 if find ClosestTarget gound -1 -1 6 and find NextClosestTarget ground -1 -1 6 and ClosestTarget != NextClosestTarget getlabel ClosestTarget descTarget if "provoked" in descTarget if not cooldown "Provoked" cooldown "Provoked" 30000 endif @setvar! NeedtoProvoke 0 cooldown "Provo Check" 1000 else cooldown "Provoked" 0 @setvar! NeedtoProvoke 1 @setvar! NeedtoPacify 0 wait 750 cooldown "Provo Check" 1000 cooldown "Peace Check" 1000 cooldown "Peacemaking" 5000 endif endif endif if not cooldown "Peace Check" and EnablePeacemaking = 1 getlabel ClosestTarget descTarget if "pacified" in descTarget if not cooldown "Pacified" cooldown "Pacified" 30000 endif @setvar! NeedtoPacify 0 cooldown "Peace Check" 1000 else cooldown "Pacified" 0 @setvar! NeedtoPacify 1 wait 500 cooldown "Peace Check" 1000 endif endif if not cooldown "Disco Check" and EnableDiscordance = 1 getlabel ClosestTarget descTarget if "discord" in descTarget if not cooldown "Discorded" cooldown "Discorded" 30000 endif @setvar! NeedtoDiscord 0 cooldown "Disco Check" 1000 else cooldown "Discorded" 0 @setvar! NeedtoDiscord 1 wait 500 cooldown "Disco Check" 1000 endif endif if NeedtoProvoke = 1 if ClosestTarget != NextClosestTarget and NextClosestTarget != 0 and not cooldown "Provoked" and not cooldown "Provocation" and not cooldown "Musicianship" and EnableProvocation = 1 skill "Provocation" wft 1000 target NextClosestTarget wft 1000 if insysmsg 'Target cannot be seen' if EnableOverheadMessages = 1 overhead "[ TARGET CANNOT BE SEEN... ]" 339 NextClosestTarget endif cooldown "Provocation" 10000 elseif insysmsg "You must wait" if EnableOverheadMessages = 1 overhead "[ WAITING... ]" 2117 endif cooldown "Peacemaking" 5000 cooldown "Discordance" 5000 wait 250 clearsysmsg elseif insysmsg 'That is too far away.' if EnableOverheadMessages = 1 overhead '[ TOO FAR AWAY! ]' 339 NextClosestTarget endif cooldown "Provocation" 5000 else if EnableOverheadMessages = 1 overhead "[ PROVOKING... ]" 2117 endif target ClosestTarget wait 500 endif if insysmsg 'You play successfully, provoking' if EnableOverheadMessages = 1 overhead '[ PROVOKED! ]' 2117 ClosestTarget overhead '[ PROVOKED! ]' 2117 NextClosestTarget else overhead '▼' 2117 ClosestTarget overhead '▼' 2117 NextClosestTarget endif sysmsg "You play successfully, provoking {{descTarget}} and {{descNextTarget}}!" 2117 cooldown "Musicianship" 5500 cooldown "Provocation" 11000 cooldown "Provoked" ProvocationReapply @setvar! SwitchStance 1 wait 250 if mana > 10 and SwitchStance = 1 yell "[ArcheryAmmunition3" wait 150 yell "[ArcheryFinisher1" cooldown "Codex" 5000 wait 250 if insysmsg "You deactivate" yell "[ArcheryAmmunition3" wait 150 yell "[ArcheryFinisher1" cooldown "Codex" 5000 endif if EnableOverheadMessages = 1 overhead "[ FIRE AMMO! ]" 44 wait 500 endif endif elseif insysmsg 'You fail to incite' if EnableOverheadMessages = 1 overhead '[ PROVO FAIL! ]' 153 endif sysmsg "You fail to provoke {{descTarget}} and {{descNextTarget}}!" 339 cooldown "Provocation" 5500 wait 250 elseif insysmsg 'Target cannot be seen' if EnableOverheadMessages = 1 overhead "[ TARGET CANNOT BE SEEN... ]" 337 endif cooldown "Provocation" 5000 elseif insysmsg 'That is too far away.' if EnableOverheadMessages = 1 overhead '[ TOO FAR AWAY! ]' 43 ClosestTarget endif cooldown "Provocation" 5000 elseif insysmsg 'The creatures you are trying to provoke are too far away from each other for your music to have an effect.' if EnableOverheadMessages = 1 overhead '[ TOO FAR APART! ]' 153 ClosestTarget overhead '[ TOO FAR APART! ]' 153 NextClosestTarget endif cooldown "Provocation" 5000 elseif insysmsg 'tell someone to attack themselves!' if EnableOverheadMessages = 1 overhead '[ SELF TARGETING FAIL... ]' 337 endif else if targetexists hotkey 'CancelCurrentTarget' endif wft 250 endif @setvar! NeedtoProvoke 0 endif endif if NeedtoPacify = 1 if not cooldown "Pacified" and not cooldown "Peacemaking" and not cooldown "Musicianship" and EnablePeacemaking = 1 skill "Peacemaking" wft 1000 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wft 1000 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" target ClosestTarget wait 500 endif if insysmsg "Target cannot be seen" if EnableOverheadMessages = 1 overhead "[ TARGET CANNOT BE SEEN... ]" 337 endif replay elseif insysmsg 'That is too far away.' if EnableOverheadMessages = 1 overhead '[ TOO FAR AWAY! ]' 43 ClosestTarget endif replay elseif insysmsg "You must wait" if EnableOverheadMessages = 1 overhead "[ WAITING... ]" 84 endif cooldown "Discordance" 5000 cooldown "Provocation" 5000 wait 250 elseif insysmsg "You play successfully, pacifying your" if EnableOverheadMessages = 1 overhead "[ PACIFYING... ]" 84 endif cooldown "Pacified" PeacemakingReapply cooldown "Musicianship" 5500 cooldown "Peacemaking" 11000 if EnableOverheadMessages = 1 wait 500 overhead "[ PACIFIED! ]" 84 ClosestTarget else overhead '▼' 84 ClosestTarget endif sysmsg "You play successfully, pacifying your target!" 84 wait 150 @setvar! SwitchStance 0 yell "[ArcheryAmmunition1" wait 150 yell "[ArcheryFinisher2" cooldown "Codex" 5000 @setvar! SwitchStance 0 wait 250 if insysmsg "You deactivate" yell "[ArcheryAmmunition1" wait 150 yell "[ArcheryFinisher2" cooldown "Codex" 5000 endif if EnableOverheadMessages = 1 overhead "[ ARCANE AMMO! ]" 12 wait 500 endif elseif insysmsg "you fail to pacify your opponent" if EnableOverheadMessages = 1 overhead "[ PACIFY FAIL! ]" 153 endif sysmsg "You fail to pacify your target!" 337 cooldown "Peacemaking" 5500 wait 250 else if targetexists hotkey 'CancelCurrentTarget' endif if not find ClosestTarget ground -1 -1 6 break endif endif endif endif if NeedtoDiscord = 1 if not cooldown "Discorded" and not cooldown "Discordance" and not cooldown "Musicianship" and EnableDiscordance = 1 skill "Discordance" wft 1000 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif elseif not insysmsg "This is not a musical instrument" target ClosestTarget wait 500 if insysmsg "Target cannot be seen." if EnableOverheadMessages = 1 overhead "[ TARGET CANNOT BE SEEN... ]" 337 endif replay elseif insysmsg "You must wait" if EnableOverheadMessages = 1 overhead "[ WAITING... ]" 69 endif cooldown "Peacemaking" 5000 cooldown "Provocation" 5000 wait 250 elseif insysmsg "You play successfully, disrupting your opponent" if EnableOverheadMessages = 1 overhead "[ DISCORDING... ]" 69 wait 500 endif cooldown "Discorded" DiscordanceReapply cooldown "Musicianship" 5500 cooldown "Discordance" 11000 if EnableOverheadMessages = 1 overhead "[ DISCORDED! ]" 69 ClosestTarget else overhead '▼' 69 ClosestTarget endif sysmsg "You play successfully, disrupting your target!" 69 elseif insysmsg "fail to discord" cooldown "Discordance" 5500 if EnableOverheadMessages = 1 overhead "[ DISCORD FAIL! ]" 153 endif sysmsg "You fail to discord your target!" 337 wait 250 else if targetexists hotkey 'CancelCurrentTarget' endif if not find ClosestTarget ground -1 -1 6 break endif endif else if targetexists hotkey 'CancelCurrentTarget' endif if not find ClosestTarget ground -1 -1 6 break endif endif endif endif if targetexists hotkey 'CancelCurrentTarget' endif if not find ClosestTarget ground -1 -1 6 break endif ################################# #### BUFFS & ABILITIES: #### ################################# if EnableDivineFury = 1 if not cooldown "Divine Fury" and not cooldown "Chivalry" and not cooldown "Prevented" and diffhits < HolyLightHPdiff clearsysmsg yell "[DivineFury" wait 250 if not insysmsg "You do not have enough holy" and not insysmsg "You must wait a moment" cooldown "Divine Fury" 31000 cooldown "Chivalry" 10000 if EnableOverheadMessages = 1 overhead "[ DIVINE FURY! ]" 2117 endif else cooldown "Prevented" 5000 endif wait 250 endif endif if EnableEnemyOfOne = 1 if not cooldown "Enemy Of One" and not cooldown "Chivalry" and not cooldown "Prevented" and diffhits < HolyLightHPdiff yell "[EnemyOfOne" wait 250 if not insysmsg "You do not have enough holy" and not insysmsg "You must wait a moment" cooldown "Enemy Of One" 31000 cooldown "Chivalry" 10000 if EnableOverheadMessages = 1 overhead "[ ENEMY OF ONE! ]" 332 endif else cooldown "Prevented" 5000 endif wait 250 endif endif if EnableConsecrateWeapon = 1 if cooldown "Discorded" wait 150 if cooldown "Pacified" or cooldown "Provoked" wait 150 if not cooldown "Consecrate Weapon" and not cooldown "Chivalry" and not cooldown "Prevented" and diffhits < HolyLightHPdiff yell "[ConsecrateWeapon" wait 250 if not insysmsg "You do not have enough holy" and not insysmsg "You must wait a moment" cooldown "Consecrate Weapon" 31000 cooldown "Chivalry" 10000 if EnableOverheadMessages = 1 overhead "[ CONSECRATE WEAPON! ]" 2206 endif else cooldown "Prevented" 5000 endif wait 250 endif endif endif endif if EnableWeaponAbility = 1 if cooldown "Discorded" if cooldown "Pacified" or cooldown "Provoked" if EnableSkirmish = 1 and not cooldown "Weapon Ability" and not cooldown "Skirmish" yell "[WeaponAbility1" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ SKIRMISH! ]" 337 endif cooldown "Weapon Ability" 61000 cooldown "Skirmish" 15000 endif elseif EnableFullDraw = 1 and not cooldown "Weapon Ability" and not cooldown "Full Draw" yell "[WeaponAbility2" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ FULL DRAW! ]" 2117 endif cooldown "Weapon Ability" 61000 cooldown "Full Draw" 15000 endif elseif EnableRepeater = 1 and not cooldown "Weapon Ability" and not cooldown "Repeater" yell "[WeaponAbility3" wait 250 if insysmsg "You cannot" cooldown "Weapon Ability" 5000 else if EnableOverheadMessages = 1 overhead "[ REPEATER LOADED... ]" 2114 endif cooldown "Weapon Ability" 65000 cooldown "Repeater" 15000 cooldown "Target Timer" 2500 if EnableOverheadMessages = 1 wait 500 overhead "Uh oh..." 339 ClosestTarget endif endif endif endif endif endif if EnablePeacemakingBuff = 1 and not findbuff "Song Of Peacemaking" and not cooldown "Musicianship" and not cooldown "Peacemaking" and not cooldown "Song Buff Delay" skill "Peacemaking" wft 500 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ PEACEMAKING BUFF... ]" 84 endif cooldown "Peacemaking Buff" SongReapply cooldown "Song Buff Delay" 11000 endif endif if EnableDiscordanceBuff = 1 and not findbuff "Song Of Discordance" and not cooldown "Musicianship" and not cooldown "Discordance" and not cooldown "Song Buff Delay" skill "Discordance" wft 500 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ DISCORDANCE BUFF... ]" 69 endif cooldown "Discordance Buff" SongReapply cooldown "Song Buff Delay" 11000 endif endif if EnableProvocationBuff = 1 and not findbuff "Song of Provocation" and not cooldown "Musicianship" and not cooldown "Provocation" and not cooldown "Song Buff Delay" skill "Provocation" wft 500 if insysmsg "What instrument shall you play?" if findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" as Instrument target Instrument wait 250 else if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 337 endif endif endif if not insysmsg "This is not a musical instrument" wft 1000 target backpack if EnableOverheadMessages = 1 overhead "[ PROVOCATION BUFF... ]" 2117 endif cooldown "Provocation Buff" SongReapply cooldown "Song Buff Delay" 11000 endif endif if not find ClosestTarget ground -1 -1 6 break endif ################################# #### CLEANUP & UTILITY: #### ################################# if insysmsg "world is saving" if not timerexists "WorldSaveTimer" createtimer "WorldSaveTimer" endif settimer "WorldSaveTimer" 0 while timer "WorldSaveTimer" < 4000 if insysmsg "save complete" break endif wait 250 endwhile if EnableOverheadMessages = 1 overhead "[ SAVE COMPLETE! ]" 253 endif endif if EnableWeightWarningMessage = 1 if diffweight < GreenWarningDiffWeight and diffweight > YellowWarningDiffWeight and not cooldown "Weight Warning" overhead "[ WEIGHT WARNING... ]" 77 cooldown "Weight Warning" 6000 elseif diffweight < YellowWarningDiffWeight and diffweight > RedWeightLimitDiffWeight and not cooldown "Weight Warning" overhead "[ WEIGHT WARNING! ]" 153 cooldown "Weight Warning" 6000 elseif diffweight < RedWeightLimitDiffWeight and not cooldown "Weight Warning" overhead "-[ WEIGHT LIMIT REACHED!! ]-" 37 cooldown "Weight Warning" 6000 sysmsg "Time to head home and unload our loot!" 0 endif endif if EnableAmmoWarningMessage = 1 if findtype 'stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' hand # BOLTS @setvar! AMMO 1 elseif findtype 'long bow|bow|recurve bow|composite bow' hand # ARROWS @setvar AMMO 2 endif if counttype "crossbow bolt" self < LowAmmoWarningAmount and not cooldown "Ammunition" and AMMO = 1 overhead "[ AMMO LOW! ]" 37 cooldown "Ammunition" 6000 endif if counttype "arrow" self < LowAmmoWarningAmount and not cooldown "Ammunition" and AMMO = 2 overhead "[ AMMO LOW! ]" 37 cooldown "Ammunition" 6000 endif endif if findtype "arrow|crossbow bolt" backpack if not cooldown "Satchel Timer" and findtype "quiver" self as MyQuiver menu MyQuiver 0 wait 250 endif endif if findtype 'Elven SpellBlade' backpack and EnableAutoCarving = 1 if findtype "corpse" ground -1 -1 2 as body dclicktype "Elven Spellblade" wft 1000 if EnableOverheadMessages = 1 overhead "[ SKINNING... ]" 338 endif target 'self' wait 500 @ignore body endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO SKINNING KNIFE! ]" 337 endif cooldown "Inventory Timer" 6000 endif endif if EnableArrowCleanup = 1 if findtype 7163|3903 ground -1 -1 2 as item and not cooldown "Cleanup" if EnableOverheadMessages = 1 overhead '[ CLEANUP... ]' 93 endif hotkey "Grab Item" wft 1000 target item wait 250 if findtype "quiver" self as MyQuiver menu MyQuiver 0 wait 500 else hotkey 'Organizer Agent-03' wait 150 endif cooldown "Cleanup" 1000 endif if findtype 7163 ground -1 -1 10 as bolt and not cooldown "Radar" overhead "▼" 93 bolt cooldown "Radar" 3500 endif if findtype 3903 ground -1 -1 10 as arrow and not cooldown "Radar" overhead "▼" 37 arrow cooldown "Radar" 3500 endif endif if not findtype "standing harp|sackbut|bamboo flute|tambourine|drum|lute|lap harp|gemshorn|hurdy gurdy|psaltery|shawm|vielle" self if EnableOverheadMessages = 1 overhead "[ NO INSTRUMENT! ]" 333 endif replay endif if not findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' hand if findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' backpack as weapon for 5 getlabel weapon WeaponLabel wait 250 if "unidentified" in WeaponLabel @ignore weapon if findtype 'long bow|bow|recurve bow|composite bow|stubnose crossbow|tower guard crossbow|balestra|heavy crossbow|crossbow' backpack as weapon getlabel weapon WeaponLabel endif else break endif endfor dclick weapon wait 250 endif endif if EnableShield = 1 if not findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' lefthand if findtype 'metal shield|Chaos shield|heater shield|bone shield|bronze shield|buckler|kite shield|Order shield|wooden shield|parrying gauche' backpack as shield getlabel shield ShieldLabel for 5 wait 250 if "unidentified" in ShieldLabel @ignore shield if findtype 'metal shield|Chaos shield|heater shield' backpack as shield getlabel shield ShieldLabel endif endif endfor dclick shield wait 250 endif endif endif if not find ClosestTarget ground -1 -1 6 break endif if targetexists hotkey 'CancelCurrentTarget' endif endwhile endif ################################# #### AFTER KILL: #### ################################# if targetexists hotkey 'Cancel Current Target' endif if insysmsg "You have gained" if EnableOverheadMessages = 1 overhead "[ TARGET ELIMINATED!! ]" 149 endif sysmsg "You have killed {{descTarget}}!" 6 cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 else if EnableOverheadMessages = 1 overhead "[ TARGET LOST... ]" 339 endif cooldown "Pacified" 0 cooldown "Discorded" 0 cooldown "Provoked" 0 endif if EnableOverheadMessages = 1 if insysmsg "mastery chain" overhead "[ NEW LINK UNLOCKED!! ]" 149 wait 250 endif if insysmsg "You have unlocked a codex upgrade point" overhead "[ CODEX POINT UNLOCKED! ]" 2114 wait 250 endif if insysmsg "enough experience to upgrade" overhead "[ ASPECT TIER UNLOCKED! ]" 2241 wait 250 endif endif wait 1000 cooldown "Cleanup" 3500 cooldown "Satchel Timer" 5000 if findtype 'Elven SpellBlade' backpack and EnableAutoCarving = 1 if findtype "corpse" ground -1 -1 2 as mykill wait 500 if EnableOverheadMessages = 1 overhead "[ SKINNING... ]" 338 endif dclicktype "Elven Spellblade" wft 1000 target 'self' wait 500 @ignore mykill endif else if not cooldown "Inventory Timer" if EnableOverheadMessages = 1 overhead "[ NO SKINNING KNIFE! ]" 337 endif cooldown "Inventory Timer" 4000 endif endif replay endwhile wait 1000 if dead if EnableOverheadMessages = 1 wait 2500 overhead "Well... shit..." 6 wait 2000 overhead '[ STOPPING SCRIPT... ]' 37 endif sysmsg "Stopping Ultimate Bard Auto Pilot script..." 0 stop else replay endif ////////////// // THE END! // //////////////