Back to "tactics" skill

Ultimate Auto Dexxer Hotkey (1) by Jaseowns

# Dexxer Bot by Jaseowns # UO Outlands ####### # Working on this during the live streams: Monday / Wednesday / Friday # https://youtube.com/jaseowns/live ####### ##### ## Verison 3.4.0 ## Last Edit: 1/14/2024 ## - added health check for switching to warding ### #### Notes for next time: ## Cooldown check for pvp timer to avoid chiv abiltiies ## add a check for warmode to still drink pots if you lose health # Basic Heal and Chivalry abilties to heal by Jaseowns # UO Outlands @setvar! showTargetOverheadMessages 1 @setvar! cdPreventOverheadSpam 2000 ################################ ###### Random abilities ################ @setvar! automaticallySkinCorpses 1 @setvar! automaticallyPoisonWeaponThatIsEquipped 1 ################################ ###### Potion Controllers ################ @setvar! automaticallyDrinkStrPot 1 @setvar! automaticallyDrinkAgiPot 1 @setvar! automaticallyDrinkMagicPot 1 @setvar! automaticallyDrinkHealPot 1 @setvar! automaticallyDrinkCurePot 1 @setvar! automaticallyDrinkRefreshPot 1 @setvar! hpCheckToTriggerHealPotion 45 @setvar! hpCheckToTriggerCurePotion 45 @setvar! stamDiffCheckToTriggerRedPotion 10 @setvar! drinkPotionsEvenIfInWarModeAndYouLoseHealth 1 ################################ ###### Chiv abilities ################ @setvar! useCleanseByFireAutomatically 1 @setvar! useCloseWoundsAutomatically 1 @setvar! useHolyLightAutomatically 1 @setvar! useDivineFuryAutomatically 1 @setvar! hpTriggerForHolyLight 35 @setvar! lowHealthTriggerForNobleSacrifice 40 @setvar! myRangeCheckForTarget 1 # Herding if skill "Herding" > 0 and findtype 3713 self as firstJrook @setvar! isHerdingActive 0 while isHerdingActive = 0 if counttype 3713 self > 1 @clearignore while findtype 3713 self as jrook getlabel jrook multiDesc if 'activated' in multiDesc @setvar! isHerdingActive 1 break endif @ignore jrook endwhile @clearignore if isHerdingActive = 0 dclick firstJrook endif endif if isHerdingActive = 0 getlabel firstJrook desc if 'activated' in desc @setvar! isHerdingActive 1 else dclick firstJrook getlabel firstJrook desc @setvar! isHerdingActive 1 endif endif endwhile endif if skill "Archery" > 50 @setvar! myRangeCheckForTarget 8 endif if skill "Animal Taming" > 50 @setvar! hpTriggerForHolyLight 80 if not varexist myJaseHelperText overhead "Make sure to set totalPets to your pet count: default is 2" 88 @setvar! myJaseHelperText 1 endif @setvar! totalPets 2 # Pets if not varexist myDexxerTankPet @setvar! myDexxerTankPet 0 endif if not find myDexxerTankPet ground -1 -1 20 overhead "Select your main tank" 88 @setvar! myDexxerTankPet wait 200 endif if totalPets = 2 or totalPets = 3 or totalPets = 4 or totalPets = 5 if not varexist myOtherPet1 @setvar! myOtherPet1 0 endif if not find myOtherPet1 ground -1 -1 20 overhead "Select your non tank pet 1" 88 @setvar! myOtherPet1 wait 200 endif else @setvar! myOtherPet1 0 endif if totalPets = 3 or totalPets = 4 or totalPets = 5 if not varexist myOtherPet2 @setvar! myOtherPet2 0 endif if not find myOtherPet2 ground -1 -1 20 overhead "Select your non tank pet 2" 88 @setvar! myOtherPet2 wait 200 endif else @setvar! myOtherPet2 0 endif if totalPets = 4 or totalPets = 5 if not varexist myOtherPet3 @setvar! myOtherPet3 0 endif if not find myOtherPet3 ground -1 -1 20 overhead "Select your non tank pet 3" 88 @setvar! myOtherPet3 wait 200 endif else @setvar! myOtherPet3 0 endif if totalPets = 5 if not varexist myOtherPet4 @setvar! myOtherPet4 0 endif if not find myOtherPet4 ground -1 -1 20 overhead "Select your non tank pet 4" 88 @setvar! myOtherPet4 wait 200 endif else @setvar! myOtherPet4 0 endif endif @setvar! cdCleanseByFire 31000 @setvar! cdCloseWounds 31000 @setvar! cdHolyLight 31000 @setvar! cdDivineFury 31000 @setvar! cdNobleSacrifice 31000 ################################ ###### Chiv abilities overheads ################ @setvar! showChivUsageAsOverhead 1 @setvar! showChivUsageAsSystemMessage 1 @setvar! showChivUsageAsOverheadColor 88 @setvar! showChivUsageAsSystemMessageColor 88 ################################ ###### Bard abilities overheads ################ @setvar! showDiscordDebuffAsOverhead 1 @setvar! showDiscordDebuffAsOverheadColor 55 @setvar! showPeaceDebuffAsOverhead 1 @setvar! showPeaceDebuffAsOverheadColor 77 ################################ ###### Codex Stance Switch ################ @setvar! lowHealthSwitchToWarding 60 @setvar! switchShieldCodexAutomatically 1 @setvar! switchToWardingStanceDuringBleed 1 @setvar! switchToWardingStanceDuringDisease 1 @setvar! switchToWardingStanceDuringPoison 1 @setvar! switchToShieldBash 0 @setvar! switchToBulwark 1 @setvar! cdSwitchStance 10000 ########### # If shit is not working right, adjust this number to ping ##### @setvar! minimumWaitForPing 200 @setvar! minimumWaitForPingUnequipping 650 @setvar! cdPreventChivAbilitySpam 750 @setvar! cdSkinningCheck 3000 ############################################## ########### DO NOT EDIT BELOW THIS ####### @setvar! cdWorldSaveOver 15000 while not dead if skill "Animal Taming" > 50 while dead myDexxerTankPet if not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myDexxerTankPet endif if hp <= hpCheckToTriggerHealPotion or hp <= hpTriggerForHolyLight break endif wait 100 endwhile # want a timer to start healing pets # if the timer passes certain time # trigger a heal bandage # we want to check system message to see # if its working @setvar! cdPetHeal 8000 if not timerexists petHealTimer settimer petHealTimer cdPetHeal endif @setvar! cdPetGuard 8000 if not timerexists petGuardTimer settimer petGuardTimer cdPetGuard endif if timer petGuardTimer >= cdPetGuard menu myDexxerTankPet 3 if not dead myOtherPet1 wait 200 menu myOtherPet1 3 endif settimer petGuardTimer 0 endif if timer petHealTimer >= cdPetHeal if findtype "veterinary supplies" backpack as item if not bandaging dclick item wait 650 endif else if not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myDexxerTankPet overhead "Heal Target" 77 myDexxerTankPet wait 650 endif if myOtherPet1 != 0 and not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myOtherPet1 overhead "Heal Target" 66 myOtherPet1 wait 650 endif if myOtherPet2 != 0 and not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myOtherPet2 overhead "Heal Target" 55 myOtherPet2 wait 650 endif if myOtherPet3 != 0 and not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myOtherPet3 overhead "Heal Target" 44 myOtherPet3 wait 650 endif if myOtherPet4 != 0 and not bandaging and findtype "clean bandage%s%" backpack as item dclick item wft 500 target myOtherPet4 overhead "Heal Target" 33 myOtherPet4 wait 650 endif endif if not bandaging settimer petHealTimer 0 endif endif endif if not timerexists skinningCheckTimer settimer skinningCheckTimer cdSkinningCheck endif if automaticallySkinCorpses = 1 and findtype "corpse" ground -1 -1 2 as jorpse if findtype "Elven Spellblade" backpack and timer skinningCheckTimer >= cdSkinningCheck while not targetexists useskill 'forensicevaluation' endwhile if targetexists hotkey "Target Self" wait minimumWaitForPing settimer skinningCheckTimer 0 @ignore jorpse endif endif endif // Trapped if paralyzed if findtype "pouch" backpack 38 yell "[pouch" wait minimumWaitForPing else overhead "Out of Pouches!" 34 endif endif if findbuff "weaken" and weight > maxweight if findtype "gold coin" backpack as item lift item 2000 droprelloc 0 0 wait minimumWaitForPing if insysmsg "cannot drop anything" drop backpack -1 -1 -1 endif wait minimumWaitForPingUnequipping else overhead "We are overweight and cannot drop anything" 34 endif endif if not varexist jaseCrimHealCheck gumpclose 3587807212 while not gumpexists 3587807212 say '[commands' wait 200 endwhile gumpresponse 11 3587807212 waitforgump 3587807212 5000 gumpresponse 3 3587807212 waitforgump 3587807212 5000 if ingump "[PreventCriminalHealing" 3587807212 if ingump "Prevented" gumpclose 3587807212 else gumpresponse 29 3587807212 waitforgump 3587807212 5000 gumpclose 3587807212 endif endif @setvar! jaseCrimHealCheck 1 endif if not timerexists worldSaveTimer settimer worldSaveTimer cdWorldSaveOver endif if insysmsg 'world will save' overhead "World save coming soon.." settimer worldSaveTimer 0 elseif insysmsg 'world is saving' for 100 overhead 'Waiting for world save...' wait 100 if insysmsg 'save complete' settimer worldSaveTimer cdWorldSaveOver overhead 'Save complete - continue on!' 88 break endif endfor endif if timer worldSaveTimer >= cdWorldSaveOver if automaticallyPoisonWeaponThatIsEquipped = 1 and skill "Poisoning" > 0 if findlayer self righthand as found @setvar! weapon_equipped found elseif findlayer self lefthand as found @setvar! weapon_equipped found else overhead "Unknown or no weapon equipped" 34 stop endif getlabel weapon_equipped desc if "poison charges" in desc // do nothing else if findtype "Green Potion" backpack menu weapon_equipped 0 else overhead "No poison pots" 34 endif endif endif endif if not findtype "White Potion" backpack @setvar! automaticallyDrinkStrPot 0 endif if not findtype "Blue Potion" backpack @setvar! automaticallyDrinkAgiPot 0 endif if not findtype "Black Potion" backpack @setvar! automaticallyDrinkMagicPot 0 endif @setvar! cdAids 15000 if dex >= 100 @setvar! cdAids 10000 endif if not timerexists preventOverheadSpamTimer createtimer preventOverheadSpamTimer settimer preventOverheadSpamTimer cdPreventOverheadSpam endif if not timerexists preventChivAbilitySpamTimer createtimer preventChivAbilitySpamTimer settimer preventChivAbilitySpamTimer cdPreventChivAbilitySpam endif if not timerexists aidsTimer createtimer aidsTimer settimer aidsTimer cdAids endif @setvar! myKillTarget 0 @setvar! targetInRange 0 if not varexist myPreviousKillTarget @setvar myPreviousKillTarget 0 endif if warmode // do nothing else @hotkey 'Target Closest Non-Friendly Monster' wait minimumWaitForPing if insysmsg "No one matching that was found" if timer preventOverheadSpamTimer >= cdPreventOverheadSpam overhead "found no one" 34 settimer preventOverheadSpamTimer 0 endif else @setvar! myKillTarget lasttarget endif if not varexist autoAttack @setvar! autoAttack 1 endif if myKillTarget != 0 and myPreviousKillTarget != myKillTarget getlabel myKillTarget mobDesc @setvar! myPreviousKillTarget myKillTarget if "(summoned" in mobDesc or "(bonded" in mobDesc or "(tame" in mobDesc overhead "▼ Player pet - IGNORE ▼" 77 lasttarget @setvar! autoAttack 0 else @setvar! autoAttack 1 endif endif if myKillTarget = 0 // do nothing elseif not find lasttarget ground -1 -1 myRangeCheckForTarget if showTargetOverheadMessages = 1 and timer preventOverheadSpamTimer >= cdPreventOverheadSpam overhead "● ▼ OUT OF RANGE ▼ ●" 88 lasttarget settimer preventOverheadSpamTimer 0 endif if find lasttarget ground -1 -1 8 and autoAttack = 1 attack lasttarget endif elseif autoAttack = 1 @setvar! targetInRange 1 if showTargetOverheadMessages = 1 and timer preventOverheadSpamTimer >= cdPreventOverheadSpam overhead "● ▼▼ HERE ▼▼ ●" 88 lasttarget settimer preventOverheadSpamTimer 0 endif attack lasttarget endif endif # Eat food if we got it if not findbuff "food" and findtype "tray" backpack as jood dclick jood wait minimumWaitForPing endif @setvar! needStrBuff 0 @setvar! needDexBuff 0 @setvar! needMagicBuff 0 @setvar! needHealPot 0 @setvar! needCurePot 0 @setvar! needRefreshPot 0 @setvar! drinkThosePots 0 if targetInRange = 1 @setvar! drinkThosePots 1 elseif warmode and drinkPotionsEvenIfInWarModeAndYouLoseHealth = 1 and hp < maxhp @setvar! drinkThosePots 1 endif if automaticallyDrinkStrPot = 1 and drinkThosePots = 1 and not findbuff "Strength" @setvar! needStrBuff 1 endif if automaticallyDrinkAgiPot = 1 and drinkThosePots = 1 and not findbuff "Agility" @setvar! needDexBuff 1 endif if automaticallyDrinkMagicPot = 1 and drinkThosePots = 1 and not findbuff "Magic Resist Potion" @setvar! needMagicBuff 1 endif if automaticallyDrinkHealPot = 1 and hp <= hpCheckToTriggerHealPotion @setvar! needHealPot 1 endif if automaticallyDrinkCurePot = 1 and poisoned and hp <= hpCheckToTriggerCurePotion @setvar! needCurePot 1 endif if automaticallyDrinkRefreshPot = 1 and diffstam >= stamDiffCheckToTriggerRedPotion @setvar! needRefreshPot 1 endif if needStrBuff = 1 and not findtype "White Potion" backpack @setvar! needStrBuff 0 endif if needDexBuff = 1 and not findtype "Blue Potion" backpack @setvar! needDexBuff 0 endif if needMagicBuff = 1 and not findtype "Black Potion" backpack @setvar! needMagicBuff 0 endif if needHealPot = 1 and not findtype "Yellow Potion" backpack @setvar! needHealPot 0 elseif needHealPot = 1 and findtype "Yellow Potion" backpack as item getlabel item healPotDesc if "next usable" in healPotDesc @setvar! needHealPot 0 else @setvar! needHealPot 1 endif endif if needCurePot = 1 and not findtype "Orange Potion" backpack @setvar! needCurePot 0 endif if needRefreshPot = 1 and not findtype "Red Potion" backpack @setvar! needRefreshPot 0 endif @setvar! jaseCanDrinkPotion 0 if needStrBuff = 1 or needDexBuff = 1 or needMagicBuff = 1 or needHealPot = 1 or needCurePot = 1 or needRefreshPot = 1 @setvar! jaseRightHand 0 @setvar! jaseLeftHand 0 @setvar! needTwoHandSwap 0 @setvar! needShieldSwap 0 if skill "Alchemy" >= 80 @setvar! jaseCanDrinkPotion 1 else if not findlayer self lefthand and not findlayer self righthand @setvar! jaseCanDrinkPotion 1 else if findlayer self lefthand as myLefthand @setvar! jaseLeftHand myLefthand endif if findlayer self righthand as myRightHand @setvar! jaseRightHand myRightHand endif if not lhandempty if not rhandempty @setvar! jaseCanDrinkPotion 0 else // handle two handed weapons getlabel jaseLeftHand desc if skill "Swordsmanship" > 0 if "axe" in desc or "bardiche" in desc or "halberd" in desc @setvar! jaseCanDrinkPotion 0 @setvar! needTwoHandSwap 1 else @setvar! jaseCanDrinkPotion 1 endif elseif skill "Mace Fighting" > 0 if "staff" in desc or "crook" in desc or "war hammer" in desc @setvar! jaseCanDrinkPotion 0 @setvar! needTwoHandSwap 1 else @setvar! jaseCanDrinkPotion 1 endif elseif skill "Fencing" > 0 if "spear" in desc or "pitchfork" in desc @setvar! jaseCanDrinkPotion 0 @setvar! needTwoHandSwap 1 else @setvar! jaseCanDrinkPotion 1 endif elseif skill "Archery" > 0 if "bow" in desc or "heavy crossbow" in desc @setvar! jaseCanDrinkPotion 0 @setvar! needTwoHandSwap 1 else @setvar! jaseCanDrinkPotion 1 endif elseif skill "Wrestling" > 0 @setvar! jaseCanDrinkPotion 1 endif endif endif if not rhandempty if lhandempty @setvar! jaseCanDrinkPotion 1 else @setvar! needShieldSwap 1 endif endif endif endif if jaseCanDrinkPotion = 1 // do nothing else if needTwoHandSwap = 1 if skill "Swordsmanship" > 0 and findtype "cutlass|broadsword|scimitar|viking sword|longsword|katana" backpack as item dclick item wait minimumWaitForPing elseif skill "Mace Fighting" > 0 and findtype "maul|war axe|war mace|mace|hammer pick|club" backpack as item dclick item wait minimumWaitForPing elseif skill "Fencing" > 0 and findtype "kryss|war fork" backpack as item dclick item wait minimumWaitForPing elseif skill "Archery" > 0 and findtype "crossbow" backpack as item dclick item wait minimumWaitForPing else hotkey 'Arm/Disarm Left Hand' wait minimumWaitForPing endif @setvar! jaseCanDrinkPotion 1 elseif needShieldSwap = 1 overhead "we should be disarming left hand" while not lhandempty hotkey 'Arm/Disarm Left Hand' wait minimumWaitForPingUnequipping while queued wait 100 endwhile endwhile setvar! jaseCanDrinkPotion 1 endif endif if jaseCanDrinkPotion = 1 if needHealPot = 1 if findtype "Yellow Potion" backpack as jotion overhead "chug heal" dclick jotion wait minimumWaitForPing cooldown "Yellow Potion" 10000 else overhead "No Heal potion found!" 34 endif endif if needCurePot = 1 if findtype "Orange Potion" backpack as jotion overhead "chug cure" dclick jotion wait minimumWaitForPing else overhead "No Cure potion found!" 34 endif endif if needDexBuff = 1 if findtype "Blue Potion" backpack as jotion overhead "chug" dclick jotion wait minimumWaitForPing else overhead "No AGI potion found!" 34 endif endif if automaticallyDrinkRefreshPot = 1 and diffstam >= stamDiffCheckToTriggerRedPotion @setvar! needRefreshPot 1 endif if needRefreshPot = 1 if findtype "Red Potion" backpack as jotion overhead "chug refresh" dclick jotion wait minimumWaitForPing else overhead "No Refresh potion found!" 34 endif endif if needStrBuff = 1 if findtype "White Potion" backpack as jotion overhead "chug" dclick jotion wait minimumWaitForPing else overhead "No STR potion found!" 34 endif endif if needMagicBuff = 1 if findtype "Black Potion" backpack as jotion overhead "chug" dclick jotion wait minimumWaitForPing else overhead "No MR potion found!" 34 endif endif if needTwoHandSwap = 1 dclick jaseLeftHand wait minimumWaitForPing elseif needShieldSwap = 1 hotkey 'Arm/Disarm Left Hand' wait minimumWaitForPingUnequipping endif endif endif ############# ### CODEX ############# if timer worldSaveTimer >= cdWorldSaveOver and skill "Parrying" >= 80 and findtype "shield codex" backpack as item if not timerexists jaseSwitchStanceTimer settimer jaseSwitchStanceTimer cdSwitchStance endif if not varexist canUseShieldFinisher @setvar! canUseShieldFinisher 1 endif while not gumpexists 1066647553 overhead "Loading hotbar" yell "[CodexHotBar" wait minimumWaitForPing endwhile if switchShieldCodexAutomatically = 1 and timer jaseSwitchStanceTimer >= cdSwitchStance getlabel item codexDesc // make sure we are in warding stance @setvar! switchToWarding 0 if switchToWardingStanceDuringBleed = 1 and findbuff "bleed" @setvar! switchToWarding 1 elseif switchToWardingStanceDuringDisease = 1 and findbuff "disease" @setvar! switchToWarding 1 elseif switchToWardingStanceDuringPoison = 1 and poisoned @setvar! switchToWarding 1 endif if switchToWarding = 1 and hp < lowHealthSwitchToWarding if "Warding" in codexDesc // we good else yell [ShieldsStance2 settimer jaseSwitchStanceTimer 0 wait 200 endif if "Barrier" in codexDesc // we good elseif canUseShieldFinisher = 1 yell [ShieldsFinisher2 wait 200 if insysmsg "You must first reach rank 5" @setvar! canUseShieldFinisher 0 endif endif elseif switchToBulwark = 1 if "Bulwark" in codexDesc // we good else yell [ShieldsStance5 settimer jaseSwitchStanceTimer 0 wait 200 endif if "Last Stand" in codexDesc // we good elseif canUseShieldFinisher = 1 yell [ShieldsFinisher1 wait 200 if insysmsg "You must first reach rank 5" @setvar! canUseShieldFinisher 0 endif endif elseif switchToShieldBash = 1 if "Shield Bash" in codexDesc // we good else yell [ShieldsStance1 settimer jaseSwitchStanceTimer 0 wait 200 endif if "Last Stand" in codexDesc // we good elseif canUseShieldFinisher = 1 yell [ShieldsFinisher1 wait 200 if insysmsg "You must first reach rank 5" @setvar! canUseShieldFinisher 0 endif endif endif endif endif if skill "Tracking" > 0 if not findbuff "tracking" clearsysmsg while not gumpexists 4267467659 useskill 'tracking' wait minimumWaitForPing 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 minimumWaitForPing endif gumpclose 4267467659 endif endif if skill "Chivalry" >= 50 @setvar! chivSymbols 0 @setvar! cdCleanseByFire 31000 @setvar! cdCloseWounds 31000 @setvar! cdHolyLight 31000 @setvar! cdDivineFury 31000 @setvar! cdNobleSacrifice 31000 if not timerexists nobleSacrificeTimer createtimer nobleSacrificeTimer settimer nobleSacrificeTimer cdCleanseByFire endif if not timerexists cleanseByFireTimer createtimer cleanseByFireTimer settimer cleanseByFireTimer cdCleanseByFire endif if not timerexists closeWoundsTimer createtimer closeWoundsTimer settimer closeWoundsTimer cdCloseWounds endif if not timerexists holyLightTimer createtimer holyLightTimer settimer holyLightTimer cdHolyLight endif if not timerexists divineFuryTimer createtimer divineFuryTimer settimer divineFuryTimer cdDivineFury endif while not gumpexists 1387930325 say "[ChivalryHotbar" wait 200 endwhile if gumpexists 1387930325 if ingump "12/" 1387930325 @setvar! chivSymbols 12 elseif ingump "13/" 1387930325 @setvar! chivSymbols 13 elseif ingump "14/" 1387930325 @setvar! chivSymbols 14 elseif ingump "15/" 1387930325 @setvar! chivSymbols 15 elseif ingump "16/" 1387930325 @setvar! chivSymbols 16 elseif ingump "17/" 1387930325 @setvar! chivSymbols 17 elseif ingump "18/" 1387930325 @setvar! chivSymbols 18 elseif ingump "19/" 1387930325 @setvar! chivSymbols 19 elseif ingump "20/" 1387930325 @setvar! chivSymbols 20 elseif ingump "21/" 1387930325 @setvar! chivSymbols 21 elseif ingump "11/" 1387930325 @setvar! chivSymbols 11 elseif ingump "10/" 1387930325 @setvar! chivSymbols 10 elseif ingump "9/" 1387930325 @setvar! chivSymbols 9 elseif ingump "8/" 1387930325 @setvar! chivSymbols 8 elseif ingump "7/" 1387930325 @setvar! chivSymbols 7 elseif ingump "6/" 1387930325 @setvar! chivSymbols 6 elseif ingump "5/" 1387930325 @setvar! chivSymbols 5 elseif ingump "4/" 1387930325 @setvar! chivSymbols 4 elseif ingump "3/" 1387930325 @setvar! chivSymbols 3 elseif ingump "2/" 1387930325 @setvar! chivSymbols 2 elseif ingump "1/" 1387930325 @setvar! chivSymbols 1 elseif ingump "0/" 1387930325 @setvar! chivSymbols 0 endif endif if hp <= lowHealthTriggerForNobleSacrifice and skill "Chivalry" >= 80 if timer preventChivAbilitySpamTimer >= cdPreventChivAbilitySpam and timer nobleSacrificeTimer >= cdNobleSacrifice and 4 < chivSymbols if skill "Healing" > 0 hotkey 'Bandage Self' settimer aidsTimer 0 wait minimumWaitForPing endif if showChivUsageAsOverhead = 1 overhead "Noble Sacrifice" showChivUsageAsOverheadColor endif if showChivUsageAsSystemMessage = 1 sysmsg "Noble Sacrifice" showChivUsageAsSystemMessageColor endif yell "[NobleSacrifice" wft 500 hotkey "Target Self" wait 200 if insysmsg "Holy symbols remaining:" settimer nobleSacrificeTimer 0 settimer preventChivAbilitySpamTimer 0 cooldown NobleSacrifice cdNobleSacrifice endif if gumpexists 1387930325 if ingump "12/" 1387930325 @setvar! chivSymbols 12 elseif ingump "13/" 1387930325 @setvar! chivSymbols 13 elseif ingump "14/" 1387930325 @setvar! chivSymbols 14 elseif ingump "15/" 1387930325 @setvar! chivSymbols 15 elseif ingump "16/" 1387930325 @setvar! chivSymbols 16 elseif ingump "17/" 1387930325 @setvar! chivSymbols 17 elseif ingump "18/" 1387930325 @setvar! chivSymbols 18 elseif ingump "19/" 1387930325 @setvar! chivSymbols 19 elseif ingump "20/" 1387930325 @setvar! chivSymbols 20 elseif ingump "21/" 1387930325 @setvar! chivSymbols 21 elseif ingump "11/" 1387930325 @setvar! chivSymbols 11 elseif ingump "10/" 1387930325 @setvar! chivSymbols 10 elseif ingump "9/" 1387930325 @setvar! chivSymbols 9 elseif ingump "8/" 1387930325 @setvar! chivSymbols 8 elseif ingump "7/" 1387930325 @setvar! chivSymbols 7 elseif ingump "6/" 1387930325 @setvar! chivSymbols 6 elseif ingump "5/" 1387930325 @setvar! chivSymbols 5 elseif ingump "4/" 1387930325 @setvar! chivSymbols 4 elseif ingump "3/" 1387930325 @setvar! chivSymbols 3 elseif ingump "2/" 1387930325 @setvar! chivSymbols 2 elseif ingump "1/" 1387930325 @setvar! chivSymbols 1 elseif ingump "0/" 1387930325 @setvar! chivSymbols 0 endif endif endif endif if poisoned and skill "Chivalry" >= 60 if timer preventChivAbilitySpamTimer >= cdPreventChivAbilitySpam and useCleanseByFireAutomatically = 1 and timer cleanseByFireTimer >= cdCleanseByFire and 2 < chivSymbols if showChivUsageAsOverhead = 1 overhead "Cleanse by fire" showChivUsageAsOverheadColor endif if showChivUsageAsSystemMessage = 1 sysmsg "Cleanse by fire" showChivUsageAsSystemMessageColor endif yell "[CleanseByFire" wait 200 if insysmsg "Holy symbols remaining:" settimer cleanseByFireTimer 0 settimer preventChivAbilitySpamTimer 0 cooldown CleanseByFire cdCleanseByFire endif endif elseif findbuff "bleed" or findbuff "disease" and skill "Chivalry" >= 70 if timer preventChivAbilitySpamTimer >= cdPreventChivAbilitySpam and useCloseWoundsAutomatically = 1 and timer closeWoundsTimer >= cdCleanseByFire and 3 < chivSymbols if showChivUsageAsOverhead = 1 overhead "Close Wounds" showChivUsageAsOverheadColor endif if showChivUsageAsSystemMessage = 1 sysmsg "Close Wounds" showChivUsageAsSystemMessageColor endif yell "[CloseWounds" wait 200 if insysmsg "Holy symbols remaining:" settimer closeWoundsTimer 0 settimer preventChivAbilitySpamTimer 0 cooldown CloseWounds cdCloseWounds endif endif endif if gumpexists 1387930325 if ingump "12/" 1387930325 @setvar! chivSymbols 12 elseif ingump "13/" 1387930325 @setvar! chivSymbols 13 elseif ingump "14/" 1387930325 @setvar! chivSymbols 14 elseif ingump "15/" 1387930325 @setvar! chivSymbols 15 elseif ingump "16/" 1387930325 @setvar! chivSymbols 16 elseif ingump "17/" 1387930325 @setvar! chivSymbols 17 elseif ingump "18/" 1387930325 @setvar! chivSymbols 18 elseif ingump "19/" 1387930325 @setvar! chivSymbols 19 elseif ingump "20/" 1387930325 @setvar! chivSymbols 20 elseif ingump "21/" 1387930325 @setvar! chivSymbols 21 elseif ingump "11/" 1387930325 @setvar! chivSymbols 11 elseif ingump "10/" 1387930325 @setvar! chivSymbols 10 elseif ingump "9/" 1387930325 @setvar! chivSymbols 9 elseif ingump "8/" 1387930325 @setvar! chivSymbols 8 elseif ingump "7/" 1387930325 @setvar! chivSymbols 7 elseif ingump "6/" 1387930325 @setvar! chivSymbols 6 elseif ingump "5/" 1387930325 @setvar! chivSymbols 5 elseif ingump "4/" 1387930325 @setvar! chivSymbols 4 elseif ingump "3/" 1387930325 @setvar! chivSymbols 3 elseif ingump "2/" 1387930325 @setvar! chivSymbols 2 elseif ingump "1/" 1387930325 @setvar! chivSymbols 1 elseif ingump "0/" 1387930325 @setvar! chivSymbols 0 endif endif if timer preventChivAbilitySpamTimer >= cdPreventChivAbilitySpam and useHolyLightAutomatically = 1 and hp <= hpTriggerForHolyLight and skill "Chivalry" >= 95 @setvar! doubleCheckHolyLight 1 if skill "Healing" > 0 and cdAids = 10000 and timer aidsTimer >= 9000 // skip holy light overhead "Skipping Holy Light" 34 @setvar! doubleCheckHolyLight 0 // unless we gonna die if hp <= 20 or poisoned overhead "Just kidding, do not wanna die" 34 @setvar! doubleCheckHolyLight 1 endif endif if doubleCheckHolyLight = 1 if timer holyLightTimer >= cdHolyLight and 5 < chivSymbols if showChivUsageAsOverhead = 1 overhead "Holy Light" showChivUsageAsOverheadColor endif if showChivUsageAsSystemMessage = 1 sysmsg "Holy Light" showChivUsageAsSystemMessageColor endif yell "[HolyLight" wait 200 if insysmsg "Holy symbols remaining:" settimer holyLightTimer 0 settimer preventChivAbilitySpamTimer 0 cooldown HolyLight cdHolyLight endif endif endif endif if timer preventChivAbilitySpamTimer >= cdPreventChivAbilitySpam and targetInRange = 1 and useDivineFuryAutomatically = 1 and skill "Chivalry" >= 85 if timer divineFuryTimer >= cdDivineFury and 4 < chivSymbols if showChivUsageAsOverhead = 1 overhead "Divine Fury" showChivUsageAsOverheadColor endif if showChivUsageAsSystemMessage = 1 sysmsg "Divine Fury" showChivUsageAsSystemMessageColor endif yell "[DivineFury" wait 200 if insysmsg "Holy symbols remaining:" settimer divineFuryTimer 0 settimer preventChivAbilitySpamTimer 0 cooldown DivineFury cdDivineFury endif endif endif endif if skill "Healing" > 0 @setvar! cdAids 15000 if dex >= 100 @setvar! cdAids 10000 endif if not timerexists aidsTimer createtimer aidsTimer settimer aidsTimer cdAids endif if findtype "clean bandage%s%" backpack if not bandaging and hp < maxhp hotkey 'Bandage Self' settimer aidsTimer 0 elseif not bandaging and poisoned hotkey 'Bandage Self' settimer aidsTimer 0 elseif not bandaging and findbuff "bleed" hotkey 'Bandage Self' settimer aidsTimer 0 elseif not bandaging and findbuff "disease" hotkey 'Bandage Self' settimer aidsTimer 0 endif else overhead "No bandages" 34 endif endif if not timerexists sCheck createtimer sCheck settimer sCheck 11000 endif if find myKillTarget ground -1 -1 10 and skill "Discordance" > 0 getlabel myKillTarget descBard if "discord" in descBard if showDiscordDebuffAsOverhead = 1 overhead "Already discorded" showDiscordDebuffAsOverheadColor myKillTarget endif elseif timer sCheck >= 5000 useskill 'Discordance' wft 500 if insysmsg "What instrument" if findtype "bamboo flute" backpack as inny target inny elseif findtype "tambourine" backpack as inny target inny elseif findtype "drum" backpack as inny target inny elseif findtype "lute" backpack as inny target inny elseif findtype "lap harp" backpack as inny target inny else overhead "I do not have an inny" 34 wait 2000 endif wft 500 endif if targetexists target myKillTarget wait 200 if insysmsg "you play success" settimer sCheck 0 elseif insysmsg "t incite that!" // bad target elseif insysmsg "You fail to" settimer sCheck 0 endif endif else overhead "Waiting for skill cooldown..." 88 endif endif if find myKillTarget ground -1 -1 10 and skill "Peacemaking" > 0 getlabel myKillTarget descBard if "pacified" in descBard if showPeaceDebuffAsOverhead = 1 overhead "Already peaced" showPeaceDebuffAsOverheadColor myKillTarget endif elseif timer sCheck >= 5000 useskill 'Peacemaking' wft 500 if insysmsg "What instrument" if findtype "bamboo flute" backpack as inny target inny elseif findtype "tambourine" backpack as inny target inny elseif findtype "drum" backpack as inny target inny elseif findtype "lute" backpack as inny target inny elseif findtype "lap harp" backpack as inny target inny else overhead "I do not have an inny" 34 wait 2000 endif wft 500 endif if targetexists target myKillTarget wait 200 if insysmsg "you play success" settimer sCheck 0 elseif insysmsg "t incite that!" // bad target elseif insysmsg "You fail to" settimer sCheck 0 endif endif else overhead "Waiting for skill cooldown..." 88 endif endif if skill "Discordance" > 0 if not findbuff "song of discordance" and timer sCheck >= 11000 useskill 'Discordance' wft 500 target backpack settimer sCheck 0 endif endif if skill "Provocation" > 0 if not findbuff "song of provocation" and timer sCheck >= 11000 useskill 'Provocation' wft 500 target backpack settimer sCheck 0 endif endif if skill "Peacemaking" > 0 if not findbuff "song of peacemaking" and timer sCheck >= 11000 useskill 'Peacemaking' wft 500 target backpack settimer sCheck 0 endif endif wait 200 endwhile while dead overhead "Rip" 34 if gumpexists 2957810225 gumpresponse 1 2957810225 break endif wait 500 endwhile replay