[C#] Enigma.D3 menu

User Tag List

Page 2 of 63 FirstFirst 12345652 ... LastLast
Results 16 to 30 of 940
  1. #16
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Logikaljay View Post
    Has anyone experienced Engine.Current.ObjectManager becomming null randomly?

    My situation:
    I have a timer firing every 75 milliseconds, calculating the difference in 'Current Experience' to the old value of 'Current Experience'.
    It also gathers some character information, level, class, str, dex, int, vit, armor, health, etc etc.

    It will work fine for awhile, but after roughly 1-2 mins ObjectManager becomes null and it stops working.

    Weird bug I know, but kind of annoying!

    Any insight from people more skilled in this that me would be greatly appreciated.
    It is initialized during program start and finalized at program end, so it should NEVER change while running. However, I've noticed in the past that a bad read with ReadProcessMemory could cause subsequent reads to return invalid data. Maybe that could somehow be the reason... look for debug prints about bad memory reads.

    I have a "debugger" program that dumps on screen all fields for whatever object/objects I have chosen for it to show and I do this every 1 ms or as fast as it can manage. I've never experienced random issues with ObjectManager, at least not that I have noticed.

    [C#] Enigma.D3
  2. #17
    Logikaljay's Avatar Private
    Reputation
    1
    Join Date
    Apr 2014
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for the quick reply Engima,

    There were prints about ReadProcessMemory, I can't paste them at the moment because I am at work for the next 9 hours.

    Any idea what would cause this? what should I be checking before making a memory read to prevent these?

    Also further information, it happened after using the WayPoint to change the area, I am using "Enigma.D3.Helpers.WorldHelper.GetLocalWorld().x0C_Id" to get the id of the area I am in to match experience to that area, as the application was working flawlessly before implementing this area reading functionality, I assume it has something to do with this.

    I can provide full source via my private bitbucket repo if you would like to take a look.

    However to compile you will need SignalR and Redis.

    Edit: managed to remote in and get these messages from my home machine.
    ProcessMemory.Read(000000C4): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000C8 ): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000CC): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000D0): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000D4): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000D8 ): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000DC): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000E0): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000E4): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000E8 ): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000EC): Only part of a ReadProcessMemory or WriteProcessMemory request was completed
    ProcessMemory.Read(000000F0): Only part of a ReadProcessMemory or WriteProcessMemory request was completed

    This is happening and throwing an execption on the following line in the method GetLocalActor() for class ActorHelper
    line 17: var localPlayerData = objMgr.x7A8_Storage.x0E4_PlayerDataCollection.x0058_Items[localData.x34_LocalPlayerDataIndex - 1]

    NullReferenceException - objMgr is null.

    (ignore the space between 8 and ), silly icons.
    Last edited by Logikaljay; 04-08-2014 at 03:49 PM. Reason: Supplied console error messages.

  3. #18
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    When taking waypoint lots of things are reallocated and recreated, so it's very likely that a bad pointer is used during this process. I'm currently updating for new patch so I can't test anything yet, but I'll make sure to stress test the WorldHelper later

  4. #19
    Logikaljay's Avatar Private
    Reputation
    1
    Join Date
    Apr 2014
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by enigma32 View Post
    When taking waypoint lots of things are reallocated and recreated, so it's very likely that a bad pointer is used during this process. I'm currently updating for new patch so I can't test anything yet, but I'll make sure to stress test the WorldHelper later
    Awesome, well I eagerly await your next release - once again, thanks for your hard work!

  5. #20
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Released version for 2.0.4.23119!
    Engine.cs updated,
    Attributes updated,
    Minor adjustment to ObjectManager offsets (GameGlobals size changed).

    Didn't have much time for testing, please let me know if problems are found!

    Originally Posted by Logikaljay View Post
    Awesome, well I eagerly await your next release - once again, thanks for your hard work!
    Thank you for showing interest and appreciation It means a lot actually.

  6. #21
    tgo's Avatar Member
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    15
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Enigma thank you so much for keeping up with the updates.

  7. #22
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Logikaljay View Post
    Thanks for the quick reply Engima,

    There were prints about ReadProcessMemory, I can't paste them at the moment because I am at work for the next 9 hours.

    Any idea what would cause this? what should I be checking before making a memory read to prevent these?

    Also further information, it happened after using the WayPoint to change the area, I am using "Enigma.D3.Helpers.WorldHelper.GetLocalWorld().x0C_Id" to get the id of the area I am in to match experience to that area, as the application was working flawlessly before implementing this area reading functionality, I assume it has something to do with this.

    I can provide full source via my private bitbucket repo if you would like to take a look.

    However to compile you will need SignalR and Redis.

    This is happening and throwing an execption on the following line in the method GetLocalActor() for class ActorHelper
    line 17: var localPlayerData = objMgr.x7A8_Storage.x0E4_PlayerDataCollection.x0058_Items[localData.x34_LocalPlayerDataIndex - 1]

    NullReferenceException - objMgr is null.

    (ignore the space between 8 and ), silly icons.
    Hm, I tried stressing Enigma.D3.Helpers.WorldHelper.GetLocalWorld() a bit but I had no problems dumping all properties on it in a rapid pace while waypointing around all over the place.

    Are you experiencing this problem in multiplayer games perhaps? If not then maybe it might be worth a shot looking at the source. Don't have those services installed, but maybe source code alone is good enough to spark an idea.

  8. #23
    Logikaljay's Avatar Private
    Reputation
    1
    Join Date
    Apr 2014
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    It happens in single player games, I havent tried multiplayer.

    Last night I was able to change areas through waypoints and the map, ie: entering dungeons etc without ObjectManager becoming null.

    But then I leveled and BOOM ObjectManager was null and the process crashed.

    Here is the source, the main area you want to look at is Debug.cs, it gets called when the program is debugged through visual studio and not run as a service.
    https://github.com/logikaljay/TabletHUD

    If you do wish to compile and test, follow the instructions in the README.md, although you might be able to spot something without doing this.

    Everything is StyleCopped, some of the code is a bit wacky though lol!

    Cheers!

    Feel free to fork it and change whatever you like, strip redis out (shouldn't be difficult) and strip out signalR and just have it report to the console.

  9. #24
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Damn, why did I see this just before I was about to go to bed Seems like an interesting project, nice to see Enigma.D3 be used for something more creative than a bot ^^

    Program.CurrentActor and Program.CurrentACD only seems to be set once, then CharacterHub.OnConnected() which I assume doesn't happen that often. I guess the local actor could be recreated when teleporting, or maybe even when leveling up. That in turn could cause the initial bad memory reads which then screws up ReadProcessMemory.

    Maybe if you could get a stacktrace on the first read failure so we know where it all starts going wrong. If the problem isn't with outdated local actor+acd that is.

    A tip on area tracking is to instead use Engine.LevelArea.(x044_)SnoId and Engine.LevelAreaName, then you have the ID and name of what is shown above minimap Might be what you really want instead of world.

  10. #25
    Logikaljay's Avatar Private
    Reputation
    1
    Join Date
    Apr 2014
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Oh man you are a legend.

    Cheers! its still in its infancy at the moment, I have plans to make it display more and more information.
    a dream would be to implement the minimap on a HTML5 canvas, but thats a pipedream at the moment.

    Cheers for the pro tip, I did think it was a bit wrong that Northern and Southern highlands were reporting as the same area, but what you said makes a lot more sense hah.

    I am thinking about adding this in the TimerHandler above before getting Actor/ACD:

    if (Engine.Current == null || default(Engine)) {
    Engine = new Engine();
    // rebind ACD/Actor here.
    }

    Hopefully this will get around the issue as it will check if its null before attempting to access any memory.

    EDIT: this has been added to my master branch on github - will not be able to test it until tonight but big thanks to Engima.
    Last edited by Logikaljay; 04-09-2014 at 06:30 PM.

  11. #26
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I improved how attributes are read (fixes problems with precision losses and makes it easier to read 64-bit values). I have no solution yet for attributes using the modifier, such as when passing damage type or a skill ID. There are intermittently bad reads when having a tooltip up, I have especially noticed that during enchanting and viewing items on the ground. Why that is I'm not sure. I suspect it's affected by item comparison, but it doesn't seem to present when viewing tooltips on items in inventory. Anyways, enjoy:
    Code:
    using System;
    using Enigma.D3.Collections;
    using Enigma.D3.Enums;
    using Enigma.D3.Memory;
    
    namespace Enigma.D3.Helpers
    {
        public static class AttributeHelper
        {
            public static double GetAttributeValue(this ActorCommonData acd, AttributeId attribId, int modifier = -1)
            {
                var attribDef = Engine.Current.AttributeDescriptors[(int)attribId];
                if (attribDef == null)
                    throw new ArgumentOutOfRangeException("attribId");
    
    
                var valuePtr = GetAttributeValuePtr(acd, attribId, modifier);
                if (valuePtr == null)
                    return Int32OrSingleToDouble(attribDef.x04_DefaultValue, attribDef.x10_DataType == 1);
    
    
                return attribDef.x10_DataType == 1 ? valuePtr.Memory.Read<int>(valuePtr.Address) : valuePtr.Memory.Read<float>(valuePtr.Address);
            }
    
    
            internal static Pointer GetAttributeValuePtr(this ActorCommonData acd, AttributeId attribId, int modifier = -1)
            {
                int key = (modifier << 12) + ((int)attribId & 0xFFF);
                var groupId = acd.x120_FastAttribGroupId;
                var group = Engine.Current.ObjectManager.x798_Storage.x104_FastAttrib.x54_Groups[(short)groupId];
                if (group != null)
                {
                    Pointer ptrValue;
                    if (((group.x004_Flags & 4) != 0 && TryGetValue(group.x00C_PtrMap, key, out ptrValue)) ||
                        TryGetValue(group.x010_Map, key, out ptrValue))
                        return ptrValue;
                }
                return null;
            }
    
            private static bool TryGetValue(Map<int, Pointer> map, int key, out Pointer ptrValue)
            {
                if (map != null)
                {
                    var hash = key ^ (key >> 12);
                    var entry = map.x10_Data[map.x00_Mask & hash];
                    while (entry != null)
                    {
                        if (entry.x04_Key == key)
                        {
                            ptrValue = entry.x08_Value;
                            return true;
                        }
                        entry = entry.x00_Next;
                    }
                }
                ptrValue = null;
                return false;
            }
    
            private static double Int32OrSingleToDouble(int value, bool isInteger)
            {
                return isInteger ? value : BitConverter.ToSingle(BitConverter.GetBytes(value), 0);
            }
        }
    
        public abstract class Attribute<T> where T : struct
        {
            public abstract T GetValue(ActorCommonData acd);
        }
    
        public static partial class Attributes
        {
            internal class ComplexAttribute : Attribute<ulong>
            {
                private readonly AttributeId _highAttributeId;
                private readonly uint _highDefaultValue;
                private readonly AttributeId _lowAttributeId;
                private readonly uint _lowDefaultValue;
    
                public ComplexAttribute(AttributeId highAttributeId, uint highDefaultValue, AttributeId lowAttributeId, uint lowDefaultValue)
                {
                    _highAttributeId = highAttributeId;
                    _highDefaultValue = highDefaultValue;
                    _lowAttributeId = lowAttributeId;
                    _lowDefaultValue = lowDefaultValue;
                }
    
                public override ulong GetValue(ActorCommonData acd)
                {
                    var highPtr = acd.GetAttributeValuePtr(_highAttributeId, -1);
                    var lowPtr = acd.GetAttributeValuePtr(_lowAttributeId, -1);
                    var high = highPtr == null ? _highDefaultValue : highPtr.Read<uint>();
                    var low = lowPtr == null ? _lowDefaultValue : lowPtr.Read<uint>();
                    return ((ulong)high << 32) | low;
                }
            }
    
            internal class SimpleAttribute<T> : Attribute<T> where T : struct
            {
                private readonly AttributeId _attributeId;
                private readonly T _defaultValue;
    
                public SimpleAttribute(int attributeId, T defaultValue)
                    : this((AttributeId)attributeId, defaultValue) { }
    
                public SimpleAttribute(AttributeId attributeId, T defaultValue)
                {
                    _attributeId = attributeId;
                    _defaultValue = defaultValue;
                }
    
                public override T GetValue(ActorCommonData acd)
                {
                    var valuePtr = acd.GetAttributeValuePtr(_attributeId);
                    if (valuePtr == null)
                    {
                        return _defaultValue;
                    }
                    return valuePtr.Read<T>();
                }
            }
        }
    
        public static partial class Attributes
        {
            public static Attribute<float> AxeBadData = new SimpleAttribute<float>(AttributeId.AxeBadData, 0);
            public static Attribute<int> AttributeTimer = new SimpleAttribute<int>(AttributeId.AttributeTimer, 0);
            public static Attribute<int> AttributePool = new SimpleAttribute<int>(AttributeId.AttributePool, 0);
            public static Attribute<int> DeathCount = new SimpleAttribute<int>(AttributeId.DeathCount, 0);
            public static Attribute<int> DualWieldHand = new SimpleAttribute<int>(AttributeId.DualWieldHand, 0);
            public static Attribute<int> DualWieldHandNext = new SimpleAttribute<int>(AttributeId.DualWieldHandNext, 0);
            public static Attribute<int> DualWieldHandsSwapped = new SimpleAttribute<int>(AttributeId.DualWieldHandsSwapped, 0);
            public static Attribute<int> RespawnGameTime = new SimpleAttribute<int>(AttributeId.RespawnGameTime, 0);
            public static Attribute<int> BackpackSlots = new SimpleAttribute<int>(AttributeId.BackpackSlots, 0);
            public static Attribute<int> SharedStashSlots = new SimpleAttribute<int>(AttributeId.SharedStashSlots, 0);
            public static Attribute<float> Strength = new SimpleAttribute<float>(AttributeId.Strength, 0);
            public static Attribute<float> Dexterity = new SimpleAttribute<float>(AttributeId.Dexterity, 0);
            public static Attribute<float> Intelligence = new SimpleAttribute<float>(AttributeId.Intelligence, 0);
            public static Attribute<float> Vitality = new SimpleAttribute<float>(AttributeId.Vitality, 0);
            public static Attribute<float> StrengthTotal = new SimpleAttribute<float>(AttributeId.StrengthTotal, 0);
            public static Attribute<float> DexterityTotal = new SimpleAttribute<float>(AttributeId.DexterityTotal, 0);
            public static Attribute<float> IntelligenceTotal = new SimpleAttribute<float>(AttributeId.IntelligenceTotal, 0);
            public static Attribute<float> VitalityTotal = new SimpleAttribute<float>(AttributeId.VitalityTotal, 0);
            public static Attribute<float> StrengthBonus = new SimpleAttribute<float>(AttributeId.StrengthBonus, 0);
            public static Attribute<float> DexterityBonus = new SimpleAttribute<float>(AttributeId.DexterityBonus, 0);
            public static Attribute<float> IntelligenceBonus = new SimpleAttribute<float>(AttributeId.IntelligenceBonus, 0);
            public static Attribute<float> VitalityBonus = new SimpleAttribute<float>(AttributeId.VitalityBonus, 0);
            public static Attribute<float> StrengthBonusPercent = new SimpleAttribute<float>(AttributeId.StrengthBonusPercent, 0);
            public static Attribute<float> DexterityBonusPercent = new SimpleAttribute<float>(AttributeId.DexterityBonusPercent, 0);
            public static Attribute<float> IntelligenceBonusPercent = new SimpleAttribute<float>(AttributeId.IntelligenceBonusPercent, 0);
            public static Attribute<float> VitalityBonusPercent = new SimpleAttribute<float>(AttributeId.VitalityBonusPercent, 0);
            public static Attribute<float> StrengthReductionPercent = new SimpleAttribute<float>(AttributeId.StrengthReductionPercent, 0);
            public static Attribute<float> DexterityReductionPercent = new SimpleAttribute<float>(AttributeId.DexterityReductionPercent, 0);
            public static Attribute<float> IntelligenceReductionPercent = new SimpleAttribute<float>(AttributeId.IntelligenceReductionPercent, 0);
            public static Attribute<float> VitalityReductionPercent = new SimpleAttribute<float>(AttributeId.VitalityReductionPercent, 0);
            public static Attribute<int> PrimaryDamageAttribute = new SimpleAttribute<int>(AttributeId.PrimaryDamageAttribute, -1);
            public static Attribute<float> Armor = new SimpleAttribute<float>(AttributeId.Armor, 0);
            public static Attribute<float> ArmorBonusPercent = new SimpleAttribute<float>(AttributeId.ArmorBonusPercent, 0);
            public static Attribute<float> ArmorItem = new SimpleAttribute<float>(AttributeId.ArmorItem, 0);
            public static Attribute<float> ArmorBonusItem = new SimpleAttribute<float>(AttributeId.ArmorBonusItem, 0);
            public static Attribute<float> ArmorItemPercent = new SimpleAttribute<float>(AttributeId.ArmorItemPercent, 0);
            public static Attribute<float> ArmorItemSubTotal = new SimpleAttribute<float>(AttributeId.ArmorItemSubTotal, 0);
            public static Attribute<float> ArmorItemTotal = new SimpleAttribute<float>(AttributeId.ArmorItemTotal, 0);
            public static Attribute<float> ArmorTotal = new SimpleAttribute<float>(AttributeId.ArmorTotal, 0);
            public static Attribute<int> ExperienceGranted = new SimpleAttribute<int>(AttributeId.ExperienceGranted, 0);
            public static Attribute<int> ExperienceNextHi = new SimpleAttribute<int>(AttributeId.ExperienceNextHi, 0);
            public static Attribute<int> ExperienceNextLo = new SimpleAttribute<int>(AttributeId.ExperienceNextLo, 0);
            public static Attribute<ulong> ExperienceNext = new ComplexAttribute(AttributeId.ExperienceNextHi, 0, AttributeId.ExperienceNextLo, 0);
            public static Attribute<int> AltExperienceNextHi = new SimpleAttribute<int>(AttributeId.AltExperienceNextHi, 0);
            public static Attribute<int> AltExperienceNextLo = new SimpleAttribute<int>(AttributeId.AltExperienceNextLo, 0);
            public static Attribute<ulong> AltExperienceNext = new ComplexAttribute(AttributeId.AltExperienceNextHi, 0, AttributeId.AltExperienceNextLo, 0);
            public static Attribute<int> RestExperienceHi = new SimpleAttribute<int>(AttributeId.RestExperienceHi, 0);
            public static Attribute<int> RestExperienceLo = new SimpleAttribute<int>(AttributeId.RestExperienceLo, 0);
            public static Attribute<ulong> RestExperience = new ComplexAttribute(AttributeId.RestExperienceHi, 0, AttributeId.RestExperienceLo, 0);
            public static Attribute<float> RestExperienceBonusPercent = new SimpleAttribute<float>(AttributeId.RestExperienceBonusPercent, 0);
            public static Attribute<int> GoldGranted = new SimpleAttribute<int>(AttributeId.GoldGranted, 0);
            public static Attribute<int> Gold = new SimpleAttribute<int>(AttributeId.Gold, 0);
            public static Attribute<float> GoldFind = new SimpleAttribute<float>(AttributeId.GoldFind, 0);
            public static Attribute<float> GoldFindUncapped = new SimpleAttribute<float>(AttributeId.GoldFindUncapped, 0);
            public static Attribute<float> GoldFindHandicap = new SimpleAttribute<float>(AttributeId.GoldFindHandicap, 0);
            public static Attribute<float> GoldFindAltLevelsTotal = new SimpleAttribute<float>(AttributeId.GoldFindAltLevelsTotal, 0);
            public static Attribute<float> GoldFindCappedSubtotal = new SimpleAttribute<float>(AttributeId.GoldFindCappedSubtotal, 0);
            public static Attribute<float> GoldFindTotal = new SimpleAttribute<float>(AttributeId.GoldFindTotal, 0);
            public static Attribute<int> Level = new SimpleAttribute<int>(AttributeId.Level, 0);
            public static Attribute<int> LevelCap = new SimpleAttribute<int>(AttributeId.LevelCap, 0);
            public static Attribute<int> AltLevel = new SimpleAttribute<int>(AttributeId.AltLevel, 0);
            public static Attribute<float> MagicFind = new SimpleAttribute<float>(AttributeId.MagicFind, 0);
            public static Attribute<float> MagicFindUncapped = new SimpleAttribute<float>(AttributeId.MagicFindUncapped, 0);
            public static Attribute<float> MagicFindHandicap = new SimpleAttribute<float>(AttributeId.MagicFindHandicap, 0);
            public static Attribute<float> MagicFindAltLevelsTotal = new SimpleAttribute<float>(AttributeId.MagicFindAltLevelsTotal, 0);
            public static Attribute<float> MagicFindCappedSubtotal = new SimpleAttribute<float>(AttributeId.MagicFindCappedSubtotal, 0);
            public static Attribute<float> MagicFindTotal = new SimpleAttribute<float>(AttributeId.MagicFindTotal, 0);
            public static Attribute<int> MagicAndGoldFindSuppressed = new SimpleAttribute<int>(AttributeId.MagicAndGoldFindSuppressed, 0);
            public static Attribute<float> TreasureFind = new SimpleAttribute<float>(AttributeId.TreasureFind, 0);
            public static Attribute<int> ResourceCostReductionAmount = new SimpleAttribute<int>(AttributeId.ResourceCostReductionAmount, 0);
            public static Attribute<float> ResourceCostReductionTotal = new SimpleAttribute<float>(AttributeId.ResourceCostReductionTotal, 0);
            public static Attribute<float> ResourceSetPointBonus = new SimpleAttribute<float>(AttributeId.ResourceSetPointBonus, 0);
            public static Attribute<float> FasterHealingPercent = new SimpleAttribute<float>(AttributeId.FasterHealingPercent, 0);
            public static Attribute<float> SpendingResourceHealsPercent = new SimpleAttribute<float>(AttributeId.SpendingResourceHealsPercent, 0);
            public static Attribute<float> BonusHealingReceivedPercent = new SimpleAttribute<float>(AttributeId.BonusHealingReceivedPercent, 0);
            public static Attribute<float> ReducedHealingReceivedPercent = new SimpleAttribute<float>(AttributeId.ReducedHealingReceivedPercent, 0);
            public static Attribute<int> HealingWellRestoresResource = new SimpleAttribute<int>(AttributeId.HealingWellRestoresResource, 0);
            public static Attribute<float> ExperienceBonus = new SimpleAttribute<float>(AttributeId.ExperienceBonus, 0);
            public static Attribute<float> ExperienceBonusPercent = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercent, 0);
            public static Attribute<float> ExperienceBonusPercentHandicap = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentHandicap, 0);
            public static Attribute<float> ExperienceBonusPercentTotal = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentTotal, 0);
            public static Attribute<float> HealthGlobeBonusChance = new SimpleAttribute<float>(AttributeId.HealthGlobeBonusChance, 0);
            public static Attribute<float> HealthGlobeBonusMultChance = new SimpleAttribute<float>(AttributeId.HealthGlobeBonusMultChance, 0);
            public static Attribute<float> PowerupGlobeBonusChance = new SimpleAttribute<float>(AttributeId.PowerupGlobeBonusChance, 0);
            public static Attribute<float> PowerupGlobeBonusMultChance = new SimpleAttribute<float>(AttributeId.PowerupGlobeBonusMultChance, 0);
            public static Attribute<float> HealthGlobeBonusHealth = new SimpleAttribute<float>(AttributeId.HealthGlobeBonusHealth, 0);
            public static Attribute<float> IncreasedHealthFromGlobesPercent = new SimpleAttribute<float>(AttributeId.IncreasedHealthFromGlobesPercent, 0);
            public static Attribute<float> IncreasedHealthFromGlobesPercentTotal = new SimpleAttribute<float>(AttributeId.IncreasedHealthFromGlobesPercentTotal, 0);
            public static Attribute<float> BonusHealthPercentPerSecondFromGlobes = new SimpleAttribute<float>(AttributeId.BonusHealthPercentPerSecondFromGlobes, 0);
            public static Attribute<float> BonusHealthPercentPerSecondFromGlobesTotal = new SimpleAttribute<float>(AttributeId.BonusHealthPercentPerSecondFromGlobesTotal, 0);
            public static Attribute<float> ManaGainedFromGlobesPercent = new SimpleAttribute<float>(AttributeId.ManaGainedFromGlobesPercent, 0);
            public static Attribute<float> ManaGainedFromGlobes = new SimpleAttribute<float>(AttributeId.ManaGainedFromGlobes, 0);
            public static Attribute<float> Resistance = new SimpleAttribute<float>(AttributeId.Resistance, 0);
            public static Attribute<float> ResistancePercent = new SimpleAttribute<float>(AttributeId.ResistancePercent, 0);
            public static Attribute<float> ResistanceTotal = new SimpleAttribute<float>(AttributeId.ResistanceTotal, 0);
            public static Attribute<float> ResistanceAll = new SimpleAttribute<float>(AttributeId.ResistanceAll, 0);
            public static Attribute<float> ResistancePercentAll = new SimpleAttribute<float>(AttributeId.ResistancePercentAll, 0);
            public static Attribute<float> ResistanceFromIntelligence = new SimpleAttribute<float>(AttributeId.ResistanceFromIntelligence, 0);
            public static Attribute<float> ClassDamageReductionPercent = new SimpleAttribute<float>(AttributeId.ClassDamageReductionPercent, 0);
            public static Attribute<int> Skill = new SimpleAttribute<int>(AttributeId.Skill, 0);
            public static Attribute<int> SkillTotal = new SimpleAttribute<int>(AttributeId.SkillTotal, 0);
            public static Attribute<int> TeamID = new SimpleAttribute<int>(AttributeId.TeamID, -1);
            public static Attribute<int> TeamOverride = new SimpleAttribute<int>(AttributeId.TeamOverride, -1);
            public static Attribute<int> Invulnerable = new SimpleAttribute<int>(AttributeId.Invulnerable, 0);
            public static Attribute<int> Loading = new SimpleAttribute<int>(AttributeId.Loading, 0);
            public static Attribute<int> LoadingPlayerACD = new SimpleAttribute<int>(AttributeId.LoadingPlayerACD, -1);
            public static Attribute<int> LoadingPowerSNO = new SimpleAttribute<int>(AttributeId.LoadingPowerSNO, -1);
            public static Attribute<int> LoadingAnimTag = new SimpleAttribute<int>(AttributeId.LoadingAnimTag, -1);
            public static Attribute<int> LoadingNewGame = new SimpleAttribute<int>(AttributeId.LoadingNewGame, 0);
            public static Attribute<int> AutoPortingToSavePoint = new SimpleAttribute<int>(AttributeId.AutoPortingToSavePoint, 0);
            public static Attribute<int> NoDamage = new SimpleAttribute<int>(AttributeId.NoDamage, 0);
            public static Attribute<int> NoAutoPickup = new SimpleAttribute<int>(AttributeId.NoAutoPickup, 0);
            public static Attribute<float> LightRadiusPercentBonus = new SimpleAttribute<float>(AttributeId.LightRadiusPercentBonus, 0);
            public static Attribute<float> HitpointsCur = new SimpleAttribute<float>(AttributeId.HitpointsCur, 0);
            public static Attribute<float> HitpointsFactorLevel = new SimpleAttribute<float>(AttributeId.HitpointsFactorLevel, 0);
            public static Attribute<float> HitpointsFactorVitality = new SimpleAttribute<float>(AttributeId.HitpointsFactorVitality, 0);
            public static Attribute<float> HitpointsTotalFromVitality = new SimpleAttribute<float>(AttributeId.HitpointsTotalFromVitality, 0);
            public static Attribute<float> HitpointsTotalFromLevel = new SimpleAttribute<float>(AttributeId.HitpointsTotalFromLevel, 0);
            public static Attribute<float> HitpointsGranted = new SimpleAttribute<float>(AttributeId.HitpointsGranted, 0);
            public static Attribute<int> HitpointsGrantedDuration = new SimpleAttribute<int>(AttributeId.HitpointsGrantedDuration, 0);
            public static Attribute<float> HitpointsMax = new SimpleAttribute<float>(AttributeId.HitpointsMax, 0);
            public static Attribute<float> HitpointsMaxBonus = new SimpleAttribute<float>(AttributeId.HitpointsMaxBonus, 0);
            public static Attribute<float> HitpointsMaxTotal = new SimpleAttribute<float>(AttributeId.HitpointsMaxTotal, 0);
            public static Attribute<float> HitpointsPercent = new SimpleAttribute<float>(AttributeId.HitpointsPercent, 0);
            public static Attribute<float> HitpointsRegenPerSecond = new SimpleAttribute<float>(AttributeId.HitpointsRegenPerSecond, 0);
            public static Attribute<float> HitpointsRegenPerSecondBonus = new SimpleAttribute<float>(AttributeId.HitpointsRegenPerSecondBonus, 0);
            public static Attribute<float> HitpointsRegenBonusPercent = new SimpleAttribute<float>(AttributeId.HitpointsRegenBonusPercent, 0);
            public static Attribute<float> HitpointsRegenPerSecondSubtotal = new SimpleAttribute<float>(AttributeId.HitpointsRegenPerSecondSubtotal, 0);
            public static Attribute<float> HitpointsRegenReductionPercent = new SimpleAttribute<float>(AttributeId.HitpointsRegenReductionPercent, 0);
            public static Attribute<float> HitpointsRegenPerSecondHealthGlobe = new SimpleAttribute<float>(AttributeId.HitpointsRegenPerSecondHealthGlobe, 0);
            public static Attribute<float> HitpointsRegenPerSecondTotal = new SimpleAttribute<float>(AttributeId.HitpointsRegenPerSecondTotal, 0);
            public static Attribute<float> HitpointsMaxPercentBonus = new SimpleAttribute<float>(AttributeId.HitpointsMaxPercentBonus, 0);
            public static Attribute<float> HitpointsMaxPercentBonusItem = new SimpleAttribute<float>(AttributeId.HitpointsMaxPercentBonusItem, 0);
            public static Attribute<float> HitpointsHealedTarget = new SimpleAttribute<float>(AttributeId.HitpointsHealedTarget, 0);
            public static Attribute<int> HitpointsFrozen = new SimpleAttribute<int>(AttributeId.HitpointsFrozen, 0);
            public static Attribute<float> DOTDamageTakenQueued = new SimpleAttribute<float>(AttributeId.DOTDamageTakenQueued, 0);
            public static Attribute<int> DOTDamageTakenQueuedTick = new SimpleAttribute<int>(AttributeId.DOTDamageTakenQueuedTick, 0);
            public static Attribute<float> DOTDamageTakenQueuedPlayer = new SimpleAttribute<float>(AttributeId.DOTDamageTakenQueuedPlayer, 0);
            public static Attribute<int> DOTDamageTakenQueuedPlayerTick = new SimpleAttribute<int>(AttributeId.DOTDamageTakenQueuedPlayerTick, 0);
            public static Attribute<float> HealingReceivedQueued = new SimpleAttribute<float>(AttributeId.HealingReceivedQueued, 0);
            public static Attribute<int> HealingReceivedQueuedTick = new SimpleAttribute<int>(AttributeId.HealingReceivedQueuedTick, 0);
            public static Attribute<int> ResourceTypePrimary = new SimpleAttribute<int>(AttributeId.ResourceTypePrimary, -1);
            public static Attribute<int> ResourceTypeSecondary = new SimpleAttribute<int>(AttributeId.ResourceTypeSecondary, -1);
            public static Attribute<float> ResourceCur = new SimpleAttribute<float>(AttributeId.ResourceCur, 0);
            public static Attribute<float> ResourceMax = new SimpleAttribute<float>(AttributeId.ResourceMax, 0);
            public static Attribute<float> ResourceMaxBonus = new SimpleAttribute<float>(AttributeId.ResourceMaxBonus, 0);
            public static Attribute<float> ResourceMaxTotal = new SimpleAttribute<float>(AttributeId.ResourceMaxTotal, 0);
            public static Attribute<float> ResourceFactorLevel = new SimpleAttribute<float>(AttributeId.ResourceFactorLevel, 0);
            public static Attribute<float> ResourceGranted = new SimpleAttribute<float>(AttributeId.ResourceGranted, 0);
            public static Attribute<int> ResourceGrantedDuration = new SimpleAttribute<int>(AttributeId.ResourceGrantedDuration, 0);
            public static Attribute<float> ResourcePercent = new SimpleAttribute<float>(AttributeId.ResourcePercent, 0);
            public static Attribute<float> ResourceRegenPerSecond = new SimpleAttribute<float>(AttributeId.ResourceRegenPerSecond, 0);
            public static Attribute<float> ResourceRegenBonusPercent = new SimpleAttribute<float>(AttributeId.ResourceRegenBonusPercent, 0);
            public static Attribute<float> ResourceRegenTotal = new SimpleAttribute<float>(AttributeId.ResourceRegenTotal, 0);
            public static Attribute<float> ResourceMaxPercentBonus = new SimpleAttribute<float>(AttributeId.ResourceMaxPercentBonus, 0);
            public static Attribute<float> ResourceCapacityUsed = new SimpleAttribute<float>(AttributeId.ResourceCapacityUsed, 0);
            public static Attribute<float> ResourceEffectiveMax = new SimpleAttribute<float>(AttributeId.ResourceEffectiveMax, 0);
            public static Attribute<float> ResourceRegenPercentPerSecond = new SimpleAttribute<float>(AttributeId.ResourceRegenPercentPerSecond, 0);
            public static Attribute<float> ResourceDegenerationStopPoint = new SimpleAttribute<float>(AttributeId.ResourceDegenerationStopPoint, 0);
            public static Attribute<float> MovementScalar = new SimpleAttribute<float>(AttributeId.MovementScalar, 0);
            public static Attribute<float> WalkingRate = new SimpleAttribute<float>(AttributeId.WalkingRate, 0);
            public static Attribute<float> RunningRate = new SimpleAttribute<float>(AttributeId.RunningRate, 0);
            public static Attribute<float> SprintingRate = new SimpleAttribute<float>(AttributeId.SprintingRate, 0);
            public static Attribute<float> StrafingRate = new SimpleAttribute<float>(AttributeId.StrafingRate, 0);
            public static Attribute<float> WalkingRateTotal = new SimpleAttribute<float>(AttributeId.WalkingRateTotal, 0);
            public static Attribute<float> RunningRateTotal = new SimpleAttribute<float>(AttributeId.RunningRateTotal, 0);
            public static Attribute<float> LastRunningRate = new SimpleAttribute<float>(AttributeId.LastRunningRate, 0);
            public static Attribute<float> SprintingRateTotal = new SimpleAttribute<float>(AttributeId.SprintingRateTotal, 0);
            public static Attribute<float> StrafingRateTotal = new SimpleAttribute<float>(AttributeId.StrafingRateTotal, 0);
            public static Attribute<float> MovementBonusTotal = new SimpleAttribute<float>(AttributeId.MovementBonusTotal, 0);
            public static Attribute<float> MovementScalarSubtotal = new SimpleAttribute<float>(AttributeId.MovementScalarSubtotal, 0);
            public static Attribute<float> MovementScalarCappedTotal = new SimpleAttribute<float>(AttributeId.MovementScalarCappedTotal, 0);
            public static Attribute<float> MovementScalarUncappedBonus = new SimpleAttribute<float>(AttributeId.MovementScalarUncappedBonus, 0);
            public static Attribute<float> MovementScalarTotal = new SimpleAttribute<float>(AttributeId.MovementScalarTotal, 0);
            public static Attribute<float> MovementBonusRunSpeed = new SimpleAttribute<float>(AttributeId.MovementBonusRunSpeed, 0);
            public static Attribute<float> MovementScalarCap = new SimpleAttribute<float>(AttributeId.MovementScalarCap, 0);
            public static Attribute<float> CastingSpeed = new SimpleAttribute<float>(AttributeId.CastingSpeed, 0);
            public static Attribute<float> CastingSpeedBonus = new SimpleAttribute<float>(AttributeId.CastingSpeedBonus, 0);
            public static Attribute<float> CastingSpeedTotal = new SimpleAttribute<float>(AttributeId.CastingSpeedTotal, 0);
            public static Attribute<int> AlwaysHits = new SimpleAttribute<int>(AttributeId.AlwaysHits, 0);
            public static Attribute<float> HitChance = new SimpleAttribute<float>(AttributeId.HitChance, 0);
            public static Attribute<float> KnockbackAttackScalar = new SimpleAttribute<float>(AttributeId.KnockbackAttackScalar, 0);
            public static Attribute<float> AttacksPerSecondItem = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItem, 0);
            public static Attribute<float> AttacksPerSecondItemPercent = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemPercent, 0);
            public static Attribute<float> AttacksPerSecondItemSubtotal = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemSubtotal, 0);
            public static Attribute<float> AttacksPerSecondItemBonus = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemBonus, 0);
            public static Attribute<float> AttacksPerSecondItemTotal = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemTotal, 0);
            public static Attribute<float> AttacksPerSecond = new SimpleAttribute<float>(AttributeId.AttacksPerSecond, 0);
            public static Attribute<float> AttacksPerSecondBonus = new SimpleAttribute<float>(AttributeId.AttacksPerSecondBonus, 0);
            public static Attribute<float> AttacksPerSecondTotal = new SimpleAttribute<float>(AttributeId.AttacksPerSecondTotal, 0);
            public static Attribute<float> AttacksPerSecondPercentCap = new SimpleAttribute<float>(AttributeId.AttacksPerSecondPercentCap, 0);
            public static Attribute<float> AttacksPerSecondPercent = new SimpleAttribute<float>(AttributeId.AttacksPerSecondPercent, 0);
            public static Attribute<float> AttacksPerSecondPercentUncapped = new SimpleAttribute<float>(AttributeId.AttacksPerSecondPercentUncapped, 0);
            public static Attribute<float> AttacksPerSecondPercentReduction = new SimpleAttribute<float>(AttributeId.AttacksPerSecondPercentReduction, 0);
            public static Attribute<float> AttacksPerSecondPercentSubtotal = new SimpleAttribute<float>(AttributeId.AttacksPerSecondPercentSubtotal, 0);
            public static Attribute<float> AICooldownReductionPercent = new SimpleAttribute<float>(AttributeId.AICooldownReductionPercent, 0);
            public static Attribute<float> PowerCooldownReductionPercentCap = new SimpleAttribute<float>(AttributeId.PowerCooldownReductionPercentCap, 0);
            public static Attribute<float> PowerCooldownReductionPercent = new SimpleAttribute<float>(AttributeId.PowerCooldownReductionPercent, 0);
            public static Attribute<float> PowerCooldownReductionPercentAll = new SimpleAttribute<float>(AttributeId.PowerCooldownReductionPercentAll, 0);
            public static Attribute<float> PowerCooldownReductionPercentAllCapped = new SimpleAttribute<float>(AttributeId.PowerCooldownReductionPercentAllCapped, 0);
            public static Attribute<float> DamageDelta = new SimpleAttribute<float>(AttributeId.DamageDelta, 0);
            public static Attribute<float> DamageDeltaTotal = new SimpleAttribute<float>(AttributeId.DamageDeltaTotal, 0);
            public static Attribute<float> DamageMin = new SimpleAttribute<float>(AttributeId.DamageMin, 0);
            public static Attribute<float> DamageBonusMin = new SimpleAttribute<float>(AttributeId.DamageBonusMin, 0);
            public static Attribute<float> DamageMinTotal = new SimpleAttribute<float>(AttributeId.DamageMinTotal, 0);
            public static Attribute<float> DamageDeltaTotalAll = new SimpleAttribute<float>(AttributeId.DamageDeltaTotalAll, 0);
            public static Attribute<float> DamageMinTotalAll = new SimpleAttribute<float>(AttributeId.DamageMinTotalAll, 0);
            public static Attribute<float> DamageAverageTotalAll = new SimpleAttribute<float>(AttributeId.DamageAverageTotalAll, 0);
            public static Attribute<float> DamageMinSubtotal = new SimpleAttribute<float>(AttributeId.DamageMinSubtotal, 0);
            public static Attribute<float> DamagePercentAllFromSkills = new SimpleAttribute<float>(AttributeId.DamagePercentAllFromSkills, 0);
            public static Attribute<float> DamageWeaponDelta = new SimpleAttribute<float>(AttributeId.DamageWeaponDelta, 0);
            public static Attribute<float> DamageWeaponDeltaSubTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaSubTotal, 0);
            public static Attribute<float> DamageWeaponMax = new SimpleAttribute<float>(AttributeId.DamageWeaponMax, 0);
            public static Attribute<float> DamageWeaponMaxTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponMaxTotal, 0);
            public static Attribute<float> DamageWeaponMaxTotalAll = new SimpleAttribute<float>(AttributeId.DamageWeaponMaxTotalAll, 0);
            public static Attribute<float> DamageWeaponDeltaTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaTotal, 0);
            public static Attribute<float> DamageWeaponDeltaTotalAll = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaTotalAll, 0);
            public static Attribute<float> DamageWeaponBonusDelta = new SimpleAttribute<float>(AttributeId.DamageWeaponBonusDelta, 0);
            public static Attribute<float> DamageWeaponBonusDeltaX1 = new SimpleAttribute<float>(AttributeId.DamageWeaponBonusDeltaX1, 0);
            public static Attribute<float> DamageWeaponMin = new SimpleAttribute<float>(AttributeId.DamageWeaponMin, 0);
            public static Attribute<float> DamageWeaponMinTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponMinTotal, 0);
            public static Attribute<float> DamageWeaponMinTotalAll = new SimpleAttribute<float>(AttributeId.DamageWeaponMinTotalAll, 0);
            public static Attribute<float> DamageWeaponAverage = new SimpleAttribute<float>(AttributeId.DamageWeaponAverage, 0);
            public static Attribute<float> DamageWeaponAverageTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponAverageTotal, 0);
            public static Attribute<float> DamageWeaponAverageTotalAll = new SimpleAttribute<float>(AttributeId.DamageWeaponAverageTotalAll, 0);
            public static Attribute<float> DamageWeaponBonusMin = new SimpleAttribute<float>(AttributeId.DamageWeaponBonusMin, 0);
            public static Attribute<float> DamageWeaponBonusMinX1 = new SimpleAttribute<float>(AttributeId.DamageWeaponBonusMinX1, 0);
            public static Attribute<float> DamageWeaponBonusFlat = new SimpleAttribute<float>(AttributeId.DamageWeaponBonusFlat, 0);
            public static Attribute<float> DamageWeaponPercentBonus = new SimpleAttribute<float>(AttributeId.DamageWeaponPercentBonus, 0);
            public static Attribute<float> DamageWeaponPercentAll = new SimpleAttribute<float>(AttributeId.DamageWeaponPercentAll, 0);
            public static Attribute<float> DamageWeaponPercentTotal = new SimpleAttribute<float>(AttributeId.DamageWeaponPercentTotal, 0);
            public static Attribute<float> DamageTypePercentBonus = new SimpleAttribute<float>(AttributeId.DamageTypePercentBonus, 0);
            public static Attribute<float> DamageDealtPercentBonus = new SimpleAttribute<float>(AttributeId.DamageDealtPercentBonus, 0);
            public static Attribute<float> DamagePercentBonusWitchdoctor = new SimpleAttribute<float>(AttributeId.DamagePercentBonusWitchdoctor, 0);
            public static Attribute<float> DamagePercentBonusWizard = new SimpleAttribute<float>(AttributeId.DamagePercentBonusWizard, 0);
            public static Attribute<float> CritPercentBase = new SimpleAttribute<float>(AttributeId.CritPercentBase, 0);
            public static Attribute<float> CritPercentBonusCapped = new SimpleAttribute<float>(AttributeId.CritPercentBonusCapped, 0);
            public static Attribute<float> CritPercentBonusUncapped = new SimpleAttribute<float>(AttributeId.CritPercentBonusUncapped, 0);
            public static Attribute<float> CritPercentBonusHideFromDPS = new SimpleAttribute<float>(AttributeId.CritPercentBonusHideFromDPS, 0);
            public static Attribute<float> CritPercentCap = new SimpleAttribute<float>(AttributeId.CritPercentCap, 0);
            public static Attribute<float> CritDamageCap = new SimpleAttribute<float>(AttributeId.CritDamageCap, 0);
            public static Attribute<float> CritDamagePercent = new SimpleAttribute<float>(AttributeId.CritDamagePercent, 0);
            public static Attribute<float> CritDamagePercentUncapped = new SimpleAttribute<float>(AttributeId.CritDamagePercentUncapped, 0);
            public static Attribute<int> CritEffectTime = new SimpleAttribute<int>(AttributeId.CritEffectTime, 0);
            public static Attribute<float> PierceChance = new SimpleAttribute<float>(AttributeId.PierceChance, 0);
            public static Attribute<float> DamageAbsorbPercent = new SimpleAttribute<float>(AttributeId.DamageAbsorbPercent, 0);
            public static Attribute<float> DamageReductionTotal = new SimpleAttribute<float>(AttributeId.DamageReductionTotal, 0);
            public static Attribute<float> DamageReductionCurrent = new SimpleAttribute<float>(AttributeId.DamageReductionCurrent, 0);
            public static Attribute<int> DamageReductionLastTick = new SimpleAttribute<int>(AttributeId.DamageReductionLastTick, 0);
            public static Attribute<float> BlockChance = new SimpleAttribute<float>(AttributeId.BlockChance, 0);
            public static Attribute<float> BlockChanceSubTotal = new SimpleAttribute<float>(AttributeId.BlockChanceSubTotal, 0);
            public static Attribute<float> BlockChanceBonusItem = new SimpleAttribute<float>(AttributeId.BlockChanceBonusItem, 0);
            public static Attribute<float> BlockChanceItem = new SimpleAttribute<float>(AttributeId.BlockChanceItem, 0);
            public static Attribute<float> BlockChanceItemTotal = new SimpleAttribute<float>(AttributeId.BlockChanceItemTotal, 0);
            public static Attribute<float> BlockChanceUncappedBonus = new SimpleAttribute<float>(AttributeId.BlockChanceUncappedBonus, 0);
            public static Attribute<float> BlockChanceCappedTotal = new SimpleAttribute<float>(AttributeId.BlockChanceCappedTotal, 0);
            public static Attribute<float> BlockAmount = new SimpleAttribute<float>(AttributeId.BlockAmount, 0);
            public static Attribute<float> BlockAmountBonusPercent = new SimpleAttribute<float>(AttributeId.BlockAmountBonusPercent, 0);
            public static Attribute<float> BlockAmountTotalMin = new SimpleAttribute<float>(AttributeId.BlockAmountTotalMin, 0);
            public static Attribute<float> BlockAmountTotalMax = new SimpleAttribute<float>(AttributeId.BlockAmountTotalMax, 0);
            public static Attribute<float> BlockAmountItemMin = new SimpleAttribute<float>(AttributeId.BlockAmountItemMin, 0);
            public static Attribute<float> BlockAmountItemDelta = new SimpleAttribute<float>(AttributeId.BlockAmountItemDelta, 0);
            public static Attribute<float> BlockAmountItemBonus = new SimpleAttribute<float>(AttributeId.BlockAmountItemBonus, 0);
            public static Attribute<float> DodgeChanceBonus = new SimpleAttribute<float>(AttributeId.DodgeChanceBonus, 0);
            public static Attribute<float> DodgeChanceBonusMelee = new SimpleAttribute<float>(AttributeId.DodgeChanceBonusMelee, 0);
            public static Attribute<float> DodgeChanceBonusRanged = new SimpleAttribute<float>(AttributeId.DodgeChanceBonusRanged, 0);
            public static Attribute<float> DodgeChanceBonusAdditive = new SimpleAttribute<float>(AttributeId.DodgeChanceBonusAdditive, 0);
            public static Attribute<float> DodgeChanceBonusHideFromToughness = new SimpleAttribute<float>(AttributeId.DodgeChanceBonusHideFromToughness, 0);
            public static Attribute<int> CannotDodge = new SimpleAttribute<int>(AttributeId.CannotDodge, 0);
            public static Attribute<float> GetHitCurrent = new SimpleAttribute<float>(AttributeId.GetHitCurrent, 0);
            public static Attribute<float> GetHitMaxBase = new SimpleAttribute<float>(AttributeId.GetHitMaxBase, 0);
            public static Attribute<float> GetHitMaxPerLevel = new SimpleAttribute<float>(AttributeId.GetHitMaxPerLevel, 0);
            public static Attribute<float> GetHitMax = new SimpleAttribute<float>(AttributeId.GetHitMax, 0);
            public static Attribute<float> GetHitRecoveryBase = new SimpleAttribute<float>(AttributeId.GetHitRecoveryBase, 0);
            public static Attribute<float> GetHitRecoveryPerLevel = new SimpleAttribute<float>(AttributeId.GetHitRecoveryPerLevel, 0);
            public static Attribute<float> GetHitRecovery = new SimpleAttribute<float>(AttributeId.GetHitRecovery, 0);
            public static Attribute<float> GetHitDamage = new SimpleAttribute<float>(AttributeId.GetHitDamage, 0);
            public static Attribute<float> GetHitDamageScalar = new SimpleAttribute<float>(AttributeId.GetHitDamageScalar, 0);
            public static Attribute<int> LastDamageMainActor = new SimpleAttribute<int>(AttributeId.LastDamageMainActor, -1);
            public static Attribute<int> LastACDAttacked = new SimpleAttribute<int>(AttributeId.LastACDAttacked, -1);
            public static Attribute<int> IgnoresCriticalHits = new SimpleAttribute<int>(AttributeId.IgnoresCriticalHits, 0);
            public static Attribute<int> Immunity = new SimpleAttribute<int>(AttributeId.Immunity, 0);
            public static Attribute<int> Untargetable = new SimpleAttribute<int>(AttributeId.Untargetable, 0);
            public static Attribute<int> Immobolize = new SimpleAttribute<int>(AttributeId.Immobolize, 0);
            public static Attribute<int> ImmuneToKnockback = new SimpleAttribute<int>(AttributeId.ImmuneToKnockback, 0);
            public static Attribute<int> PowerImmobilize = new SimpleAttribute<int>(AttributeId.PowerImmobilize, 0);
            public static Attribute<float> StunChance = new SimpleAttribute<float>(AttributeId.StunChance, 0);
            public static Attribute<float> StunLength = new SimpleAttribute<float>(AttributeId.StunLength, 0);
            public static Attribute<float> StunRecovery = new SimpleAttribute<float>(AttributeId.StunRecovery, 0);
            public static Attribute<float> StunRecoverySpeed = new SimpleAttribute<float>(AttributeId.StunRecoverySpeed, 0);
            public static Attribute<int> Stunned = new SimpleAttribute<int>(AttributeId.Stunned, 0);
            public static Attribute<int> StunImmune = new SimpleAttribute<int>(AttributeId.StunImmune, 0);
            public static Attribute<float> PoisonLengthReduction = new SimpleAttribute<float>(AttributeId.PoisonLengthReduction, 0);
            public static Attribute<int> Bleeding = new SimpleAttribute<int>(AttributeId.Bleeding, 0);
            public static Attribute<float> BleedDuration = new SimpleAttribute<float>(AttributeId.BleedDuration, 0);
            public static Attribute<int> Chilled = new SimpleAttribute<int>(AttributeId.Chilled, 0);
            public static Attribute<float> FreezeLengthReduction = new SimpleAttribute<float>(AttributeId.FreezeLengthReduction, 0);
            public static Attribute<int> FreezeImmune = new SimpleAttribute<int>(AttributeId.FreezeImmune, 0);
            public static Attribute<float> ChillDurationBonusPercent = new SimpleAttribute<float>(AttributeId.ChillDurationBonusPercent, 0);
            public static Attribute<float> FreezeDurationBonusPercent = new SimpleAttribute<float>(AttributeId.FreezeDurationBonusPercent, 0);
            public static Attribute<float> StunDurationBonusPercent = new SimpleAttribute<float>(AttributeId.StunDurationBonusPercent, 0);
            public static Attribute<float> ImmobilizeDurationBonusPercent = new SimpleAttribute<float>(AttributeId.ImmobilizeDurationBonusPercent, 0);
            public static Attribute<float> FearDurationBonusPercent = new SimpleAttribute<float>(AttributeId.FearDurationBonusPercent, 0);
            public static Attribute<float> BlindDurationBonusPercent = new SimpleAttribute<float>(AttributeId.BlindDurationBonusPercent, 0);
            public static Attribute<float> CharmDurationBonusPercent = new SimpleAttribute<float>(AttributeId.CharmDurationBonusPercent, 0);
            public static Attribute<float> SlowDurationBonusPercent = new SimpleAttribute<float>(AttributeId.SlowDurationBonusPercent, 0);
            public static Attribute<int> Webbed = new SimpleAttribute<int>(AttributeId.Webbed, 0);
            public static Attribute<int> Slow = new SimpleAttribute<int>(AttributeId.Slow, 0);
            public static Attribute<int> FireAura = new SimpleAttribute<int>(AttributeId.FireAura, 0);
            public static Attribute<int> LightningAura = new SimpleAttribute<int>(AttributeId.LightningAura, 0);
            public static Attribute<int> ColdAura = new SimpleAttribute<int>(AttributeId.ColdAura, 0);
            public static Attribute<int> PoisonAura = new SimpleAttribute<int>(AttributeId.PoisonAura, 0);
            public static Attribute<int> Blind = new SimpleAttribute<int>(AttributeId.Blind, 0);
            public static Attribute<int> Enraged = new SimpleAttribute<int>(AttributeId.Enraged, 0);
            public static Attribute<int> SlowdownImmune = new SimpleAttribute<int>(AttributeId.SlowdownImmune, 0);
            public static Attribute<int> GethitImmune = new SimpleAttribute<int>(AttributeId.GethitImmune, 0);
            public static Attribute<int> AttackSpeedReductionImmune = new SimpleAttribute<int>(AttributeId.AttackSpeedReductionImmune, 0);
            public static Attribute<float> SuffocationPerSecond = new SimpleAttribute<float>(AttributeId.SuffocationPerSecond, 0);
            public static Attribute<float> SuffocationUnitValue = new SimpleAttribute<float>(AttributeId.SuffocationUnitValue, 0);
            public static Attribute<float> ThornsPercent = new SimpleAttribute<float>(AttributeId.ThornsPercent, 0);
            public static Attribute<float> ThornsPercentAll = new SimpleAttribute<float>(AttributeId.ThornsPercentAll, 0);
            public static Attribute<float> ThornsPercentTotal = new SimpleAttribute<float>(AttributeId.ThornsPercentTotal, 0);
            public static Attribute<float> ThornsFixed = new SimpleAttribute<float>(AttributeId.ThornsFixed, 0);
            public static Attribute<float> ThornsAOERadius = new SimpleAttribute<float>(AttributeId.ThornsAOERadius, 0);
            public static Attribute<int> ThornsHasDamageType = new SimpleAttribute<int>(AttributeId.ThornsHasDamageType, 0);
            public static Attribute<float> OnHitThornsProcChance = new SimpleAttribute<float>(AttributeId.OnHitThornsProcChance, 0);
            public static Attribute<float> StealHealthPercent = new SimpleAttribute<float>(AttributeId.StealHealthPercent, 0);
            public static Attribute<float> StealManaPercent = new SimpleAttribute<float>(AttributeId.StealManaPercent, 0);
            public static Attribute<float> ResourceOnHit = new SimpleAttribute<float>(AttributeId.ResourceOnHit, 0);
            public static Attribute<float> ResourceOnHitBonusPct = new SimpleAttribute<float>(AttributeId.ResourceOnHitBonusPct, 0);
            public static Attribute<float> ResourceOnHitBonus = new SimpleAttribute<float>(AttributeId.ResourceOnHitBonus, 0);
            public static Attribute<float> ResourceOnKill = new SimpleAttribute<float>(AttributeId.ResourceOnKill, 0);
            public static Attribute<float> ResourceOnCrit = new SimpleAttribute<float>(AttributeId.ResourceOnCrit, 0);
            public static Attribute<float> HitpointsOnHit = new SimpleAttribute<float>(AttributeId.HitpointsOnHit, 0);
            public static Attribute<float> HitpointsOnKill = new SimpleAttribute<float>(AttributeId.HitpointsOnKill, 0);
            public static Attribute<float> HitpointsOnKillReductionPercent = new SimpleAttribute<float>(AttributeId.HitpointsOnKillReductionPercent, 0);
            public static Attribute<float> HitpointsOnKillTotal = new SimpleAttribute<float>(AttributeId.HitpointsOnKillTotal, 0);
            public static Attribute<float> DamageToMana = new SimpleAttribute<float>(AttributeId.DamageToMana, 0);
            public static Attribute<int> LastProcTime = new SimpleAttribute<int>(AttributeId.LastProcTime, 0);
            public static Attribute<float> DamagePowerDelta = new SimpleAttribute<float>(AttributeId.DamagePowerDelta, 0);
            public static Attribute<float> DamagePowerMin = new SimpleAttribute<float>(AttributeId.DamagePowerMin, 0);
            public static Attribute<int> RopeOverlay = new SimpleAttribute<int>(AttributeId.RopeOverlay, -1);
            public static Attribute<int> GeneralCooldown = new SimpleAttribute<int>(AttributeId.GeneralCooldown, -1);
            public static Attribute<int> PowerCooldown = new SimpleAttribute<int>(AttributeId.PowerCooldown, -1);
            public static Attribute<int> PowerCooldownStart = new SimpleAttribute<int>(AttributeId.PowerCooldownStart, -1);
            public static Attribute<int> ProcCooldown = new SimpleAttribute<int>(AttributeId.ProcCooldown, 0);
            public static Attribute<int> EmoteCooldown = new SimpleAttribute<int>(AttributeId.EmoteCooldown, 0);
            public static Attribute<float> ProjectileSpeed = new SimpleAttribute<float>(AttributeId.ProjectileSpeed, 0);
            public static Attribute<float> ProjectileSpeedIncreasePercent = new SimpleAttribute<float>(AttributeId.ProjectileSpeedIncreasePercent, 0);
            public static Attribute<int> DestroyWhenPathBlocked = new SimpleAttribute<int>(AttributeId.DestroyWhenPathBlocked, 0);
            public static Attribute<int> SkillToggledState = new SimpleAttribute<int>(AttributeId.SkillToggledState, 0);
            public static Attribute<int> SkillCharges = new SimpleAttribute<int>(AttributeId.SkillCharges, 0);
            public static Attribute<int> Act = new SimpleAttribute<int>(AttributeId.Act, -1);
            public static Attribute<int> Difficulty = new SimpleAttribute<int>(AttributeId.Difficulty, -1);
            public static Attribute<float> LastDamageAmount = new SimpleAttribute<float>(AttributeId.LastDamageAmount, float.NaN);
            public static Attribute<int> InKnockback = new SimpleAttribute<int>(AttributeId.InKnockback, 0);
            public static Attribute<float> AmplifyDamageTypePercent = new SimpleAttribute<float>(AttributeId.AmplifyDamageTypePercent, 0);
            public static Attribute<float> AmplifyDamageSkillPercent = new SimpleAttribute<float>(AttributeId.AmplifyDamageSkillPercent, 0);
            public static Attribute<float> AmplifyDamagePercent = new SimpleAttribute<float>(AttributeId.AmplifyDamagePercent, 0);
            public static Attribute<int> DurabilityCur = new SimpleAttribute<int>(AttributeId.DurabilityCur, 0);
            public static Attribute<int> DurabilityMax = new SimpleAttribute<int>(AttributeId.DurabilityMax, 0);
            public static Attribute<int> DurabilityMaxBeforeReforge = new SimpleAttribute<int>(AttributeId.DurabilityMaxBeforeReforge, 0);
            public static Attribute<int> DurabilityLastDamage = new SimpleAttribute<int>(AttributeId.DurabilityLastDamage, 0);
            public static Attribute<int> ItemQualityLevel = new SimpleAttribute<int>(AttributeId.ItemQualityLevel, -1);
            public static Attribute<int> ItemQualityLevelIdentified = new SimpleAttribute<int>(AttributeId.ItemQualityLevelIdentified, -1);
            public static Attribute<float> ItemCostPercentBonus = new SimpleAttribute<float>(AttributeId.ItemCostPercentBonus, 0);
            public static Attribute<int> ItemEquipped = new SimpleAttribute<int>(AttributeId.ItemEquipped, 0);
            public static Attribute<int> ItemPing = new SimpleAttribute<int>(AttributeId.ItemPing, -1);
            public static Attribute<float> Requirement = new SimpleAttribute<float>(AttributeId.Requirement, 0);
            public static Attribute<float> RequirementsEasePercent = new SimpleAttribute<float>(AttributeId.RequirementsEasePercent, 0);
            public static Attribute<float> RequirementWhenEquipped = new SimpleAttribute<float>(AttributeId.RequirementWhenEquipped, 0);
            public static Attribute<int> Sockets = new SimpleAttribute<int>(AttributeId.Sockets, 0);
            public static Attribute<int> SocketsFilled = new SimpleAttribute<int>(AttributeId.SocketsFilled, 0);
            public static Attribute<float> StatsAllBonus = new SimpleAttribute<float>(AttributeId.StatsAllBonus, 0);
            public static Attribute<int> ItemBoundToACD = new SimpleAttribute<int>(AttributeId.ItemBoundToACD, -1);
            public static Attribute<int> ItemLockedToACD = new SimpleAttribute<int>(AttributeId.ItemLockedToACD, -1);
            public static Attribute<int> ItemBindingLevelOverride = new SimpleAttribute<int>(AttributeId.ItemBindingLevelOverride, 0);
            public static Attribute<int> ItemLegendaryItemLevelOverride = new SimpleAttribute<int>(AttributeId.ItemLegendaryItemLevelOverride, 0);
            public static Attribute<int> ItemTargetedPlayerClass = new SimpleAttribute<int>(AttributeId.ItemTargetedPlayerClass, -1);
            public static Attribute<int> ItemTargetedHirelingClass = new SimpleAttribute<int>(AttributeId.ItemTargetedHirelingClass, 0);
            public static Attribute<int> ItemStackQuantityHi = new SimpleAttribute<int>(AttributeId.ItemStackQuantityHi, 0);
            public static Attribute<int> ItemStackQuantityLo = new SimpleAttribute<int>(AttributeId.ItemStackQuantityLo, 0);
            public static Attribute<ulong> ItemStackQuantity = new ComplexAttribute(AttributeId.ItemStackQuantityHi, 0, AttributeId.ItemStackQuantityLo, 0);
            public static Attribute<float> RunSpeedGranted = new SimpleAttribute<float>(AttributeId.RunSpeedGranted, 0);
            public static Attribute<int> RunSpeedDuration = new SimpleAttribute<int>(AttributeId.RunSpeedDuration, 0);
            public static Attribute<int> IdentifyCost = new SimpleAttribute<int>(AttributeId.IdentifyCost, 0);
            public static Attribute<int> Seed = new SimpleAttribute<int>(AttributeId.Seed, 0);
            public static Attribute<int> IsCrafted = new SimpleAttribute<int>(AttributeId.IsCrafted, 0);
            public static Attribute<int> IsVendorBought = new SimpleAttribute<int>(AttributeId.IsVendorBought, 0);
            public static Attribute<int> DyeType = new SimpleAttribute<int>(AttributeId.DyeType, 0);
            public static Attribute<int> Loot20Drop = new SimpleAttribute<int>(AttributeId.Loot20Drop, 0);
            public static Attribute<int> EnchantAffix = new SimpleAttribute<int>(AttributeId.EnchantAffix, -1);
            public static Attribute<int> EnchantRangeVal = new SimpleAttribute<int>(AttributeId.EnchantRangeVal, 0);
            public static Attribute<int> EnchantRangeMax = new SimpleAttribute<int>(AttributeId.EnchantRangeMax, 255);
            public static Attribute<int> EnchantedAffixOld = new SimpleAttribute<int>(AttributeId.EnchantedAffixOld, -1);
            public static Attribute<int> EnchantedAffixNew = new SimpleAttribute<int>(AttributeId.EnchantedAffixNew, -1);
            public static Attribute<int> EnchantedAffixSeed = new SimpleAttribute<int>(AttributeId.EnchantedAffixSeed, 0);
            public static Attribute<int> EnchantedAffixCount = new SimpleAttribute<int>(AttributeId.EnchantedAffixCount, 0);
            public static Attribute<int> TransmogGBID = new SimpleAttribute<int>(AttributeId.TransmogGBID, -1);
            public static Attribute<int> HighlySalvageable = new SimpleAttribute<int>(AttributeId.HighlySalvageable, 0);
            public static Attribute<int> ItemUnlockTimeHi = new SimpleAttribute<int>(AttributeId.ItemUnlockTimeHi, 0);
            public static Attribute<int> ItemUnlockTimeLo = new SimpleAttribute<int>(AttributeId.ItemUnlockTimeLo, 0);
            public static Attribute<ulong> ItemUnlockTime = new ComplexAttribute(AttributeId.ItemUnlockTimeHi, 0, AttributeId.ItemUnlockTimeLo, 0);
            public static Attribute<int> AlwaysPlaysGetHit = new SimpleAttribute<int>(AttributeId.AlwaysPlaysGetHit, 0);
            public static Attribute<int> Hidden = new SimpleAttribute<int>(AttributeId.Hidden, 0);
            public static Attribute<int> AlphaAttachments = new SimpleAttribute<int>(AttributeId.AlphaAttachments, 0);
            public static Attribute<int> RActorFadeGroup = new SimpleAttribute<int>(AttributeId.RActorFadeGroup, -1);
            public static Attribute<int> QuestRange = new SimpleAttribute<int>(AttributeId.QuestRange, -1);
            public static Attribute<int> AttackCooldownMin = new SimpleAttribute<int>(AttributeId.AttackCooldownMin, 0);
            public static Attribute<int> AttackCooldownDelta = new SimpleAttribute<int>(AttributeId.AttackCooldownDelta, 0);
            public static Attribute<int> InitialCooldownMinTotal = new SimpleAttribute<int>(AttributeId.InitialCooldownMinTotal, 0);
            public static Attribute<int> InitialCooldownDeltaTotal = new SimpleAttribute<int>(AttributeId.InitialCooldownDeltaTotal, 0);
            public static Attribute<int> AttackCooldownMinTotal = new SimpleAttribute<int>(AttributeId.AttackCooldownMinTotal, 0);
            public static Attribute<int> AttackCooldownDeltaTotal = new SimpleAttribute<int>(AttributeId.AttackCooldownDeltaTotal, 0);
            public static Attribute<int> ClosingCooldownMinTotal = new SimpleAttribute<int>(AttributeId.ClosingCooldownMinTotal, 0);
            public static Attribute<int> ClosingCooldownDeltaTotal = new SimpleAttribute<int>(AttributeId.ClosingCooldownDeltaTotal, 0);
            public static Attribute<int> QuestMonster = new SimpleAttribute<int>(AttributeId.QuestMonster, 0);
            public static Attribute<int> QuestMonsterEffect = new SimpleAttribute<int>(AttributeId.QuestMonsterEffect, -1);
            public static Attribute<int> TreasureClass = new SimpleAttribute<int>(AttributeId.TreasureClass, -1);
            public static Attribute<int> RemovesBodyOnDeath = new SimpleAttribute<int>(AttributeId.RemovesBodyOnDeath, 0);
            public static Attribute<int> InitialCooldownMin = new SimpleAttribute<int>(AttributeId.InitialCooldownMin, 0);
            public static Attribute<int> InitialCooldownDelta = new SimpleAttribute<int>(AttributeId.InitialCooldownDelta, 0);
            public static Attribute<float> KnockbackWeight = new SimpleAttribute<float>(AttributeId.KnockbackWeight, 0);
            public static Attribute<int> UntargetableByPets = new SimpleAttribute<int>(AttributeId.UntargetableByPets, 0);
            public static Attribute<int> DamageStateCurrent = new SimpleAttribute<int>(AttributeId.DamageStateCurrent, 0);
            public static Attribute<int> DamageStateMax = new SimpleAttribute<int>(AttributeId.DamageStateMax, 0);
            public static Attribute<int> IsPlayerDecoy = new SimpleAttribute<int>(AttributeId.IsPlayerDecoy, 0);
            public static Attribute<float> CustomTargetWeight = new SimpleAttribute<float>(AttributeId.CustomTargetWeight, 0);
            public static Attribute<int> GizmoState = new SimpleAttribute<int>(AttributeId.GizmoState, -1);
            public static Attribute<int> GizmoCharges = new SimpleAttribute<int>(AttributeId.GizmoCharges, 0);
            public static Attribute<int> ChestOpen = new SimpleAttribute<int>(AttributeId.ChestOpen, 0);
            public static Attribute<int> DoorLocked = new SimpleAttribute<int>(AttributeId.DoorLocked, 0);
            public static Attribute<int> DoorTimer = new SimpleAttribute<int>(AttributeId.DoorTimer, -1);
            public static Attribute<int> GizmoDisabledByScript = new SimpleAttribute<int>(AttributeId.GizmoDisabledByScript, 0);
            public static Attribute<int> GizmoOperatorACDID = new SimpleAttribute<int>(AttributeId.GizmoOperatorACDID, -1);
            public static Attribute<int> TriggeringCount = new SimpleAttribute<int>(AttributeId.TriggeringCount, 0);
            public static Attribute<float> GizmoOperationRadiusOverride = new SimpleAttribute<float>(AttributeId.GizmoOperationRadiusOverride, 0);
            public static Attribute<float> GatePosition = new SimpleAttribute<float>(AttributeId.GatePosition, 0);
            public static Attribute<float> GateVelocity = new SimpleAttribute<float>(AttributeId.GateVelocity, 0);
            public static Attribute<int> GizmoHasBeenOperated = new SimpleAttribute<int>(AttributeId.GizmoHasBeenOperated, 0);
            public static Attribute<int> BannerUsable = new SimpleAttribute<int>(AttributeId.BannerUsable, 0);
            public static Attribute<int> BannerPlayerInCombat = new SimpleAttribute<int>(AttributeId.BannerPlayerInCombat, 0);
            public static Attribute<int> PetOwner = new SimpleAttribute<int>(AttributeId.PetOwner, -1);
            public static Attribute<int> PetCreator = new SimpleAttribute<int>(AttributeId.PetCreator, -1);
            public static Attribute<int> PetType = new SimpleAttribute<int>(AttributeId.PetType, -1);
            public static Attribute<int> DropsNoLoot = new SimpleAttribute<int>(AttributeId.DropsNoLoot, 0);
            public static Attribute<int> GrantsNoXP = new SimpleAttribute<int>(AttributeId.GrantsNoXP, 0);
            public static Attribute<int> HirelingClass = new SimpleAttribute<int>(AttributeId.HirelingClass, 0);
            public static Attribute<int> SummonedBySNO = new SimpleAttribute<int>(AttributeId.SummonedBySNO, -1);
            public static Attribute<float> PetProcScalar = new SimpleAttribute<float>(AttributeId.PetProcScalar, 0);
            public static Attribute<int> PetCannotBeDismissed = new SimpleAttribute<int>(AttributeId.PetCannotBeDismissed, 0);
            public static Attribute<int> IsNPC = new SimpleAttribute<int>(AttributeId.IsNPC, 0);
            public static Attribute<int> NPCIsOperatable = new SimpleAttribute<int>(AttributeId.NPCIsOperatable, 0);
            public static Attribute<int> NPCIsEscorting = new SimpleAttribute<int>(AttributeId.NPCIsEscorting, 0);
            public static Attribute<int> NPCHasInteractOptions = new SimpleAttribute<int>(AttributeId.NPCHasInteractOptions, 0);
            public static Attribute<int> ConversationIcon = new SimpleAttribute<int>(AttributeId.ConversationIcon, -1);
            public static Attribute<int> CalloutCooldown = new SimpleAttribute<int>(AttributeId.CalloutCooldown, -1);
            public static Attribute<int> BanterCooldown = new SimpleAttribute<int>(AttributeId.BanterCooldown, -1);
            public static Attribute<int> ConversationHeardCount = new SimpleAttribute<int>(AttributeId.ConversationHeardCount, 0);
            public static Attribute<int> LastTickShopEntered = new SimpleAttribute<int>(AttributeId.LastTickShopEntered, -1);
            public static Attribute<int> IsHelper = new SimpleAttribute<int>(AttributeId.IsHelper, 0);
            public static Attribute<float> Axe = new SimpleAttribute<float>(AttributeId.Axe, 0);
            public static Attribute<float> Axe2H = new SimpleAttribute<float>(AttributeId.Axe2H, 0);
            public static Attribute<float> ThrowingAxe = new SimpleAttribute<float>(AttributeId.ThrowingAxe, 0);
            public static Attribute<float> AxeAny = new SimpleAttribute<float>(AttributeId.AxeAny, 0);
            public static Attribute<float> Bow = new SimpleAttribute<float>(AttributeId.Bow, 0);
            public static Attribute<float> Crossbow = new SimpleAttribute<float>(AttributeId.Crossbow, 0);
            public static Attribute<float> BowAny = new SimpleAttribute<float>(AttributeId.BowAny, 0);
            public static Attribute<float> Club = new SimpleAttribute<float>(AttributeId.Club, 0);
            public static Attribute<float> Club2H = new SimpleAttribute<float>(AttributeId.Club2H, 0);
            public static Attribute<float> ClubAny = new SimpleAttribute<float>(AttributeId.ClubAny, 0);
            public static Attribute<float> Dagger = new SimpleAttribute<float>(AttributeId.Dagger, 0);
            public static Attribute<float> Mace = new SimpleAttribute<float>(AttributeId.Mace, 0);
            public static Attribute<float> Mace2H = new SimpleAttribute<float>(AttributeId.Mace2H, 0);
            public static Attribute<float> MaceAny = new SimpleAttribute<float>(AttributeId.MaceAny, 0);
            public static Attribute<float> Sword = new SimpleAttribute<float>(AttributeId.Sword, 0);
            public static Attribute<float> Sword2H = new SimpleAttribute<float>(AttributeId.Sword2H, 0);
            public static Attribute<float> SwordAny = new SimpleAttribute<float>(AttributeId.SwordAny, 0);
            public static Attribute<float> Polearm = new SimpleAttribute<float>(AttributeId.Polearm, 0);
            public static Attribute<float> Spear = new SimpleAttribute<float>(AttributeId.Spear, 0);
            public static Attribute<float> Wand = new SimpleAttribute<float>(AttributeId.Wand, 0);
            public static Attribute<float> ColdStaff = new SimpleAttribute<float>(AttributeId.ColdStaff, 0);
            public static Attribute<float> FireStaff = new SimpleAttribute<float>(AttributeId.FireStaff, 0);
            public static Attribute<float> LightningStaff = new SimpleAttribute<float>(AttributeId.LightningStaff, 0);
            public static Attribute<float> PoisonStaff = new SimpleAttribute<float>(AttributeId.PoisonStaff, 0);
            public static Attribute<float> StaffAny = new SimpleAttribute<float>(AttributeId.StaffAny, 0);
            public static Attribute<float> Weapon1H = new SimpleAttribute<float>(AttributeId.Weapon1H, 0);
            public static Attribute<float> Weapon2H = new SimpleAttribute<float>(AttributeId.Weapon2H, 0);
            public static Attribute<float> WeaponMelee = new SimpleAttribute<float>(AttributeId.WeaponMelee, 0);
            public static Attribute<float> WeaponRanged = new SimpleAttribute<float>(AttributeId.WeaponRanged, 0);
            public static Attribute<float> Quiver = new SimpleAttribute<float>(AttributeId.Quiver, 0);
            public static Attribute<int> ReincarnationBuff = new SimpleAttribute<int>(AttributeId.ReincarnationBuff, -1);
            public static Attribute<int> DeadBodyAnimTag = new SimpleAttribute<int>(AttributeId.DeadBodyAnimTag, -1);
            public static Attribute<int> SpawnedbyACDID = new SimpleAttribute<int>(AttributeId.SpawnedbyACDID, -1);
            public static Attribute<int> SummonedByACDID = new SimpleAttribute<int>(AttributeId.SummonedByACDID, -1);
            public static Attribute<int> SummonerID = new SimpleAttribute<int>(AttributeId.SummonerID, -1);
            public static Attribute<int> BannerACDID = new SimpleAttribute<int>(AttributeId.BannerACDID, -1);
            public static Attribute<float> BreakableShieldHP = new SimpleAttribute<float>(AttributeId.BreakableShieldHP, 0);
            public static Attribute<int> CurrentWeaponClass = new SimpleAttribute<int>(AttributeId.CurrentWeaponClass, -1);
            public static Attribute<int> WeaponsSheathed = new SimpleAttribute<int>(AttributeId.WeaponsSheathed, 0);
            public static Attribute<int> HeldInOffHand = new SimpleAttribute<int>(AttributeId.HeldInOffHand, 0);
            public static Attribute<float> AttacksPerSecondItemMainHand = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemMainHand, 0);
            public static Attribute<float> AttacksPerSecondItemOffHand = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemOffHand, 0);
            public static Attribute<float> AttacksPerSecondItemTotalMainHand = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemTotalMainHand, 0);
            public static Attribute<float> AttacksPerSecondItemTotalOffHand = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemTotalOffHand, 0);
            public static Attribute<float> DamageWeaponMinTotalMainHand = new SimpleAttribute<float>(AttributeId.DamageWeaponMinTotalMainHand, 0);
            public static Attribute<float> DamageWeaponMinTotalOffHand = new SimpleAttribute<float>(AttributeId.DamageWeaponMinTotalOffHand, 0);
            public static Attribute<float> DamageWeaponDeltaTotalMainHand = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaTotalMainHand, 0);
            public static Attribute<float> DamageWeaponDeltaTotalOffHand = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaTotalOffHand, 0);
            public static Attribute<float> AttacksPerSecondItemCurrentHand = new SimpleAttribute<float>(AttributeId.AttacksPerSecondItemCurrentHand, 0);
            public static Attribute<float> DamageWeaponMinTotalCurrentHand = new SimpleAttribute<float>(AttributeId.DamageWeaponMinTotalCurrentHand, 0);
            public static Attribute<float> DamageWeaponDeltaTotalCurrentHand = new SimpleAttribute<float>(AttributeId.DamageWeaponDeltaTotalCurrentHand, 0);
            public static Attribute<int> HasSpecialDeathAnimTag = new SimpleAttribute<int>(AttributeId.HasSpecialDeathAnimTag, -1);
            public static Attribute<int> DeathTypeOverride = new SimpleAttribute<int>(AttributeId.DeathTypeOverride, -1);
            public static Attribute<int> InCombat = new SimpleAttribute<int>(AttributeId.InCombat, 0);
            public static Attribute<int> InCombatNextTickCheck = new SimpleAttribute<int>(AttributeId.InCombatNextTickCheck, 0);
            public static Attribute<int> InConversation = new SimpleAttribute<int>(AttributeId.InConversation, 0);
            public static Attribute<int> LastTickPotionUsed = new SimpleAttribute<int>(AttributeId.LastTickPotionUsed, -1);
            public static Attribute<float> PotionDilutionPercent = new SimpleAttribute<float>(AttributeId.PotionDilutionPercent, 0);
            public static Attribute<float> OutOfCombatHealthRegenPercent = new SimpleAttribute<float>(AttributeId.OutOfCombatHealthRegenPercent, 0);
            public static Attribute<float> OutOfCombatManaRegenPercent = new SimpleAttribute<float>(AttributeId.OutOfCombatManaRegenPercent, 0);
            public static Attribute<int> PotionDilutionDuration = new SimpleAttribute<int>(AttributeId.PotionDilutionDuration, -1);
            public static Attribute<float> PotionDilutionScalar = new SimpleAttribute<float>(AttributeId.PotionDilutionScalar, 0);
            public static Attribute<int> Feared = new SimpleAttribute<int>(AttributeId.Feared, 0);
            public static Attribute<int> FearImmune = new SimpleAttribute<int>(AttributeId.FearImmune, 0);
            public static Attribute<int> LastDamageACD = new SimpleAttribute<int>(AttributeId.LastDamageACD, -1);
            public static Attribute<int> AttachedToACD = new SimpleAttribute<int>(AttributeId.AttachedToACD, -1);
            public static Attribute<int> AttachmentACD = new SimpleAttribute<int>(AttributeId.AttachmentACD, -1);
            public static Attribute<int> NormalAttackReplacementPowerSNO = new SimpleAttribute<int>(AttributeId.NormalAttackReplacementPowerSNO, -1);
            public static Attribute<float> DamageTypeOverride = new SimpleAttribute<float>(AttributeId.DamageTypeOverride, 0);
            public static Attribute<float> MinionCountBonusPercent = new SimpleAttribute<float>(AttributeId.MinionCountBonusPercent, 0);
            public static Attribute<int> ExpensiveProcCount = new SimpleAttribute<int>(AttributeId.ExpensiveProcCount, 0);
            public static Attribute<float> ChampionTeleportTimeMinInSeconds = new SimpleAttribute<float>(AttributeId.ChampionTeleportTimeMinInSeconds, 0);
            public static Attribute<float> ChampionTeleportTimeDeltaInSeconds = new SimpleAttribute<float>(AttributeId.ChampionTeleportTimeDeltaInSeconds, 0);
            public static Attribute<int> ChampionCloneNextTick = new SimpleAttribute<int>(AttributeId.ChampionCloneNextTick, 0);
            public static Attribute<float> ChampionCloneTimeMinInSeconds = new SimpleAttribute<float>(AttributeId.ChampionCloneTimeMinInSeconds, 0);
            public static Attribute<float> ChampionCloneTimeDeltaInSeconds = new SimpleAttribute<float>(AttributeId.ChampionCloneTimeDeltaInSeconds, 0);
            public static Attribute<float> ChampionCloneHitpointBonusPercent = new SimpleAttribute<float>(AttributeId.ChampionCloneHitpointBonusPercent, 0);
            public static Attribute<float> ChampionCloneDamageBonusPercent = new SimpleAttribute<float>(AttributeId.ChampionCloneDamageBonusPercent, 0);
            public static Attribute<int> ChampionGhostlyNextTick = new SimpleAttribute<int>(AttributeId.ChampionGhostlyNextTick, 0);
            public static Attribute<float> ChampionGhostlyInactiveTimeMinInSeconds = new SimpleAttribute<float>(AttributeId.ChampionGhostlyInactiveTimeMinInSeconds, 0);
            public static Attribute<float> ChampionGhostlyInactiveTimeDeltaInSeconds = new SimpleAttribute<float>(AttributeId.ChampionGhostlyInactiveTimeDeltaInSeconds, 0);
            public static Attribute<float> ChampionGhostlyActiveTimeMinInSeconds = new SimpleAttribute<float>(AttributeId.ChampionGhostlyActiveTimeMinInSeconds, 0);
            public static Attribute<float> ChampionGhostlyActiveTimeDeltaInSeconds = new SimpleAttribute<float>(AttributeId.ChampionGhostlyActiveTimeDeltaInSeconds, 0);
            public static Attribute<float> ChampionGhostlySavedDodgeChance = new SimpleAttribute<float>(AttributeId.ChampionGhostlySavedDodgeChance, 0);
            public static Attribute<int> ChampionGhostly = new SimpleAttribute<int>(AttributeId.ChampionGhostly, 0);
            public static Attribute<int> BaseElement = new SimpleAttribute<int>(AttributeId.BaseElement, -1);
            public static Attribute<float> ProjectileAmountBonusPercent = new SimpleAttribute<float>(AttributeId.ProjectileAmountBonusPercent, 0);
            public static Attribute<float> ProjectileReflectChance = new SimpleAttribute<float>(AttributeId.ProjectileReflectChance, 0);
            public static Attribute<int> ProjectileReflectForcedTarget = new SimpleAttribute<int>(AttributeId.ProjectileReflectForcedTarget, -1);
            public static Attribute<float> ProjectileReflectDamageScalar = new SimpleAttribute<float>(AttributeId.ProjectileReflectDamageScalar, 1);
            public static Attribute<int> ProjectileReflectHasDamageCap = new SimpleAttribute<int>(AttributeId.ProjectileReflectHasDamageCap, 0);
            public static Attribute<float> ProjectileReflectDamageCapRemaining = new SimpleAttribute<float>(AttributeId.ProjectileReflectDamageCapRemaining, 0);
            public static Attribute<float> AttackFearChance = new SimpleAttribute<float>(AttributeId.AttackFearChance, 0);
            public static Attribute<float> AttackFearTimeMin = new SimpleAttribute<float>(AttributeId.AttackFearTimeMin, 0);
            public static Attribute<float> AttackFearTimeDelta = new SimpleAttribute<float>(AttributeId.AttackFearTimeDelta, 0);
            public static Attribute<int> BuffVisualEffect = new SimpleAttribute<int>(AttributeId.BuffVisualEffect, 0);
            public static Attribute<int> BuffIconStartTick0 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick0, 0);
            public static Attribute<int> BuffIconStartTick1 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick1, 0);
            public static Attribute<int> BuffIconStartTick2 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick2, 0);
            public static Attribute<int> BuffIconStartTick3 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick3, 0);
            public static Attribute<int> BuffIconStartTick4 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick4, 0);
            public static Attribute<int> BuffIconStartTick5 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick5, 0);
            public static Attribute<int> BuffIconStartTick6 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick6, 0);
            public static Attribute<int> BuffIconStartTick7 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick7, 0);
            public static Attribute<int> BuffIconStartTick8 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick8, 0);
            public static Attribute<int> BuffIconStartTick9 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick9, 0);
            public static Attribute<int> BuffIconStartTick10 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick10, 0);
            public static Attribute<int> BuffIconStartTick11 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick11, 0);
            public static Attribute<int> BuffIconStartTick12 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick12, 0);
            public static Attribute<int> BuffIconStartTick13 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick13, 0);
            public static Attribute<int> BuffIconStartTick14 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick14, 0);
            public static Attribute<int> BuffIconStartTick15 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick15, 0);
            public static Attribute<int> BuffIconStartTick16 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick16, 0);
            public static Attribute<int> BuffIconStartTick17 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick17, 0);
            public static Attribute<int> BuffIconStartTick18 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick18, 0);
            public static Attribute<int> BuffIconStartTick19 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick19, 0);
            public static Attribute<int> BuffIconStartTick20 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick20, 0);
            public static Attribute<int> BuffIconStartTick21 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick21, 0);
            public static Attribute<int> BuffIconStartTick22 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick22, 0);
            public static Attribute<int> BuffIconStartTick23 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick23, 0);
            public static Attribute<int> BuffIconStartTick24 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick24, 0);
            public static Attribute<int> BuffIconStartTick25 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick25, 0);
            public static Attribute<int> BuffIconStartTick26 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick26, 0);
            public static Attribute<int> BuffIconStartTick27 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick27, 0);
            public static Attribute<int> BuffIconStartTick28 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick28, 0);
            public static Attribute<int> BuffIconStartTick29 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick29, 0);
            public static Attribute<int> BuffIconStartTick30 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick30, 0);
            public static Attribute<int> BuffIconStartTick31 = new SimpleAttribute<int>(AttributeId.BuffIconStartTick31, 0);
            public static Attribute<int> BuffIconEndTick0 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick0, 0);
            public static Attribute<int> BuffIconEndTick1 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick1, 0);
            public static Attribute<int> BuffIconEndTick2 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick2, 0);
            public static Attribute<int> BuffIconEndTick3 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick3, 0);
            public static Attribute<int> BuffIconEndTick4 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick4, 0);
            public static Attribute<int> BuffIconEndTick5 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick5, 0);
            public static Attribute<int> BuffIconEndTick6 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick6, 0);
            public static Attribute<int> BuffIconEndTick7 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick7, 0);
            public static Attribute<int> BuffIconEndTick8 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick8, 0);
            public static Attribute<int> BuffIconEndTick9 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick9, 0);
            public static Attribute<int> BuffIconEndTick10 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick10, 0);
            public static Attribute<int> BuffIconEndTick11 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick11, 0);
            public static Attribute<int> BuffIconEndTick12 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick12, 0);
            public static Attribute<int> BuffIconEndTick13 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick13, 0);
            public static Attribute<int> BuffIconEndTick14 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick14, 0);
            public static Attribute<int> BuffIconEndTick15 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick15, 0);
            public static Attribute<int> BuffIconEndTick16 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick16, 0);
            public static Attribute<int> BuffIconEndTick17 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick17, 0);
            public static Attribute<int> BuffIconEndTick18 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick18, 0);
            public static Attribute<int> BuffIconEndTick19 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick19, 0);
            public static Attribute<int> BuffIconEndTick20 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick20, 0);
            public static Attribute<int> BuffIconEndTick21 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick21, 0);
            public static Attribute<int> BuffIconEndTick22 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick22, 0);
            public static Attribute<int> BuffIconEndTick23 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick23, 0);
            public static Attribute<int> BuffIconEndTick24 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick24, 0);
            public static Attribute<int> BuffIconEndTick25 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick25, 0);
            public static Attribute<int> BuffIconEndTick26 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick26, 0);
            public static Attribute<int> BuffIconEndTick27 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick27, 0);
            public static Attribute<int> BuffIconEndTick28 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick28, 0);
            public static Attribute<int> BuffIconEndTick29 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick29, 0);
            public static Attribute<int> BuffIconEndTick30 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick30, 0);
            public static Attribute<int> BuffIconEndTick31 = new SimpleAttribute<int>(AttributeId.BuffIconEndTick31, 0);
            public static Attribute<int> CouldHaveRagdolled = new SimpleAttribute<int>(AttributeId.CouldHaveRagdolled, 0);
            public static Attribute<int> AmbientDamageEffectLastTime = new SimpleAttribute<int>(AttributeId.AmbientDamageEffectLastTime, 0);
            public static Attribute<float> ScaleBonus = new SimpleAttribute<float>(AttributeId.ScaleBonus, 0);
            public static Attribute<int> ScaleBonusIsImmediate = new SimpleAttribute<int>(AttributeId.ScaleBonusIsImmediate, 0);
            public static Attribute<int> DeletedOnServer = new SimpleAttribute<int>(AttributeId.DeletedOnServer, 0);
            public static Attribute<int> ScriptedFadeTime = new SimpleAttribute<int>(AttributeId.ScriptedFadeTime, 0);
            public static Attribute<int> DoesNoDamage = new SimpleAttribute<int>(AttributeId.DoesNoDamage, 0);
            public static Attribute<int> DoesFakeDamage = new SimpleAttribute<int>(AttributeId.DoesFakeDamage, 0);
            public static Attribute<float> SlowTimeDebuff = new SimpleAttribute<float>(AttributeId.SlowTimeDebuff, 0);
            public static Attribute<int> BlocksProjectiles = new SimpleAttribute<int>(AttributeId.BlocksProjectiles, 0);
            public static Attribute<int> Frozen = new SimpleAttribute<int>(AttributeId.Frozen, 0);
            public static Attribute<float> FreezeDamagePercentBonus = new SimpleAttribute<float>(AttributeId.FreezeDamagePercentBonus, 0);
            public static Attribute<float> ShatterChance = new SimpleAttribute<float>(AttributeId.ShatterChance, 0);
            public static Attribute<float> DualWieldBothAttackChance = new SimpleAttribute<float>(AttributeId.DualWieldBothAttackChance, 0);
            public static Attribute<int> SummonExpirationTick = new SimpleAttribute<int>(AttributeId.SummonExpirationTick, 0);
            public static Attribute<int> SummonCount = new SimpleAttribute<int>(AttributeId.SummonCount, 0);
            public static Attribute<int> Uninterruptible = new SimpleAttribute<int>(AttributeId.Uninterruptible, 0);
            public static Attribute<int> QueueDeath = new SimpleAttribute<int>(AttributeId.QueueDeath, 0);
            public static Attribute<int> CantStartDisplayedPowers = new SimpleAttribute<int>(AttributeId.CantStartDisplayedPowers, 0);
            public static Attribute<int> WizardSlowtimeProxyACD = new SimpleAttribute<int>(AttributeId.WizardSlowtimeProxyACD, -1);
            public static Attribute<float> DPS = new SimpleAttribute<float>(AttributeId.DPS, 0);
            public static Attribute<int> ResurrectionPower = new SimpleAttribute<int>(AttributeId.ResurrectionPower, -1);
            public static Attribute<float> FreezeDamage = new SimpleAttribute<float>(AttributeId.FreezeDamage, 0);
            public static Attribute<float> FreezeCapacity = new SimpleAttribute<float>(AttributeId.FreezeCapacity, 0);
            public static Attribute<float> ThawRate = new SimpleAttribute<float>(AttributeId.ThawRate, 0);
            public static Attribute<float> ChilledDurBonusPercent = new SimpleAttribute<float>(AttributeId.ChilledDurBonusPercent, 0);
            public static Attribute<float> DOTDPS = new SimpleAttribute<float>(AttributeId.DOTDPS, 0);
            public static Attribute<float> DamageCapPercent = new SimpleAttribute<float>(AttributeId.DamageCapPercent, 0);
            public static Attribute<int> ItemTimeSold = new SimpleAttribute<int>(AttributeId.ItemTimeSold, 0);
            public static Attribute<int> ForcedHirelingPower = new SimpleAttribute<int>(AttributeId.ForcedHirelingPower, -1);
            public static Attribute<int> IsRooted = new SimpleAttribute<int>(AttributeId.IsRooted, 0);
            public static Attribute<int> RootTargetACD = new SimpleAttribute<int>(AttributeId.RootTargetACD, -1);
            public static Attribute<float> RootAutoDecayPerSecond = new SimpleAttribute<float>(AttributeId.RootAutoDecayPerSecond, 0);
            public static Attribute<float> RootUnitValue = new SimpleAttribute<float>(AttributeId.RootUnitValue, 0);
            public static Attribute<int> RootTotalTicks = new SimpleAttribute<int>(AttributeId.RootTotalTicks, 0);
            public static Attribute<int> HideAffixes = new SimpleAttribute<int>(AttributeId.HideAffixes, 0);
            public static Attribute<int> RuneA = new SimpleAttribute<int>(AttributeId.RuneA, 0);
            public static Attribute<int> RuneB = new SimpleAttribute<int>(AttributeId.RuneB, 0);
            public static Attribute<int> RuneC = new SimpleAttribute<int>(AttributeId.RuneC, 0);
            public static Attribute<int> RuneD = new SimpleAttribute<int>(AttributeId.RuneD, 0);
            public static Attribute<int> RuneE = new SimpleAttribute<int>(AttributeId.RuneE, 0);
            public static Attribute<float> ResistanceStun = new SimpleAttribute<float>(AttributeId.ResistanceStun, 0);
            public static Attribute<float> ResistanceStunTotal = new SimpleAttribute<float>(AttributeId.ResistanceStunTotal, 0);
            public static Attribute<float> ResistanceRoot = new SimpleAttribute<float>(AttributeId.ResistanceRoot, 0);
            public static Attribute<float> ResistanceRootTotal = new SimpleAttribute<float>(AttributeId.ResistanceRootTotal, 0);
            public static Attribute<float> ResistanceFreeze = new SimpleAttribute<float>(AttributeId.ResistanceFreeze, 0);
            public static Attribute<float> ResistanceFreezeTotal = new SimpleAttribute<float>(AttributeId.ResistanceFreezeTotal, 0);
            public static Attribute<float> ResistanceStunRootFreeze = new SimpleAttribute<float>(AttributeId.ResistanceStunRootFreeze, 0);
            public static Attribute<float> CrowdControlReduction = new SimpleAttribute<float>(AttributeId.CrowdControlReduction, 0);
            public static Attribute<int> DisplaysTeamEffect = new SimpleAttribute<int>(AttributeId.DisplaysTeamEffect, 0);
            public static Attribute<int> CannotBeAddedToAITargetList = new SimpleAttribute<int>(AttributeId.CannotBeAddedToAITargetList, 0);
            public static Attribute<int> SkillKit = new SimpleAttribute<int>(AttributeId.SkillKit, -1);
            public static Attribute<int> ImmuneToCharm = new SimpleAttribute<int>(AttributeId.ImmuneToCharm, 0);
            public static Attribute<int> ImmuneToBlind = new SimpleAttribute<int>(AttributeId.ImmuneToBlind, 0);
            public static Attribute<int> DamageShield = new SimpleAttribute<int>(AttributeId.DamageShield, 0);
            public static Attribute<float> DamageShieldAmount = new SimpleAttribute<float>(AttributeId.DamageShieldAmount, 0);
            public static Attribute<int> GuardObjectACDID = new SimpleAttribute<int>(AttributeId.GuardObjectACDID, -1);
            public static Attribute<int> FollowTargetACDID = new SimpleAttribute<int>(AttributeId.FollowTargetACDID, -1);
            public static Attribute<int> FollowTargetType = new SimpleAttribute<int>(AttributeId.FollowTargetType, 0);
            public static Attribute<int> ForcedEnemyACDID = new SimpleAttribute<int>(AttributeId.ForcedEnemyACDID, -1);
            public static Attribute<int> NPCTalkTargetANN = new SimpleAttribute<int>(AttributeId.NPCTalkTargetANN, -1);
            public static Attribute<int> NPCConvTargetANN = new SimpleAttribute<int>(AttributeId.NPCConvTargetANN, -1);
            public static Attribute<int> ScriptTargetACDID = new SimpleAttribute<int>(AttributeId.ScriptTargetACDID, -1);
            public static Attribute<int> LookTargetServerANN = new SimpleAttribute<int>(AttributeId.LookTargetServerANN, -1);
            public static Attribute<float> LookTargetBroadcastIntensity = new SimpleAttribute<float>(AttributeId.LookTargetBroadcastIntensity, 0);
            public static Attribute<float> LookTargetBroadcastRadius = new SimpleAttribute<float>(AttributeId.LookTargetBroadcastRadius, 0);
            public static Attribute<int> Stealthed = new SimpleAttribute<int>(AttributeId.Stealthed, 0);
            public static Attribute<int> GemQuality = new SimpleAttribute<int>(AttributeId.GemQuality, 0);
            public static Attribute<int> ItemBuffIcon = new SimpleAttribute<int>(AttributeId.ItemBuffIcon, 0);
            public static Attribute<float> ScrollDuration = new SimpleAttribute<float>(AttributeId.ScrollDuration, 0);
            public static Attribute<int> GizmoActorSNOToSpawn = new SimpleAttribute<int>(AttributeId.GizmoActorSNOToSpawn, -1);
            public static Attribute<float> GizmoActorToSpawnScale = new SimpleAttribute<float>(AttributeId.GizmoActorToSpawnScale, 0);
            public static Attribute<int> DeathReplacementPowerSNO = new SimpleAttribute<int>(AttributeId.DeathReplacementPowerSNO, -1);
            public static Attribute<int> AttachmentHandledByClient = new SimpleAttribute<int>(AttributeId.AttachmentHandledByClient, 0);
            public static Attribute<int> AIInSpecialState = new SimpleAttribute<int>(AttributeId.AIInSpecialState, 0);
            public static Attribute<int> AIUsedScriptedSpawnAnim = new SimpleAttribute<int>(AttributeId.AIUsedScriptedSpawnAnim, 0);
            public static Attribute<int> AISpawnedByInactiveMarker = new SimpleAttribute<int>(AttributeId.AISpawnedByInactiveMarker, 0);
            public static Attribute<int> HeadstonePlayerANN = new SimpleAttribute<int>(AttributeId.HeadstonePlayerANN, -1);
            public static Attribute<float> ResourceCostReductionPercent = new SimpleAttribute<float>(AttributeId.ResourceCostReductionPercent, 0);
            public static Attribute<float> ResourceCostReductionPercentTotal = new SimpleAttribute<float>(AttributeId.ResourceCostReductionPercentTotal, 0);
            public static Attribute<float> ResourceCostReductionPercentAll = new SimpleAttribute<float>(AttributeId.ResourceCostReductionPercentAll, 0);
            public static Attribute<float> DamageTypeCostReductionPercent = new SimpleAttribute<float>(AttributeId.DamageTypeCostReductionPercent, 0);
            public static Attribute<float> ResistancePenetration = new SimpleAttribute<float>(AttributeId.ResistancePenetration, 0);
            public static Attribute<float> ResistancePenetrationTotal = new SimpleAttribute<float>(AttributeId.ResistancePenetrationTotal, 0);
            public static Attribute<float> ResistancePenetrationAll = new SimpleAttribute<float>(AttributeId.ResistancePenetrationAll, 0);
            public static Attribute<float> ResistancePenetrationPercentAll = new SimpleAttribute<float>(AttributeId.ResistancePenetrationPercentAll, 0);
            public static Attribute<int> FuryEffectLevel = new SimpleAttribute<int>(AttributeId.FuryEffectLevel, 0);
            public static Attribute<float> HealthPotionBonusHealPercent = new SimpleAttribute<float>(AttributeId.HealthPotionBonusHealPercent, 0);
            public static Attribute<float> HealthPotionAffectsAlliesPercent = new SimpleAttribute<float>(AttributeId.HealthPotionAffectsAlliesPercent, 0);
            public static Attribute<int> FreeCast = new SimpleAttribute<int>(AttributeId.FreeCast, 0);
            public static Attribute<int> FreeCastAll = new SimpleAttribute<int>(AttributeId.FreeCastAll, 0);
            public static Attribute<float> MovementScalarReductionPercent = new SimpleAttribute<float>(AttributeId.MovementScalarReductionPercent, 0);
            public static Attribute<float> MovementScalarReductionResistance = new SimpleAttribute<float>(AttributeId.MovementScalarReductionResistance, 0);
            public static Attribute<float> DamageAbsorbPercentAll = new SimpleAttribute<float>(AttributeId.DamageAbsorbPercentAll, 0);
            public static Attribute<int> WorldSeed = new SimpleAttribute<int>(AttributeId.WorldSeed, 0);
            public static Attribute<int> KillCountRecord = new SimpleAttribute<int>(AttributeId.KillCountRecord, 0);
            public static Attribute<int> ObjectDestructionRecord = new SimpleAttribute<int>(AttributeId.ObjectDestructionRecord, 0);
            public static Attribute<int> SingleAttackRecord = new SimpleAttribute<int>(AttributeId.SingleAttackRecord, 0);
            public static Attribute<int> EnvironmentAttackRecord = new SimpleAttribute<int>(AttributeId.EnvironmentAttackRecord, 0);
            public static Attribute<int> NephalemGloryDurationRecord = new SimpleAttribute<int>(AttributeId.NephalemGloryDurationRecord, 0);
            public static Attribute<int> RootImmune = new SimpleAttribute<int>(AttributeId.RootImmune, 0);
            public static Attribute<float> MonsterPlayGetHitBonus = new SimpleAttribute<float>(AttributeId.MonsterPlayGetHitBonus, 0);
            public static Attribute<int> StoredContactFrame = new SimpleAttribute<int>(AttributeId.StoredContactFrame, 0);
            public static Attribute<int> BuffIconCount0 = new SimpleAttribute<int>(AttributeId.BuffIconCount0, 0);
            public static Attribute<int> BuffIconCount1 = new SimpleAttribute<int>(AttributeId.BuffIconCount1, 0);
            public static Attribute<int> BuffIconCount2 = new SimpleAttribute<int>(AttributeId.BuffIconCount2, 0);
            public static Attribute<int> BuffIconCount3 = new SimpleAttribute<int>(AttributeId.BuffIconCount3, 0);
            public static Attribute<int> BuffIconCount4 = new SimpleAttribute<int>(AttributeId.BuffIconCount4, 0);
            public static Attribute<int> BuffIconCount5 = new SimpleAttribute<int>(AttributeId.BuffIconCount5, 0);
            public static Attribute<int> BuffIconCount6 = new SimpleAttribute<int>(AttributeId.BuffIconCount6, 0);
            public static Attribute<int> BuffIconCount7 = new SimpleAttribute<int>(AttributeId.BuffIconCount7, 0);
            public static Attribute<int> BuffIconCount8 = new SimpleAttribute<int>(AttributeId.BuffIconCount8, 0);
            public static Attribute<int> BuffIconCount9 = new SimpleAttribute<int>(AttributeId.BuffIconCount9, 0);
            public static Attribute<int> BuffIconCount10 = new SimpleAttribute<int>(AttributeId.BuffIconCount10, 0);
            public static Attribute<int> BuffIconCount11 = new SimpleAttribute<int>(AttributeId.BuffIconCount11, 0);
            public static Attribute<int> BuffIconCount12 = new SimpleAttribute<int>(AttributeId.BuffIconCount12, 0);
            public static Attribute<int> BuffIconCount13 = new SimpleAttribute<int>(AttributeId.BuffIconCount13, 0);
            public static Attribute<int> BuffIconCount14 = new SimpleAttribute<int>(AttributeId.BuffIconCount14, 0);
            public static Attribute<int> BuffIconCount15 = new SimpleAttribute<int>(AttributeId.BuffIconCount15, 0);
            public static Attribute<int> BuffIconCount16 = new SimpleAttribute<int>(AttributeId.BuffIconCount16, 0);
            public static Attribute<int> BuffIconCount17 = new SimpleAttribute<int>(AttributeId.BuffIconCount17, 0);
            public static Attribute<int> BuffIconCount18 = new SimpleAttribute<int>(AttributeId.BuffIconCount18, 0);
            public static Attribute<int> BuffIconCount19 = new SimpleAttribute<int>(AttributeId.BuffIconCount19, 0);
            public static Attribute<int> BuffIconCount20 = new SimpleAttribute<int>(AttributeId.BuffIconCount20, 0);
            public static Attribute<int> BuffIconCount21 = new SimpleAttribute<int>(AttributeId.BuffIconCount21, 0);
            public static Attribute<int> BuffIconCount22 = new SimpleAttribute<int>(AttributeId.BuffIconCount22, 0);
            public static Attribute<int> BuffIconCount23 = new SimpleAttribute<int>(AttributeId.BuffIconCount23, 0);
            public static Attribute<int> BuffIconCount24 = new SimpleAttribute<int>(AttributeId.BuffIconCount24, 0);
            public static Attribute<int> BuffIconCount25 = new SimpleAttribute<int>(AttributeId.BuffIconCount25, 0);
            public static Attribute<int> BuffIconCount26 = new SimpleAttribute<int>(AttributeId.BuffIconCount26, 0);
            public static Attribute<int> BuffIconCount27 = new SimpleAttribute<int>(AttributeId.BuffIconCount27, 0);
            public static Attribute<int> BuffIconCount28 = new SimpleAttribute<int>(AttributeId.BuffIconCount28, 0);
            public static Attribute<int> BuffIconCount29 = new SimpleAttribute<int>(AttributeId.BuffIconCount29, 0);
            public static Attribute<int> BuffIconCount30 = new SimpleAttribute<int>(AttributeId.BuffIconCount30, 0);
            public static Attribute<int> BuffIconCount31 = new SimpleAttribute<int>(AttributeId.BuffIconCount31, 0);
            public static Attribute<int> Observer = new SimpleAttribute<int>(AttributeId.Observer, 0);
            public static Attribute<int> ResurrectAsObserver = new SimpleAttribute<int>(AttributeId.ResurrectAsObserver, 0);
            public static Attribute<int> ComboLevel = new SimpleAttribute<int>(AttributeId.ComboLevel, 0);
            public static Attribute<int> ComboTimeLastMove = new SimpleAttribute<int>(AttributeId.ComboTimeLastMove, 0);
            public static Attribute<int> Burrowed = new SimpleAttribute<int>(AttributeId.Burrowed, 0);
            public static Attribute<int> DeathReplacementEffectGroupSNO = new SimpleAttribute<int>(AttributeId.DeathReplacementEffectGroupSNO, -1);
            public static Attribute<int> CheckpointResurrectionAllowedGameTime = new SimpleAttribute<int>(AttributeId.CheckpointResurrectionAllowedGameTime, 0);
            public static Attribute<int> CheckpointResurrectionForcedGameTime = new SimpleAttribute<int>(AttributeId.CheckpointResurrectionForcedGameTime, 0);
            public static Attribute<int> CorpseResurrectionAllowedGameTime = new SimpleAttribute<int>(AttributeId.CorpseResurrectionAllowedGameTime, 0);
            public static Attribute<int> CorpseResurrectionCharges = new SimpleAttribute<int>(AttributeId.CorpseResurrectionCharges, 0);
            public static Attribute<int> ControllingTimedEventSNO = new SimpleAttribute<int>(AttributeId.ControllingTimedEventSNO, -1);
            public static Attribute<float> CastingSpeedPercent = new SimpleAttribute<float>(AttributeId.CastingSpeedPercent, 0);
            public static Attribute<int> UsingBossbar = new SimpleAttribute<int>(AttributeId.UsingBossbar, 0);
            public static Attribute<int> PowerBuff0VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffect, 0);
            public static Attribute<int> PowerBuff1VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffect, 0);
            public static Attribute<int> PowerBuff2VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffect, 0);
            public static Attribute<int> PowerBuff3VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffect, 0);
            public static Attribute<int> PowerBuff4VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffect, 0);
            public static Attribute<int> PowerBuff5VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffect, 0);
            public static Attribute<int> PowerBuff6VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffect, 0);
            public static Attribute<int> PowerBuff7VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffect, 0);
            public static Attribute<int> PowerBuff8VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffect, 0);
            public static Attribute<int> PowerBuff9VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffect, 0);
            public static Attribute<int> PowerBuff10VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffect, 0);
            public static Attribute<int> PowerBuff11VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffect, 0);
            public static Attribute<int> PowerBuff12VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffect, 0);
            public static Attribute<int> PowerBuff13VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffect, 0);
            public static Attribute<int> PowerBuff14VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffect, 0);
            public static Attribute<int> PowerBuff15VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffect, 0);
            public static Attribute<int> PowerBuff16VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffect, 0);
            public static Attribute<int> PowerBuff17VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffect, 0);
            public static Attribute<int> PowerBuff18VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffect, 0);
            public static Attribute<int> PowerBuff19VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffect, 0);
            public static Attribute<int> PowerBuff20VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffect, 0);
            public static Attribute<int> PowerBuff21VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffect, 0);
            public static Attribute<int> PowerBuff22VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffect, 0);
            public static Attribute<int> PowerBuff23VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffect, 0);
            public static Attribute<int> PowerBuff24VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffect, 0);
            public static Attribute<int> PowerBuff25VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffect, 0);
            public static Attribute<int> PowerBuff26VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffect, 0);
            public static Attribute<int> PowerBuff27VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffect, 0);
            public static Attribute<int> PowerBuff28VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffect, 0);
            public static Attribute<int> PowerBuff29VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffect, 0);
            public static Attribute<int> PowerBuff30VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffect, 0);
            public static Attribute<int> PowerBuff31VisualEffect = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffect, 0);
            public static Attribute<int> StoreSNO = new SimpleAttribute<int>(AttributeId.StoreSNO, 0);
            public static Attribute<int> Busy = new SimpleAttribute<int>(AttributeId.Busy, 0);
            public static Attribute<int> Afk = new SimpleAttribute<int>(AttributeId.Afk, 0);
            public static Attribute<int> LorePlaying = new SimpleAttribute<int>(AttributeId.LorePlaying, 0);
            public static Attribute<int> LastActionTimestamp = new SimpleAttribute<int>(AttributeId.LastActionTimestamp, 0);
            public static Attribute<int> PortalNextTime = new SimpleAttribute<int>(AttributeId.PortalNextTime, 0);
            public static Attribute<float> RepairDiscountPercent = new SimpleAttribute<float>(AttributeId.RepairDiscountPercent, 0);
            public static Attribute<int> ResourceDegenerationPrevented = new SimpleAttribute<int>(AttributeId.ResourceDegenerationPrevented, 0);
            public static Attribute<int> Operatable = new SimpleAttribute<int>(AttributeId.Operatable, 0);
            public static Attribute<int> HasLookOverride = new SimpleAttribute<int>(AttributeId.HasLookOverride, 0);
            public static Attribute<int> SpawnerConcurrentCountID = new SimpleAttribute<int>(AttributeId.SpawnerConcurrentCountID, -1);
            public static Attribute<int> Disabled = new SimpleAttribute<int>(AttributeId.Disabled, 0);
            public static Attribute<int> SkillOverride = new SimpleAttribute<int>(AttributeId.SkillOverride, -1);
            public static Attribute<int> SkillOverrideActive = new SimpleAttribute<int>(AttributeId.SkillOverrideActive, 0);
            public static Attribute<int> SkillOverrideEnded = new SimpleAttribute<int>(AttributeId.SkillOverrideEnded, 0);
            public static Attribute<int> SkillOverrideEndedActive = new SimpleAttribute<int>(AttributeId.SkillOverrideEndedActive, 0);
            public static Attribute<int> IsPowerProxy = new SimpleAttribute<int>(AttributeId.IsPowerProxy, 0);
            public static Attribute<int> ForceNoDeathAnimation = new SimpleAttribute<int>(AttributeId.ForceNoDeathAnimation, 0);
            public static Attribute<int> PlayerWeaponClassAnimOverride = new SimpleAttribute<int>(AttributeId.PlayerWeaponClassAnimOverride, -1);
            public static Attribute<int> OperatableStoryGizmo = new SimpleAttribute<int>(AttributeId.OperatableStoryGizmo, 0);
            public static Attribute<int> PowerBuff0VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectNone, 0);
            public static Attribute<int> PowerBuff0VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectA, 0);
            public static Attribute<int> PowerBuff0VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectB, 0);
            public static Attribute<int> PowerBuff0VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectC, 0);
            public static Attribute<int> PowerBuff0VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectD, 0);
            public static Attribute<int> PowerBuff0VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff0VisualEffectE, 0);
            public static Attribute<int> PowerBuff1VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectNone, 0);
            public static Attribute<int> PowerBuff1VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectA, 0);
            public static Attribute<int> PowerBuff1VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectB, 0);
            public static Attribute<int> PowerBuff1VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectC, 0);
            public static Attribute<int> PowerBuff1VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectD, 0);
            public static Attribute<int> PowerBuff1VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff1VisualEffectE, 0);
            public static Attribute<int> PowerBuff2VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectNone, 0);
            public static Attribute<int> PowerBuff2VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectA, 0);
            public static Attribute<int> PowerBuff2VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectB, 0);
            public static Attribute<int> PowerBuff2VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectC, 0);
            public static Attribute<int> PowerBuff2VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectD, 0);
            public static Attribute<int> PowerBuff2VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff2VisualEffectE, 0);
            public static Attribute<int> PowerBuff3VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectNone, 0);
            public static Attribute<int> PowerBuff3VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectA, 0);
            public static Attribute<int> PowerBuff3VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectB, 0);
            public static Attribute<int> PowerBuff3VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectC, 0);
            public static Attribute<int> PowerBuff3VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectD, 0);
            public static Attribute<int> PowerBuff3VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff3VisualEffectE, 0);
            public static Attribute<int> PowerBuff4VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectNone, 0);
            public static Attribute<int> PowerBuff4VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectA, 0);
            public static Attribute<int> PowerBuff4VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectB, 0);
            public static Attribute<int> PowerBuff4VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectC, 0);
            public static Attribute<int> PowerBuff4VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectD, 0);
            public static Attribute<int> PowerBuff4VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff4VisualEffectE, 0);
            public static Attribute<int> PowerBuff5VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectNone, 0);
            public static Attribute<int> PowerBuff5VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectA, 0);
            public static Attribute<int> PowerBuff5VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectB, 0);
            public static Attribute<int> PowerBuff5VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectC, 0);
            public static Attribute<int> PowerBuff5VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectD, 0);
            public static Attribute<int> PowerBuff5VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff5VisualEffectE, 0);
            public static Attribute<int> PowerBuff6VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectNone, 0);
            public static Attribute<int> PowerBuff6VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectA, 0);
            public static Attribute<int> PowerBuff6VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectB, 0);
            public static Attribute<int> PowerBuff6VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectC, 0);
            public static Attribute<int> PowerBuff6VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectD, 0);
            public static Attribute<int> PowerBuff6VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff6VisualEffectE, 0);
            public static Attribute<int> PowerBuff7VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectNone, 0);
            public static Attribute<int> PowerBuff7VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectA, 0);
            public static Attribute<int> PowerBuff7VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectB, 0);
            public static Attribute<int> PowerBuff7VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectC, 0);
            public static Attribute<int> PowerBuff7VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectD, 0);
            public static Attribute<int> PowerBuff7VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff7VisualEffectE, 0);
            public static Attribute<int> PowerBuff8VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectNone, 0);
            public static Attribute<int> PowerBuff8VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectA, 0);
            public static Attribute<int> PowerBuff8VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectB, 0);
            public static Attribute<int> PowerBuff8VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectC, 0);
            public static Attribute<int> PowerBuff8VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectD, 0);
            public static Attribute<int> PowerBuff8VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff8VisualEffectE, 0);
            public static Attribute<int> PowerBuff9VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectNone, 0);
            public static Attribute<int> PowerBuff9VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectA, 0);
            public static Attribute<int> PowerBuff9VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectB, 0);
            public static Attribute<int> PowerBuff9VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectC, 0);
            public static Attribute<int> PowerBuff9VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectD, 0);
            public static Attribute<int> PowerBuff9VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff9VisualEffectE, 0);
            public static Attribute<int> PowerBuff10VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectNone, 0);
            public static Attribute<int> PowerBuff10VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectA, 0);
            public static Attribute<int> PowerBuff10VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectB, 0);
            public static Attribute<int> PowerBuff10VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectC, 0);
            public static Attribute<int> PowerBuff10VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectD, 0);
            public static Attribute<int> PowerBuff10VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff10VisualEffectE, 0);
            public static Attribute<int> PowerBuff11VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectNone, 0);
            public static Attribute<int> PowerBuff11VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectA, 0);
            public static Attribute<int> PowerBuff11VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectB, 0);
            public static Attribute<int> PowerBuff11VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectC, 0);
            public static Attribute<int> PowerBuff11VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectD, 0);
            public static Attribute<int> PowerBuff11VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff11VisualEffectE, 0);
            public static Attribute<int> PowerBuff12VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectNone, 0);
            public static Attribute<int> PowerBuff12VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectA, 0);
            public static Attribute<int> PowerBuff12VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectB, 0);
            public static Attribute<int> PowerBuff12VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectC, 0);
            public static Attribute<int> PowerBuff12VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectD, 0);
            public static Attribute<int> PowerBuff12VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff12VisualEffectE, 0);
            public static Attribute<int> PowerBuff13VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectNone, 0);
            public static Attribute<int> PowerBuff13VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectA, 0);
            public static Attribute<int> PowerBuff13VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectB, 0);
            public static Attribute<int> PowerBuff13VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectC, 0);
            public static Attribute<int> PowerBuff13VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectD, 0);
            public static Attribute<int> PowerBuff13VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff13VisualEffectE, 0);
            public static Attribute<int> PowerBuff14VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectNone, 0);
            public static Attribute<int> PowerBuff14VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectA, 0);
            public static Attribute<int> PowerBuff14VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectB, 0);
            public static Attribute<int> PowerBuff14VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectC, 0);
            public static Attribute<int> PowerBuff14VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectD, 0);
            public static Attribute<int> PowerBuff14VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff14VisualEffectE, 0);
            public static Attribute<int> PowerBuff15VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectNone, 0);
            public static Attribute<int> PowerBuff15VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectA, 0);
            public static Attribute<int> PowerBuff15VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectB, 0);
            public static Attribute<int> PowerBuff15VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectC, 0);
            public static Attribute<int> PowerBuff15VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectD, 0);
            public static Attribute<int> PowerBuff15VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff15VisualEffectE, 0);
            public static Attribute<int> PowerBuff16VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectNone, 0);
            public static Attribute<int> PowerBuff16VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectA, 0);
            public static Attribute<int> PowerBuff16VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectB, 0);
            public static Attribute<int> PowerBuff16VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectC, 0);
            public static Attribute<int> PowerBuff16VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectD, 0);
            public static Attribute<int> PowerBuff16VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff16VisualEffectE, 0);
            public static Attribute<int> PowerBuff17VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectNone, 0);
            public static Attribute<int> PowerBuff17VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectA, 0);
            public static Attribute<int> PowerBuff17VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectB, 0);
            public static Attribute<int> PowerBuff17VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectC, 0);
            public static Attribute<int> PowerBuff17VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectD, 0);
            public static Attribute<int> PowerBuff17VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff17VisualEffectE, 0);
            public static Attribute<int> PowerBuff18VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectNone, 0);
            public static Attribute<int> PowerBuff18VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectA, 0);
            public static Attribute<int> PowerBuff18VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectB, 0);
            public static Attribute<int> PowerBuff18VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectC, 0);
            public static Attribute<int> PowerBuff18VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectD, 0);
            public static Attribute<int> PowerBuff18VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff18VisualEffectE, 0);
            public static Attribute<int> PowerBuff19VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectNone, 0);
            public static Attribute<int> PowerBuff19VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectA, 0);
            public static Attribute<int> PowerBuff19VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectB, 0);
            public static Attribute<int> PowerBuff19VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectC, 0);
            public static Attribute<int> PowerBuff19VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectD, 0);
            public static Attribute<int> PowerBuff19VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff19VisualEffectE, 0);
            public static Attribute<int> PowerBuff20VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectNone, 0);
            public static Attribute<int> PowerBuff20VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectA, 0);
            public static Attribute<int> PowerBuff20VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectB, 0);
            public static Attribute<int> PowerBuff20VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectC, 0);
            public static Attribute<int> PowerBuff20VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectD, 0);
            public static Attribute<int> PowerBuff20VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff20VisualEffectE, 0);
            public static Attribute<int> PowerBuff21VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectNone, 0);
            public static Attribute<int> PowerBuff21VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectA, 0);
            public static Attribute<int> PowerBuff21VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectB, 0);
            public static Attribute<int> PowerBuff21VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectC, 0);
            public static Attribute<int> PowerBuff21VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectD, 0);
            public static Attribute<int> PowerBuff21VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff21VisualEffectE, 0);
            public static Attribute<int> PowerBuff22VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectNone, 0);
            public static Attribute<int> PowerBuff22VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectA, 0);
            public static Attribute<int> PowerBuff22VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectB, 0);
            public static Attribute<int> PowerBuff22VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectC, 0);
            public static Attribute<int> PowerBuff22VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectD, 0);
            public static Attribute<int> PowerBuff22VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff22VisualEffectE, 0);
            public static Attribute<int> PowerBuff23VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectNone, 0);
            public static Attribute<int> PowerBuff23VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectA, 0);
            public static Attribute<int> PowerBuff23VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectB, 0);
            public static Attribute<int> PowerBuff23VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectC, 0);
            public static Attribute<int> PowerBuff23VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectD, 0);
            public static Attribute<int> PowerBuff23VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff23VisualEffectE, 0);
            public static Attribute<int> PowerBuff24VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectNone, 0);
            public static Attribute<int> PowerBuff24VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectA, 0);
            public static Attribute<int> PowerBuff24VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectB, 0);
            public static Attribute<int> PowerBuff24VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectC, 0);
            public static Attribute<int> PowerBuff24VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectD, 0);
            public static Attribute<int> PowerBuff24VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff24VisualEffectE, 0);
            public static Attribute<int> PowerBuff25VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectNone, 0);
            public static Attribute<int> PowerBuff25VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectA, 0);
            public static Attribute<int> PowerBuff25VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectB, 0);
            public static Attribute<int> PowerBuff25VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectC, 0);
            public static Attribute<int> PowerBuff25VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectD, 0);
            public static Attribute<int> PowerBuff25VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff25VisualEffectE, 0);
            public static Attribute<int> PowerBuff26VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectNone, 0);
            public static Attribute<int> PowerBuff26VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectA, 0);
            public static Attribute<int> PowerBuff26VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectB, 0);
            public static Attribute<int> PowerBuff26VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectC, 0);
            public static Attribute<int> PowerBuff26VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectD, 0);
            public static Attribute<int> PowerBuff26VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff26VisualEffectE, 0);
            public static Attribute<int> PowerBuff27VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectNone, 0);
            public static Attribute<int> PowerBuff27VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectA, 0);
            public static Attribute<int> PowerBuff27VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectB, 0);
            public static Attribute<int> PowerBuff27VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectC, 0);
            public static Attribute<int> PowerBuff27VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectD, 0);
            public static Attribute<int> PowerBuff27VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff27VisualEffectE, 0);
            public static Attribute<int> PowerBuff28VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectNone, 0);
            public static Attribute<int> PowerBuff28VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectA, 0);
            public static Attribute<int> PowerBuff28VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectB, 0);
            public static Attribute<int> PowerBuff28VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectC, 0);
            public static Attribute<int> PowerBuff28VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectD, 0);
            public static Attribute<int> PowerBuff28VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff28VisualEffectE, 0);
            public static Attribute<int> PowerBuff29VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectNone, 0);
            public static Attribute<int> PowerBuff29VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectA, 0);
            public static Attribute<int> PowerBuff29VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectB, 0);
            public static Attribute<int> PowerBuff29VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectC, 0);
            public static Attribute<int> PowerBuff29VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectD, 0);
            public static Attribute<int> PowerBuff29VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff29VisualEffectE, 0);
            public static Attribute<int> PowerBuff30VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectNone, 0);
            public static Attribute<int> PowerBuff30VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectA, 0);
            public static Attribute<int> PowerBuff30VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectB, 0);
            public static Attribute<int> PowerBuff30VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectC, 0);
            public static Attribute<int> PowerBuff30VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectD, 0);
            public static Attribute<int> PowerBuff30VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff30VisualEffectE, 0);
            public static Attribute<int> PowerBuff31VisualEffectNone = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectNone, 0);
            public static Attribute<int> PowerBuff31VisualEffectA = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectA, 0);
            public static Attribute<int> PowerBuff31VisualEffectB = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectB, 0);
            public static Attribute<int> PowerBuff31VisualEffectC = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectC, 0);
            public static Attribute<int> PowerBuff31VisualEffectD = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectD, 0);
            public static Attribute<int> PowerBuff31VisualEffectE = new SimpleAttribute<int>(AttributeId.PowerBuff31VisualEffectE, 0);
            public static Attribute<int> WalkPassabilityPowerSNO = new SimpleAttribute<int>(AttributeId.WalkPassabilityPowerSNO, -1);
            public static Attribute<int> PassabilityPowerSNO = new SimpleAttribute<int>(AttributeId.PassabilityPowerSNO, -1);
            public static Attribute<int> FlippyID = new SimpleAttribute<int>(AttributeId.FlippyID, -1);
            public static Attribute<int> SummoningMachineNumCasters = new SimpleAttribute<int>(AttributeId.SummoningMachineNumCasters, 0);
            public static Attribute<int> SummoningMachineSpawnCount = new SimpleAttribute<int>(AttributeId.SummoningMachineSpawnCount, 0);
            public static Attribute<int> SummoningMachineNextSpawnTicks = new SimpleAttribute<int>(AttributeId.SummoningMachineNextSpawnTicks, 0);
            public static Attribute<int> SummoningMachineSpawnTeam = new SimpleAttribute<int>(AttributeId.SummoningMachineSpawnTeam, -1);
            public static Attribute<float> ScreenAttackRadiusConstant = new SimpleAttribute<float>(AttributeId.ScreenAttackRadiusConstant, 60);
            public static Attribute<float> MaxOfDamageDoneReductionPercentAnd1 = new SimpleAttribute<float>(AttributeId.MaxOfDamageDoneReductionPercentAnd1, 0);
            public static Attribute<int> SetItemCount = new SimpleAttribute<int>(AttributeId.SetItemCount, 0);
            public static Attribute<float> SpawnerCountdownPercent = new SimpleAttribute<float>(AttributeId.SpawnerCountdownPercent, 0);
            public static Attribute<int> AttackSlow = new SimpleAttribute<int>(AttributeId.AttackSlow, 0);
            public static Attribute<int> PowerDisabled = new SimpleAttribute<int>(AttributeId.PowerDisabled, 0);
            public static Attribute<int> WeaponEffectOverride = new SimpleAttribute<int>(AttributeId.WeaponEffectOverride, 0);
            public static Attribute<float> DebuffDurationReductionPercent = new SimpleAttribute<float>(AttributeId.DebuffDurationReductionPercent, 0);
            public static Attribute<int> UsesPvPPowerTags = new SimpleAttribute<int>(AttributeId.UsesPvPPowerTags, 0);
            public static Attribute<int> Trait = new SimpleAttribute<int>(AttributeId.Trait, 0);
            public static Attribute<int> LastACDAttackedBy = new SimpleAttribute<int>(AttributeId.LastACDAttackedBy, -1);
            public static Attribute<float> GoldPickUpRadius = new SimpleAttribute<float>(AttributeId.GoldPickUpRadius, 0);
            public static Attribute<int> ClientOnlyEffect = new SimpleAttribute<int>(AttributeId.ClientOnlyEffect, -1);
            public static Attribute<int> PowerSavedAttribute = new SimpleAttribute<int>(AttributeId.PowerSavedAttribute, 0);
            public static Attribute<float> ResourceGainBonusPercent = new SimpleAttribute<float>(AttributeId.ResourceGainBonusPercent, 0);
            public static Attribute<int> LoopingAnimationStartTime = new SimpleAttribute<int>(AttributeId.LoopingAnimationStartTime, 0);
            public static Attribute<int> LoopingAnimationEndTime = new SimpleAttribute<int>(AttributeId.LoopingAnimationEndTime, 0);
            public static Attribute<int> LoopingAnimationSuppressItemTooltips = new SimpleAttribute<int>(AttributeId.LoopingAnimationSuppressItemTooltips, 0);
            public static Attribute<int> HealEffectLastPlayedTick = new SimpleAttribute<int>(AttributeId.HealEffectLastPlayedTick, -1);
            public static Attribute<int> ResourceEffectLastPlayedtick = new SimpleAttribute<int>(AttributeId.ResourceEffectLastPlayedtick, -1);
            public static Attribute<int> ThornsEffectLastPlayedtick = new SimpleAttribute<int>(AttributeId.ThornsEffectLastPlayedtick, -1);
            public static Attribute<int> PVPKills = new SimpleAttribute<int>(AttributeId.PVPKills, 0);
            public static Attribute<int> PVPDeaths = new SimpleAttribute<int>(AttributeId.PVPDeaths, 0);
            public static Attribute<int> PVPAssists = new SimpleAttribute<int>(AttributeId.PVPAssists, 0);
            public static Attribute<int> PVPProgressionPointsGained = new SimpleAttribute<int>(AttributeId.PVPProgressionPointsGained, 0);
            public static Attribute<int> PVPCurrentKillStreak = new SimpleAttribute<int>(AttributeId.PVPCurrentKillStreak, 0);
            public static Attribute<int> PVPCurrentDeathStreak = new SimpleAttribute<int>(AttributeId.PVPCurrentDeathStreak, 0);
            public static Attribute<int> PVPLongestKillStreak = new SimpleAttribute<int>(AttributeId.PVPLongestKillStreak, 0);
            public static Attribute<int> PVPLongestDeathStreak = new SimpleAttribute<int>(AttributeId.PVPLongestDeathStreak, 0);
            public static Attribute<float> TurnRateScalar = new SimpleAttribute<float>(AttributeId.TurnRateScalar, 1);
            public static Attribute<float> TurnAccelScalar = new SimpleAttribute<float>(AttributeId.TurnAccelScalar, 1);
            public static Attribute<float> TurnDeccelScalar = new SimpleAttribute<float>(AttributeId.TurnDeccelScalar, 1);
            public static Attribute<int> NoHealthDrop = new SimpleAttribute<int>(AttributeId.NoHealthDrop, 0);
            public static Attribute<int> Leader = new SimpleAttribute<int>(AttributeId.Leader, 0);
            public static Attribute<int> IsContentRestrictedActor = new SimpleAttribute<int>(AttributeId.IsContentRestrictedActor, 0);
            public static Attribute<int> InBossEncounter = new SimpleAttribute<int>(AttributeId.InBossEncounter, 0);
            public static Attribute<int> God = new SimpleAttribute<int>(AttributeId.God, 0);
            public static Attribute<int> MinimapActive = new SimpleAttribute<int>(AttributeId.MinimapActive, 0);
            public static Attribute<int> MinimapIconOverride = new SimpleAttribute<int>(AttributeId.MinimapIconOverride, -1);
            public static Attribute<int> MinimapDisableArrow = new SimpleAttribute<int>(AttributeId.MinimapDisableArrow, 0);
            public static Attribute<int> LastBlockedACD = new SimpleAttribute<int>(AttributeId.LastBlockedACD, -1);
            public static Attribute<int> LastBlockedTime = new SimpleAttribute<int>(AttributeId.LastBlockedTime, 0);
            public static Attribute<int> DeactivateLure = new SimpleAttribute<int>(AttributeId.DeactivateLure, 0);
            public static Attribute<int> WeaponsHidden = new SimpleAttribute<int>(AttributeId.WeaponsHidden, 0);
            public static Attribute<int> MainHandWeaponHidden = new SimpleAttribute<int>(AttributeId.MainHandWeaponHidden, 0);
            public static Attribute<int> OffHandWeaponHidden = new SimpleAttribute<int>(AttributeId.OffHandWeaponHidden, 0);
            public static Attribute<int> ActorUpdatesAttributesFromOwner = new SimpleAttribute<int>(AttributeId.ActorUpdatesAttributesFromOwner, 0);
            public static Attribute<int> TauntTargetACD = new SimpleAttribute<int>(AttributeId.TauntTargetACD, -1);
            public static Attribute<int> CharmSourceACD = new SimpleAttribute<int>(AttributeId.CharmSourceACD, -1);
            public static Attribute<float> UIOnlyPercentDamageIncrease = new SimpleAttribute<float>(AttributeId.UIOnlyPercentDamageIncrease, 0);
            public static Attribute<int> ProjectileEffectSNO = new SimpleAttribute<int>(AttributeId.ProjectileEffectSNO, -1);
            public static Attribute<float> OnHitFearProcChance = new SimpleAttribute<float>(AttributeId.OnHitFearProcChance, 0);
            public static Attribute<float> OnHitStunProcChance = new SimpleAttribute<float>(AttributeId.OnHitStunProcChance, 0);
            public static Attribute<float> OnHitBlindProcChance = new SimpleAttribute<float>(AttributeId.OnHitBlindProcChance, 0);
            public static Attribute<float> OnHitFreezeProcChance = new SimpleAttribute<float>(AttributeId.OnHitFreezeProcChance, 0);
            public static Attribute<float> OnHitChillProcChance = new SimpleAttribute<float>(AttributeId.OnHitChillProcChance, 0);
            public static Attribute<float> OnHitSlowProcChance = new SimpleAttribute<float>(AttributeId.OnHitSlowProcChance, 0);
            public static Attribute<float> OnHitImmobilizeProcChance = new SimpleAttribute<float>(AttributeId.OnHitImmobilizeProcChance, 0);
            public static Attribute<float> OnHitKnockbackProcChance = new SimpleAttribute<float>(AttributeId.OnHitKnockbackProcChance, 0);
            public static Attribute<float> OnHitBleedProcChance = new SimpleAttribute<float>(AttributeId.OnHitBleedProcChance, 0);
            public static Attribute<float> OnHitBleedProcDamageBase = new SimpleAttribute<float>(AttributeId.OnHitBleedProcDamageBase, 0);
            public static Attribute<float> OnHitBleedProcDamageDelta = new SimpleAttribute<float>(AttributeId.OnHitBleedProcDamageDelta, 0);
            public static Attribute<float> DamagePercentReductionFromRanged = new SimpleAttribute<float>(AttributeId.DamagePercentReductionFromRanged, 0);
            public static Attribute<float> DamagePercentReductionFromMelee = new SimpleAttribute<float>(AttributeId.DamagePercentReductionFromMelee, 0);
            public static Attribute<float> DamagePercentReductionTurnsIntoHeal = new SimpleAttribute<float>(AttributeId.DamagePercentReductionTurnsIntoHeal, 0);
            public static Attribute<float> DamagePercentReductionFromElites = new SimpleAttribute<float>(AttributeId.DamagePercentReductionFromElites, 0);
            public static Attribute<float> DamagePercentReductionFromType = new SimpleAttribute<float>(AttributeId.DamagePercentReductionFromType, 0);
            public static Attribute<float> DamagePercentBonusVsMonsterType = new SimpleAttribute<float>(AttributeId.DamagePercentBonusVsMonsterType, 0);
            public static Attribute<float> DamagePercentBonusVsElites = new SimpleAttribute<float>(AttributeId.DamagePercentBonusVsElites, 0);
            public static Attribute<int> ItemManipulationTimeout = new SimpleAttribute<int>(AttributeId.ItemManipulationTimeout, 0);
            public static Attribute<int> PickedUpTime = new SimpleAttribute<int>(AttributeId.PickedUpTime, 0);
            public static Attribute<int> UnequippedTime = new SimpleAttribute<int>(AttributeId.UnequippedTime, 1);
            public static Attribute<int> LastACDKilledTime = new SimpleAttribute<int>(AttributeId.LastACDKilledTime, 0);
            public static Attribute<int> CannotDieDuring = new SimpleAttribute<int>(AttributeId.CannotDieDuring, 0);
            public static Attribute<float> WeaponOnHitFearProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitFearProcChance, 0);
            public static Attribute<float> WeaponOnHitStunProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitStunProcChance, 0);
            public static Attribute<float> WeaponOnHitBlindProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitBlindProcChance, 0);
            public static Attribute<float> WeaponOnHitFreezeProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitFreezeProcChance, 0);
            public static Attribute<float> WeaponOnHitChillProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitChillProcChance, 0);
            public static Attribute<float> WeaponOnHitSlowProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitSlowProcChance, 0);
            public static Attribute<float> WeaponOnHitImmobilizeProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitImmobilizeProcChance, 0);
            public static Attribute<float> WeaponOnHitKnockbackProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitKnockbackProcChance, 0);
            public static Attribute<float> WeaponOnHitBleedProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcChance, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageBase = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageBase, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageDelta = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageDelta, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcChance = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcChance, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDamage = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDamage, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDuration = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDuration, 0);
            public static Attribute<float> WeaponOnHitFearProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFearProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitFearProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFearProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitFearProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFearProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitStunProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitStunProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitStunProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitStunProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitStunProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitStunProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitBlindProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBlindProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitBlindProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBlindProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitBlindProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBlindProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitFreezeProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFreezeProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitFreezeProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFreezeProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitFreezeProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitFreezeProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitChillProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitChillProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitChillProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitChillProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitChillProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitChillProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitSlowProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitSlowProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitSlowProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitSlowProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitSlowProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitSlowProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitImmobilizeProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitImmobilizeProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitImmobilizeProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitImmobilizeProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitImmobilizeProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitImmobilizeProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitKnockbackProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitKnockbackProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitKnockbackProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitKnockbackProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitKnockbackProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitKnockbackProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageBaseMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageBaseMainHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageBaseOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageBaseOffHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageBaseCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageBaseCurrentHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageDeltaMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageDeltaMainHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageDeltaOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageDeltaOffHand, 0);
            public static Attribute<float> WeaponOnHitBleedProcDamageDeltaCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitBleedProcDamageDeltaCurrentHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcChanceMainHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcChanceOffHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcChanceCurrentHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDamageMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDamageMainHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDamageBaseOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDamageBaseOffHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDamageBaseCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDamageBaseCurrentHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDurationMainHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDurationMainHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDurationOffHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDurationOffHand, 0);
            public static Attribute<float> WeaponOnHitPercentBleedProcDurationCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponOnHitPercentBleedProcDurationCurrentHand, 0);
            public static Attribute<float> PowerDamagePercentBonus = new SimpleAttribute<float>(AttributeId.PowerDamagePercentBonus, 0);
            public static Attribute<float> PowerInstanceDamagePercentBonus = new SimpleAttribute<float>(AttributeId.PowerInstanceDamagePercentBonus, 0);
            public static Attribute<float> PowerResourceReduction = new SimpleAttribute<float>(AttributeId.PowerResourceReduction, 0);
            public static Attribute<float> PowerResourceReductionPercent = new SimpleAttribute<float>(AttributeId.PowerResourceReductionPercent, 0);
            public static Attribute<float> PowerCooldownReduction = new SimpleAttribute<float>(AttributeId.PowerCooldownReduction, 0);
            public static Attribute<float> PowerDurationIncrease = new SimpleAttribute<float>(AttributeId.PowerDurationIncrease, 0);
            public static Attribute<float> PowerCritPercentBonus = new SimpleAttribute<float>(AttributeId.PowerCritPercentBonus, 0);
            public static Attribute<float> WeaponCritChance = new SimpleAttribute<float>(AttributeId.WeaponCritChance, 0);
            public static Attribute<float> WeaponCritChanceMainHand = new SimpleAttribute<float>(AttributeId.WeaponCritChanceMainHand, 0);
            public static Attribute<float> WeaponCritChanceOffHand = new SimpleAttribute<float>(AttributeId.WeaponCritChanceOffHand, 0);
            public static Attribute<float> WeaponCritChanceCurrentHand = new SimpleAttribute<float>(AttributeId.WeaponCritChanceCurrentHand, 0);
            public static Attribute<float> StrengthItem = new SimpleAttribute<float>(AttributeId.StrengthItem, 0);
            public static Attribute<float> DexterityItem = new SimpleAttribute<float>(AttributeId.DexterityItem, 0);
            public static Attribute<float> IntelligenceItem = new SimpleAttribute<float>(AttributeId.IntelligenceItem, 0);
            public static Attribute<float> VitalityItem = new SimpleAttribute<float>(AttributeId.VitalityItem, 0);
            public static Attribute<int> ItemLevelRequirementReduction = new SimpleAttribute<int>(AttributeId.ItemLevelRequirementReduction, 0);
            public static Attribute<float> ItemDurabilityPercentBonus = new SimpleAttribute<float>(AttributeId.ItemDurabilityPercentBonus, 0);
            public static Attribute<int> ItemIndestructible = new SimpleAttribute<int>(AttributeId.ItemIndestructible, 0);
            public static Attribute<int> PlayerAllItemsIndestructible = new SimpleAttribute<int>(AttributeId.PlayerAllItemsIndestructible, 0);
            public static Attribute<float> CoreAttributesFromItemBonusMultiplier = new SimpleAttribute<float>(AttributeId.CoreAttributesFromItemBonusMultiplier, 1);
            public static Attribute<int> WaitingToAcceptResurrection = new SimpleAttribute<int>(AttributeId.WaitingToAcceptResurrection, 0);
            public static Attribute<int> Ghosted = new SimpleAttribute<int>(AttributeId.Ghosted, 0);
            public static Attribute<int> SpecialInventoryHasSold = new SimpleAttribute<int>(AttributeId.SpecialInventoryHasSold, 0);
            public static Attribute<int> SpecialInventoryIndex = new SimpleAttribute<int>(AttributeId.SpecialInventoryIndex, -1);
            public static Attribute<int> InventoryRerollTime = new SimpleAttribute<int>(AttributeId.InventoryRerollTime, 0);
            public static Attribute<int> PerkBuffPollNextTime = new SimpleAttribute<int>(AttributeId.PerkBuffPollNextTime, 0);
            public static Attribute<int> PowerChannelLockoutTime = new SimpleAttribute<int>(AttributeId.PowerChannelLockoutTime, 0);
            public static Attribute<int> PowerBuff0LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff0LockoutTime, 0);
            public static Attribute<int> PowerBuff1LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff1LockoutTime, 0);
            public static Attribute<int> PowerBuff2LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff2LockoutTime, 0);
            public static Attribute<int> PowerBuff3LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff3LockoutTime, 0);
            public static Attribute<int> PowerBuff4LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff4LockoutTime, 0);
            public static Attribute<int> PowerBuff5LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff5LockoutTime, 0);
            public static Attribute<int> PowerBuff6LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff6LockoutTime, 0);
            public static Attribute<int> PowerBuff7LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff7LockoutTime, 0);
            public static Attribute<int> PowerBuff8LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff8LockoutTime, 0);
            public static Attribute<int> PowerBuff9LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff9LockoutTime, 0);
            public static Attribute<int> PowerBuff10LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff10LockoutTime, 0);
            public static Attribute<int> PowerBuff11LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff11LockoutTime, 0);
            public static Attribute<int> PowerBuff12LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff12LockoutTime, 0);
            public static Attribute<int> PowerBuff13LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff13LockoutTime, 0);
            public static Attribute<int> PowerBuff14LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff14LockoutTime, 0);
            public static Attribute<int> PowerBuff15LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff15LockoutTime, 0);
            public static Attribute<int> PowerBuff16LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff16LockoutTime, 0);
            public static Attribute<int> PowerBuff17LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff17LockoutTime, 0);
            public static Attribute<int> PowerBuff18LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff18LockoutTime, 0);
            public static Attribute<int> PowerBuff19LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff19LockoutTime, 0);
            public static Attribute<int> PowerBuff20LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff20LockoutTime, 0);
            public static Attribute<int> PowerBuff21LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff21LockoutTime, 0);
            public static Attribute<int> PowerBuff22LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff22LockoutTime, 0);
            public static Attribute<int> PowerBuff23LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff23LockoutTime, 0);
            public static Attribute<int> PowerBuff24LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff24LockoutTime, 0);
            public static Attribute<int> PowerBuff25LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff25LockoutTime, 0);
            public static Attribute<int> PowerBuff26LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff26LockoutTime, 0);
            public static Attribute<int> PowerBuff27LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff27LockoutTime, 0);
            public static Attribute<int> PowerBuff28LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff28LockoutTime, 0);
            public static Attribute<int> PowerBuff29LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff29LockoutTime, 0);
            public static Attribute<int> PowerBuff30LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff30LockoutTime, 0);
            public static Attribute<int> PowerBuff31LockoutTime = new SimpleAttribute<int>(AttributeId.PowerBuff31LockoutTime, 0);
            public static Attribute<int> KnownByOwner = new SimpleAttribute<int>(AttributeId.KnownByOwner, -1);
            public static Attribute<int> NeverDeactivates = new SimpleAttribute<int>(AttributeId.NeverDeactivates, 0);
            public static Attribute<int> AccountUnderReview = new SimpleAttribute<int>(AttributeId.AccountUnderReview, 0);
            public static Attribute<int> ProjectileDetonateTime = new SimpleAttribute<int>(AttributeId.ProjectileDetonateTime, 0);
            public static Attribute<int> ProjectileUncappedLifetime = new SimpleAttribute<int>(AttributeId.ProjectileUncappedLifetime, 0);
            public static Attribute<int> PageOfFateItem = new SimpleAttribute<int>(AttributeId.PageOfFateItem, -1);
            public static Attribute<int> Accolade0 = new SimpleAttribute<int>(AttributeId.Accolade0, -1);
            public static Attribute<int> Accolade1 = new SimpleAttribute<int>(AttributeId.Accolade1, -1);
            public static Attribute<int> Accolade2 = new SimpleAttribute<int>(AttributeId.Accolade2, -1);
            public static Attribute<int> Accolade3 = new SimpleAttribute<int>(AttributeId.Accolade3, -1);
            public static Attribute<int> Accolade4 = new SimpleAttribute<int>(AttributeId.Accolade4, -1);
            public static Attribute<float> Accolade0Value = new SimpleAttribute<float>(AttributeId.Accolade0Value, 0);
            public static Attribute<float> Accolade1Value = new SimpleAttribute<float>(AttributeId.Accolade1Value, 0);
            public static Attribute<float> Accolade2Value = new SimpleAttribute<float>(AttributeId.Accolade2Value, 0);
            public static Attribute<float> Accolade3Value = new SimpleAttribute<float>(AttributeId.Accolade3Value, 0);
            public static Attribute<float> Accolade4Value = new SimpleAttribute<float>(AttributeId.Accolade4Value, 0);
            public static Attribute<int> PVPRank = new SimpleAttribute<int>(AttributeId.PVPRank, 0);
            public static Attribute<int> PVPTokens = new SimpleAttribute<int>(AttributeId.PVPTokens, 0);
            public static Attribute<int> PVPExperienceNextLo = new SimpleAttribute<int>(AttributeId.PVPExperienceNextLo, 0);
            public static Attribute<int> PVPExperienceNextHi = new SimpleAttribute<int>(AttributeId.PVPExperienceNextHi, 0);
            public static Attribute<ulong> PVPExperienceNext = new ComplexAttribute(AttributeId.PVPExperienceNextHi, 0, AttributeId.PVPExperienceNextLo, 0);
            public static Attribute<int> PVPGoldGainedThisGame = new SimpleAttribute<int>(AttributeId.PVPGoldGainedThisGame, 0);
            public static Attribute<int> PVPPVPExperienceGainedThisGameLo = new SimpleAttribute<int>(AttributeId.PVPPVPExperienceGainedThisGameLo, 0);
            public static Attribute<int> PVPPVPExperienceGainedThisGameHi = new SimpleAttribute<int>(AttributeId.PVPPVPExperienceGainedThisGameHi, 0);
            public static Attribute<ulong> PVPPVPExperienceGainedThisGame = new ComplexAttribute(AttributeId.PVPPVPExperienceGainedThisGameHi, 0, AttributeId.PVPPVPExperienceGainedThisGameLo, 0);
            public static Attribute<int> PVPNormalExperienceGainedThisGameLo = new SimpleAttribute<int>(AttributeId.PVPNormalExperienceGainedThisGameLo, 0);
            public static Attribute<int> PVPNormalExperienceGainedThisGameHi = new SimpleAttribute<int>(AttributeId.PVPNormalExperienceGainedThisGameHi, 0);
            public static Attribute<ulong> PVPNormalExperienceGainedThisGame = new ComplexAttribute(AttributeId.PVPNormalExperienceGainedThisGameHi, 0, AttributeId.PVPNormalExperienceGainedThisGameLo, 0);
            public static Attribute<int> PVPTokensGainedThisGame = new SimpleAttribute<int>(AttributeId.PVPTokensGainedThisGame, 0);
            public static Attribute<int> PVPLevelEqualizerLevel = new SimpleAttribute<int>(AttributeId.PVPLevelEqualizerLevel, 0);
            public static Attribute<int> IsTemporaryLure = new SimpleAttribute<int>(AttributeId.IsTemporaryLure, 1);
            public static Attribute<int> IgnoreLure = new SimpleAttribute<int>(AttributeId.IgnoreLure, 0);
            public static Attribute<int> EffectOwnerANN = new SimpleAttribute<int>(AttributeId.EffectOwnerANN, -1);
            public static Attribute<int> EliteEngaged = new SimpleAttribute<int>(AttributeId.EliteEngaged, 0);
            public static Attribute<int> EngagedRareTime = new SimpleAttribute<int>(AttributeId.EngagedRareTime, 0);
            public static Attribute<int> EngagedGoblinTime = new SimpleAttribute<int>(AttributeId.EngagedGoblinTime, 0);
            public static Attribute<int> OnDeathAccolade0 = new SimpleAttribute<int>(AttributeId.OnDeathAccolade0, -1);
            public static Attribute<float> OnDeathAccolade0Value = new SimpleAttribute<float>(AttributeId.OnDeathAccolade0Value, 0);
            public static Attribute<float> ItemPowerPassive = new SimpleAttribute<float>(AttributeId.ItemPowerPassive, 0);
            public static Attribute<int> PVPTeamDeathmatchGamesPlayed = new SimpleAttribute<int>(AttributeId.PVPTeamDeathmatchGamesPlayed, 0);
            public static Attribute<int> LastHealthDropInterval = new SimpleAttribute<int>(AttributeId.LastHealthDropInterval, -1);
            public static Attribute<float> CrowdControlResistance = new SimpleAttribute<float>(AttributeId.CrowdControlResistance, 0);
            public static Attribute<int> CrowdControlProjectedEndTime = new SimpleAttribute<int>(AttributeId.CrowdControlProjectedEndTime, 0);
            public static Attribute<int> Charmed = new SimpleAttribute<int>(AttributeId.Charmed, 0);
            public static Attribute<int> Taunted = new SimpleAttribute<int>(AttributeId.Taunted, 0);
            public static Attribute<int> Dueling = new SimpleAttribute<int>(AttributeId.Dueling, 0);
            public static Attribute<int> PVPPlayerRevealedOnMap = new SimpleAttribute<int>(AttributeId.PVPPlayerRevealedOnMap, 0);
            public static Attribute<int> TargetedLegendaryChance = new SimpleAttribute<int>(AttributeId.TargetedLegendaryChance, 0);
            public static Attribute<int> HasDroppedSpecialloot = new SimpleAttribute<int>(AttributeId.HasDroppedSpecialloot, 0);
            public static Attribute<int> ScrollBuff = new SimpleAttribute<int>(AttributeId.ScrollBuff, 0);
            public static Attribute<int> BuffExclusiveTypeActive = new SimpleAttribute<int>(AttributeId.BuffExclusiveTypeActive, 0);
            public static Attribute<int> InCombatWithPlayer = new SimpleAttribute<int>(AttributeId.InCombatWithPlayer, 0);
            public static Attribute<int> ActorForwardsBuffs = new SimpleAttribute<int>(AttributeId.ActorForwardsBuffs, -1);
            public static Attribute<int> ItemMarkedAsJunk = new SimpleAttribute<int>(AttributeId.ItemMarkedAsJunk, 0);
            public static Attribute<int> Allow2HAndShield = new SimpleAttribute<int>(AttributeId.Allow2HAndShield, 0);
            public static Attribute<float> ClassDamageReductionPercentPVP = new SimpleAttribute<float>(AttributeId.ClassDamageReductionPercentPVP, 0);
            public static Attribute<int> ParagonBonus = new SimpleAttribute<int>(AttributeId.ParagonBonus, 0);
            public static Attribute<int> ParagonBonusPointsAvailable = new SimpleAttribute<int>(AttributeId.ParagonBonusPointsAvailable, 0);
            public static Attribute<float> DungeonFinderProgressPercent = new SimpleAttribute<float>(AttributeId.DungeonFinderProgressPercent, 0);
            public static Attribute<int> ItemTradePlayerHigh = new SimpleAttribute<int>(AttributeId.ItemTradePlayerHigh, 0);
            public static Attribute<int> ItemTradePlayerLow = new SimpleAttribute<int>(AttributeId.ItemTradePlayerLow, 0);
            public static Attribute<int> ItemTradeEndTime = new SimpleAttribute<int>(AttributeId.ItemTradeEndTime, 0);
            public static Attribute<int> ItemTradeTimerID = new SimpleAttribute<int>(AttributeId.ItemTradeTimerID, -1);
            public static Attribute<int> ItemIsBOE = new SimpleAttribute<int>(AttributeId.ItemIsBOE, 0);
            public static Attribute<int> Season = new SimpleAttribute<int>(AttributeId.Season, 0);
            public static Attribute<int> DamageDoneTotalTrackedHi = new SimpleAttribute<int>(AttributeId.DamageDoneTotalTrackedHi, 0);
            public static Attribute<int> DamageDoneTotalTrackedLo = new SimpleAttribute<int>(AttributeId.DamageDoneTotalTrackedLo, 0);
            public static Attribute<ulong> DamageDoneTotalTracked = new ComplexAttribute(AttributeId.DamageDoneTotalTrackedHi, 0, AttributeId.DamageDoneTotalTrackedLo, 0);
            public static Attribute<int> DamageDoneTrackingStartTick = new SimpleAttribute<int>(AttributeId.DamageDoneTrackingStartTick, 0);
            public static Attribute<int> PowerPersistsAcrossGames = new SimpleAttribute<int>(AttributeId.PowerPersistsAcrossGames, 0);
            public static Attribute<float> ExperienceBonusPercentIGRBuff = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentIGRBuff, 0);
            public static Attribute<float> ExperienceBonusPercentAnniversaryBuff = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentAnniversaryBuff, 0);
            public static Attribute<float> ExperienceBonusPercentCommunityBuff = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentCommunityBuff, 0);
            public static Attribute<float> ExperienceBonusPercentSuperScalar = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentSuperScalar, 0);
            public static Attribute<float> ExperienceBonusPercentSuperScalarTotal = new SimpleAttribute<float>(AttributeId.ExperienceBonusPercentSuperScalarTotal, 0);
            public static Attribute<int> AlwaysShowFloatingNumbers = new SimpleAttribute<int>(AttributeId.AlwaysShowFloatingNumbers, 0);
            public static Attribute<int> TargetedRareChance = new SimpleAttribute<int>(AttributeId.TargetedRareChance, 0);
            public static Attribute<int> SupressThornsEffect = new SimpleAttribute<int>(AttributeId.SupressThornsEffect, 0);
            public static Attribute<int> DynamicEntranceGUID = new SimpleAttribute<int>(AttributeId.DynamicEntranceGUID, 0);
            public static Attribute<float> BonusChanceToBeCritHit = new SimpleAttribute<float>(AttributeId.BonusChanceToBeCritHit, 0);
            public static Attribute<float> BonusChanceToBeCritHitByActor = new SimpleAttribute<float>(AttributeId.BonusChanceToBeCritHitByActor, 0);
            public static Attribute<float> BonusChanceToReceiveCrushingBlown = new SimpleAttribute<float>(AttributeId.BonusChanceToReceiveCrushingBlown, 0);
            public static Attribute<int> ForceGripped = new SimpleAttribute<int>(AttributeId.ForceGripped, 0);
            public static Attribute<float> PowerBonusAttackRadius = new SimpleAttribute<float>(AttributeId.PowerBonusAttackRadius, 0);
            public static Attribute<int> ItemStorePlayerHigh = new SimpleAttribute<int>(AttributeId.ItemStorePlayerHigh, 0);
            public static Attribute<int> ItemStorePlayerLow = new SimpleAttribute<int>(AttributeId.ItemStorePlayerLow, 0);
            public static Attribute<float> PowerPrimaryResourceCostOverride = new SimpleAttribute<float>(AttributeId.PowerPrimaryResourceCostOverride, BitConverter.ToSingle(BitConverter.GetBytes(0x7F7FFFFF), 0));
            public static Attribute<float> PowerSecondaryResourceCostOverride = new SimpleAttribute<float>(AttributeId.PowerSecondaryResourceCostOverride, BitConverter.ToSingle(BitConverter.GetBytes(0x7F7FFFFF), 0));
            public static Attribute<float> PowerChannelCostOverride = new SimpleAttribute<float>(AttributeId.PowerChannelCostOverride, BitConverter.ToSingle(BitConverter.GetBytes(0x7F7FFFFF), 0));
            public static Attribute<int> RuneAOverride = new SimpleAttribute<int>(AttributeId.RuneAOverride, 0);
            public static Attribute<int> RuneBOverride = new SimpleAttribute<int>(AttributeId.RuneBOverride, 0);
            public static Attribute<int> RuneCOverride = new SimpleAttribute<int>(AttributeId.RuneCOverride, 0);
            public static Attribute<int> RuneDOverride = new SimpleAttribute<int>(AttributeId.RuneDOverride, 0);
            public static Attribute<int> RuneEOverride = new SimpleAttribute<int>(AttributeId.RuneEOverride, 0);
            public static Attribute<float> ElementalEffectAmplitudeBonus = new SimpleAttribute<float>(AttributeId.ElementalEffectAmplitudeBonus, 0);
            public static Attribute<float> ElementalEffectDurationBonus = new SimpleAttribute<float>(AttributeId.ElementalEffectDurationBonus, 0);
            public static Attribute<float> ElementalEffectProcChanceBonus = new SimpleAttribute<float>(AttributeId.ElementalEffectProcChanceBonus, 0);
            public static Attribute<float> SplashDamageEffectPercent = new SimpleAttribute<float>(AttributeId.SplashDamageEffectPercent, 0);
            public static Attribute<float> CrushingBlowProcChance = new SimpleAttribute<float>(AttributeId.CrushingBlowProcChance, 0);
            public static Attribute<int> ItemEquippedButDisabled = new SimpleAttribute<int>(AttributeId.ItemEquippedButDisabled, 0);
            public static Attribute<int> AttributeProjectilePassThrough = new SimpleAttribute<int>(AttributeId.AttributeProjectilePassThrough, 0);
            public static Attribute<int> AttributeSetItemDiscount = new SimpleAttribute<int>(AttributeId.AttributeSetItemDiscount, 0);
            public static Attribute<float> NegativeHealthGlobeSpawnChance = new SimpleAttribute<float>(AttributeId.NegativeHealthGlobeSpawnChance, 0);
            public static Attribute<int> OverrideAttachedAnim = new SimpleAttribute<int>(AttributeId.OverrideAttachedAnim, -1);
            public static Attribute<int> HasInfiniteShrineBuffs = new SimpleAttribute<int>(AttributeId.HasInfiniteShrineBuffs, 0);
            public static Attribute<int> ItemLegendaryItemBaseItem = new SimpleAttribute<int>(AttributeId.ItemLegendaryItemBaseItem, -1);
            public static Attribute<int> TargetedMagicChance = new SimpleAttribute<int>(AttributeId.TargetedMagicChance, 0);
            public static Attribute<int> DontUpdateCameraWhileAttached = new SimpleAttribute<int>(AttributeId.DontUpdateCameraWhileAttached, 0);
            public static Attribute<int> LinkedDynamicEntranceGUID = new SimpleAttribute<int>(AttributeId.LinkedDynamicEntranceGUID, 0);
            public static Attribute<int> BoostTCIndex = new SimpleAttribute<int>(AttributeId.BoostTCIndex, 0);
            public static Attribute<int> BoostTCNextTime = new SimpleAttribute<int>(AttributeId.BoostTCNextTime, 0);
            public static Attribute<float> PotionBonusArmorPercent = new SimpleAttribute<float>(AttributeId.PotionBonusArmorPercent, 0);
            public static Attribute<float> PotionBonusResistAll = new SimpleAttribute<float>(AttributeId.PotionBonusResistAll, 0);
            public static Attribute<float> PotionBonusHitpointsGranted = new SimpleAttribute<float>(AttributeId.PotionBonusHitpointsGranted, 0);
            public static Attribute<float> PotionBonusBuffDuration = new SimpleAttribute<float>(AttributeId.PotionBonusBuffDuration, 0);
            public static Attribute<float> PotionBonusLifeOnHit = new SimpleAttribute<float>(AttributeId.PotionBonusLifeOnHit, 0);
            public static Attribute<float> PotionBonusLifeOnKill = new SimpleAttribute<float>(AttributeId.PotionBonusLifeOnKill, 0);
            public static Attribute<int> LastSpecialItemTimeHigh = new SimpleAttribute<int>(AttributeId.LastSpecialItemTimeHigh, 0);
            public static Attribute<int> LastSpecialItemTimeLow = new SimpleAttribute<int>(AttributeId.LastSpecialItemTimeLow, 0);
            public static Attribute<float> ItemRestBonusPool = new SimpleAttribute<float>(AttributeId.ItemRestBonusPool, 0);
            public static Attribute<float> ItemUnluckyBonusSecs = new SimpleAttribute<float>(AttributeId.ItemUnluckyBonusSecs, 0);
            public static Attribute<int> ItemUnluckyBonusAllow = new SimpleAttribute<int>(AttributeId.ItemUnluckyBonusAllow, 0);
            public static Attribute<int> BountyObjective = new SimpleAttribute<int>(AttributeId.BountyObjective, 0);
            public static Attribute<int> Illusion = new SimpleAttribute<int>(AttributeId.Illusion, 0);
            public static Attribute<int> TornadoStraighten = new SimpleAttribute<int>(AttributeId.TornadoStraighten, 0);
            public static Attribute<int> PreventEvadeDuring = new SimpleAttribute<int>(AttributeId.PreventEvadeDuring, 0);
            public static Attribute<float> DamageBonusFromNephalemGlory = new SimpleAttribute<float>(AttributeId.DamageBonusFromNephalemGlory, 0);
            public static Attribute<int> ItemPlayerRecipient = new SimpleAttribute<int>(AttributeId.ItemPlayerRecipient, -1);
            public static Attribute<int> HeavensFuryAttacker = new SimpleAttribute<int>(AttributeId.HeavensFuryAttacker, -1);
            public static Attribute<int> ItemAssignedHeroHigh = new SimpleAttribute<int>(AttributeId.ItemAssignedHeroHigh, 0);
            public static Attribute<int> ItemAssignedHeroLow = new SimpleAttribute<int>(AttributeId.ItemAssignedHeroLow, 0);
            public static Attribute<int> PierceCharge = new SimpleAttribute<int>(AttributeId.PierceCharge, 0);
            public static Attribute<int> UpscaledLevel = new SimpleAttribute<int>(AttributeId.UpscaledLevel, 0);
            public static Attribute<int> Resurrected = new SimpleAttribute<int>(AttributeId.Resurrected, 0);
            public static Attribute<int> ThornsAOERadiusNextTime = new SimpleAttribute<int>(AttributeId.ThornsAOERadiusNextTime, 0);
            public static Attribute<int> MovementDestroysWallerWalls = new SimpleAttribute<int>(AttributeId.MovementDestroysWallerWalls, 0);
        }
    }
    Better names on the attributes (more C# like)
    Code:
    using System;using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    
    namespace Enigma.D3.Enums
    {
        public enum AttributeId
        {
            AxeBadData = 0,
            AttributeTimer = 1,
            AttributePool = 2,
            DeathCount = 3,
            DualWieldHand = 4,
            DualWieldHandNext = 5,
            DualWieldHandsSwapped = 6,
            RespawnGameTime = 7,
            BackpackSlots = 8,
            SharedStashSlots = 9,
            Strength = 10,
            Dexterity = 11,
            Intelligence = 12,
            Vitality = 13,
            StrengthTotal = 14,
            DexterityTotal = 15,
            IntelligenceTotal = 16,
            VitalityTotal = 17,
            StrengthBonus = 18,
            DexterityBonus = 19,
            IntelligenceBonus = 20,
            VitalityBonus = 21,
            StrengthBonusPercent = 22,
            DexterityBonusPercent = 23,
            IntelligenceBonusPercent = 24,
            VitalityBonusPercent = 25,
            StrengthReductionPercent = 26,
            DexterityReductionPercent = 27,
            IntelligenceReductionPercent = 28,
            VitalityReductionPercent = 29,
            PrimaryDamageAttribute = 30,
            Armor = 31,
            ArmorBonusPercent = 32,
            ArmorItem = 33,
            ArmorBonusItem = 34,
            ArmorItemPercent = 35,
            ArmorItemSubTotal = 36,
            ArmorItemTotal = 37,
            ArmorTotal = 38,
            ExperienceGranted = 39,
            ExperienceNextHi = 40,
            ExperienceNextLo = 41,
            AltExperienceNextHi = 42,
            AltExperienceNextLo = 43,
            RestExperienceHi = 44,
            RestExperienceLo = 45,
            RestExperienceBonusPercent = 46,
            GoldGranted = 47,
            Gold = 48,
            GoldFind = 49,
            GoldFindUncapped = 50,
            GoldFindHandicap = 51,
            GoldFindAltLevelsTotal = 52,
            GoldFindCappedSubtotal = 53,
            GoldFindTotal = 54,
            Level = 55,
            LevelCap = 56,
            AltLevel = 57,
            MagicFind = 58,
            MagicFindUncapped = 59,
            MagicFindHandicap = 60,
            MagicFindAltLevelsTotal = 61,
            MagicFindCappedSubtotal = 62,
            MagicFindTotal = 63,
            MagicAndGoldFindSuppressed = 64,
            TreasureFind = 65,
            ResourceCostReductionAmount = 66,
            ResourceCostReductionTotal = 67,
            ResourceSetPointBonus = 68,
            FasterHealingPercent = 69,
            SpendingResourceHealsPercent = 70,
            BonusHealingReceivedPercent = 71,
            ReducedHealingReceivedPercent = 72,
            HealingWellRestoresResource = 73,
            ExperienceBonus = 74,
            ExperienceBonusPercent = 75,
            ExperienceBonusPercentHandicap = 76,
            ExperienceBonusPercentTotal = 77,
            HealthGlobeBonusChance = 78,
            HealthGlobeBonusMultChance = 79,
            PowerupGlobeBonusChance = 80,
            PowerupGlobeBonusMultChance = 81,
            HealthGlobeBonusHealth = 82,
            IncreasedHealthFromGlobesPercent = 83,
            IncreasedHealthFromGlobesPercentTotal = 84,
            BonusHealthPercentPerSecondFromGlobes = 85,
            BonusHealthPercentPerSecondFromGlobesTotal = 86,
            ManaGainedFromGlobesPercent = 87,
            ManaGainedFromGlobes = 88,
            Resistance = 89,
            ResistancePercent = 90,
            ResistanceTotal = 91,
            ResistanceAll = 92,
            ResistancePercentAll = 93,
            ResistanceFromIntelligence = 94,
            ClassDamageReductionPercent = 95,
            Skill = 96,
            SkillTotal = 97,
            TeamID = 98,
            TeamOverride = 99,
            Invulnerable = 100,
            Loading = 101,
            LoadingPlayerACD = 102,
            LoadingPowerSNO = 103,
            LoadingAnimTag = 104,
            LoadingNewGame = 105,
            AutoPortingToSavePoint = 106,
            NoDamage = 107,
            NoAutoPickup = 108,
            LightRadiusPercentBonus = 109,
            HitpointsCur = 110,
            HitpointsFactorLevel = 111,
            HitpointsFactorVitality = 112,
            HitpointsTotalFromVitality = 113,
            HitpointsTotalFromLevel = 114,
            HitpointsGranted = 115,
            HitpointsGrantedDuration = 116,
            HitpointsMax = 117,
            HitpointsMaxBonus = 118,
            HitpointsMaxTotal = 119,
            HitpointsPercent = 120,
            HitpointsRegenPerSecond = 121,
            HitpointsRegenPerSecondBonus = 122,
            HitpointsRegenBonusPercent = 123,
            HitpointsRegenPerSecondSubtotal = 124,
            HitpointsRegenReductionPercent = 125,
            HitpointsRegenPerSecondHealthGlobe = 126,
            HitpointsRegenPerSecondTotal = 127,
            HitpointsMaxPercentBonus = 128,
            HitpointsMaxPercentBonusItem = 129,
            HitpointsHealedTarget = 130,
            HitpointsFrozen = 131,
            DOTDamageTakenQueued = 132,
            DOTDamageTakenQueuedTick = 133,
            DOTDamageTakenQueuedPlayer = 134,
            DOTDamageTakenQueuedPlayerTick = 135,
            HealingReceivedQueued = 136,
            HealingReceivedQueuedTick = 137,
            ResourceTypePrimary = 138,
            ResourceTypeSecondary = 139,
            ResourceCur = 140,
            ResourceMax = 141,
            ResourceMaxBonus = 142,
            ResourceMaxTotal = 143,
            ResourceFactorLevel = 144,
            ResourceGranted = 145,
            ResourceGrantedDuration = 146,
            ResourcePercent = 147,
            ResourceRegenPerSecond = 148,
            ResourceRegenBonusPercent = 149,
            ResourceRegenTotal = 150,
            ResourceMaxPercentBonus = 151,
            ResourceCapacityUsed = 152,
            ResourceEffectiveMax = 153,
            ResourceRegenPercentPerSecond = 154,
            ResourceDegenerationStopPoint = 155,
            MovementScalar = 156,
            WalkingRate = 157,
            RunningRate = 158,
            SprintingRate = 159,
            StrafingRate = 160,
            WalkingRateTotal = 161,
            RunningRateTotal = 162,
            LastRunningRate = 163,
            SprintingRateTotal = 164,
            StrafingRateTotal = 165,
            MovementBonusTotal = 166,
            MovementScalarSubtotal = 167,
            MovementScalarCappedTotal = 168,
            MovementScalarUncappedBonus = 169,
            MovementScalarTotal = 170,
            MovementBonusRunSpeed = 171,
            MovementScalarCap = 172,
            CastingSpeed = 173,
            CastingSpeedBonus = 174,
            CastingSpeedTotal = 175,
            AlwaysHits = 176,
            HitChance = 177,
            KnockbackAttackScalar = 178,
            AttacksPerSecondItem = 179,
            AttacksPerSecondItemPercent = 180,
            AttacksPerSecondItemSubtotal = 181,
            AttacksPerSecondItemBonus = 182,
            AttacksPerSecondItemTotal = 183,
            AttacksPerSecond = 184,
            AttacksPerSecondBonus = 185,
            AttacksPerSecondTotal = 186,
            AttacksPerSecondPercentCap = 187,
            AttacksPerSecondPercent = 188,
            AttacksPerSecondPercentUncapped = 189,
            AttacksPerSecondPercentReduction = 190,
            AttacksPerSecondPercentSubtotal = 191,
            AICooldownReductionPercent = 192,
            PowerCooldownReductionPercentCap = 193,
            PowerCooldownReductionPercent = 194,
            PowerCooldownReductionPercentAll = 195,
            PowerCooldownReductionPercentAllCapped = 196,
            DamageDelta = 197,
            DamageDeltaTotal = 198,
            DamageMin = 199,
            DamageBonusMin = 200,
            DamageMinTotal = 201,
            DamageDeltaTotalAll = 202,
            DamageMinTotalAll = 203,
            DamageAverageTotalAll = 204,
            DamageMinSubtotal = 205,
            DamagePercentAllFromSkills = 206,
            DamageWeaponDelta = 207,
            DamageWeaponDeltaSubTotal = 208,
            DamageWeaponMax = 209,
            DamageWeaponMaxTotal = 210,
            DamageWeaponMaxTotalAll = 211,
            DamageWeaponDeltaTotal = 212,
            DamageWeaponDeltaTotalAll = 213,
            DamageWeaponBonusDelta = 214,
            DamageWeaponBonusDeltaX1 = 215,
            DamageWeaponMin = 216,
            DamageWeaponMinTotal = 217,
            DamageWeaponMinTotalAll = 218,
            DamageWeaponAverage = 219,
            DamageWeaponAverageTotal = 220,
            DamageWeaponAverageTotalAll = 221,
            DamageWeaponBonusMin = 222,
            DamageWeaponBonusMinX1 = 223,
            DamageWeaponBonusFlat = 224,
            DamageWeaponPercentBonus = 225,
            DamageWeaponPercentAll = 226,
            DamageWeaponPercentTotal = 227,
            DamageTypePercentBonus = 228,
            DamageDealtPercentBonus = 229,
            DamagePercentBonusWitchdoctor = 230,
            DamagePercentBonusWizard = 231,
            CritPercentBase = 232,
            CritPercentBonusCapped = 233,
            CritPercentBonusUncapped = 234,
            CritPercentBonusHideFromDPS = 235,
            CritPercentCap = 236,
            CritDamageCap = 237,
            CritDamagePercent = 238,
            CritDamagePercentUncapped = 239,
            CritEffectTime = 240,
            PierceChance = 241,
            DamageAbsorbPercent = 242,
            DamageReductionTotal = 243,
            DamageReductionCurrent = 244,
            DamageReductionLastTick = 245,
            BlockChance = 246,
            BlockChanceSubTotal = 247,
            BlockChanceBonusItem = 248,
            BlockChanceItem = 249,
            BlockChanceItemTotal = 250,
            BlockChanceUncappedBonus = 251,
            BlockChanceCappedTotal = 252,
            BlockAmount = 253,
            BlockAmountBonusPercent = 254,
            BlockAmountTotalMin = 255,
            BlockAmountTotalMax = 256,
            BlockAmountItemMin = 257,
            BlockAmountItemDelta = 258,
            BlockAmountItemBonus = 259,
            DodgeChanceBonus = 260,
            DodgeChanceBonusMelee = 261,
            DodgeChanceBonusRanged = 262,
            DodgeChanceBonusAdditive = 263,
            DodgeChanceBonusHideFromToughness = 264,
            CannotDodge = 265,
            GetHitCurrent = 266,
            GetHitMaxBase = 267,
            GetHitMaxPerLevel = 268,
            GetHitMax = 269,
            GetHitRecoveryBase = 270,
            GetHitRecoveryPerLevel = 271,
            GetHitRecovery = 272,
            GetHitDamage = 273,
            GetHitDamageScalar = 274,
            LastDamageMainActor = 275,
            LastACDAttacked = 276,
            IgnoresCriticalHits = 277,
            Immunity = 278,
            Untargetable = 279,
            Immobolize = 280,
            ImmuneToKnockback = 281,
            PowerImmobilize = 282,
            StunChance = 283,
            StunLength = 284,
            StunRecovery = 285,
            StunRecoverySpeed = 286,
            Stunned = 287,
            StunImmune = 288,
            PoisonLengthReduction = 289,
            Bleeding = 290,
            BleedDuration = 291,
            Chilled = 292,
            FreezeLengthReduction = 293,
            FreezeImmune = 294,
            ChillDurationBonusPercent = 295,
            FreezeDurationBonusPercent = 296,
            StunDurationBonusPercent = 297,
            ImmobilizeDurationBonusPercent = 298,
            FearDurationBonusPercent = 299,
            BlindDurationBonusPercent = 300,
            CharmDurationBonusPercent = 301,
            SlowDurationBonusPercent = 302,
            Webbed = 303,
            Slow = 304,
            FireAura = 305,
            LightningAura = 306,
            ColdAura = 307,
            PoisonAura = 308,
            Blind = 309,
            Enraged = 310,
            SlowdownImmune = 311,
            GethitImmune = 312,
            AttackSpeedReductionImmune = 313,
            SuffocationPerSecond = 314,
            SuffocationUnitValue = 315,
            ThornsPercent = 316,
            ThornsPercentAll = 317,
            ThornsPercentTotal = 318,
            ThornsFixed = 319,
            ThornsAOERadius = 320,
            ThornsHasDamageType = 321,
            OnHitThornsProcChance = 322,
            StealHealthPercent = 323,
            StealManaPercent = 324,
            ResourceOnHit = 325,
            ResourceOnHitBonusPct = 326,
            ResourceOnHitBonus = 327,
            ResourceOnKill = 328,
            ResourceOnCrit = 329,
            HitpointsOnHit = 330,
            HitpointsOnKill = 331,
            HitpointsOnKillReductionPercent = 332,
            HitpointsOnKillTotal = 333,
            DamageToMana = 334,
            LastProcTime = 335,
            DamagePowerDelta = 336,
            DamagePowerMin = 337,
            RopeOverlay = 338,
            GeneralCooldown = 339,
            PowerCooldown = 340,
            PowerCooldownStart = 341,
            ProcCooldown = 342,
            EmoteCooldown = 343,
            ProjectileSpeed = 344,
            ProjectileSpeedIncreasePercent = 345,
            DestroyWhenPathBlocked = 346,
            SkillToggledState = 347,
            SkillCharges = 348,
            Act = 349,
            Difficulty = 350,
            LastDamageAmount = 351,
            InKnockback = 352,
            AmplifyDamageTypePercent = 353,
            AmplifyDamageSkillPercent = 354,
            AmplifyDamagePercent = 355,
            DurabilityCur = 356,
            DurabilityMax = 357,
            DurabilityMaxBeforeReforge = 358,
            DurabilityLastDamage = 359,
            ItemQualityLevel = 360,
            ItemQualityLevelIdentified = 361,
            ItemCostPercentBonus = 362,
            ItemEquipped = 363,
            ItemPing = 364,
            Requirement = 365,
            RequirementsEasePercent = 366,
            RequirementWhenEquipped = 367,
            Sockets = 368,
            SocketsFilled = 369,
            StatsAllBonus = 370,
            ItemBoundToACD = 371,
            ItemLockedToACD = 372,
            ItemBindingLevelOverride = 373,
            ItemLegendaryItemLevelOverride = 374,
            ItemTargetedPlayerClass = 375,
            ItemTargetedHirelingClass = 376,
            ItemStackQuantityHi = 377,
            ItemStackQuantityLo = 378,
            RunSpeedGranted = 379,
            RunSpeedDuration = 380,
            IdentifyCost = 381,
            Seed = 382,
            IsCrafted = 383,
            IsVendorBought = 384,
            DyeType = 385,
            Loot20Drop = 386,
            EnchantAffix = 387,
            EnchantRangeVal = 388,
            EnchantRangeMax = 389,
            EnchantedAffixOld = 390,
            EnchantedAffixNew = 391,
            EnchantedAffixSeed = 392,
            EnchantedAffixCount = 393,
            TransmogGBID = 394,
            HighlySalvageable = 395,
            ItemUnlockTimeHi = 396,
            ItemUnlockTimeLo = 397,
            AlwaysPlaysGetHit = 398,
            Hidden = 399,
            AlphaAttachments = 400,
            RActorFadeGroup = 401,
            QuestRange = 402,
            AttackCooldownMin = 403,
            AttackCooldownDelta = 404,
            InitialCooldownMinTotal = 405,
            InitialCooldownDeltaTotal = 406,
            AttackCooldownMinTotal = 407,
            AttackCooldownDeltaTotal = 408,
            ClosingCooldownMinTotal = 409,
            ClosingCooldownDeltaTotal = 410,
            QuestMonster = 411,
            QuestMonsterEffect = 412,
            TreasureClass = 413,
            RemovesBodyOnDeath = 414,
            InitialCooldownMin = 415,
            InitialCooldownDelta = 416,
            KnockbackWeight = 417,
            UntargetableByPets = 418,
            DamageStateCurrent = 419,
            DamageStateMax = 420,
            IsPlayerDecoy = 421,
            CustomTargetWeight = 422,
            GizmoState = 423,
            GizmoCharges = 424,
            ChestOpen = 425,
            DoorLocked = 426,
            DoorTimer = 427,
            GizmoDisabledByScript = 428,
            GizmoOperatorACDID = 429,
            TriggeringCount = 430,
            GizmoOperationRadiusOverride = 431,
            GatePosition = 432,
            GateVelocity = 433,
            GizmoHasBeenOperated = 434,
            BannerUsable = 435,
            BannerPlayerInCombat = 436,
            PetOwner = 437,
            PetCreator = 438,
            PetType = 439,
            DropsNoLoot = 440,
            GrantsNoXP = 441,
            HirelingClass = 442,
            SummonedBySNO = 443,
            PetProcScalar = 444,
            PetCannotBeDismissed = 445,
            IsNPC = 446,
            NPCIsOperatable = 447,
            NPCIsEscorting = 448,
            NPCHasInteractOptions = 449,
            ConversationIcon = 450,
            CalloutCooldown = 451,
            BanterCooldown = 452,
            ConversationHeardCount = 453,
            LastTickShopEntered = 454,
            IsHelper = 455,
            Axe = 456,
            Axe2H = 457,
            ThrowingAxe = 458,
            AxeAny = 459,
            Bow = 460,
            Crossbow = 461,
            BowAny = 462,
            Club = 463,
            Club2H = 464,
            ClubAny = 465,
            Dagger = 466,
            Mace = 467,
            Mace2H = 468,
            MaceAny = 469,
            Sword = 470,
            Sword2H = 471,
            SwordAny = 472,
            Polearm = 473,
            Spear = 474,
            Wand = 475,
            ColdStaff = 476,
            FireStaff = 477,
            LightningStaff = 478,
            PoisonStaff = 479,
            StaffAny = 480,
            Weapon1H = 481,
            Weapon2H = 482,
            WeaponMelee = 483,
            WeaponRanged = 484,
            Quiver = 485,
            ReincarnationBuff = 486,
            DeadBodyAnimTag = 487,
            SpawnedbyACDID = 488,
            SummonedByACDID = 489,
            SummonerID = 490,
            BannerACDID = 491,
            BreakableShieldHP = 492,
            CurrentWeaponClass = 493,
            WeaponsSheathed = 494,
            HeldInOffHand = 495,
            AttacksPerSecondItemMainHand = 496,
            AttacksPerSecondItemOffHand = 497,
            AttacksPerSecondItemTotalMainHand = 498,
            AttacksPerSecondItemTotalOffHand = 499,
            DamageWeaponMinTotalMainHand = 500,
            DamageWeaponMinTotalOffHand = 501,
            DamageWeaponDeltaTotalMainHand = 502,
            DamageWeaponDeltaTotalOffHand = 503,
            AttacksPerSecondItemCurrentHand = 504,
            DamageWeaponMinTotalCurrentHand = 505,
            DamageWeaponDeltaTotalCurrentHand = 506,
            HasSpecialDeathAnimTag = 507,
            DeathTypeOverride = 508,
            InCombat = 509,
            InCombatNextTickCheck = 510,
            InConversation = 511,
            LastTickPotionUsed = 512,
            PotionDilutionPercent = 513,
            OutOfCombatHealthRegenPercent = 514,
            OutOfCombatManaRegenPercent = 515,
            PotionDilutionDuration = 516,
            PotionDilutionScalar = 517,
            Feared = 518,
            FearImmune = 519,
            LastDamageACD = 520,
            AttachedToACD = 521,
            AttachmentACD = 522,
            NormalAttackReplacementPowerSNO = 523,
            DamageTypeOverride = 524,
            MinionCountBonusPercent = 525,
            ExpensiveProcCount = 526,
            ChampionTeleportTimeMinInSeconds = 527,
            ChampionTeleportTimeDeltaInSeconds = 528,
            ChampionCloneNextTick = 529,
            ChampionCloneTimeMinInSeconds = 530,
            ChampionCloneTimeDeltaInSeconds = 531,
            ChampionCloneHitpointBonusPercent = 532,
            ChampionCloneDamageBonusPercent = 533,
            ChampionGhostlyNextTick = 534,
            ChampionGhostlyInactiveTimeMinInSeconds = 535,
            ChampionGhostlyInactiveTimeDeltaInSeconds = 536,
            ChampionGhostlyActiveTimeMinInSeconds = 537,
            ChampionGhostlyActiveTimeDeltaInSeconds = 538,
            ChampionGhostlySavedDodgeChance = 539,
            ChampionGhostly = 540,
            BaseElement = 541,
            ProjectileAmountBonusPercent = 542,
            ProjectileReflectChance = 543,
            ProjectileReflectForcedTarget = 544,
            ProjectileReflectDamageScalar = 545,
            ProjectileReflectHasDamageCap = 546,
            ProjectileReflectDamageCapRemaining = 547,
            AttackFearChance = 548,
            AttackFearTimeMin = 549,
            AttackFearTimeDelta = 550,
            BuffVisualEffect = 551,
            BuffIconStartTick0 = 552,
            BuffIconStartTick1 = 553,
            BuffIconStartTick2 = 554,
            BuffIconStartTick3 = 555,
            BuffIconStartTick4 = 556,
            BuffIconStartTick5 = 557,
            BuffIconStartTick6 = 558,
            BuffIconStartTick7 = 559,
            BuffIconStartTick8 = 560,
            BuffIconStartTick9 = 561,
            BuffIconStartTick10 = 562,
            BuffIconStartTick11 = 563,
            BuffIconStartTick12 = 564,
            BuffIconStartTick13 = 565,
            BuffIconStartTick14 = 566,
            BuffIconStartTick15 = 567,
            BuffIconStartTick16 = 568,
            BuffIconStartTick17 = 569,
            BuffIconStartTick18 = 570,
            BuffIconStartTick19 = 571,
            BuffIconStartTick20 = 572,
            BuffIconStartTick21 = 573,
            BuffIconStartTick22 = 574,
            BuffIconStartTick23 = 575,
            BuffIconStartTick24 = 576,
            BuffIconStartTick25 = 577,
            BuffIconStartTick26 = 578,
            BuffIconStartTick27 = 579,
            BuffIconStartTick28 = 580,
            BuffIconStartTick29 = 581,
            BuffIconStartTick30 = 582,
            BuffIconStartTick31 = 583,
            BuffIconEndTick0 = 584,
            BuffIconEndTick1 = 585,
            BuffIconEndTick2 = 586,
            BuffIconEndTick3 = 587,
            BuffIconEndTick4 = 588,
            BuffIconEndTick5 = 589,
            BuffIconEndTick6 = 590,
            BuffIconEndTick7 = 591,
            BuffIconEndTick8 = 592,
            BuffIconEndTick9 = 593,
            BuffIconEndTick10 = 594,
            BuffIconEndTick11 = 595,
            BuffIconEndTick12 = 596,
            BuffIconEndTick13 = 597,
            BuffIconEndTick14 = 598,
            BuffIconEndTick15 = 599,
            BuffIconEndTick16 = 600,
            BuffIconEndTick17 = 601,
            BuffIconEndTick18 = 602,
            BuffIconEndTick19 = 603,
            BuffIconEndTick20 = 604,
            BuffIconEndTick21 = 605,
            BuffIconEndTick22 = 606,
            BuffIconEndTick23 = 607,
            BuffIconEndTick24 = 608,
            BuffIconEndTick25 = 609,
            BuffIconEndTick26 = 610,
            BuffIconEndTick27 = 611,
            BuffIconEndTick28 = 612,
            BuffIconEndTick29 = 613,
            BuffIconEndTick30 = 614,
            BuffIconEndTick31 = 615,
            CouldHaveRagdolled = 616,
            AmbientDamageEffectLastTime = 617,
            ScaleBonus = 618,
            ScaleBonusIsImmediate = 619,
            DeletedOnServer = 620,
            ScriptedFadeTime = 621,
            DoesNoDamage = 622,
            DoesFakeDamage = 623,
            SlowTimeDebuff = 624,
            BlocksProjectiles = 625,
            Frozen = 626,
            FreezeDamagePercentBonus = 627,
            ShatterChance = 628,
            DualWieldBothAttackChance = 629,
            SummonExpirationTick = 630,
            SummonCount = 631,
            Uninterruptible = 632,
            QueueDeath = 633,
            CantStartDisplayedPowers = 634,
            WizardSlowtimeProxyACD = 635,
            DPS = 636,
            ResurrectionPower = 637,
            FreezeDamage = 638,
            FreezeCapacity = 639,
            ThawRate = 640,
            ChilledDurBonusPercent = 641,
            DOTDPS = 642,
            DamageCapPercent = 643,
            ItemTimeSold = 644,
            ForcedHirelingPower = 645,
            IsRooted = 646,
            RootTargetACD = 647,
            RootAutoDecayPerSecond = 648,
            RootUnitValue = 649,
            RootTotalTicks = 650,
            HideAffixes = 651,
            RuneA = 652,
            RuneB = 653,
            RuneC = 654,
            RuneD = 655,
            RuneE = 656,
            ResistanceStun = 657,
            ResistanceStunTotal = 658,
            ResistanceRoot = 659,
            ResistanceRootTotal = 660,
            ResistanceFreeze = 661,
            ResistanceFreezeTotal = 662,
            ResistanceStunRootFreeze = 663,
            CrowdControlReduction = 664,
            DisplaysTeamEffect = 665,
            CannotBeAddedToAITargetList = 666,
            SkillKit = 667,
            ImmuneToCharm = 668,
            ImmuneToBlind = 669,
            DamageShield = 670,
            DamageShieldAmount = 671,
            GuardObjectACDID = 672,
            FollowTargetACDID = 673,
            FollowTargetType = 674,
            ForcedEnemyACDID = 675,
            NPCTalkTargetANN = 676,
            NPCConvTargetANN = 677,
            ScriptTargetACDID = 678,
            LookTargetServerANN = 679,
            LookTargetBroadcastIntensity = 680,
            LookTargetBroadcastRadius = 681,
            Stealthed = 682,
            GemQuality = 683,
            ItemBuffIcon = 684,
            ScrollDuration = 685,
            GizmoActorSNOToSpawn = 686,
            GizmoActorToSpawnScale = 687,
            DeathReplacementPowerSNO = 688,
            AttachmentHandledByClient = 689,
            AIInSpecialState = 690,
            AIUsedScriptedSpawnAnim = 691,
            AISpawnedByInactiveMarker = 692,
            HeadstonePlayerANN = 693,
            ResourceCostReductionPercent = 694,
            ResourceCostReductionPercentTotal = 695,
            ResourceCostReductionPercentAll = 696,
            DamageTypeCostReductionPercent = 697,
            ResistancePenetration = 698,
            ResistancePenetrationTotal = 699,
            ResistancePenetrationAll = 700,
            ResistancePenetrationPercentAll = 701,
            FuryEffectLevel = 702,
            HealthPotionBonusHealPercent = 703,
            HealthPotionAffectsAlliesPercent = 704,
            FreeCast = 705,
            FreeCastAll = 706,
            MovementScalarReductionPercent = 707,
            MovementScalarReductionResistance = 708,
            DamageAbsorbPercentAll = 709,
            WorldSeed = 710,
            KillCountRecord = 711,
            ObjectDestructionRecord = 712,
            SingleAttackRecord = 713,
            EnvironmentAttackRecord = 714,
            NephalemGloryDurationRecord = 715,
            RootImmune = 716,
            MonsterPlayGetHitBonus = 717,
            StoredContactFrame = 718,
            BuffIconCount0 = 719,
            BuffIconCount1 = 720,
            BuffIconCount2 = 721,
            BuffIconCount3 = 722,
            BuffIconCount4 = 723,
            BuffIconCount5 = 724,
            BuffIconCount6 = 725,
            BuffIconCount7 = 726,
            BuffIconCount8 = 727,
            BuffIconCount9 = 728,
            BuffIconCount10 = 729,
            BuffIconCount11 = 730,
            BuffIconCount12 = 731,
            BuffIconCount13 = 732,
            BuffIconCount14 = 733,
            BuffIconCount15 = 734,
            BuffIconCount16 = 735,
            BuffIconCount17 = 736,
            BuffIconCount18 = 737,
            BuffIconCount19 = 738,
            BuffIconCount20 = 739,
            BuffIconCount21 = 740,
            BuffIconCount22 = 741,
            BuffIconCount23 = 742,
            BuffIconCount24 = 743,
            BuffIconCount25 = 744,
            BuffIconCount26 = 745,
            BuffIconCount27 = 746,
            BuffIconCount28 = 747,
            BuffIconCount29 = 748,
            BuffIconCount30 = 749,
            BuffIconCount31 = 750,
            Observer = 751,
            ResurrectAsObserver = 752,
            ComboLevel = 753,
            ComboTimeLastMove = 754,
            Burrowed = 755,
            DeathReplacementEffectGroupSNO = 756,
            CheckpointResurrectionAllowedGameTime = 757,
            CheckpointResurrectionForcedGameTime = 758,
            CorpseResurrectionAllowedGameTime = 759,
            CorpseResurrectionCharges = 760,
            ControllingTimedEventSNO = 761,
            CastingSpeedPercent = 762,
            UsingBossbar = 763,
            PowerBuff0VisualEffect = 764,
            PowerBuff1VisualEffect = 765,
            PowerBuff2VisualEffect = 766,
            PowerBuff3VisualEffect = 767,
            PowerBuff4VisualEffect = 768,
            PowerBuff5VisualEffect = 769,
            PowerBuff6VisualEffect = 770,
            PowerBuff7VisualEffect = 771,
            PowerBuff8VisualEffect = 772,
            PowerBuff9VisualEffect = 773,
            PowerBuff10VisualEffect = 774,
            PowerBuff11VisualEffect = 775,
            PowerBuff12VisualEffect = 776,
            PowerBuff13VisualEffect = 777,
            PowerBuff14VisualEffect = 778,
            PowerBuff15VisualEffect = 779,
            PowerBuff16VisualEffect = 780,
            PowerBuff17VisualEffect = 781,
            PowerBuff18VisualEffect = 782,
            PowerBuff19VisualEffect = 783,
            PowerBuff20VisualEffect = 784,
            PowerBuff21VisualEffect = 785,
            PowerBuff22VisualEffect = 786,
            PowerBuff23VisualEffect = 787,
            PowerBuff24VisualEffect = 788,
            PowerBuff25VisualEffect = 789,
            PowerBuff26VisualEffect = 790,
            PowerBuff27VisualEffect = 791,
            PowerBuff28VisualEffect = 792,
            PowerBuff29VisualEffect = 793,
            PowerBuff30VisualEffect = 794,
            PowerBuff31VisualEffect = 795,
            StoreSNO = 796,
            Busy = 797,
            Afk = 798,
            LorePlaying = 799,
            LastActionTimestamp = 800,
            PortalNextTime = 801,
            RepairDiscountPercent = 802,
            ResourceDegenerationPrevented = 803,
            Operatable = 804,
            HasLookOverride = 805,
            SpawnerConcurrentCountID = 806,
            Disabled = 807,
            SkillOverride = 808,
            SkillOverrideActive = 809,
            SkillOverrideEnded = 810,
            SkillOverrideEndedActive = 811,
            IsPowerProxy = 812,
            ForceNoDeathAnimation = 813,
            PlayerWeaponClassAnimOverride = 814,
            OperatableStoryGizmo = 815,
            PowerBuff0VisualEffectNone = 816,
            PowerBuff0VisualEffectA = 817,
            PowerBuff0VisualEffectB = 818,
            PowerBuff0VisualEffectC = 819,
            PowerBuff0VisualEffectD = 820,
            PowerBuff0VisualEffectE = 821,
            PowerBuff1VisualEffectNone = 822,
            PowerBuff1VisualEffectA = 823,
            PowerBuff1VisualEffectB = 824,
            PowerBuff1VisualEffectC = 825,
            PowerBuff1VisualEffectD = 826,
            PowerBuff1VisualEffectE = 827,
            PowerBuff2VisualEffectNone = 828,
            PowerBuff2VisualEffectA = 829,
            PowerBuff2VisualEffectB = 830,
            PowerBuff2VisualEffectC = 831,
            PowerBuff2VisualEffectD = 832,
            PowerBuff2VisualEffectE = 833,
            PowerBuff3VisualEffectNone = 834,
            PowerBuff3VisualEffectA = 835,
            PowerBuff3VisualEffectB = 836,
            PowerBuff3VisualEffectC = 837,
            PowerBuff3VisualEffectD = 838,
            PowerBuff3VisualEffectE = 839,
            PowerBuff4VisualEffectNone = 840,
            PowerBuff4VisualEffectA = 841,
            PowerBuff4VisualEffectB = 842,
            PowerBuff4VisualEffectC = 843,
            PowerBuff4VisualEffectD = 844,
            PowerBuff4VisualEffectE = 845,
            PowerBuff5VisualEffectNone = 846,
            PowerBuff5VisualEffectA = 847,
            PowerBuff5VisualEffectB = 848,
            PowerBuff5VisualEffectC = 849,
            PowerBuff5VisualEffectD = 850,
            PowerBuff5VisualEffectE = 851,
            PowerBuff6VisualEffectNone = 852,
            PowerBuff6VisualEffectA = 853,
            PowerBuff6VisualEffectB = 854,
            PowerBuff6VisualEffectC = 855,
            PowerBuff6VisualEffectD = 856,
            PowerBuff6VisualEffectE = 857,
            PowerBuff7VisualEffectNone = 858,
            PowerBuff7VisualEffectA = 859,
            PowerBuff7VisualEffectB = 860,
            PowerBuff7VisualEffectC = 861,
            PowerBuff7VisualEffectD = 862,
            PowerBuff7VisualEffectE = 863,
            PowerBuff8VisualEffectNone = 864,
            PowerBuff8VisualEffectA = 865,
            PowerBuff8VisualEffectB = 866,
            PowerBuff8VisualEffectC = 867,
            PowerBuff8VisualEffectD = 868,
            PowerBuff8VisualEffectE = 869,
            PowerBuff9VisualEffectNone = 870,
            PowerBuff9VisualEffectA = 871,
            PowerBuff9VisualEffectB = 872,
            PowerBuff9VisualEffectC = 873,
            PowerBuff9VisualEffectD = 874,
            PowerBuff9VisualEffectE = 875,
            PowerBuff10VisualEffectNone = 876,
            PowerBuff10VisualEffectA = 877,
            PowerBuff10VisualEffectB = 878,
            PowerBuff10VisualEffectC = 879,
            PowerBuff10VisualEffectD = 880,
            PowerBuff10VisualEffectE = 881,
            PowerBuff11VisualEffectNone = 882,
            PowerBuff11VisualEffectA = 883,
            PowerBuff11VisualEffectB = 884,
            PowerBuff11VisualEffectC = 885,
            PowerBuff11VisualEffectD = 886,
            PowerBuff11VisualEffectE = 887,
            PowerBuff12VisualEffectNone = 888,
            PowerBuff12VisualEffectA = 889,
            PowerBuff12VisualEffectB = 890,
            PowerBuff12VisualEffectC = 891,
            PowerBuff12VisualEffectD = 892,
            PowerBuff12VisualEffectE = 893,
            PowerBuff13VisualEffectNone = 894,
            PowerBuff13VisualEffectA = 895,
            PowerBuff13VisualEffectB = 896,
            PowerBuff13VisualEffectC = 897,
            PowerBuff13VisualEffectD = 898,
            PowerBuff13VisualEffectE = 899,
            PowerBuff14VisualEffectNone = 900,
            PowerBuff14VisualEffectA = 901,
            PowerBuff14VisualEffectB = 902,
            PowerBuff14VisualEffectC = 903,
            PowerBuff14VisualEffectD = 904,
            PowerBuff14VisualEffectE = 905,
            PowerBuff15VisualEffectNone = 906,
            PowerBuff15VisualEffectA = 907,
            PowerBuff15VisualEffectB = 908,
            PowerBuff15VisualEffectC = 909,
            PowerBuff15VisualEffectD = 910,
            PowerBuff15VisualEffectE = 911,
            PowerBuff16VisualEffectNone = 912,
            PowerBuff16VisualEffectA = 913,
            PowerBuff16VisualEffectB = 914,
            PowerBuff16VisualEffectC = 915,
            PowerBuff16VisualEffectD = 916,
            PowerBuff16VisualEffectE = 917,
            PowerBuff17VisualEffectNone = 918,
            PowerBuff17VisualEffectA = 919,
            PowerBuff17VisualEffectB = 920,
            PowerBuff17VisualEffectC = 921,
            PowerBuff17VisualEffectD = 922,
            PowerBuff17VisualEffectE = 923,
            PowerBuff18VisualEffectNone = 924,
            PowerBuff18VisualEffectA = 925,
            PowerBuff18VisualEffectB = 926,
            PowerBuff18VisualEffectC = 927,
            PowerBuff18VisualEffectD = 928,
            PowerBuff18VisualEffectE = 929,
            PowerBuff19VisualEffectNone = 930,
            PowerBuff19VisualEffectA = 931,
            PowerBuff19VisualEffectB = 932,
            PowerBuff19VisualEffectC = 933,
            PowerBuff19VisualEffectD = 934,
            PowerBuff19VisualEffectE = 935,
            PowerBuff20VisualEffectNone = 936,
            PowerBuff20VisualEffectA = 937,
            PowerBuff20VisualEffectB = 938,
            PowerBuff20VisualEffectC = 939,
            PowerBuff20VisualEffectD = 940,
            PowerBuff20VisualEffectE = 941,
            PowerBuff21VisualEffectNone = 942,
            PowerBuff21VisualEffectA = 943,
            PowerBuff21VisualEffectB = 944,
            PowerBuff21VisualEffectC = 945,
            PowerBuff21VisualEffectD = 946,
            PowerBuff21VisualEffectE = 947,
            PowerBuff22VisualEffectNone = 948,
            PowerBuff22VisualEffectA = 949,
            PowerBuff22VisualEffectB = 950,
            PowerBuff22VisualEffectC = 951,
            PowerBuff22VisualEffectD = 952,
            PowerBuff22VisualEffectE = 953,
            PowerBuff23VisualEffectNone = 954,
            PowerBuff23VisualEffectA = 955,
            PowerBuff23VisualEffectB = 956,
            PowerBuff23VisualEffectC = 957,
            PowerBuff23VisualEffectD = 958,
            PowerBuff23VisualEffectE = 959,
            PowerBuff24VisualEffectNone = 960,
            PowerBuff24VisualEffectA = 961,
            PowerBuff24VisualEffectB = 962,
            PowerBuff24VisualEffectC = 963,
            PowerBuff24VisualEffectD = 964,
            PowerBuff24VisualEffectE = 965,
            PowerBuff25VisualEffectNone = 966,
            PowerBuff25VisualEffectA = 967,
            PowerBuff25VisualEffectB = 968,
            PowerBuff25VisualEffectC = 969,
            PowerBuff25VisualEffectD = 970,
            PowerBuff25VisualEffectE = 971,
            PowerBuff26VisualEffectNone = 972,
            PowerBuff26VisualEffectA = 973,
            PowerBuff26VisualEffectB = 974,
            PowerBuff26VisualEffectC = 975,
            PowerBuff26VisualEffectD = 976,
            PowerBuff26VisualEffectE = 977,
            PowerBuff27VisualEffectNone = 978,
            PowerBuff27VisualEffectA = 979,
            PowerBuff27VisualEffectB = 980,
            PowerBuff27VisualEffectC = 981,
            PowerBuff27VisualEffectD = 982,
            PowerBuff27VisualEffectE = 983,
            PowerBuff28VisualEffectNone = 984,
            PowerBuff28VisualEffectA = 985,
            PowerBuff28VisualEffectB = 986,
            PowerBuff28VisualEffectC = 987,
            PowerBuff28VisualEffectD = 988,
            PowerBuff28VisualEffectE = 989,
            PowerBuff29VisualEffectNone = 990,
            PowerBuff29VisualEffectA = 991,
            PowerBuff29VisualEffectB = 992,
            PowerBuff29VisualEffectC = 993,
            PowerBuff29VisualEffectD = 994,
            PowerBuff29VisualEffectE = 995,
            PowerBuff30VisualEffectNone = 996,
            PowerBuff30VisualEffectA = 997,
            PowerBuff30VisualEffectB = 998,
            PowerBuff30VisualEffectC = 999,
            PowerBuff30VisualEffectD = 1000,
            PowerBuff30VisualEffectE = 1001,
            PowerBuff31VisualEffectNone = 1002,
            PowerBuff31VisualEffectA = 1003,
            PowerBuff31VisualEffectB = 1004,
            PowerBuff31VisualEffectC = 1005,
            PowerBuff31VisualEffectD = 1006,
            PowerBuff31VisualEffectE = 1007,
            WalkPassabilityPowerSNO = 1008,
            PassabilityPowerSNO = 1009,
            FlippyID = 1010,
            SummoningMachineNumCasters = 1011,
            SummoningMachineSpawnCount = 1012,
            SummoningMachineNextSpawnTicks = 1013,
            SummoningMachineSpawnTeam = 1014,
            ScreenAttackRadiusConstant = 1015,
            MaxOfDamageDoneReductionPercentAnd1 = 1016,
            SetItemCount = 1017,
            SpawnerCountdownPercent = 1018,
            AttackSlow = 1019,
            PowerDisabled = 1020,
            WeaponEffectOverride = 1021,
            DebuffDurationReductionPercent = 1022,
            UsesPvPPowerTags = 1023,
            Trait = 1024,
            LastACDAttackedBy = 1025,
            GoldPickUpRadius = 1026,
            ClientOnlyEffect = 1027,
            PowerSavedAttribute = 1028,
            ResourceGainBonusPercent = 1029,
            LoopingAnimationStartTime = 1030,
            LoopingAnimationEndTime = 1031,
            LoopingAnimationSuppressItemTooltips = 1032,
            HealEffectLastPlayedTick = 1033,
            ResourceEffectLastPlayedtick = 1034,
            ThornsEffectLastPlayedtick = 1035,
            PVPKills = 1036,
            PVPDeaths = 1037,
            PVPAssists = 1038,
            PVPProgressionPointsGained = 1039,
            PVPCurrentKillStreak = 1040,
            PVPCurrentDeathStreak = 1041,
            PVPLongestKillStreak = 1042,
            PVPLongestDeathStreak = 1043,
            TurnRateScalar = 1044,
            TurnAccelScalar = 1045,
            TurnDeccelScalar = 1046,
            NoHealthDrop = 1047,
            Leader = 1048,
            IsContentRestrictedActor = 1049,
            InBossEncounter = 1050,
            God = 1051,
            MinimapActive = 1052,
            MinimapIconOverride = 1053,
            MinimapDisableArrow = 1054,
            LastBlockedACD = 1055,
            LastBlockedTime = 1056,
            DeactivateLure = 1057,
            WeaponsHidden = 1058,
            MainHandWeaponHidden = 1059,
            OffHandWeaponHidden = 1060,
            ActorUpdatesAttributesFromOwner = 1061,
            TauntTargetACD = 1062,
            CharmSourceACD = 1063,
            UIOnlyPercentDamageIncrease = 1064,
            ProjectileEffectSNO = 1065,
            OnHitFearProcChance = 1066,
            OnHitStunProcChance = 1067,
            OnHitBlindProcChance = 1068,
            OnHitFreezeProcChance = 1069,
            OnHitChillProcChance = 1070,
            OnHitSlowProcChance = 1071,
            OnHitImmobilizeProcChance = 1072,
            OnHitKnockbackProcChance = 1073,
            OnHitBleedProcChance = 1074,
            OnHitBleedProcDamageBase = 1075,
            OnHitBleedProcDamageDelta = 1076,
            DamagePercentReductionFromRanged = 1077,
            DamagePercentReductionFromMelee = 1078,
            DamagePercentReductionTurnsIntoHeal = 1079,
            DamagePercentReductionFromElites = 1080,
            DamagePercentReductionFromType = 1081,
            DamagePercentBonusVsMonsterType = 1082,
            DamagePercentBonusVsElites = 1083,
            ItemManipulationTimeout = 1084,
            PickedUpTime = 1085,
            UnequippedTime = 1086,
            LastACDKilledTime = 1087,
            CannotDieDuring = 1088,
            WeaponOnHitFearProcChance = 1089,
            WeaponOnHitStunProcChance = 1090,
            WeaponOnHitBlindProcChance = 1091,
            WeaponOnHitFreezeProcChance = 1092,
            WeaponOnHitChillProcChance = 1093,
            WeaponOnHitSlowProcChance = 1094,
            WeaponOnHitImmobilizeProcChance = 1095,
            WeaponOnHitKnockbackProcChance = 1096,
            WeaponOnHitBleedProcChance = 1097,
            WeaponOnHitBleedProcDamageBase = 1098,
            WeaponOnHitBleedProcDamageDelta = 1099,
            WeaponOnHitPercentBleedProcChance = 1100,
            WeaponOnHitPercentBleedProcDamage = 1101,
            WeaponOnHitPercentBleedProcDuration = 1102,
            WeaponOnHitFearProcChanceMainHand = 1103,
            WeaponOnHitFearProcChanceOffHand = 1104,
            WeaponOnHitFearProcChanceCurrentHand = 1105,
            WeaponOnHitStunProcChanceMainHand = 1106,
            WeaponOnHitStunProcChanceOffHand = 1107,
            WeaponOnHitStunProcChanceCurrentHand = 1108,
            WeaponOnHitBlindProcChanceMainHand = 1109,
            WeaponOnHitBlindProcChanceOffHand = 1110,
            WeaponOnHitBlindProcChanceCurrentHand = 1111,
            WeaponOnHitFreezeProcChanceMainHand = 1112,
            WeaponOnHitFreezeProcChanceOffHand = 1113,
            WeaponOnHitFreezeProcChanceCurrentHand = 1114,
            WeaponOnHitChillProcChanceMainHand = 1115,
            WeaponOnHitChillProcChanceOffHand = 1116,
            WeaponOnHitChillProcChanceCurrentHand = 1117,
            WeaponOnHitSlowProcChanceMainHand = 1118,
            WeaponOnHitSlowProcChanceOffHand = 1119,
            WeaponOnHitSlowProcChanceCurrentHand = 1120,
            WeaponOnHitImmobilizeProcChanceMainHand = 1121,
            WeaponOnHitImmobilizeProcChanceOffHand = 1122,
            WeaponOnHitImmobilizeProcChanceCurrentHand = 1123,
            WeaponOnHitKnockbackProcChanceMainHand = 1124,
            WeaponOnHitKnockbackProcChanceOffHand = 1125,
            WeaponOnHitKnockbackProcChanceCurrentHand = 1126,
            WeaponOnHitBleedProcChanceMainHand = 1127,
            WeaponOnHitBleedProcChanceOffHand = 1128,
            WeaponOnHitBleedProcChanceCurrentHand = 1129,
            WeaponOnHitBleedProcDamageBaseMainHand = 1130,
            WeaponOnHitBleedProcDamageBaseOffHand = 1131,
            WeaponOnHitBleedProcDamageBaseCurrentHand = 1132,
            WeaponOnHitBleedProcDamageDeltaMainHand = 1133,
            WeaponOnHitBleedProcDamageDeltaOffHand = 1134,
            WeaponOnHitBleedProcDamageDeltaCurrentHand = 1135,
            WeaponOnHitPercentBleedProcChanceMainHand = 1136,
            WeaponOnHitPercentBleedProcChanceOffHand = 1137,
            WeaponOnHitPercentBleedProcChanceCurrentHand = 1138,
            WeaponOnHitPercentBleedProcDamageMainHand = 1139,
            WeaponOnHitPercentBleedProcDamageBaseOffHand = 1140,
            WeaponOnHitPercentBleedProcDamageBaseCurrentHand = 1141,
            WeaponOnHitPercentBleedProcDurationMainHand = 1142,
            WeaponOnHitPercentBleedProcDurationOffHand = 1143,
            WeaponOnHitPercentBleedProcDurationCurrentHand = 1144,
            PowerDamagePercentBonus = 1145,
            PowerInstanceDamagePercentBonus = 1146,
            PowerResourceReduction = 1147,
            PowerResourceReductionPercent = 1148,
            PowerCooldownReduction = 1149,
            PowerDurationIncrease = 1150,
            PowerCritPercentBonus = 1151,
            WeaponCritChance = 1152,
            WeaponCritChanceMainHand = 1153,
            WeaponCritChanceOffHand = 1154,
            WeaponCritChanceCurrentHand = 1155,
            StrengthItem = 1156,
            DexterityItem = 1157,
            IntelligenceItem = 1158,
            VitalityItem = 1159,
            ItemLevelRequirementReduction = 1160,
            ItemDurabilityPercentBonus = 1161,
            ItemIndestructible = 1162,
            PlayerAllItemsIndestructible = 1163,
            CoreAttributesFromItemBonusMultiplier = 1164,
            WaitingToAcceptResurrection = 1165,
            Ghosted = 1166,
            SpecialInventoryHasSold = 1167,
            SpecialInventoryIndex = 1168,
            InventoryRerollTime = 1169,
            PerkBuffPollNextTime = 1170,
            PowerChannelLockoutTime = 1171,
            PowerBuff0LockoutTime = 1172,
            PowerBuff1LockoutTime = 1173,
            PowerBuff2LockoutTime = 1174,
            PowerBuff3LockoutTime = 1175,
            PowerBuff4LockoutTime = 1176,
            PowerBuff5LockoutTime = 1177,
            PowerBuff6LockoutTime = 1178,
            PowerBuff7LockoutTime = 1179,
            PowerBuff8LockoutTime = 1180,
            PowerBuff9LockoutTime = 1181,
            PowerBuff10LockoutTime = 1182,
            PowerBuff11LockoutTime = 1183,
            PowerBuff12LockoutTime = 1184,
            PowerBuff13LockoutTime = 1185,
            PowerBuff14LockoutTime = 1186,
            PowerBuff15LockoutTime = 1187,
            PowerBuff16LockoutTime = 1188,
            PowerBuff17LockoutTime = 1189,
            PowerBuff18LockoutTime = 1190,
            PowerBuff19LockoutTime = 1191,
            PowerBuff20LockoutTime = 1192,
            PowerBuff21LockoutTime = 1193,
            PowerBuff22LockoutTime = 1194,
            PowerBuff23LockoutTime = 1195,
            PowerBuff24LockoutTime = 1196,
            PowerBuff25LockoutTime = 1197,
            PowerBuff26LockoutTime = 1198,
            PowerBuff27LockoutTime = 1199,
            PowerBuff28LockoutTime = 1200,
            PowerBuff29LockoutTime = 1201,
            PowerBuff30LockoutTime = 1202,
            PowerBuff31LockoutTime = 1203,
            KnownByOwner = 1204,
            NeverDeactivates = 1205,
            AccountUnderReview = 1206,
            ProjectileDetonateTime = 1207,
            ProjectileUncappedLifetime = 1208,
            PageOfFateItem = 1209,
            Accolade0 = 1210,
            Accolade1 = 1211,
            Accolade2 = 1212,
            Accolade3 = 1213,
            Accolade4 = 1214,
            Accolade0Value = 1215,
            Accolade1Value = 1216,
            Accolade2Value = 1217,
            Accolade3Value = 1218,
            Accolade4Value = 1219,
            PVPRank = 1220,
            PVPTokens = 1221,
            PVPExperienceNextLo = 1222,
            PVPExperienceNextHi = 1223,
            PVPGoldGainedThisGame = 1224,
            PVPPVPExperienceGainedThisGameLo = 1225,
            PVPPVPExperienceGainedThisGameHi = 1226,
            PVPNormalExperienceGainedThisGameLo = 1227,
            PVPNormalExperienceGainedThisGameHi = 1228,
            PVPTokensGainedThisGame = 1229,
            PVPLevelEqualizerLevel = 1230,
            IsTemporaryLure = 1231,
            IgnoreLure = 1232,
            EffectOwnerANN = 1233,
            EliteEngaged = 1234,
            EngagedRareTime = 1235,
            EngagedGoblinTime = 1236,
            OnDeathAccolade0 = 1237,
            OnDeathAccolade0Value = 1238,
            ItemPowerPassive = 1239,
            PVPTeamDeathmatchGamesPlayed = 1240,
            LastHealthDropInterval = 1241,
            CrowdControlResistance = 1242,
            CrowdControlProjectedEndTime = 1243,
            Charmed = 1244,
            Taunted = 1245,
            Dueling = 1246,
            PVPPlayerRevealedOnMap = 1247,
            TargetedLegendaryChance = 1248,
            HasDroppedSpecialloot = 1249,
            ScrollBuff = 1250,
            BuffExclusiveTypeActive = 1251,
            InCombatWithPlayer = 1252,
            ActorForwardsBuffs = 1253,
            ItemMarkedAsJunk = 1254,
            Allow2HAndShield = 1255,
            ClassDamageReductionPercentPVP = 1256,
            ParagonBonus = 1257,
            ParagonBonusPointsAvailable = 1258,
            DungeonFinderProgressPercent = 1259,
            ItemTradePlayerHigh = 1260,
            ItemTradePlayerLow = 1261,
            ItemTradeEndTime = 1262,
            ItemTradeTimerID = 1263,
            ItemIsBOE = 1264,
            Season = 1265,
            DamageDoneTotalTrackedHi = 1266,
            DamageDoneTotalTrackedLo = 1267,
            DamageDoneTrackingStartTick = 1268,
            PowerPersistsAcrossGames = 1269,
            ExperienceBonusPercentIGRBuff = 1270,
            ExperienceBonusPercentAnniversaryBuff = 1271,
            ExperienceBonusPercentCommunityBuff = 1272,
            ExperienceBonusPercentSuperScalar = 1273,
            ExperienceBonusPercentSuperScalarTotal = 1274,
            AlwaysShowFloatingNumbers = 1275,
            TargetedRareChance = 1276,
            SupressThornsEffect = 1277,
            DynamicEntranceGUID = 1278,
            BonusChanceToBeCritHit = 1279,
            BonusChanceToBeCritHitByActor = 1280,
            BonusChanceToReceiveCrushingBlown = 1281,
            ForceGripped = 1282,
            PowerBonusAttackRadius = 1283,
            ItemStorePlayerHigh = 1284,
            ItemStorePlayerLow = 1285,
            PowerPrimaryResourceCostOverride = 1286,
            PowerSecondaryResourceCostOverride = 1287,
            PowerChannelCostOverride = 1288,
            RuneAOverride = 1289,
            RuneBOverride = 1290,
            RuneCOverride = 1291,
            RuneDOverride = 1292,
            RuneEOverride = 1293,
            ElementalEffectAmplitudeBonus = 1294,
            ElementalEffectDurationBonus = 1295,
            ElementalEffectProcChanceBonus = 1296,
            SplashDamageEffectPercent = 1297,
            CrushingBlowProcChance = 1298,
            ItemEquippedButDisabled = 1299,
            AttributeProjectilePassThrough = 1300,
            AttributeSetItemDiscount = 1301,
            NegativeHealthGlobeSpawnChance = 1302,
            OverrideAttachedAnim = 1303,
            HasInfiniteShrineBuffs = 1304,
            ItemLegendaryItemBaseItem = 1305,
            TargetedMagicChance = 1306,
            DontUpdateCameraWhileAttached = 1307,
            LinkedDynamicEntranceGUID = 1308,
            BoostTCIndex = 1309,
            BoostTCNextTime = 1310,
            PotionBonusArmorPercent = 1311,
            PotionBonusResistAll = 1312,
            PotionBonusHitpointsGranted = 1313,
            PotionBonusBuffDuration = 1314,
            PotionBonusLifeOnHit = 1315,
            PotionBonusLifeOnKill = 1316,
            LastSpecialItemTimeHigh = 1317,
            LastSpecialItemTimeLow = 1318,
            ItemRestBonusPool = 1319,
            ItemUnluckyBonusSecs = 1320,
            ItemUnluckyBonusAllow = 1321,
            BountyObjective = 1322,
            Illusion = 1323,
            TornadoStraighten = 1324,
            PreventEvadeDuring = 1325,
            DamageBonusFromNephalemGlory = 1326,
            ItemPlayerRecipient = 1327,
            HeavensFuryAttacker = 1328,
            ItemAssignedHeroHigh = 1329,
            ItemAssignedHeroLow = 1330,
            PierceCharge = 1331,
            UpscaledLevel = 1332,
            Resurrected = 1333,
            ThornsAOERadiusNextTime = 1334,
            MovementDestroysWallerWalls = 1335
        }
    }
    And here's an example on how to use, not that it is hard or anything
    Code:
    var acd = ActorCommonDataHelper.GetLocalAcd();var totalStrength = Attributes.StrengthTotal.GetValue(acd); // int
    var xpToNextLevel = Attributes.ExperienceNext.GetValue(acd); // ulong (2 attributes)
    var xpToNextParagon = Attributes.AltExperienceNext.GetValue(acd); // ulong (2 attributes)
    var armorBonusPercent = Attributes.ArmorBonusPercent.GetValue(acd); // float
    Default values (as stated by the D3 exe) will be used if attribute doesn't exist on the ACD.

  12. #27
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    tgo pointed out that something was missing as the above code couldn't fully compile (please use the thread instead of PMing me all the time, also your inbox is full). Simply add the following in Pointer:
    Code:
    public T Read<T>() { return Field<T>(0); }

  13. #28
    tanvandan's Avatar Private
    Reputation
    1
    Join Date
    Apr 2014
    Posts
    2
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Great work Enigma. One question, how do you enumerate all the actors? I am using this at the moment, but I am sure it is not the right way.
    Code:
                var actors = engine.ObjectManager.x910_RActors;
                    for (short i = 0; i < 150; i++)
                    {
                        var a = actors[i];
                        var acd = Enigma.D3.Helpers.ActorCommonDataHelper.GetAcd(a.x088_AcdId);
                        var type = acd.x184_ActorType;
    
                        if (type == Enigma.D3.Enums.ActorType.Monster)
                        {
                            Console.WriteLine(acd.x004_Name);
                        }
                    }

  14. #29
    tgo's Avatar Member
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    15
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    tanvandan Certain actors do not have common data so you have to filter those out.
    Code:
    // List of actors
    ExpandableContainer<Actor> actors = currentGameEngine.ObjectManager.x910_RActors;
    
    // For each actor iterate
    for (short i = 0; i < actors.x10C_Count; i++)
    {
         // Get the actor object
         Actor currentActor = actors[i];
    
         // Get the actor common data
         ActorCommonData acd = Enigma.D3.Helpers.ActorCommonDataHelper.GetAcd(currentActor.x088_AcdId);
    
        // Check that there is common data and its of type monster
        if (acd != null && acd.x184_ActorType == ActorType.Monster)
        {
            // Do something
        }
    }
    You can do the same thing for items, then use the helper and find out item quality and so on. My question has anyone been able to get current player gold?
    Here is the item quality enum i have tested a few so far it works.

    Code:
    this.Quality = (ItemQuality.UnitItemQuality)(Attributes.ItemQualityLevel.GetValue(itemCommonData));
    
    public enum UnitItemQuality
            {
                Invalid = -1,
                Inferior = 0,
                Normal = 1,
                Superior = 2,
                Magic1 = 3,
                Magic2 = 4,
                Magic3 = 5,
                Rare4 = 6,
                Rare5 = 7,
                Rare6 = 8,
                Legendary = 9,
                Artifact = 10
            }

  15. #30
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by tanvandan View Post
    Great work Enigma. One question, how do you enumerate all the actors? I am using this at the moment, but I am sure it is not the right way.
    Code:
                var actors = engine.ObjectManager.x910_RActors;
                    for (short i = 0; i < 150; i++)
                    {
                        var a = actors[i];
                        var acd = Enigma.D3.Helpers.ActorCommonDataHelper.GetAcd(a.x088_AcdId);
                        var type = acd.x184_ActorType;
    
                        if (type == Enigma.D3.Enums.ActorType.Monster)
                        {
                            Console.WriteLine(acd.x004_Name);
                        }
                    }
    Thanks Apparently I've not implemented an enumerator after they changed structure of containers a bit, but you can see the basics in "Enigma.D3\D3\Legacy\Collections\ExpandableContainer`1.cs" (1.0.8 code). A few offsets changed and there is some extra voodoo to make it work with generics and my MemoryObject class that you may or may not want. It should be more efficient doing it this way compared to the indexer as it generates less memory reads, but remember to validate the items (check ActorId/AcdId for not -1) as this way to enumerate may contain gaps (old items) as these "slots" are used and reused.

    Originally Posted by tgo View Post
    My question has anyone been able to get current player gold?
    You need the "Gold ACD" and then use ItemStackQuantity (Hi/Lo). I'm a bit fuzzy on how to get this ACD, but you could always enumerate them all and figure out its name or some ID to match until there is a proper solution.

Page 2 of 63 FirstFirst 12345652 ... LastLast

Similar Threads

  1. [Hack] Enigma TriggerBot - AutoIT
    By Zolyrica in forum Overwatch Exploits|Hacks
    Replies: 9
    Last Post: 09-12-2016, 02:37 PM
  2. [Release] [C#] 1.0.8.16603 Enigma.D3
    By enigma32 in forum Diablo 3 Memory Editing
    Replies: 33
    Last Post: 05-16-2015, 01:40 PM
  3. Enigma's Smartcast Manager
    By da_bizkit in forum League of Legends
    Replies: 3
    Last Post: 10-22-2012, 02:11 PM
  4. request Blue suede boots -> enigma boots
    By Geico in forum WoW ME Questions and Requests
    Replies: 0
    Last Post: 12-27-2007, 05:40 AM
All times are GMT -5. The time now is 09:42 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search