using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace app { public static class Enums { public enum UnitType { Player = 0, NPC = 1, GameObject = 2, Missile = 3, Item = 4, Warp = 5, // Room tile ? Invalid = 6, NotApplicable = 0xff, } public enum UnitVisibility { Invalid = 0, // No longer valid OnScreen = 1, // Displayed on screen InSight = 2, // Visible to the character InProximity = 4, // In 2-4 screen range we get notified about } public enum Act { ActI = 0, ActII = 1, ActIII = 2, ActIV = 3, ActV = 4, } public static readonly Dictionary ActLevels = new Dictionary { {"ActI", 40}, {"ActII", 75}, {"ActIII", 103}, {"ActIV", 109}, {"ActV", 142}, }; /*public enum Diablo2Version { Classic = "Classic", Resurrected = 'Resurrected', PathOfDiablo = 'PathOfDiablo', ProjectDiablo2 = 'ProjectDiablo2', }*/ public enum WarpType { Act1WildernessToCaveCliffL = 0, Act1WildernessToCaveCliffR = 1, Act1WildernessToCaveFloorL = 2, Act1WildernessToCaveFloorR = 3, Act1CaveUp = 4, Act1CaveDown = 5, Act1GraveyardToCrypt1 = 6, Act1GraveyardToCrypt2 = 7, Act1CryptUp = 8, Act1CryptDown = 9, Act1WildernessToTower = 10, Act1TowerToWilderness = 11, Act1TowerToCrypt = 12, Act1JailUp = 13, Act1JailDown = 14, Act1CathedralToCatacombs = 15, Act1CatacombsToCathedral = 16, Act1CatacombsUp = 17, Act1CatacombsDown = 18, Act2TownToSewerTrap = 19, Act2TownToSewerDock = 20, Act2SewerDockToTown = 21, Act2SewerUp = 22, Act2SewerDown = 23, Act2TownToHarem = 24, Act2HaremToTown = 25, Act2HaremUp1 = 26, Act2HaremUp2 = 27, Act2HaremDown1 = 28, Act2HaremDown2 = 29, Act2BasementUp1 = 30, Act2BasementUp2 = 31, Act2BasementDown = 32, Act2DesertToTombL1 = 33, Act2DesertToTombL2 = 34, Act2DesertToTombR1 = 35, Act2DesertToTombR2 = 36, Act2DesertToTombViper = 37, Act2DesertToTombTal1 = 38, Act2DesertToTombTal2 = 39, Act2DesertToTombTal3 = 40, Act2DesertToTombTal4 = 41, Act2DesertToTombTal5 = 42, Act2DesertToTombTal6 = 43, Act2DesertToTombTal7 = 44, Act2TombUp = 45, Act2TombDown = 46, Act2DesertToLair = 47, Act2LairUp = 48, Act2LairDown = 49, Act2DesertToSewerTrap = 50, Act3JungleToSpider = 51, Act3SpiderToJungle = 52, Act3JungleToDungeonFort = 53, Act3JungleToDungeonHole = 54, Act3DungeonUp = 55, Act3DungeonDown = 56, Act3KurastToSewer = 57, Act3SewerUpL = 58, Act3SewerUpR = 59, Act3SewerDown = 60, Act3KurastToTemple = 61, Act3TempleUpL = 62, Act3TempleUpR = 63, Act3TravincalToMephisto = 64, Act3MephistoUpL = 65, Act3MephistoUpR = 66, Act3MephistoDownL = 67, Act3MephistoDownR = 68, Act4MesaToLava = 69, Act4LavaToMesa = 70, //Expansion, Act5BarricadeDownWall = 71, Act5BarricadeDownFloor = 72, Act5IceCavesUp = 73, Act5IceCavesDown = 74, Act5IceCavesDownFloor = 75, Act5TempleEntrance = 76, Act5TempleDown = 77, Act5TempleUp = 78, Act5MountainTopToIce = 79, Act5MountainTopToBaal = 80, Act5BaalTempleUp = 81, Act5BaalTempleDown = 82, } public enum PlayerClass { Amazon = 0, Sorceress = 1, Necromancer = 2, Paladin = 3, Barbarian = 4, Druid = 5, Assassin = 6, } public enum NpcFlag { None = 0, SuperUnique = 1 << 1, Champion = 1 << 2, Unique = 1 << 3, Minion = 1 << 4, Possessed = 1 << 5, Ghostly = 1 << 6, Multishot = 1 << 7, } /** Extra skills NPC's can have */ public enum NpcEnchant { RandomName = 1, None = 0, Strong = 5, Fast = 6, Cursed = 7, MagicResist = 8, Fire = 9, Lightning = 17, Cold = 18, ManaBurn = 25, Teleport = 26, Spectral = 27, StoneSkin = 28, MultiShot = 29, Aura = 30, Quest = 22, Ai = 34, } public enum ItemActionType { AddToGround = 0, GroundToCursor = 1, // only sent if item goes to cursor (GS packet 0x0A removes item from ground) DropToGround = 2, OnGround = 3, PutInContainer = 4, RemoveFromContainer = 5, Equip = 6, /** *Sent for the equipped item when changing from a two handed weapon to a single handed weapon or vice versa. *The item must be equiped on the "empty" hand or a regular SwapBodyItem will be sent instead. *Empty hand meaning left hand if currently wearing a two handed weapon or the empty hand if wearing a single hand item. *The result will be the new item being equipped and the old going to cursor. */ IndirectlySwapBodyItem = 7, UnEquip = 8, SwapBodyItem = 9, AddQuantity = 0x0a, AddToShop = 0x0b, RemoveFromShop = 0x0c, SwapInContainer = 0x0d, PutInBelt = 0x0e, RemoveFromBelt = 0x0f, SwapInBelt = 0x10, /** *Sent for the secondary hand's item going to inventory when changing from a dual item setup to a two handed weapon. */ AutoUnEquip = 0x11, RemoveFromHireling = 0x12, // sent along with a 9d 08 packet... Also Item on cursor when entering game ?? MiscToCursor?? ItemInSocket = 0x13, Unknown1 = 0x14, UpdateStats = 0x15, // put item in socket; for each potion that drops in belt when lower one is removed... Unknown2 = 0x16, WeaponSwitch = 0x17, Unknown3 = 129, Unknown4 = 130, } public enum ItemCategory { Helm = 0, Armor = 1, /** Most weapons, including Crossbows */ Weapon = 5, /** Bows (not crossbows), sometimes shield (if equipped in LeftHand?) */ Weapon2 = 6, /** Shields can some sometimes be Weapon2... */ Shield = 7, Unknown8 = 8, /** Class specific items !? */ Special = 10, Unknown11 = 11, Unknown12 = 12, Unknown13 = 13, Unknown14 = 14, /** BaseMiscItems and gloves, boots... */ Misc = 16, } public enum ItemDestination { Unspecified = 0, Equipment = 1, Belt = 2, Ground = 3, Cursor = 4, Item = 6, } public enum ItemQuality { NotApplicable = 0, Inferior = 1, Normal = 2, Superior = 3, Magic = 4, Set = 5, Rare = 6, Unique = 7, Crafted = 8, } public enum ItemContainer { Equipment = 0x00, // Player or Merc Equipment Ground = 0x01, Inventory = 0x02, TraderOffer = 0x04, ForTrade = 0x06, Cube = 0x08, Stash = 0x0a, Belt = 0x0c, Item = 0x0e, ArmorTab = 0x82, WeaponTab1 = 0x84, WeaponTab2 = 0x86, MiscTab = 0x88, } public enum Attribute { Strength, Energy, Dexterity, Vitality, StatPointsRemaining, SkillPointsRemaining, Life, LifeMax, Mana, ManaMax, Stam, StamMax, CurrentLevel, Experience, GoldInPlayer, GoldInStash, EnhancedDefense, EnhancedDamageMax, EnhancedDamage, AttackRating, ChanceToBlock, MinDamage, MaxDamage, SecondMinDamage, SecMaxDamage, DamagePercent, ManaRecovery, ManaRecoveryBonus, StaminaRecoveryBonus, LastExp, NextExp, Defense, DefenseVsMissiles, DefenseVsHth, NormalDamageReduction, MagicDamageReduction, DamageReduced, MagicResist, MaxMagicResist, FireResist, MaxFireResist, LightningResist, MaxLightningResist, ColdResist, MaxColdResist, PoisonResist, MaxPoisonResist, DamageAura, FireMinDamage, FireMaxDamage, LightningMinDamage, LightningMaxDamage, MagicMinDamage, MagicMaxDamage, ColdMinDamage, ColdMaxDamage, ColdLength, PoisonMinDamage, PoisonMaxDamage, PoisonLength, LifeSteal, LifeStealMax, ManaSteal, ManaStealMax, StaminaDrainMinDamage, StaminaDrainMaxDamage, StunLength, VelocityPercent, AttackRate, OtherAnimRate, Quantity, Value, Durability, MaxDurability, HPRegen, MaxDurabilityPercent, MaxHPPercent, MaxManaPercent, AttackerTakesDamage, GoldFind, MagicFind, Knockback, TimeDuration, AddClassSkills, Unused84, AddExperience, HealAfterKill, ReducePrices, DoubleHerbDuration, LightRadius, LightColor, RequirementPercent, LevelRequire, IncreasedAttackSpeed, LevelRequirePercent, LastBlockFrame, FasterRunWalk, NonClassSkill, State, FasterHitRecovery, PlayerCount, PoisonOverrideLength, FasterBlockRate, BypassUndead, BypassDemons, FasterCastRate, BypassBeasts, SingleSkill, SlainMonstersRestInPeace, CurseResistance, PoisonLengthResist, NormalDamage, Howl, Stupidity, DamageTakenGoesToMana, IgnoreTargetsAR, FractionalTargetAC, PreventMonsterHeal, HalfFreezeDuration, AttackRatingPercent, DamageTargetAC, DemonDamagePercent, UndeadDamagePercent, DemonAttackRating, UndeadAttackRating, Throwable, ElemSkills, AllSkills, AttackerTakesLightDamage, IronMaidenLevel, LifeTapLevel, ThornsPercent, BoneArmor, BoneArmorMax, Freeze, OpenWounds, CrushingBlow, KickDamage, ManaAfterKill, HealAfterDemonKill, ExtraBlood, DeadlyStrike, AbsorbFirePercent, AbsorbFire, AbsorbLightningPercent, AbsorbLightning, AbsorbMagicPercent, AbsorbMagic, AbsorbColdPercent, AbsorbCold, Slow, Aura, Indestructible, CannotBeFrozen, StaminaDrainPercent, Reanimate, Pierce, MagicAarow, ExplosiveAarow, ThrowMinDamage, ThrowMaxDamage, SkillHandofAthena, SkillStaminaPercent, SkillPassiveStaminaPercent, SkillConcentration, SkillEnchant, SkillPierce, SkillConviction, SkillChillingArmor, SkillFrenzy, SkillDecrepify, SkillArmorPercent, Alignment, Target0, Target1, GoldLost, ConverisonLevel, ConverisonMaxHP, UnitDooverlay, AttackVsMonType, DamageVsMonType, Fade, ArmorOverridePercent, Unused183, Unused184, Unused185, Unused186, Unused187, AddSkillTab, Unused189, Unused190, Unused191, Unused192, Unused193, NumSockets, SkillOnAttack, SkillOnKill, SkillOnDeath, SkillOnHit, SkillOnLevelUp, Unused200, SkillOnGetHit, Unused202, Unused203, ItemChargedSkill, Unused205, Unused206, Unused207, Unused208, Unused209, Unused210, Unused211, Unused212, Unused213, ArmorPerLevel, ArmorPercentPerLevel, LifePerLevel, ManaPerLevel, MaxDamagePerLevel, MaxDamagePercentPerLevel, StrengthPerLevel, DexterityPerLevel, EnergyPerLevel, VitalityPerLevel, AttackRatingPerLevel, AttackRatingPercentPerLevel, ColdDamageMaxPerLevel, FireDamageMaxPerLevel, LightningDamageMaxPerLevel, PoisonDamageMaxPerLevel, ResistColdPerLevel, ResistFirePerLevel, ResistLightningPerLevel, ResistPoisonPerLevel, AbsorbColdPerLevel, AbsorbFirePerLevel, AbsorbLightningPerLevel, AbsorbPoisonPerLevel, ThornsPerLevel, FindGoldPerLevel, MagicFindPerLevel, RegenStaminaPerLevel, StaminaPerLevel, DamageDemonPerLevel, DamageUndeadPerLevel, AttackRatingDemonPerLevel, AttackRatingUndeadPerLevel, CrushingBlowPerLevel, OpenWoundsPerLevel, KickDamagePerLevel, DeadlyStrikePerLevel, FindGemsPerLevel, ReplenishDurability, ReplenishQuantity, ExtraStack, FindItem, SlashDamage, SlashDamagePercent, CrushDamage, CrushDamagePercent, ThrustDamage, ThrustDamagePercent, AbsorbSlash, AbsorbCrush, AbsorbThrust, AbsorbSlashPercent, AbsorbCrushPercent, AbsorbThrustPercent, ArmorByTime, ArmorPercentByTime, LifeByTime, ManaByTime, MaxDamageByTime, MaxDamagePercentByTime, StrengthByTime, DexterityByTime, EnergyByTime, VitalityByTime, AttackRatingByTime, AttackRatingPercentByTime, ColdDamageMaxByTime, FireDamageMaxByTime, LightningDamageMaxByTime, PoisonDamageMaxByTime, ResistColdByTime, ResistFireByTime, ResistLightningByTime, ResistPoisonByTime, AbsorbColdByTime, AbsorbFireByTime, AbsorbLightningByTime, AbsorbPoisonByTime, FindGoldByTime, MagicFindByTime, RegenStaminaByTime, StaminaByTime, DamageDemonByTime, DamageUndeadByTime, AttackRatingDemonByTime, AttackRatingUndeadByTime, CrushingBlowByTime, OpenWoundsByTime, KickDamageByTime, DeadlyStrikeByTime, FindGemsByTime, PierceCold, PierceFire, PierceLightning, PiercePoison, DamageVsMonster, DamagePercentVsMonster, AttackRatingVsMonster, AttackRatingPercentVsMonster, AcVsMonster, AcPercentVsMonster, FireLength, BurningMin, BurningMax, ProgressiveDamage, ProgressiveSteal, ProgressiveOther, ProgressiveFire, ProgressiveCold, ProgressiveLightning, ExtraCharges, ProgressiveAttackRating, PoisonCount, DamageFrameRate, PierceIdx, FireSkillDamage, LightningSkillDamage, ColdSkillDamage, PoisonSkillDamage, EnemyFireResist, EnemyLightningResist, EnemyColdResist, EnemyPoisonResist, PassiveCriticalStrike, PassiveDodge, PassiveAvoid, PassiveEvade, PassiveWarmth, PassiveMasteryMeleeAttackRating, PassiveMasteryMeleeDamage, PassiveMasteryMeleeCritical, PassiveMasteryThrowAttackRating, PassiveMasteryThrowDamage, PassiveMasteryThrowCritical, PassiveWeaponBlock, SummonResist, ModifierListSkill, ModifierListLevel, LastSentHPPercent, SourceUnitType, SourceUnitID, ShortParam1, QuestItemDifficulty, PassiveMagicMastery, PassiveMagicPierce, SkillCooldown, SkillMissileDamageScale, } public enum Difficulty { Normal = 0, Nightmare = 1, Hell = 2, } public enum GameObjectMode { Neutral, Operating, Opened, OnGround, InCursor, Dropping, Special4, Special5, } public enum GameObjectInteraction { GeneralObject = 0x00, // Stash, chests, etc. Well = 0x01, HealthShrine = 0x02, Unknown1 = 0x03, TrappedChest = 0x05, MonsterChest = 0x08, ManaShrine = 0x0d, StaminaShrine = 0x0e, ExperienceShrine = 0x0f, FireShrine = 0x13, Portal = 0x79, // Confirm... Pindle portal at least... red only ? LockedChest = 0x80, } public enum Area { Abaddon = 125, AncientTunnels = 65, ArcaneSanctuary = 74, ArreatPlateau = 112, ArreatSummit = 120, Barracks = 28, BlackMarsh = 6, BloodMoor = 2, BloodyFoothills = 110, BurialGrounds = 17, CanyonOfTheMagi = 46, CatacombsLevel1 = 34, CatacombsLevel2 = 35, CatacombsLevel3 = 36, CatacombsLevel4 = 37, Cathedral = 33, CaveLevel1 = 9, CaveLevel2 = 13, ChaosSanctuary = 108, CityOfTheDamned = 106, ClawViperTempleLevel1 = 58, ClawViperTempleLevel2 = 61, ColdPlains = 3, Crypt = 18, CrystallinePassage = 113, DarkWood = 5, DenOfEvil = 8, DisusedFane = 95, DisusedReliquary = 99, DrifterCavern = 116, DryHills = 42, DuranceOfHateLevel1 = 100, DuranceOfHateLevel2 = 101, DuranceOfHateLevel3 = 102, DurielsLair = 73, FarOasis = 43, FlayerDungeonLevel1 = 88, FlayerDungeonLevel2 = 89, FlayerDungeonLevel3 = 91, FlayerJungle = 78, ForgottenReliquary = 96, ForgottenSands = 134, ForgottenTemple = 97, ForgottenTower = 20, FrigidHighlands = 111, FrozenRiver = 114, FrozenTundra = 117, FurnaceOfPain = 135, GlacialTrail = 115, GreatMarsh = 77, HallsOfAnguish = 122, HallsOfPain = 123, HallsOfTheDeadLevel1 = 56, HallsOfTheDeadLevel2 = 57, HallsOfTheDeadLevel3 = 60, HallsOfVaught = 124, HaremLevel1 = 50, HaremLevel2 = 51, Harrogath = 109, HoleLevel1 = 11, HoleLevel2 = 15, IcyCellar = 119, InfernalPit = 127, InnerCloister = 32, JailLevel1 = 29, JailLevel2 = 30, JailLevel3 = 31, KurastBazaar = 80, KurastCauseway = 82, KurastDocks = 75, LostCity = 44, LowerKurast = 79, LutGholein = 40, MaggotLairLevel1 = 62, MaggotLairLevel2 = 63, MaggotLairLevel3 = 64, MatronsDen = 133, Mausoleum = 19, MonasteryGate = 26, MooMooFarm = 39, NihlathaksTemple = 121, None = 0, OuterCloister = 27, OuterSteppes = 104, PalaceCellarLevel1 = 52, PalaceCellarLevel2 = 53, PalaceCellarLevel3 = 54, PitLevel1 = 12, PitLevel2 = 16, PitOfAcheron = 126, PlainsOfDespair = 105, RiverOfFlame = 107, RockyWaste = 41, RogueEncampment = 1, RuinedFane = 98, RuinedTemple = 94, SewersLevel1Act2 = 47, SewersLevel1Act3 = 92, SewersLevel2Act2 = 48, SewersLevel2Act3 = 93, SewersLevel3Act2 = 49, SpiderCave = 84, SpiderCavern = 85, SpiderForest = 76, StonyField = 4, StonyTombLevel1 = 55, StonyTombLevel2 = 59, SwampyPitLevel1 = 86, SwampyPitLevel2 = 87, SwampyPitLevel3 = 90, TalRashasTomb1 = 66, TalRashasTomb2 = 67, TalRashasTomb3 = 68, TalRashasTomb4 = 69, TalRashasTomb5 = 70, TalRashasTomb6 = 71, TalRashasTomb7 = 72, TamoeHighland = 7, TheAncientsWay = 118, ThePandemoniumFortress = 103, TheWorldstoneChamber = 132, TheWorldStoneKeepLevel1 = 128, TheWorldStoneKeepLevel2 = 129, TheWorldStoneKeepLevel3 = 130, ThroneOfDestruction = 131, TowerCellarLevel1 = 21, TowerCellarLevel2 = 22, TowerCellarLevel3 = 23, TowerCellarLevel4 = 24, TowerCellarLevel5 = 25, Travincal = 83, Tristram = 38, UberTristram = 136, UndergroundPassageLevel1 = 10, UndergroundPassageLevel2 = 14, UpperKurast = 81, ValleyOfSnakes = 45, MapsAncientTemple = 137, MapsDesecratedTemple = 138, MapsFrigidPlateau = 139, MapsInfernalTrial = 140, MapsRuinedCitadel = 141 } public enum Skill { Attack = 0, Kick = 1, Jab = 10, ResistFire = 100, HolyBolt = 101, HolyFire = 102, Thorns = 103, Defiance = 104, ResistCold = 105, Zeal = 106, Charge = 107, BlessedAim = 108, Cleansing = 109, ColdArrow = 11, ResistLightning = 110, Vengeance = 111, BlessedHammer = 112, Concentration = 113, HolyFreeze = 114, Vigor = 115, Conversion = 116, HolyShield = 117, HolyShock = 118, Sanctuary = 119, Meditation = 120, FistOfTheHeavens = 121, Fanaticism = 122, Conviction = 123, Redemption = 124, Salvation = 125, Bash = 126, BladeMastery = 127, AxeMastery = 128, MaceMastery = 129, Dodge = 13, Howl = 130, FindPotion = 131, Leap = 132, DoubleSwing = 133, PoleArmMastery = 134, ThrowingMastery = 135, SpearMastery = 136, Taunt = 137, Shout = 138, Stun = 139, PowerStrike = 14, DoubleThrow = 140, IncreasedStamina = 141, FindItem = 142, LeapAttack = 143, Concentrate = 144, IronSkin = 145, BattleCry = 146, Frenzy = 147, IncreasedSpeed = 148, BattleOrders = 149, PoisonJavelin = 15, GrimWard = 150, Whirlwind = 151, Berserk = 152, NaturalResistance = 153, WarCry = 154, BattleCommand = 155, FireHit = 156, UnHolyBolt = 157, SkeletonRaise = 158, MaggotEgg = 159, ExplodingArrow = 16, ShamanFire = 160, MagottUp = 161, MagottDown = 162, MagottLay = 163, AndrialSpray = 164, Jump = 165, SwarmMove = 166, Nest = 167, QuickStrike = 168, VampireFireball = 169, SlowMissiles = 17, VampireFirewall = 170, VampireMeteor = 171, GargoyleTrap = 172, SpiderLay = 173, VampireHeal = 174, VampireRaise = 175, Submerge = 176, FetishAura = 177, FetishInferno = 178, ZakarumHeal = 179, Avoid = 18, Emerge = 180, Resurrect = 181, Bestow = 182, MissileSkill1 = 183, MonTeleport = 184, PrimeLightning = 185, PrimeBolt = 186, PrimeBlaze = 187, PrimeFirewall = 188, PrimeSpike = 189, Impale = 19, PrimeIceNova = 190, PrimePoisonball = 191, PrimePoisonNova = 192, DiabLight = 193, DiabCold = 194, DiabFire = 195, FingerMageSpider = 196, DiabWall = 197, DiabRun = 198, DiabPrison = 199, Throw = 2, LightningBolt = 20, PoisonBallTrap = 200, AndyPoisonBolt = 201, HireableMissile = 202, DesertTurret = 203, ArcaneTower = 204, MonBlizzard = 205, Mosquito = 206, CursedBallTrapRight = 207, CursedBallTrapLeft = 208, MonFrozenArmor = 209, IceArrow = 21, MonBoneArmor = 210, MonBoneSpirit = 211, MonCurseCast = 212, HellMeteor = 213, RegurgitatorEat = 214, MonFrenzy = 215, QueenDeath = 216, ScrollOfIdentify = 217, BookOfIdentify = 218, ScrollOfTownportal = 219, GuidedArrow = 22, BookOfTownportal = 220, Raven = 221, PoisonCreeper = 222, Werewolf = 223, Lycanthropy = 224, Firestorm = 225, OakSage = 226, SummonSpiritWolf = 227, Werebear = 228, Maul = 229, HandOfAthena = 23, SolarCreeper = 230, SpiritOfBarbs = 231, SummonGrizzly = 232, Fury = 233, Armageddon = 234, Hurricane = 235, FireTrauma = 236, ClawsOfThunder = 237, BladesOfIce = 238, DragonTalon = 239, FireClaws = 24, DragonTalonSentry = 240, ShockWave = 241, Bladeshield = 242, ChargedBoltSentry = 243, WakeOfFireSentry = 244, WakeOfInfernoSentry = 245, BladeFury = 246, Fade = 247, ShadowWarrior = 248, ClawMastery = 249, Inferno = 25, PsychicHammer = 250, TigerStrike = 251, DragonTalons = 252, ShockField = 253, BladeSentinel = 254, Quickness = 255, FadeLow = 256, ClawMasteryLow = 257, TigerStrikeLow = 258, DragonTalonsLow = 259, Blaze = 26, ShockWeb = 260, BladeFuryLow = 261, BurstOfSpeedLow = 262, HolyShockLow = 263, HolyFreezeLow = 264, HolyFireLow = 265, ThornsLow = 266, HolyShieldLow = 267, FistOfTheHeavensLow = 268, Prayer = 269, FireWall = 27, ResistFireLow = 270, ResistColdLow = 271, ResistLightningLow = 272, DefianceLow = 273, BlessedAimLow = 274, StunLow = 275, ZealLow = 276, ChargeLow = 277, BlessedHammerLow = 278, ConcentrationLow = 279, Warmth = 28, Enchant = 29, ColdBolt = 3, GolemMastery = 30, BoneArmor = 31, RaiseSkeleton = 32, DimVision = 33, Weaken = 34, PoisonExplosion = 35, BoneSpear = 36, BloodGolem = 37, Attract = 38, Decrepify = 39, BoneSpirit = 4, IronMaiden = 40, Terror = 41, BoneWall = 42, SummonMastery = 43, CorpseExplosion = 44, IronGolem = 45, LowerResistance = 46, PoisonNova = 47, BoneSpiritDecoy = 48, BonePrison = 49, MagicArrow = 5, Teeth = 50, BoneSpiritTeleport = 51, PoisonDagger = 52, CorpseFire = 53, Etherealize = 54, BoneArmorVortex = 55, BoneSpiritSeek = 56, PoisonExplosionCaster = 57, BoneSpiritCast = 58, BoneSpiritBuff = 59, FireArrow = 6, CorpseCycler = 60, ShadowWarriorSpawn = 61, PoisonArrow = 62, ColdArrowCaster = 63, MultipleShot = 64, Dodging = 65, PowerStrikeLeft = 66, PowerStrikeRight = 67, FireHitLeft = 68, FireHitRight = 69, InnerSight = 7, ChargeLeft = 70, ChargeRight = 71, BowDamage = 72, ThrowDamage = 73, PassiveResistCold = 74, PassiveResistFire = 75, PassiveResistLightning = 76, PassiveResistPoison = 77, PassiveDamageCold = 78, PassiveDamageFire = 79, CriticalStrike = 8, PassiveDamageLightning = 80, PassiveDamagePoison = 81, DodgeLeft = 82, DodgeRight = 83, EvadeLeft = 84, EvadeRight = 85, CriticalStrikeLeft = 86, CriticalStrikeRight = 87, CriticalStrikeLeftLow = 88, CriticalStrikeRightLow = 89, InTown = 9, FireArrowCaster = 90, InnerSightCaster = 91, CriticalStrikeCaster = 92, SpellMove = 93, PassivesMove = 94, ChargedStrike = 95, PlagueJavelin = 96, LightningStrike = 97, LightningStrikeLeft = 98, LightningStrikeRight = 99 } } }