poison necro mage summoner 1 button v1.1 ( work in progress ) by stoned summoner

//One hotkey necro mage cycle by Jaseowns //edited by stoned summoner. any problems are probly my fault not jase's =) //UO Outlands - https://youtu.be/K3bVPhHcInE //v1.1 added bless to buffs //v1.1 added protection spell //v1.1 added poison strike between fs and meditate. mabey a poison tick check would be better //v1.1 added a check for deadly and lethal poison. to move onto cds before dumping mana on poison //v1.1 added food buff check and eat //v1.1 added item id buff check and use. targets someplace... gets blocked once in awhile... gotta fix that //v1.1 # Update this variable to 1 for ALL KILL # Update this variable to 0 for target nearest @setvar! setThisAsOneIfYouWantToTargetYourOwnKillOrItWillTargetClosestMonster 0 // these cd are your wizard book timers. they could be different than mine @setvar! cdLightning 20000 @setvar! cdMagicArrow 20000 @setvar! cdHarm 20000 @setvar! cdFireball 20000 @setvar! cdMushroom 60000 // cd below should not need to change @setvar! cdEvilOmen 30000 @setvar! cdVampiricEmbrace 30000 @setvar! cdCorpse 30000 @setvar! cdMindRot 30000 @setvar! cdMagicShield 60000 @setvar! cdReactiveArmor 60000 @setvar! cdstrike 30000 @setvar! cdoath 30000 if not timerexists oathTimer createtimer oathTimer settimer oathTimer cdoath endif if not timerexists strikeTimer createtimer strikeTimer settimer strikeTimer cdstrike endif if not timerexists reactiveArmorTimer createtimer reactiveArmorTimer settimer reactiveArmorTimer cdMagicShield endif if not timerexists magicShieldTimer createtimer magicShieldTimer settimer magicShieldTimer cdMagicShield endif if not timerexists magicMushroomTimer createtimer magicMushroomTimer settimer magicMushroomTimer cdMushroom endif if not timerexists magicArrowTimer createtimer magicArrowTimer settimer magicArrowTimer cdMagicArrow endif if not timerexists lightningTimer createtimer lightningTimer settimer lightningTimer cdLightning endif if not timerexists harmTimer createtimer harmTimer settimer harmTimer cdHarm endif if not timerexists fireballTimer createtimer fireballTimer settimer fireballTimer cdFireball endif if not timerexists evilOmenTimer createtimer evilOmenTimer settimer evilOmenTimer cdEvilOmen endif if not timerexists vampiricEmbraceTimer createtimer vampiricEmbraceTimer settimer vampiricEmbraceTimer cdVampiricEmbrace endif if not timerexists corpseTimer createtimer corpseTimer settimer corpseTimer cdCorpse endif if not timerexists mindRotTimer createtimer mindRotTimer settimer mindRotTimer cdMindRot endif // check for item id buff if not findbuff 'herbal poultice' and skill 'tasteidentification' >= 100 skill 'tasteidentification' waitfortarget targettype 'backpack' wait 50 endif // check for food buff if not findbuff 'food satisfaction' and findtype 'tray' backpack overhead '[ Eating Food ]' 54 dclicktype 'tray' backpack wait 50 endif // check for tank pet change name to ur pets name if findtype "shield" ground -1 -1 2 as myPet if noto myPet = "friend" wait 50 endif @setvar! myEarthPet myPet endif say "all guard me" ## endif if setThisAsOneIfYouWantToTargetYourOwnKillOrItWillTargetClosestMonster = 1 say "all kill" wait 200 while targetexists // wait wait 50 endwhile else hotkey 'Target Closest Non-Friendly Monster' wait 200 if insysmsg "No one matching that was found" or insysmsg "cannot be seen" overhead "[ Target Not Found ]" 54 stop endif endif @setvar myKillTarget lasttarget if not varexist myPreviousKillTarget @setvar myPreviousKillTarget 0 endif getlabel myKillTarget desc if not varexist myEarthPet or dead myEarthPet overhead "[ Dead Pet ]" 54 else menu myEarthPet 2 wft 500 target myKillTarget endif if diffhits >= 30 and mana > 12 while not targetexists if diffhits >= 60 cast 'Heal' else cast 'Greater Heal' endif wait 50 if hp = maxhp hotkey '> Interrupt' break endif endwhile if targetexists target self endif endif if find myKillTarget -1 -1 12 as killy if myKillTarget = myPreviousKillTarget // do nthoing else while not targetexists and not dead myKillTarget if diffhits < 30 cast 'Curse' wait 50 elseif diffhits >= 30 hotkey '> Interrupt' break endif endwhile if targetexists target myKillTarget wait 500 endif while not targetexists and not dead myKillTarget if diffhits < 30 cast 'mana drain' wait 50 elseif diffhits >= 30 hotkey '> Interrupt' break endif endwhile if targetexists target myKillTarget wait 500 endif @setvar myPreviousKillTarget myKillTarget endif else overhead "[ Out of range ]" 54 endif clearsysmsg say "all guard" @setvar! poisonlevel 0 while not dead myKillTarget and find myKillTarget -1 -1 12 as killy // spellbook check if findlayer self righthand as item // do nothing elseif findtype "3834" backpack as item dclick item else overhead "[ No Book Equiped ]" 34 endif if not findbuff 'strength' cast 'bless' waitfortarget target self wait 200 endif if not findbuff 'protection' cast 'protection' wait 200 endif if timer magicShieldTimer >= cdMagicShield and not findbuff "Magic Reflection" cast "Magic Reflection" wait 1000 elseif not findbuff "Magic Reflection" and not findbuff "Magic Resist Potion" and findtype "Black Potion" backpack as pot dclick pot wait 200 endif if findbuff "Magic Reflection" settimer magicShieldTimer 0 endif if timer reactiveArmorTimer >= cdReactiveArmor and not findbuff "Reactive Armor" cast "Reactive Armor" wait 200 endif if findbuff "Reactive Armor" settimer reactiveArmorTimer 0 endif if timer corpseTimer >= cdCorpse and skill 'necromancy' >= 100 overhead "[ Corpse Skin ]" 54 say "[CorpseSkin" settimer corpseTimer 0 wait 750 endif if skill "poisoning" >= 100 if timer evilOmenTimer >= cdEvilOmen and skill 'necromancy' >= 100 overhead '[ Evil Omen ]' 54 say "[evilomen" settimer evilOmenTimer 0 wait 750 endif if timer mindRotTimer >= cdMindRot and skill 'necromancy' >= 100 overhead '[ Mind Rot ]' 54 say '[mindrot' settimer mindRotTimer 0 wait 750 endif while poisonlevel = 0 getlabel myKillTarget desc2 overhead desc2 66 // poison lethal if "Lethal" in desc2 or "Deadly" in desc2 @setvar! poisonlevel 1 break elseif diffhits >= 30 // need a heal break elseif mana >= 9 while not targetexists cast 'poison' wait 50 if dead myKillTarget hotkey '> Interrupt' break endif endwhile target myKillTarget else wait 200 endif endwhile endif if find myKillTarget -1 -1 12 as killy // do nothing else overhead "[ Out of range] " 54 break endif if poisoned if findtype "Orange Potion" backpack as pot dclick pot wait 200 else while not targetexists if not poisoned hotkey '> Interrupt' break else cast 'Cure' wait 50 endif endwhile if targetexists target self wait 500 endif endif endif if diffhits < 30 and timer evilOmenTimer >= cdEvilOmen and skill 'necromancy' >= 100 overhead '[ Evil Omen ]' 54 say '[evilomen' settimer evilOmenTimer 0 wait 650 endif if diffhits < 30 and timer mindRotTimer >= cdMindRot and skill 'necromancy' >= 100 overhead '[ Mind Rot ]' 54 say '[mindrot' settimer mindRotTimer 0 wait 750 endif if diffhits < 30 and timer corpseTimer >= cdCorpse and skill 'necromancy' >= 100 overhead "[ Corpse Skin ]" 54 say "[CorpseSkin" settimer corpseTimer 0 wait 750 endif if diffhits < 30 and mana >= 12 and timer lightningTimer >= cdLightning while not targetexists if dead myKillTarget or diffhits >= 30 hotkey '> Interrupt' break else cast 'Lightning' wait 50 endif endwhile if targetexists target myKillTarget settimer lightningTimer 0 wait 500 endif endif if diffhits < 30 and mana >= 12 and timer fireballTimer >= cdFireball while not targetexists if dead myKillTarget or diffhits >= 30 hotkey '> Interrupt' break else cast 'fireball' wait 50 endif endwhile if targetexists target myKillTarget settimer fireballTimer 0 wait 500 endif endif if diffhits < 30 and mana >= 5 and timer magicArrowTimer >= cdMagicArrow while not targetexists if dead myKillTarget or diffhits >= 30 hotkey '> Interrupt' break else cast 'magic arrow' wait 50 endif endwhile if targetexists target myKillTarget settimer magicArrowTimer 0 wait 500 endif endif if diffhits < 30 and mana >= 9 and timer harmTimer >= cdHarm while not targetexists if dead myKillTarget or diffhits >= 30 hotkey '> Interrupt' break else cast 'harm' wait 50 endif endwhile if targetexists target myKillTarget settimer harmTimer 0 wait 500 endif endif if diffhits >= 30 if findtype "Yellow Potion" backpack as pot getlabel pot desc if "next usable" in desc // do nothing else overhead '[ Drinking Heal ]' 54 dclick pot wait 200 endif endif if diffhits >= 30 and mana >= 12 while not targetexists if diffhits >= 60 cast 'Heal' else cast 'Greater Heal' endif wait 50 if hp = maxhp hotkey '> Interrupt' break endif endwhile if targetexists target self wait 50 endif endif if skill 'poisoning' >= 100 while poisonlevel = 1 getlabel myKillTarget desc2 overhead desc2 66 if "Lethal" in desc2 @setvar! poisonlevel 2 break elseif diffhits >= 30 // need a heal break elseif mana >= 9 while not targetexists cast 'poison' wait 50 if dead myKillTarget hotkey '> Interrupt' break endif endwhile target myKillTarget else wait 200 endif endwhile endif elseif mana < 42 and findbuff "actively meditating" // wait for mana elseif mana > 42 while not targetexists and mana > 40 if dead myKillTarget or diffhits >= 30 hotkey '> Interrupt' break else cast 'Flamestrike' wait 50 endif endwhile if targetexists target myKillTarget wait 500 endif elseif not findbuff 'actively meditating' and timer strikeTimer >= cdstrike overhead '[ Poison Strike ]' 54 say '[poisonstrike' waitfortarget target myKillTarget settimer strikeTimer 0 elseif not findbuff "actively meditating" and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy dclick mushy settimer magicMushroomTimer 0 elseif not findbuff "actively meditating" useskill 'meditation' wait 500 endif wait 50 endwhile wait 500 if targetexists hotkey 'Cancel Current Target' endif say "all guard me" if counttype "mushroom" backpack < 5 while counttype "mushroom" backpack < 5 cast "Create Food" wait 200 endwhile endif while mana < 50 if not findbuff "actively meditating" useskill 'meditation' endif wait 500 endwhile loop