Automate Enum Creation

This forum is for discussions on how to edit what can not be edited through the txt files, needless to say this isn't about battle net hacking.

Moderators: Nefarius, Havvoric

User avatar
devurandom
Forum Regular
Angel
Posts: 897
Joined: Sat Mar 07, 2015 9:07 pm
United States of America

Automate Enum Creation

Post by devurandom » Tue May 15, 2018 1:23 pm

Unix Text Utilities like Sed And Awk can simplify a lot of work.
There are books written on these 2 commands, but you can find a lot of useful one liners on the web.

Piping a few of these one liners together Automates 95% of the work.

Image

Create Enum Raw Data from ItemStatCost.txt

Code: Select all

awk -v FS='\t' '{print $1}' ItemStatCost.txt | sed '1d' | sed 's/[ \t]*$//' | \
awk '{printf "STAT_%-32s= 0x%02X,\n", toupper($1),NR-1}'  | \
sed 's/$/\r/' > eD2Stat.txt
Raw Output

Code: Select all

STAT_STRENGTH                        = 0x00,
STAT_ENERGY                          = 0x01,
STAT_DEXTERITY                       = 0x02,
STAT_VITALITY                        = 0x03,
STAT_STATPTS                         = 0x04,
STAT_NEWSKILLS                       = 0x05,
STAT_HITPOINTS                       = 0x06,
STAT_MAXHP                           = 0x07,
STAT_MANA                            = 0x08,
STAT_MAXMANA                         = 0x09,
STAT_STAMINA                         = 0x0A,
STAT_MAXSTAMINA                      = 0x0B,
STAT_LEVEL                           = 0x0C,
STAT_EXPERIENCE                      = 0x0D,
STAT_GOLD                            = 0x0E,
STAT_GOLDBANK                        = 0x0F,
STAT_ITEM_ARMOR_PERCENT              = 0x10,
STAT_ITEM_MAXDAMAGE_PERCENT          = 0x11,
STAT_ITEM_MINDAMAGE_PERCENT          = 0x12,
STAT_TOHIT                           = 0x13,
STAT_TOBLOCK                         = 0x14,
STAT_MINDAMAGE                       = 0x15,
STAT_MAXDAMAGE                       = 0x16,
STAT_SECONDARY_MINDAMAGE             = 0x17,
STAT_SECONDARY_MAXDAMAGE             = 0x18,
STAT_DAMAGEPERCENT                   = 0x19,
STAT_MANARECOVERY                    = 0x1A,
STAT_MANARECOVERYBONUS               = 0x1B,
STAT_STAMINARECOVERYBONUS            = 0x1C,
STAT_LASTEXP                         = 0x1D,
STAT_NEXTEXP                         = 0x1E,
STAT_ARMORCLASS                      = 0x1F,
STAT_ARMORCLASS_VS_MISSILE           = 0x20,
STAT_ARMORCLASS_VS_HTH               = 0x21,
STAT_NORMAL_DAMAGE_REDUCTION         = 0x22,
STAT_MAGIC_DAMAGE_REDUCTION          = 0x23,
STAT_DAMAGERESIST                    = 0x24,
STAT_MAGICRESIST                     = 0x25,
STAT_MAXMAGICRESIST                  = 0x26,
STAT_FIRERESIST                      = 0x27,
STAT_MAXFIRERESIST                   = 0x28,
STAT_LIGHTRESIST                     = 0x29,
STAT_MAXLIGHTRESIST                  = 0x2A,
STAT_COLDRESIST                      = 0x2B,
STAT_MAXCOLDRESIST                   = 0x2C,
STAT_POISONRESIST                    = 0x2D,
STAT_MAXPOISONRESIST                 = 0x2E,
STAT_DAMAGEAURA                      = 0x2F,
STAT_FIREMINDAM                      = 0x30,
STAT_FIREMAXDAM                      = 0x31,
STAT_LIGHTMINDAM                     = 0x32,
STAT_LIGHTMAXDAM                     = 0x33,
STAT_MAGICMINDAM                     = 0x34,
STAT_MAGICMAXDAM                     = 0x35,
STAT_COLDMINDAM                      = 0x36,
STAT_COLDMAXDAM                      = 0x37,
STAT_COLDLENGTH                      = 0x38,
STAT_POISONMINDAM                    = 0x39,
STAT_POISONMAXDAM                    = 0x3A,
STAT_POISONLENGTH                    = 0x3B,
STAT_LIFEDRAINMINDAM                 = 0x3C,
STAT_LIFEDRAINMAXDAM                 = 0x3D,
STAT_MANADRAINMINDAM                 = 0x3E,
STAT_MANADRAINMAXDAM                 = 0x3F,
STAT_STAMDRAINMINDAM                 = 0x40,
STAT_STAMDRAINMAXDAM                 = 0x41,
STAT_STUNLENGTH                      = 0x42,
STAT_VELOCITYPERCENT                 = 0x43,
STAT_ATTACKRATE                      = 0x44,
STAT_OTHER_ANIMRATE                  = 0x45,
STAT_QUANTITY                        = 0x46,
STAT_VALUE                           = 0x47,
STAT_DURABILITY                      = 0x48,
STAT_MAXDURABILITY                   = 0x49,
STAT_HPREGEN                         = 0x4A,
STAT_ITEM_MAXDURABILITY_PERCENT      = 0x4B,
STAT_ITEM_MAXHP_PERCENT              = 0x4C,
STAT_ITEM_MAXMANA_PERCENT            = 0x4D,
STAT_ITEM_ATTACKERTAKESDAMAGE        = 0x4E,
STAT_ITEM_GOLDBONUS                  = 0x4F,
STAT_ITEM_MAGICBONUS                 = 0x50,
STAT_ITEM_KNOCKBACK                  = 0x51,
STAT_ITEM_TIMEDURATION               = 0x52,
STAT_ITEM_ADDCLASSSKILLS             = 0x53,
STAT_UNSENTPARAM1                    = 0x54,
STAT_ITEM_ADDEXPERIENCE              = 0x55,
STAT_ITEM_HEALAFTERKILL              = 0x56,
STAT_ITEM_REDUCEDPRICES              = 0x57,
STAT_ITEM_DOUBLEHERBDURATION         = 0x58,
STAT_ITEM_LIGHTRADIUS                = 0x59,
STAT_ITEM_LIGHTCOLOR                 = 0x5A,
STAT_ITEM_REQ_PERCENT                = 0x5B,
STAT_ITEM_LEVELREQ                   = 0x5C,
STAT_ITEM_FASTERATTACKRATE           = 0x5D,
STAT_ITEM_LEVELREQPCT                = 0x5E,
STAT_LASTBLOCKFRAME                  = 0x5F,
STAT_ITEM_FASTERMOVEVELOCITY         = 0x60,
STAT_ITEM_NONCLASSSKILL              = 0x61,
STAT_STATE                           = 0x62,
STAT_ITEM_FASTERGETHITRATE           = 0x63,
STAT_MONSTER_PLAYERCOUNT             = 0x64,
STAT_SKILL_POISON_OVERRIDE_LENGTH    = 0x65,
STAT_ITEM_FASTERBLOCKRATE            = 0x66,
STAT_SKILL_BYPASS_UNDEAD             = 0x67,
STAT_SKILL_BYPASS_DEMONS             = 0x68,
STAT_ITEM_FASTERCASTRATE             = 0x69,
STAT_SKILL_BYPASS_BEASTS             = 0x6A,
STAT_ITEM_SINGLESKILL                = 0x6B,
STAT_ITEM_RESTINPEACE                = 0x6C,
STAT_CURSE_RESISTANCE                = 0x6D,
STAT_ITEM_POISONLENGTHRESIST         = 0x6E,
STAT_ITEM_NORMALDAMAGE               = 0x6F,
STAT_ITEM_HOWL                       = 0x70,
STAT_ITEM_STUPIDITY                  = 0x71,
STAT_ITEM_DAMAGETOMANA               = 0x72,
STAT_ITEM_IGNORETARGETAC             = 0x73,
STAT_ITEM_FRACTIONALTARGETAC         = 0x74,
STAT_ITEM_PREVENTHEAL                = 0x75,
STAT_ITEM_HALFFREEZEDURATION         = 0x76,
STAT_ITEM_TOHIT_PERCENT              = 0x77,
STAT_ITEM_DAMAGETARGETAC             = 0x78,
STAT_ITEM_DEMONDAMAGE_PERCENT        = 0x79,
STAT_ITEM_UNDEADDAMAGE_PERCENT       = 0x7A,
STAT_ITEM_DEMON_TOHIT                = 0x7B,
STAT_ITEM_UNDEAD_TOHIT               = 0x7C,
STAT_ITEM_THROWABLE                  = 0x7D,
STAT_ITEM_ELEMSKILL                  = 0x7E,
STAT_ITEM_ALLSKILLS                  = 0x7F,
STAT_ITEM_ATTACKERTAKESLIGHTDAMAGE   = 0x80,
STAT_IRONMAIDEN_LEVEL                = 0x81,
STAT_LIFETAP_LEVEL                   = 0x82,
STAT_THORNS_PERCENT                  = 0x83,
STAT_BONEARMOR                       = 0x84,
STAT_BONEARMORMAX                    = 0x85,
STAT_ITEM_FREEZE                     = 0x86,
STAT_ITEM_OPENWOUNDS                 = 0x87,
STAT_ITEM_CRUSHINGBLOW               = 0x88,
STAT_ITEM_KICKDAMAGE                 = 0x89,
STAT_ITEM_MANAAFTERKILL              = 0x8A,
STAT_ITEM_HEALAFTERDEMONKILL         = 0x8B,
STAT_ITEM_EXTRABLOOD                 = 0x8C,
STAT_ITEM_DEADLYSTRIKE               = 0x8D,
STAT_ITEM_ABSORBFIRE_PERCENT         = 0x8E,
STAT_ITEM_ABSORBFIRE                 = 0x8F,
STAT_ITEM_ABSORBLIGHT_PERCENT        = 0x90,
STAT_ITEM_ABSORBLIGHT                = 0x91,
STAT_ITEM_ABSORBMAGIC_PERCENT        = 0x92,
STAT_ITEM_ABSORBMAGIC                = 0x93,
STAT_ITEM_ABSORBCOLD_PERCENT         = 0x94,
STAT_ITEM_ABSORBCOLD                 = 0x95,
STAT_ITEM_SLOW                       = 0x96,
STAT_ITEM_AURA                       = 0x97,
STAT_ITEM_INDESCTRUCTIBLE            = 0x98,
STAT_ITEM_CANNOTBEFROZEN             = 0x99,
STAT_ITEM_STAMINADRAINPCT            = 0x9A,
STAT_ITEM_REANIMATE                  = 0x9B,
STAT_ITEM_PIERCE                     = 0x9C,
STAT_ITEM_MAGICARROW                 = 0x9D,
STAT_ITEM_EXPLOSIVEARROW             = 0x9E,
STAT_ITEM_THROW_MINDAMAGE            = 0x9F,
STAT_ITEM_THROW_MAXDAMAGE            = 0xA0,
STAT_SKILL_HANDOFATHENA              = 0xA1,
STAT_SKILL_STAMINAPERCENT            = 0xA2,
STAT_SKILL_PASSIVE_STAMINAPERCENT    = 0xA3,
STAT_SKILL_CONCENTRATION             = 0xA4,
STAT_SKILL_ENCHANT                   = 0xA5,
STAT_SKILL_PIERCE                    = 0xA6,
STAT_SKILL_CONVICTION                = 0xA7,
STAT_SKILL_CHILLINGARMOR             = 0xA8,
STAT_SKILL_FRENZY                    = 0xA9,
STAT_SKILL_DECREPIFY                 = 0xAA,
STAT_SKILL_ARMOR_PERCENT             = 0xAB,
STAT_ALIGNMENT                       = 0xAC,
STAT_TARGET0                         = 0xAD,
STAT_TARGET1                         = 0xAE,
STAT_GOLDLOST                        = 0xAF,
STAT_CONVERSION_LEVEL                = 0xB0,
STAT_CONVERSION_MAXHP                = 0xB1,
STAT_UNIT_DOOVERLAY                  = 0xB2,
STAT_ATTACK_VS_MONTYPE               = 0xB3,
STAT_DAMAGE_VS_MONTYPE               = 0xB4,
STAT_FADE                            = 0xB5,
STAT_ARMOR_OVERRIDE_PERCENT          = 0xB6,
STAT_UNUSED183                       = 0xB7,
STAT_UNUSED184                       = 0xB8,
STAT_UNUSED185                       = 0xB9,
STAT_UNUSED186                       = 0xBA,
STAT_UNUSED187                       = 0xBB,
STAT_ITEM_ADDSKILL_TAB               = 0xBC,
STAT_UNUSED189                       = 0xBD,
STAT_UNUSED190                       = 0xBE,
STAT_UNUSED191                       = 0xBF,
STAT_UNUSED192                       = 0xC0,
STAT_UNUSED193                       = 0xC1,
STAT_ITEM_NUMSOCKETS                 = 0xC2,
STAT_ITEM_SKILLONATTACK              = 0xC3,
STAT_ITEM_SKILLONKILL                = 0xC4,
STAT_ITEM_SKILLONDEATH               = 0xC5,
STAT_ITEM_SKILLONHIT                 = 0xC6,
STAT_ITEM_SKILLONLEVELUP             = 0xC7,
STAT_UNUSED200                       = 0xC8,
STAT_ITEM_SKILLONGETHIT              = 0xC9,
STAT_UNUSED202                       = 0xCA,
STAT_UNUSED203                       = 0xCB,
STAT_ITEM_CHARGED_SKILL              = 0xCC,
STAT_UNUSED204                       = 0xCD,
STAT_UNUSED205                       = 0xCE,
STAT_UNUSED206                       = 0xCF,
STAT_UNUSED207                       = 0xD0,
STAT_UNUSED208                       = 0xD1,
STAT_UNUSED209                       = 0xD2,
STAT_UNUSED210                       = 0xD3,
STAT_UNUSED211                       = 0xD4,
STAT_UNUSED212                       = 0xD5,
STAT_ITEM_ARMOR_PERLEVEL             = 0xD6,
STAT_ITEM_ARMORPERCENT_PERLEVEL      = 0xD7,
STAT_ITEM_HP_PERLEVEL                = 0xD8,
STAT_ITEM_MANA_PERLEVEL              = 0xD9,
STAT_ITEM_MAXDAMAGE_PERLEVEL         = 0xDA,
STAT_ITEM_MAXDAMAGE_PERCENT_PERLEVEL = 0xDB,
STAT_ITEM_STRENGTH_PERLEVEL          = 0xDC,
STAT_ITEM_DEXTERITY_PERLEVEL         = 0xDD,
STAT_ITEM_ENERGY_PERLEVEL            = 0xDE,
STAT_ITEM_VITALITY_PERLEVEL          = 0xDF,
STAT_ITEM_TOHIT_PERLEVEL             = 0xE0,
STAT_ITEM_TOHITPERCENT_PERLEVEL      = 0xE1,
STAT_ITEM_COLD_DAMAGEMAX_PERLEVEL    = 0xE2,
STAT_ITEM_FIRE_DAMAGEMAX_PERLEVEL    = 0xE3,
STAT_ITEM_LTNG_DAMAGEMAX_PERLEVEL    = 0xE4,
STAT_ITEM_POIS_DAMAGEMAX_PERLEVEL    = 0xE5,
STAT_ITEM_RESIST_COLD_PERLEVEL       = 0xE6,
STAT_ITEM_RESIST_FIRE_PERLEVEL       = 0xE7,
STAT_ITEM_RESIST_LTNG_PERLEVEL       = 0xE8,
STAT_ITEM_RESIST_POIS_PERLEVEL       = 0xE9,
STAT_ITEM_ABSORB_COLD_PERLEVEL       = 0xEA,
STAT_ITEM_ABSORB_FIRE_PERLEVEL       = 0xEB,
STAT_ITEM_ABSORB_LTNG_PERLEVEL       = 0xEC,
STAT_ITEM_ABSORB_POIS_PERLEVEL       = 0xED,
STAT_ITEM_THORNS_PERLEVEL            = 0xEE,
STAT_ITEM_FIND_GOLD_PERLEVEL         = 0xEF,
STAT_ITEM_FIND_MAGIC_PERLEVEL        = 0xF0,
STAT_ITEM_REGENSTAMINA_PERLEVEL      = 0xF1,
STAT_ITEM_STAMINA_PERLEVEL           = 0xF2,
STAT_ITEM_DAMAGE_DEMON_PERLEVEL      = 0xF3,
STAT_ITEM_DAMAGE_UNDEAD_PERLEVEL     = 0xF4,
STAT_ITEM_TOHIT_DEMON_PERLEVEL       = 0xF5,
STAT_ITEM_TOHIT_UNDEAD_PERLEVEL      = 0xF6,
STAT_ITEM_CRUSHINGBLOW_PERLEVEL      = 0xF7,
STAT_ITEM_OPENWOUNDS_PERLEVEL        = 0xF8,
STAT_ITEM_KICK_DAMAGE_PERLEVEL       = 0xF9,
STAT_ITEM_DEADLYSTRIKE_PERLEVEL      = 0xFA,
STAT_ITEM_FIND_GEMS_PERLEVEL         = 0xFB,
STAT_ITEM_REPLENISH_DURABILITY       = 0xFC,
STAT_ITEM_REPLENISH_QUANTITY         = 0xFD,
STAT_ITEM_EXTRA_STACK                = 0xFE,
STAT_ITEM_FIND_ITEM                  = 0xFF,
STAT_ITEM_SLASH_DAMAGE               = 0x100,
STAT_ITEM_SLASH_DAMAGE_PERCENT       = 0x101,
STAT_ITEM_CRUSH_DAMAGE               = 0x102,
STAT_ITEM_CRUSH_DAMAGE_PERCENT       = 0x103,
STAT_ITEM_THRUST_DAMAGE              = 0x104,
STAT_ITEM_THRUST_DAMAGE_PERCENT      = 0x105,
STAT_ITEM_ABSORB_SLASH               = 0x106,
STAT_ITEM_ABSORB_CRUSH               = 0x107,
STAT_ITEM_ABSORB_THRUST              = 0x108,
STAT_ITEM_ABSORB_SLASH_PERCENT       = 0x109,
STAT_ITEM_ABSORB_CRUSH_PERCENT       = 0x10A,
STAT_ITEM_ABSORB_THRUST_PERCENT      = 0x10B,
STAT_ITEM_ARMOR_BYTIME               = 0x10C,
STAT_ITEM_ARMORPERCENT_BYTIME        = 0x10D,
STAT_ITEM_HP_BYTIME                  = 0x10E,
STAT_ITEM_MANA_BYTIME                = 0x10F,
STAT_ITEM_MAXDAMAGE_BYTIME           = 0x110,
STAT_ITEM_MAXDAMAGE_PERCENT_BYTIME   = 0x111,
STAT_ITEM_STRENGTH_BYTIME            = 0x112,
STAT_ITEM_DEXTERITY_BYTIME           = 0x113,
STAT_ITEM_ENERGY_BYTIME              = 0x114,
STAT_ITEM_VITALITY_BYTIME            = 0x115,
STAT_ITEM_TOHIT_BYTIME               = 0x116,
STAT_ITEM_TOHITPERCENT_BYTIME        = 0x117,
STAT_ITEM_COLD_DAMAGEMAX_BYTIME      = 0x118,
STAT_ITEM_FIRE_DAMAGEMAX_BYTIME      = 0x119,
STAT_ITEM_LTNG_DAMAGEMAX_BYTIME      = 0x11A,
STAT_ITEM_POIS_DAMAGEMAX_BYTIME      = 0x11B,
STAT_ITEM_RESIST_COLD_BYTIME         = 0x11C,
STAT_ITEM_RESIST_FIRE_BYTIME         = 0x11D,
STAT_ITEM_RESIST_LTNG_BYTIME         = 0x11E,
STAT_ITEM_RESIST_POIS_BYTIME         = 0x11F,
STAT_ITEM_ABSORB_COLD_BYTIME         = 0x120,
STAT_ITEM_ABSORB_FIRE_BYTIME         = 0x121,
STAT_ITEM_ABSORB_LTNG_BYTIME         = 0x122,
STAT_ITEM_ABSORB_POIS_BYTIME         = 0x123,
STAT_ITEM_FIND_GOLD_BYTIME           = 0x124,
STAT_ITEM_FIND_MAGIC_BYTIME          = 0x125,
STAT_ITEM_REGENSTAMINA_BYTIME        = 0x126,
STAT_ITEM_STAMINA_BYTIME             = 0x127,
STAT_ITEM_DAMAGE_DEMON_BYTIME        = 0x128,
STAT_ITEM_DAMAGE_UNDEAD_BYTIME       = 0x129,
STAT_ITEM_TOHIT_DEMON_BYTIME         = 0x12A,
STAT_ITEM_TOHIT_UNDEAD_BYTIME        = 0x12B,
STAT_ITEM_CRUSHINGBLOW_BYTIME        = 0x12C,
STAT_ITEM_OPENWOUNDS_BYTIME          = 0x12D,
STAT_ITEM_KICK_DAMAGE_BYTIME         = 0x12E,
STAT_ITEM_DEADLYSTRIKE_BYTIME        = 0x12F,
STAT_ITEM_FIND_GEMS_BYTIME           = 0x130,
STAT_ITEM_PIERCE_COLD                = 0x131,
STAT_ITEM_PIERCE_FIRE                = 0x132,
STAT_ITEM_PIERCE_LTNG                = 0x133,
STAT_ITEM_PIERCE_POIS                = 0x134,
STAT_ITEM_DAMAGE_VS_MONSTER          = 0x135,
STAT_ITEM_DAMAGE_PERCENT_VS_MONSTER  = 0x136,
STAT_ITEM_TOHIT_VS_MONSTER           = 0x137,
STAT_ITEM_TOHIT_PERCENT_VS_MONSTER   = 0x138,
STAT_ITEM_AC_VS_MONSTER              = 0x139,
STAT_ITEM_AC_PERCENT_VS_MONSTER      = 0x13A,
STAT_FIRELENGTH                      = 0x13B,
STAT_BURNINGMIN                      = 0x13C,
STAT_BURNINGMAX                      = 0x13D,
STAT_PROGRESSIVE_DAMAGE              = 0x13E,
STAT_PROGRESSIVE_STEAL               = 0x13F,
STAT_PROGRESSIVE_OTHER               = 0x140,
STAT_PROGRESSIVE_FIRE                = 0x141,
STAT_PROGRESSIVE_COLD                = 0x142,
STAT_PROGRESSIVE_LIGHTNING           = 0x143,
STAT_ITEM_EXTRA_CHARGES              = 0x144,
STAT_PROGRESSIVE_TOHIT               = 0x145,
STAT_POISON_COUNT                    = 0x146,
STAT_DAMAGE_FRAMERATE                = 0x147,
STAT_PIERCE_IDX                      = 0x148,
STAT_PASSIVE_FIRE_MASTERY            = 0x149,
STAT_PASSIVE_LTNG_MASTERY            = 0x14A,
STAT_PASSIVE_COLD_MASTERY            = 0x14B,
STAT_PASSIVE_POIS_MASTERY            = 0x14C,
STAT_PASSIVE_FIRE_PIERCE             = 0x14D,
STAT_PASSIVE_LTNG_PIERCE             = 0x14E,
STAT_PASSIVE_COLD_PIERCE             = 0x14F,
STAT_PASSIVE_POIS_PIERCE             = 0x150,
STAT_PASSIVE_CRITICAL_STRIKE         = 0x151,
STAT_PASSIVE_DODGE                   = 0x152,
STAT_PASSIVE_AVOID                   = 0x153,
STAT_PASSIVE_EVADE                   = 0x154,
STAT_PASSIVE_WARMTH                  = 0x155,
STAT_PASSIVE_MASTERY_MELEE_TH        = 0x156,
STAT_PASSIVE_MASTERY_MELEE_DMG       = 0x157,
STAT_PASSIVE_MASTERY_MELEE_CRIT      = 0x158,
STAT_PASSIVE_MASTERY_THROW_TH        = 0x159,
STAT_PASSIVE_MASTERY_THROW_DMG       = 0x15A,
STAT_PASSIVE_MASTERY_THROW_CRIT      = 0x15B,
STAT_PASSIVE_WEAPONBLOCK             = 0x15C,
STAT_PASSIVE_SUMMON_RESIST           = 0x15D,
STAT_MODIFIERLIST_SKILL              = 0x15E,
STAT_MODIFIERLIST_LEVEL              = 0x15F,
STAT_LAST_SENT_HP_PCT                = 0x160,
STAT_SOURCE_UNIT_TYPE                = 0x161,
STAT_SOURCE_UNIT_ID                  = 0x162,
STAT_SHORTPARAM1                     = 0x163,
STAT_QUESTITEMDIFFICULTY             = 0x164,
STAT_PASSIVE_MAG_MASTERY             = 0x165,
STAT_PASSIVE_MAG_PIERCE              = 0x166,


Create Enum Raw Data from Monstats.txt

Code: Select all

awk -v FS='\t' '{print $1}' Monstats.txt | sed '1d' | sed 's/[ \t]*$//' |  \
grep -v "^Expansion" | \
awk -v OFS='\t' '{printf "%-18s= %d,\n", toupper($1),NR-1}' | \
sed 's/$/\r/' > eD2Monsters.txt
Raw Output

Code: Select all

SKELETON1         = 0,
SKELETON2         = 1,
SKELETON3         = 2,
SKELETON4         = 3,
SKELETON5         = 4,
ZOMBIE1           = 5,
ZOMBIE2           = 6,
ZOMBIE3           = 7,
ZOMBIE4           = 8,
ZOMBIE5           = 9,
BIGHEAD1          = 10,
BIGHEAD2          = 11,
BIGHEAD3          = 12,
BIGHEAD4          = 13,
BIGHEAD5          = 14,
FOULCROW1         = 15,
FOULCROW2         = 16,
FOULCROW3         = 17,
FOULCROW4         = 18,
FALLEN1           = 19,
FALLEN2           = 20,
FALLEN3           = 21,
FALLEN4           = 22,
FALLEN5           = 23,
BRUTE2            = 24,
BRUTE3            = 25,
BRUTE4            = 26,
BRUTE5            = 27,
BRUTE1            = 28,
SANDRAIDER1       = 29,
SANDRAIDER2       = 30,
SANDRAIDER3       = 31,
SANDRAIDER4       = 32,
SANDRAIDER5       = 33,
GORGON1           = 34,
GORGON2           = 35,
GORGON3           = 36,
GORGON4           = 37,
WRAITH1           = 38,
WRAITH2           = 39,
WRAITH3           = 40,
WRAITH4           = 41,
WRAITH5           = 42,
CORRUPTROGUE1     = 43,
CORRUPTROGUE2     = 44,
CORRUPTROGUE3     = 45,
CORRUPTROGUE4     = 46,
CORRUPTROGUE5     = 47,
BABOON1           = 48,
BABOON2           = 49,
BABOON3           = 50,
BABOON4           = 51,
BABOON5           = 52,
GOATMAN1          = 53,
GOATMAN2          = 54,
GOATMAN3          = 55,
GOATMAN4          = 56,
GOATMAN5          = 57,
FALLENSHAMAN1     = 58,
FALLENSHAMAN2     = 59,
FALLENSHAMAN3     = 60,
FALLENSHAMAN4     = 61,
FALLENSHAMAN5     = 62,
QUILLRAT1         = 63,
QUILLRAT2         = 64,
QUILLRAT3         = 65,
QUILLRAT4         = 66,
QUILLRAT5         = 67,
SANDMAGGOT1       = 68,
SANDMAGGOT2       = 69,
SANDMAGGOT3       = 70,
SANDMAGGOT4       = 71,
SANDMAGGOT5       = 72,
CLAWVIPER1        = 73,
CLAWVIPER2        = 74,
CLAWVIPER3        = 75,
CLAWVIPER4        = 76,
CLAWVIPER5        = 77,
SANDLEAPER1       = 78,
SANDLEAPER2       = 79,
SANDLEAPER3       = 80,
SANDLEAPER4       = 81,
SANDLEAPER5       = 82,
PANTHERWOMAN1     = 83,
PANTHERWOMAN2     = 84,
PANTHERWOMAN3     = 85,
PANTHERWOMAN4     = 86,
SWARM1            = 87,
SWARM2            = 88,
SWARM3            = 89,
SWARM4            = 90,
SCARAB1           = 91,
SCARAB2           = 92,
SCARAB3           = 93,
SCARAB4           = 94,
SCARAB5           = 95,
MUMMY1            = 96,
MUMMY2            = 97,
MUMMY3            = 98,
MUMMY4            = 99,
MUMMY5            = 100,
UNRAVELER1        = 101,
UNRAVELER2        = 102,
UNRAVELER3        = 103,
UNRAVELER4        = 104,
UNRAVELER5        = 105,
CHAOSHORDE1       = 106,
CHAOSHORDE2       = 107,
CHAOSHORDE3       = 108,
CHAOSHORDE4       = 109,
VULTURE1          = 110,
VULTURE2          = 111,
VULTURE3          = 112,
VULTURE4          = 113,
MOSQUITO1         = 114,
MOSQUITO2         = 115,
MOSQUITO3         = 116,
MOSQUITO4         = 117,
WILLOWISP1        = 118,
WILLOWISP2        = 119,
WILLOWISP3        = 120,
WILLOWISP4        = 121,
ARACH1            = 122,
ARACH2            = 123,
ARACH3            = 124,
ARACH4            = 125,
ARACH5            = 126,
THORNHULK1        = 127,
THORNHULK2        = 128,
THORNHULK3        = 129,
THORNHULK4        = 130,
VAMPIRE1          = 131,
VAMPIRE2          = 132,
VAMPIRE3          = 133,
VAMPIRE4          = 134,
VAMPIRE5          = 135,
BATDEMON1         = 136,
BATDEMON2         = 137,
BATDEMON3         = 138,
BATDEMON4         = 139,
BATDEMON5         = 140,
FETISH1           = 141,
FETISH2           = 142,
FETISH3           = 143,
FETISH4           = 144,
FETISH5           = 145,
CAIN1             = 146,
GHEED             = 147,
AKARA             = 148,
CHICKEN           = 149,
KASHYA            = 150,
RAT               = 151,
ROGUE1            = 152,
HELLMETEOR        = 153,
CHARSI            = 154,
WARRIV1           = 155,
ANDARIEL          = 156,
BIRD1             = 157,
BIRD2             = 158,
BAT               = 159,
CR_ARCHER1        = 160,
CR_ARCHER2        = 161,
CR_ARCHER3        = 162,
CR_ARCHER4        = 163,
CR_ARCHER5        = 164,
CR_LANCER1        = 165,
CR_LANCER2        = 166,
CR_LANCER3        = 167,
CR_LANCER4        = 168,
CR_LANCER5        = 169,
SK_ARCHER1        = 170,
SK_ARCHER2        = 171,
SK_ARCHER3        = 172,
SK_ARCHER4        = 173,
SK_ARCHER5        = 174,
WARRIV2           = 175,
ATMA              = 176,
DROGNAN           = 177,
FARA              = 178,
COW               = 179,
MAGGOTBABY1       = 180,
MAGGOTBABY2       = 181,
MAGGOTBABY3       = 182,
MAGGOTBABY4       = 183,
MAGGOTBABY5       = 184,
CAMEL             = 185,
BLUNDERBORE1      = 186,
BLUNDERBORE2      = 187,
BLUNDERBORE3      = 188,
BLUNDERBORE4      = 189,
MAGGOTEGG1        = 190,
MAGGOTEGG2        = 191,
MAGGOTEGG3        = 192,
MAGGOTEGG4        = 193,
MAGGOTEGG5        = 194,
ACT2MALE          = 195,
ACT2FEMALE        = 196,
ACT2CHILD         = 197,
GREIZ             = 198,
ELZIX             = 199,
GEGLASH           = 200,
JERHYN            = 201,
LYSANDER          = 202,
ACT2GUARD1        = 203,
ACT2VENDOR1       = 204,
ACT2VENDOR2       = 205,
CROWNEST1         = 206,
CROWNEST2         = 207,
CROWNEST3         = 208,
CROWNEST4         = 209,
MESHIF1           = 210,
DURIEL            = 211,
BONEFETISH1       = 212,
BONEFETISH2       = 213,
BONEFETISH3       = 214,
BONEFETISH4       = 215,
BONEFETISH5       = 216,
DARKGUARD1        = 217,
DARKGUARD2        = 218,
DARKGUARD3        = 219,
DARKGUARD4        = 220,
DARKGUARD5        = 221,
BLOODMAGE1        = 222,
BLOODMAGE2        = 223,
BLOODMAGE3        = 224,
BLOODMAGE4        = 225,
BLOODMAGE5        = 226,
MAGGOT            = 227,
SARCOPHAGUS       = 228,
RADAMENT          = 229,
FIREBEAST         = 230,
ICEGLOBE          = 231,
LIGHTNINGBEAST    = 232,
POISONORB         = 233,
FLYINGSCIMITAR    = 234,
ZEALOT1           = 235,
ZEALOT2           = 236,
ZEALOT3           = 237,
CANTOR1           = 238,
CANTOR2           = 239,
CANTOR3           = 240,
CANTOR4           = 241,
MEPHISTO          = 242,
DIABLO            = 243,
CAIN2             = 244,
CAIN3             = 245,
CAIN4             = 246,
FROGDEMON1        = 247,
FROGDEMON2        = 248,
FROGDEMON3        = 249,
SUMMONER          = 250,
TYRAEL1           = 251,
ASHEARA           = 252,
HRATLI            = 253,
ALKOR             = 254,
ORMUS             = 255,
IZUAL             = 256,
HALBU             = 257,
TENTACLE1         = 258,
TENTACLE2         = 259,
TENTACLE3         = 260,
TENTACLEHEAD1     = 261,
TENTACLEHEAD2     = 262,
TENTACLEHEAD3     = 263,
MESHIF2           = 264,
CAIN5             = 265,
NAVI              = 266,
BLOODRAVEN        = 267,
BUG               = 268,
SCORPION          = 269,
ROGUE2            = 270,
ROGUEHIRE         = 271,
ROGUE3            = 272,
GARGOYLETRAP      = 273,
SKMAGE_POIS1      = 274,
SKMAGE_POIS2      = 275,
SKMAGE_POIS3      = 276,
SKMAGE_POIS4      = 277,
FETISHSHAMAN1     = 278,
FETISHSHAMAN2     = 279,
FETISHSHAMAN3     = 280,
FETISHSHAMAN4     = 281,
FETISHSHAMAN5     = 282,
LARVA             = 283,
MAGGOTQUEEN1      = 284,
MAGGOTQUEEN2      = 285,
MAGGOTQUEEN3      = 286,
MAGGOTQUEEN4      = 287,
MAGGOTQUEEN5      = 288,
CLAYGOLEM         = 289,
BLOODGOLEM        = 290,
IRONGOLEM         = 291,
FIREGOLEM         = 292,
FAMILIAR          = 293,
ACT3MALE          = 294,
BABOON6           = 295,
ACT3FEMALE        = 296,
NATALYA           = 297,
VILEMOTHER1       = 298,
VILEMOTHER2       = 299,
VILEMOTHER3       = 300,
VILECHILD1        = 301,
VILECHILD2        = 302,
VILECHILD3        = 303,
FINGERMAGE1       = 304,
FINGERMAGE2       = 305,
FINGERMAGE3       = 306,
REGURGITATOR1     = 307,
REGURGITATOR2     = 308,
REGURGITATOR3     = 309,
DOOMKNIGHT1       = 310,
DOOMKNIGHT2       = 311,
DOOMKNIGHT3       = 312,
QUILLBEAR1        = 313,
QUILLBEAR2        = 314,
QUILLBEAR3        = 315,
QUILLBEAR4        = 316,
QUILLBEAR5        = 317,
SNAKE             = 318,
PARROT            = 319,
FISH              = 320,
EVILHOLE1         = 321,
EVILHOLE2         = 322,
EVILHOLE3         = 323,
EVILHOLE4         = 324,
EVILHOLE5         = 325,
TRAP-FIREBOLT     = 326,
TRAP-HORZMISSILE  = 327,
TRAP-VERTMISSILE  = 328,
TRAP-POISONCLOUD  = 329,
TRAP-LIGHTNING    = 330,
ACT2GUARD2        = 331,
INVISOSPAWNER     = 332,
DIABLOCLONE       = 333,
SUCKERNEST1       = 334,
SUCKERNEST2       = 335,
SUCKERNEST3       = 336,
SUCKERNEST4       = 337,
ACT2HIRE          = 338,
MINISPIDER        = 339,
BONEPRISON1       = 340,
BONEPRISON2       = 341,
BONEPRISON3       = 342,
BONEPRISON4       = 343,
BONEWALL          = 344,
COUNCILMEMBER1    = 345,
COUNCILMEMBER2    = 346,
COUNCILMEMBER3    = 347,
TURRET1           = 348,
TURRET2           = 349,
TURRET3           = 350,
HYDRA1            = 351,
HYDRA2            = 352,
HYDRA3            = 353,
TRAP-MELEE        = 354,
SEVENTOMBS        = 355,
DOPPLEZON         = 356,
VALKYRIE          = 357,
ACT2GUARD3        = 358,
ACT3HIRE          = 359,
MEGADEMON1        = 360,
MEGADEMON2        = 361,
MEGADEMON3        = 362,
NECROSKELETON     = 363,
NECROMAGE         = 364,
GRISWOLD          = 365,
COMPELLINGORB     = 366,
TYRAEL2           = 367,
DARKWANDERER      = 368,
TRAP-NOVA         = 369,
SPIRITMUMMY       = 370,
LIGHTNINGSPIRE    = 371,
FIRETOWER         = 372,
SLINGER1          = 373,
SLINGER2          = 374,
SLINGER3          = 375,
SLINGER4          = 376,
ACT2GUARD4        = 377,
ACT2GUARD5        = 378,
SKMAGE_COLD1      = 379,
SKMAGE_COLD2      = 380,
SKMAGE_COLD3      = 381,
SKMAGE_COLD4      = 382,
SKMAGE_FIRE1      = 383,
SKMAGE_FIRE2      = 384,
SKMAGE_FIRE3      = 385,
SKMAGE_FIRE4      = 386,
SKMAGE_LTNG1      = 387,
SKMAGE_LTNG2      = 388,
SKMAGE_LTNG3      = 389,
SKMAGE_LTNG4      = 390,
HELLBOVINE        = 391,
WINDOW1           = 392,
WINDOW2           = 393,
SLINGER5          = 394,
SLINGER6          = 395,
FETISHBLOW1       = 396,
FETISHBLOW2       = 397,
FETISHBLOW3       = 398,
FETISHBLOW4       = 399,
FETISHBLOW5       = 400,
MEPHISTOSPIRIT    = 401,
SMITH             = 402,
TRAPPEDSOUL1      = 403,
TRAPPEDSOUL2      = 404,
JAMELLA           = 405,
IZUALGHOST        = 406,
FETISH11          = 407,
MALACHAI          = 408,
HEPHASTO          = 409,
WAKEOFDESTRUCTION = 410,
CHARGEBOLTSENTRY  = 411,
LIGHTNINGSENTRY   = 412,
BLADECREEPER      = 413,
INVISOPET         = 414,
INFERNOSENTRY     = 415,
DEATHSENTRY       = 416,
SHADOWWARRIOR     = 417,
SHADOWMASTER      = 418,
DRUIDHAWK         = 419,
SPIRITWOLF        = 420,
FENRIS            = 421,
SPIRITOFBARBS     = 422,
HEARTOFWOLVERINE  = 423,
OAKSAGE           = 424,
PLAGUEPOPPY       = 425,
CYCLEOFLIFE       = 426,
VINECREATURE      = 427,
DRUIDBEAR         = 428,
EAGLE             = 429,
WOLF              = 430,
BEAR              = 431,
BARRICADEDOOR1    = 432,
BARRICADEDOOR2    = 433,
PRISONDOOR        = 434,
BARRICADETOWER    = 435,
REANIMATEDHORDE1  = 436,
REANIMATEDHORDE2  = 437,
REANIMATEDHORDE3  = 438,
REANIMATEDHORDE4  = 439,
REANIMATEDHORDE5  = 440,
SIEGEBEAST1       = 441,
SIEGEBEAST2       = 442,
SIEGEBEAST3       = 443,
SIEGEBEAST4       = 444,
SIEGEBEAST5       = 445,
SNOWYETI1         = 446,
SNOWYETI2         = 447,
SNOWYETI3         = 448,
SNOWYETI4         = 449,
WOLFRIDER1        = 450,
WOLFRIDER2        = 451,
WOLFRIDER3        = 452,
MINION1           = 453,
MINION2           = 454,
MINION3           = 455,
MINION4           = 456,
MINION5           = 457,
MINION6           = 458,
MINION7           = 459,
MINION8           = 460,
SUICIDEMINION1    = 461,
SUICIDEMINION2    = 462,
SUICIDEMINION3    = 463,
SUICIDEMINION4    = 464,
SUICIDEMINION5    = 465,
SUICIDEMINION6    = 466,
SUICIDEMINION7    = 467,
SUICIDEMINION8    = 468,
SUCCUBUS1         = 469,
SUCCUBUS2         = 470,
SUCCUBUS3         = 471,
SUCCUBUS4         = 472,
SUCCUBUS5         = 473,
SUCCUBUSWITCH1    = 474,
SUCCUBUSWITCH2    = 475,
SUCCUBUSWITCH3    = 476,
SUCCUBUSWITCH4    = 477,
SUCCUBUSWITCH5    = 478,
OVERSEER1         = 479,
OVERSEER2         = 480,
OVERSEER3         = 481,
OVERSEER4         = 482,
OVERSEER5         = 483,
MINIONSPAWNER1    = 484,
MINIONSPAWNER2    = 485,
MINIONSPAWNER3    = 486,
MINIONSPAWNER4    = 487,
MINIONSPAWNER5    = 488,
MINIONSPAWNER6    = 489,
MINIONSPAWNER7    = 490,
MINIONSPAWNER8    = 491,
IMP1              = 492,
IMP2              = 493,
IMP3              = 494,
IMP4              = 495,
IMP5              = 496,
CATAPULT1         = 497,
CATAPULT2         = 498,
CATAPULT3         = 499,
CATAPULT4         = 500,
FROZENHORROR1     = 501,
FROZENHORROR2     = 502,
FROZENHORROR3     = 503,
FROZENHORROR4     = 504,
FROZENHORROR5     = 505,
BLOODLORD1        = 506,
BLOODLORD2        = 507,
BLOODLORD3        = 508,
BLOODLORD4        = 509,
BLOODLORD5        = 510,
LARZUK            = 511,
DREHYA            = 512,
MALAH             = 513,
NIHLATHAK         = 514,
QUAL-KEHK         = 515,
CATAPULTSPOTTER1  = 516,
CATAPULTSPOTTER2  = 517,
CATAPULTSPOTTER3  = 518,
CATAPULTSPOTTER4  = 519,
CAIN6             = 520,
TYRAEL3           = 521,
ACT5BARB1         = 522,
ACT5BARB2         = 523,
BARRICADEWALL1    = 524,
BARRICADEWALL2    = 525,
NIHLATHAKBOSS     = 526,
DREHYAICED        = 527,
EVILHUT           = 528,
DEATHMAULER1      = 529,
DEATHMAULER2      = 530,
DEATHMAULER3      = 531,
DEATHMAULER4      = 532,
DEATHMAULER5      = 533,
ACT5POW           = 534,
ACT5BARB3         = 535,
ACT5BARB4         = 536,
ANCIENTSTATUE1    = 537,
ANCIENTSTATUE2    = 538,
ANCIENTSTATUE3    = 539,
ANCIENTBARB1      = 540,
ANCIENTBARB2      = 541,
ANCIENTBARB3      = 542,
BAALTHRONE        = 543,
BAALCRAB          = 544,
BAALTAUNT         = 545,
PUTRIDDEFILER1    = 546,
PUTRIDDEFILER2    = 547,
PUTRIDDEFILER3    = 548,
PUTRIDDEFILER4    = 549,
PUTRIDDEFILER5    = 550,
PAINWORM1         = 551,
PAINWORM2         = 552,
PAINWORM3         = 553,
PAINWORM4         = 554,
PAINWORM5         = 555,
BUNNY             = 556,
BAALHIGHPRIEST    = 557,
VENOMLORD         = 558,
BAALCRABSTAIRS    = 559,
ACT5HIRE1         = 560,
ACT5HIRE2         = 561,
BAALTENTACLE1     = 562,
BAALTENTACLE2     = 563,
BAALTENTACLE3     = 564,
BAALTENTACLE4     = 565,
BAALTENTACLE5     = 566,
INJUREDBARB1      = 567,
INJUREDBARB2      = 568,
INJUREDBARB3      = 569,
BAALCLONE         = 570,
BAALMINION1       = 571,
BAALMINION2       = 572,
BAALMINION3       = 573,
WORLDSTONEEFFECT  = 574,
SK_ARCHER6        = 575,
SK_ARCHER7        = 576,
SK_ARCHER8        = 577,
SK_ARCHER9        = 578,
SK_ARCHER10       = 579,
BIGHEAD6          = 580,
BIGHEAD7          = 581,
BIGHEAD8          = 582,
BIGHEAD9          = 583,
BIGHEAD10         = 584,
GOATMAN6          = 585,
GOATMAN7          = 586,
GOATMAN8          = 587,
GOATMAN9          = 588,
GOATMAN10         = 589,
FOULCROW5         = 590,
FOULCROW6         = 591,
FOULCROW7         = 592,
FOULCROW8         = 593,
CLAWVIPER6        = 594,
CLAWVIPER7        = 595,
CLAWVIPER8        = 596,
CLAWVIPER9        = 597,
CLAWVIPER10       = 598,
SANDRAIDER6       = 599,
SANDRAIDER7       = 600,
SANDRAIDER8       = 601,
SANDRAIDER9       = 602,
SANDRAIDER10      = 603,
DEATHMAULER6      = 604,
QUILLRAT6         = 605,
QUILLRAT7         = 606,
QUILLRAT8         = 607,
VULTURE5          = 608,
THORNHULK5        = 609,
SLINGER7          = 610,
SLINGER8          = 611,
SLINGER9          = 612,
CR_ARCHER6        = 613,
CR_ARCHER7        = 614,
CR_LANCER6        = 615,
CR_LANCER7        = 616,
CR_LANCER8        = 617,
BLUNDERBORE5      = 618,
BLUNDERBORE6      = 619,
SKMAGE_FIRE5      = 620,
SKMAGE_FIRE6      = 621,
SKMAGE_LTNG5      = 622,
SKMAGE_LTNG6      = 623,
SKMAGE_COLD5      = 624,
SKMAGE_POIS5      = 625,
SKMAGE_POIS6      = 626,
PANTHERWOMAN5     = 627,
PANTHERWOMAN6     = 628,
SANDLEAPER6       = 629,
SANDLEAPER7       = 630,
WRAITH6           = 631,
WRAITH7           = 632,
WRAITH8           = 633,
SUCCUBUS6         = 634,
SUCCUBUS7         = 635,
SUCCUBUSWITCH6    = 636,
SUCCUBUSWITCH7    = 637,
SUCCUBUSWITCH8    = 638,
WILLOWISP5        = 639,
WILLOWISP6        = 640,
WILLOWISP7        = 641,
FALLEN6           = 642,
FALLEN7           = 643,
FALLEN8           = 644,
FALLENSHAMAN6     = 645,
FALLENSHAMAN7     = 646,
FALLENSHAMAN8     = 647,
SKELETON6         = 648,
SKELETON7         = 649,
BATDEMON6         = 650,
BATDEMON7         = 651,
BLOODLORD6        = 652,
BLOODLORD7        = 653,
SCARAB6           = 654,
SCARAB7           = 655,
FETISH6           = 656,
FETISH7           = 657,
FETISH8           = 658,
FETISHBLOW6       = 659,
FETISHBLOW7       = 660,
FETISHBLOW8       = 661,
FETISHSHAMAN6     = 662,
FETISHSHAMAN7     = 663,
FETISHSHAMAN8     = 664,
BABOON7           = 665,
BABOON8           = 666,
UNRAVELER6        = 667,
UNRAVELER7        = 668,
UNRAVELER8        = 669,
UNRAVELER9        = 670,
ZEALOT4           = 671,
ZEALOT5           = 672,
CANTOR5           = 673,
CANTOR6           = 674,
VILEMOTHER4       = 675,
VILEMOTHER5       = 676,
VILECHILD4        = 677,
VILECHILD5        = 678,
SANDMAGGOT6       = 679,
MAGGOTBABY6       = 680,
MAGGOTEGG6        = 681,
MINION9           = 682,
MINION10          = 683,
MINION11          = 684,
ARACH6            = 685,
MEGADEMON4        = 686,
MEGADEMON5        = 687,
IMP6              = 688,
IMP7              = 689,
BONEFETISH6       = 690,
BONEFETISH7       = 691,
FINGERMAGE4       = 692,
FINGERMAGE5       = 693,
REGURGITATOR4     = 694,
VAMPIRE6          = 695,
VAMPIRE7          = 696,
VAMPIRE8          = 697,
REANIMATEDHORDE6  = 698,
DKFIG1            = 699,
DKFIG2            = 700,
DKMAG1            = 701,
DKMAG2            = 702,
MUMMY6            = 703,
UBERMEPHISTO      = 704,
UBERDIABLO        = 705,
UBERIZUAL         = 706,
UBERANDARIEL      = 707,
UBERDURIEL        = 708,
UBERBAAL          = 709,
DEMONSPAWNER      = 710,
DEMONHOLE         = 711,
MEGADEMON6        = 712,
DKMAG3            = 713,
IMP8              = 714,
SWARM5            = 715,
SANDMAGGOT7       = 716,
ARACH7            = 717,
SCARAB8           = 718,
SUCCUBUS8         = 719,
SUCCUBUSWITCH9    = 720,
CORRUPTROGUE6     = 721,
CR_ARCHER8        = 722,
CR_LANCER9        = 723,
OVERSEER6         = 724,
SKELETON8         = 725,
SK_ARCHER11       = 726,
SKMAGE_FIRE7      = 727,
SKMAGE_LTNG7      = 728,
SKMAGE_COLD6      = 729,
SKMAGE_POIS7      = 730,
VAMPIRE9          = 731,
WRAITH9           = 732,
WILLOWISP8        = 733,

Create Enum Raw Data from Skills.txt

Code: Select all

awk -v FS='\t' '{print $1}' Skills.txt | sed '1d' | sed 's/[ \t]*$//' | \
sed -e 's/ /_/g' \
| awk '{printf "SKILL_%-28s= 0x%02X,\n", toupper($1),NR-1}' | \
sed 's/$/\r/' > eD2Skills.txt
Raw Output

Code: Select all

SKILL_ATTACK                      = 0x00,
SKILL_KICK                        = 0x01,
SKILL_THROW                       = 0x02,
SKILL_UNSUMMON                    = 0x03,
SKILL_LEFT_HAND_THROW             = 0x04,
SKILL_LEFT_HAND_SWING             = 0x05,
SKILL_MAGIC_ARROW                 = 0x06,
SKILL_FIRE_ARROW                  = 0x07,
SKILL_INNER_SIGHT                 = 0x08,
SKILL_CRITICAL_STRIKE             = 0x09,
SKILL_JAB                         = 0x0A,
SKILL_COLD_ARROW                  = 0x0B,
SKILL_MULTIPLE_SHOT               = 0x0C,
SKILL_DODGE                       = 0x0D,
SKILL_POWER_STRIKE                = 0x0E,
SKILL_POISON_JAVELIN              = 0x0F,
SKILL_EXPLODING_ARROW             = 0x10,
SKILL_SLOW_MISSILES               = 0x11,
SKILL_AVOID                       = 0x12,
SKILL_IMPALE                      = 0x13,
SKILL_LIGHTNING_BOLT              = 0x14,
SKILL_ICE_ARROW                   = 0x15,
SKILL_GUIDED_ARROW                = 0x16,
SKILL_PENETRATE                   = 0x17,
SKILL_CHARGED_STRIKE              = 0x18,
SKILL_PLAGUE_JAVELIN              = 0x19,
SKILL_STRAFE                      = 0x1A,
SKILL_IMMOLATION_ARROW            = 0x1B,
SKILL_DOPPLEZON                   = 0x1C,
SKILL_EVADE                       = 0x1D,
SKILL_FEND                        = 0x1E,
SKILL_FREEZING_ARROW              = 0x1F,
SKILL_VALKYRIE                    = 0x20,
SKILL_PIERCE                      = 0x21,
SKILL_LIGHTNING_STRIKE            = 0x22,
SKILL_LIGHTNING_FURY              = 0x23,
SKILL_FIRE_BOLT                   = 0x24,
SKILL_WARMTH                      = 0x25,
SKILL_CHARGED_BOLT                = 0x26,
SKILL_ICE_BOLT                    = 0x27,
SKILL_FROZEN_ARMOR                = 0x28,
SKILL_INFERNO                     = 0x29,
SKILL_STATIC_FIELD                = 0x2A,
SKILL_TELEKINESIS                 = 0x2B,
SKILL_FROST_NOVA                  = 0x2C,
SKILL_ICE_BLAST                   = 0x2D,
SKILL_BLAZE                       = 0x2E,
SKILL_FIRE_BALL                   = 0x2F,
SKILL_NOVA                        = 0x30,
SKILL_LIGHTNING                   = 0x31,
SKILL_SHIVER_ARMOR                = 0x32,
SKILL_FIRE_WALL                   = 0x33,
SKILL_ENCHANT                     = 0x34,
SKILL_CHAIN_LIGHTNING             = 0x35,
SKILL_TELEPORT                    = 0x36,
SKILL_GLACIAL_SPIKE               = 0x37,
SKILL_METEOR                      = 0x38,
SKILL_THUNDER_STORM               = 0x39,
SKILL_ENERGY_SHIELD               = 0x3A,
SKILL_BLIZZARD                    = 0x3B,
SKILL_CHILLING_ARMOR              = 0x3C,
SKILL_FIRE_MASTERY                = 0x3D,
SKILL_HYDRA                       = 0x3E,
SKILL_LIGHTNING_MASTERY           = 0x3F,
SKILL_FROZEN_ORB                  = 0x40,
SKILL_COLD_MASTERY                = 0x41,
SKILL_AMPLIFY_DAMAGE              = 0x42,
SKILL_TEETH                       = 0x43,
SKILL_BONE_ARMOR                  = 0x44,
SKILL_SKELETON_MASTERY            = 0x45,
SKILL_RAISE_SKELETON              = 0x46,
SKILL_DIM_VISION                  = 0x47,
SKILL_WEAKEN                      = 0x48,
SKILL_POISON_DAGGER               = 0x49,
SKILL_CORPSE_EXPLOSION            = 0x4A,
SKILL_CLAY_GOLEM                  = 0x4B,
SKILL_IRON_MAIDEN                 = 0x4C,
SKILL_TERROR                      = 0x4D,
SKILL_BONE_WALL                   = 0x4E,
SKILL_GOLEM_MASTERY               = 0x4F,
SKILL_RAISE_SKELETAL_MAGE         = 0x50,
SKILL_CONFUSE                     = 0x51,
SKILL_LIFE_TAP                    = 0x52,
SKILL_POISON_EXPLOSION            = 0x53,
SKILL_BONE_SPEAR                  = 0x54,
SKILL_BLOODGOLEM                  = 0x55,
SKILL_ATTRACT                     = 0x56,
SKILL_DECREPIFY                   = 0x57,
SKILL_BONE_PRISON                 = 0x58,
SKILL_SUMMON_RESIST               = 0x59,
SKILL_IRONGOLEM                   = 0x5A,
SKILL_LOWER_RESIST                = 0x5B,
SKILL_POISON_NOVA                 = 0x5C,
SKILL_BONE_SPIRIT                 = 0x5D,
SKILL_FIREGOLEM                   = 0x5E,
SKILL_REVIVE                      = 0x5F,
SKILL_SACRIFICE                   = 0x60,
SKILL_SMITE                       = 0x61,
SKILL_MIGHT                       = 0x62,
SKILL_PRAYER                      = 0x63,
SKILL_RESIST_FIRE                 = 0x64,
SKILL_HOLY_BOLT                   = 0x65,
SKILL_HOLY_FIRE                   = 0x66,
SKILL_THORNS                      = 0x67,
SKILL_DEFIANCE                    = 0x68,
SKILL_RESIST_COLD                 = 0x69,
SKILL_ZEAL                        = 0x6A,
SKILL_CHARGE                      = 0x6B,
SKILL_BLESSED_AIM                 = 0x6C,
SKILL_CLEANSING                   = 0x6D,
SKILL_RESIST_LIGHTNING            = 0x6E,
SKILL_VENGEANCE                   = 0x6F,
SKILL_BLESSED_HAMMER              = 0x70,
SKILL_CONCENTRATION               = 0x71,
SKILL_HOLY_FREEZE                 = 0x72,
SKILL_VIGOR                       = 0x73,
SKILL_CONVERSION                  = 0x74,
SKILL_HOLY_SHIELD                 = 0x75,
SKILL_HOLY_SHOCK                  = 0x76,
SKILL_SANCTUARY                   = 0x77,
SKILL_MEDITATION                  = 0x78,
SKILL_FIST_OF_THE_HEAVENS         = 0x79,
SKILL_FANATICISM                  = 0x7A,
SKILL_CONVICTION                  = 0x7B,
SKILL_REDEMPTION                  = 0x7C,
SKILL_SALVATION                   = 0x7D,
SKILL_BASH                        = 0x7E,
SKILL_SWORD_MASTERY               = 0x7F,
SKILL_AXE_MASTERY                 = 0x80,
SKILL_MACE_MASTERY                = 0x81,
SKILL_HOWL                        = 0x82,
SKILL_FIND_POTION                 = 0x83,
SKILL_LEAP                        = 0x84,
SKILL_DOUBLE_SWING                = 0x85,
SKILL_POLE_ARM_MASTERY            = 0x86,
SKILL_THROWING_MASTERY            = 0x87,
SKILL_SPEAR_MASTERY               = 0x88,
SKILL_TAUNT                       = 0x89,
SKILL_SHOUT                       = 0x8A,
SKILL_STUN                        = 0x8B,
SKILL_DOUBLE_THROW                = 0x8C,
SKILL_INCREASED_STAMINA           = 0x8D,
SKILL_FIND_ITEM                   = 0x8E,
SKILL_LEAP_ATTACK                 = 0x8F,
SKILL_CONCENTRATE                 = 0x90,
SKILL_IRON_SKIN                   = 0x91,
SKILL_BATTLE_CRY                  = 0x92,
SKILL_FRENZY                      = 0x93,
SKILL_INCREASED_SPEED             = 0x94,
SKILL_BATTLE_ORDERS               = 0x95,
SKILL_GRIM_WARD                   = 0x96,
SKILL_WHIRLWIND                   = 0x97,
SKILL_BERSERK                     = 0x98,
SKILL_NATURAL_RESISTANCE          = 0x99,
SKILL_WAR_CRY                     = 0x9A,
SKILL_BATTLE_COMMAND              = 0x9B,
SKILL_FIRE_HIT                    = 0x9C,
SKILL_UNHOLYBOLT                  = 0x9D,
SKILL_SKELETONRAISE               = 0x9E,
SKILL_MAGGOTEGG                   = 0x9F,
SKILL_SHAMANFIRE                  = 0xA0,
SKILL_MAGOTTUP                    = 0xA1,
SKILL_MAGOTTDOWN                  = 0xA2,
SKILL_MAGOTTLAY                   = 0xA3,
SKILL_ANDRIALSPRAY                = 0xA4,
SKILL_JUMP                        = 0xA5,
SKILL_SWARM_MOVE                  = 0xA6,
SKILL_NEST                        = 0xA7,
SKILL_QUICK_STRIKE                = 0xA8,
SKILL_VAMPIREFIREBALL             = 0xA9,
SKILL_VAMPIREFIREWALL             = 0xAA,
SKILL_VAMPIREMETEOR               = 0xAB,
SKILL_GARGOYLETRAP                = 0xAC,
SKILL_SPIDERLAY                   = 0xAD,
SKILL_VAMPIREHEAL                 = 0xAE,
SKILL_VAMPIRERAISE                = 0xAF,
SKILL_SUBMERGE                    = 0xB0,
SKILL_FETISHAURA                  = 0xB1,
SKILL_FETISHINFERNO               = 0xB2,
SKILL_ZAKARUMHEAL                 = 0xB3,
SKILL_EMERGE                      = 0xB4,
SKILL_RESURRECT                   = 0xB5,
SKILL_BESTOW                      = 0xB6,
SKILL_MISSILESKILL1               = 0xB7,
SKILL_MONTELEPORT                 = 0xB8,
SKILL_PRIMELIGHTNING              = 0xB9,
SKILL_PRIMEBOLT                   = 0xBA,
SKILL_PRIMEBLAZE                  = 0xBB,
SKILL_PRIMEFIREWALL               = 0xBC,
SKILL_PRIMESPIKE                  = 0xBD,
SKILL_PRIMEICENOVA                = 0xBE,
SKILL_PRIMEPOISONBALL             = 0xBF,
SKILL_PRIMEPOISONNOVA             = 0xC0,
SKILL_DIABLIGHT                   = 0xC1,
SKILL_DIABCOLD                    = 0xC2,
SKILL_DIABFIRE                    = 0xC3,
SKILL_FINGERMAGESPIDER            = 0xC4,
SKILL_DIABWALL                    = 0xC5,
SKILL_DIABRUN                     = 0xC6,
SKILL_DIABPRISON                  = 0xC7,
SKILL_POISONBALLTRAP              = 0xC8,
SKILL_ANDYPOISONBOLT              = 0xC9,
SKILL_HIREABLEMISSILE             = 0xCA,
SKILL_DESERTTURRET                = 0xCB,
SKILL_ARCANETOWER                 = 0xCC,
SKILL_MONBLIZZARD                 = 0xCD,
SKILL_MOSQUITO                    = 0xCE,
SKILL_CURSEDBALLTRAPRIGHT         = 0xCF,
SKILL_CURSEDBALLTRAPLEFT          = 0xD0,
SKILL_MONFROZENARMOR              = 0xD1,
SKILL_MONBONEARMOR                = 0xD2,
SKILL_MONBONESPIRIT               = 0xD3,
SKILL_MONCURSECAST                = 0xD4,
SKILL_HELLMETEOR                  = 0xD5,
SKILL_REGURGITATOREAT             = 0xD6,
SKILL_MONFRENZY                   = 0xD7,
SKILL_QUEENDEATH                  = 0xD8,
SKILL_SCROLL_OF_IDENTIFY          = 0xD9,
SKILL_BOOK_OF_IDENTIFY            = 0xDA,
SKILL_SCROLL_OF_TOWNPORTAL        = 0xDB,
SKILL_BOOK_OF_TOWNPORTAL          = 0xDC,
SKILL_RAVEN                       = 0xDD,
SKILL_PLAGUE_POPPY                = 0xDE,
SKILL_WEARWOLF                    = 0xDF,
SKILL_SHAPE_SHIFTING              = 0xE0,
SKILL_FIRESTORM                   = 0xE1,
SKILL_OAK_SAGE                    = 0xE2,
SKILL_SUMMON_SPIRIT_WOLF          = 0xE3,
SKILL_WEARBEAR                    = 0xE4,
SKILL_MOLTEN_BOULDER              = 0xE5,
SKILL_ARCTIC_BLAST                = 0xE6,
SKILL_CYCLE_OF_LIFE               = 0xE7,
SKILL_FERAL_RAGE                  = 0xE8,
SKILL_MAUL                        = 0xE9,
SKILL_ERUPTION                    = 0xEA,
SKILL_CYCLONE_ARMOR               = 0xEB,
SKILL_HEART_OF_WOLVERINE          = 0xEC,
SKILL_SUMMON_FENRIS               = 0xED,
SKILL_RABIES                      = 0xEE,
SKILL_FIRE_CLAWS                  = 0xEF,
SKILL_TWISTER                     = 0xF0,
SKILL_VINES                       = 0xF1,
SKILL_HUNGER                      = 0xF2,
SKILL_SHOCK_WAVE                  = 0xF3,
SKILL_VOLCANO                     = 0xF4,
SKILL_TORNADO                     = 0xF5,
SKILL_SPIRIT_OF_BARBS             = 0xF6,
SKILL_SUMMON_GRIZZLY              = 0xF7,
SKILL_FURY                        = 0xF8,
SKILL_ARMAGEDDON                  = 0xF9,
SKILL_HURRICANE                   = 0xFA,
SKILL_FIRE_TRAUMA                 = 0xFB,
SKILL_CLAW_MASTERY                = 0xFC,
SKILL_PSYCHIC_HAMMER              = 0xFD,
SKILL_TIGER_STRIKE                = 0xFE,
SKILL_DRAGON_TALON                = 0xFF,
SKILL_SHOCK_FIELD                 = 0x100,
SKILL_BLADE_SENTINEL              = 0x101,
SKILL_QUICKNESS                   = 0x102,
SKILL_FISTS_OF_FIRE               = 0x103,
SKILL_DRAGON_CLAW                 = 0x104,
SKILL_CHARGED_BOLT_SENTRY         = 0x105,
SKILL_WAKE_OF_FIRE_SENTRY         = 0x106,
SKILL_WEAPON_BLOCK                = 0x107,
SKILL_CLOAK_OF_SHADOWS            = 0x108,
SKILL_COBRA_STRIKE                = 0x109,
SKILL_BLADE_FURY                  = 0x10A,
SKILL_FADE                        = 0x10B,
SKILL_SHADOW_WARRIOR              = 0x10C,
SKILL_CLAWS_OF_THUNDER            = 0x10D,
SKILL_DRAGON_TAIL                 = 0x10E,
SKILL_LIGHTNING_SENTRY            = 0x10F,
SKILL_INFERNO_SENTRY              = 0x110,
SKILL_MIND_BLAST                  = 0x111,
SKILL_BLADES_OF_ICE               = 0x112,
SKILL_DRAGON_FLIGHT               = 0x113,
SKILL_DEATH_SENTRY                = 0x114,
SKILL_BLADE_SHIELD                = 0x115,
SKILL_VENOM                       = 0x116,
SKILL_SHADOW_MASTER               = 0x117,
SKILL_ROYAL_STRIKE                = 0x118,
SKILL_WAKE_OF_DESTRUCTION_SENTRY  = 0x119,
SKILL_IMP_INFERNO                 = 0x11A,
SKILL_IMP_FIREBALL                = 0x11B,
SKILL_BAAL_TAUNT                  = 0x11C,
SKILL_BAAL_CORPSE_EXPLODE         = 0x11D,
SKILL_BAAL_MONSTER_SPAWN          = 0x11E,
SKILL_CATAPULT_CHARGED_BALL       = 0x11F,
SKILL_CATAPULT_SPIKE_BALL         = 0x120,
SKILL_SUCK_BLOOD                  = 0x121,
SKILL_CRY_HELP                    = 0x122,
SKILL_HEALING_VORTEX              = 0x123,
SKILL_TELEPORT_2                  = 0x124,
SKILL_SELF-RESURRECT              = 0x125,
SKILL_VINE_ATTACK                 = 0x126,
SKILL_OVERSEER_WHIP               = 0x127,
SKILL_BARBS_AURA                  = 0x128,
SKILL_WOLVERINE_AURA              = 0x129,
SKILL_OAK_SAGE_AURA               = 0x12A,
SKILL_IMP_FIRE_MISSILE            = 0x12B,
SKILL_IMPREGNATE                  = 0x12C,
SKILL_SIEGE_BEAST_STOMP           = 0x12D,
SKILL_MINIONSPAWNER               = 0x12E,
SKILL_CATAPULTBLIZZARD            = 0x12F,
SKILL_CATAPULTPLAGUE              = 0x130,
SKILL_CATAPULTMETEOR              = 0x131,
SKILL_BOLTSENTRY                  = 0x132,
SKILL_CORPSECYCLER                = 0x133,
SKILL_DEATHMAUL                   = 0x134,
SKILL_DEFENSE_CURSE               = 0x135,
SKILL_BLOOD_MANA                  = 0x136,
SKILL_MON_INFERNO_SENTRY          = 0x137,
SKILL_MON_DEATH_SENTRY            = 0x138,
SKILL_SENTRY_LIGHTNING            = 0x139,
SKILL_FENRIS_RAGE                 = 0x13A,
SKILL_BAAL_TENTACLE               = 0x13B,
SKILL_BAAL_NOVA                   = 0x13C,
SKILL_BAAL_INFERNO                = 0x13D,
SKILL_BAAL_COLD_MISSILES          = 0x13E,
SKILL_MEGADEMONINFERNO            = 0x13F,
SKILL_EVILHUTSPAWNER              = 0x140,
SKILL_COUNTESSFIREWALL            = 0x141,
SKILL_IMPBOLT                     = 0x142,
SKILL_HORROR_ARCTIC_BLAST         = 0x143,
SKILL_DEATH_SENTRY_LTNG           = 0x144,
SKILL_VINECYCLER                  = 0x145,
SKILL_BEARSMITE                   = 0x146,
SKILL_RESURRECT2                  = 0x147,
SKILL_BLOODLORDFRENZY             = 0x148,
SKILL_BAAL_TELEPORT               = 0x149,
SKILL_IMP_TELEPORT                = 0x14A,
SKILL_BAAL_CLONE_TELEPORT         = 0x14B,
SKILL_ZAKARUMLIGHTNING            = 0x14C,
SKILL_VAMPIREMISSILE              = 0x14D,
SKILL_MEPHISTOMISSILE             = 0x14E,
SKILL_DOOMKNIGHTMISSILE           = 0x14F,
SKILL_ROGUEMISSILE                = 0x150,
SKILL_HYDRAMISSILE                = 0x151,
SKILL_NECROMAGEMISSILE            = 0x152,
SKILL_MONBOW                      = 0x153,
SKILL_MONFIREARROW                = 0x154,
SKILL_MONCOLDARROW                = 0x155,
SKILL_MONEXPLODINGARROW           = 0x156,
SKILL_MONFREEZINGARROW            = 0x157,
SKILL_MONPOWERSTRIKE              = 0x158,
SKILL_SUCCUBUSBOLT                = 0x159,
SKILL_MEPHFROSTNOVA               = 0x15A,
SKILL_MONICESPEAR                 = 0x15B,
SKILL_SHAMANICE                   = 0x15C,
SKILL_DIABLOGEDDON                = 0x15D,
SKILL_DELERIUM_CHANGE             = 0x15E,
SKILL_NIHLATHAKCORPSEEXPLOSION    = 0x15F,
SKILL_SERPENTCHARGE               = 0x160,
SKILL_TRAP_NOVA                   = 0x161,
SKILL_UNHOLYBOLTEX                = 0x162,
SKILL_SHAMANFIREEX                = 0x163,
SKILL_IMP_FIRE_MISSILE_EX         = 0x164,
SKILL_FIXED_SIEGE_BEAST_STOMP     = 0x165,


Create Enum Raw Data from Levels.txt

Code: Select all

grep -v "^Expansion" Levels.txt | awk -v FS='\t' '{print $121}' | \
sed '1d' | sed 's/[ \t]*$//' | sed -e 's/ /_/g' | \
awk '{printf "%-29s= %d,\n", toupper($1), NR-1}' | sed 's/$/\r/' \
> eD2Levels.txt
Raw Output

Code: Select all

                             = 0,
ROGUE_ENCAMPMENT             = 1,
BLOOD_MOOR                   = 2,
COLD_PLAINS                  = 3,
STONY_FIELD                  = 4,
DARK_WOOD                    = 5,
BLACK_MARSH                  = 6,
TAMOE_HIGHLAND               = 7,
DEN_OF_EVIL                  = 8,
CAVE_LEVEL_1                 = 9,
UNDERGROUND_PASSAGE_LEVEL_1  = 10,
HOLE_LEVEL_1                 = 11,
PIT_LEVEL_1                  = 12,
CAVE_LEVEL_2                 = 13,
UNDERGROUND_PASSAGE_LEVEL_2  = 14,
HOLE_LEVEL_2                 = 15,
PIT_LEVEL_2                  = 16,
BURIAL_GROUNDS               = 17,
CRYPT                        = 18,
MAUSOLEUM                    = 19,
FORGOTTEN_TOWER              = 20,
TOWER_CELLAR_LEVEL_1         = 21,
TOWER_CELLAR_LEVEL_2         = 22,
TOWER_CELLAR_LEVEL_3         = 23,
TOWER_CELLAR_LEVEL_4         = 24,
TOWER_CELLAR_LEVEL_5         = 25,
MONASTERY_GATE               = 26,
OUTER_CLOISTER               = 27,
BARRACKS                     = 28,
JAIL_LEVEL_1                 = 29,
JAIL_LEVEL_2                 = 30,
JAIL_LEVEL_3                 = 31,
INNER_CLOISTER               = 32,
CATHEDRAL                    = 33,
CATACOMBS_LEVEL_1            = 34,
CATACOMBS_LEVEL_2            = 35,
CATACOMBS_LEVEL_3            = 36,
CATACOMBS_LEVEL_4            = 37,
TRISTRAM                     = 38,
MOO_MOO_FARM                 = 39,
LUT_GHOLEIN                  = 40,
ROCKY_WASTE                  = 41,
DRY_HILLS                    = 42,
FAR_OASIS                    = 43,
LOST_CITY                    = 44,
VALLEY_OF_SNAKES             = 45,
CANYON_OF_THE_MAGI           = 46,
SEWERS_LEVEL_1               = 47,
SEWERS_LEVEL_2               = 48,
SEWERS_LEVEL_3               = 49,
HAREM_LEVEL_1                = 50,
HAREM_LEVEL_2                = 51,
PALACE_CELLAR_LEVEL_1        = 52,
PALACE_CELLAR_LEVEL_2        = 53,
PALACE_CELLAR_LEVEL_3        = 54,
STONY_TOMB_LEVEL_1           = 55,
HALLS_OF_THE_DEAD_LEVEL_1    = 56,
HALLS_OF_THE_DEAD_LEVEL_2    = 57,
CLAW_VIPER_TEMPLE_LEVEL_1    = 58,
STONY_TOMB_LEVEL_2           = 59,
HALLS_OF_THE_DEAD_LEVEL_3    = 60,
CLAW_VIPER_TEMPLE_LEVEL_2    = 61,
MAGGOT_LAIR_LEVEL_1          = 62,
MAGGOT_LAIR_LEVEL_2          = 63,
MAGGOT_LAIR_LEVEL_3          = 64,
ANCIENT_TUNNELS              = 65,
TAL_RASHA'S_TOMB             = 66,
TAL_RASHA'S_TOMB             = 67,
TAL_RASHA'S_TOMB             = 68,
TAL_RASHA'S_TOMB             = 69,
TAL_RASHA'S_TOMB             = 70,
TAL_RASHA'S_TOMB             = 71,
TAL_RASHA'S_TOMB             = 72,
DURIEL'S_LAIR                = 73,
ARCANE_SANCTUARY             = 74,
KURAST_DOCKTOWN              = 75,
SPIDER_FOREST                = 76,
GREAT_MARSH                  = 77,
FLAYER_JUNGLE                = 78,
LOWER_KURAST                 = 79,
KURAST_BAZAAR                = 80,
UPPER_KURAST                 = 81,
KURAST_CAUSEWAY              = 82,
TRAVINCAL                    = 83,
SPIDER_CAVE                  = 84,
SPIDER_CAVERN                = 85,
SWAMPY_PIT_LEVEL_1           = 86,
SWAMPY_PIT_LEVEL_2           = 87,
FLAYER_DUNGEON_LEVEL_1       = 88,
FLAYER_DUNGEON_LEVEL_2       = 89,
SWAMPY_PIT_LEVEL_3           = 90,
FLAYER_DUNGEON_LEVEL_3       = 91,
SEWERS_LEVEL_1               = 92,
SEWERS_LEVEL_2               = 93,
RUINED_TEMPLE                = 94,
DISUSED_FANE                 = 95,
FORGOTTEN_RELIQUARY          = 96,
FORGOTTEN_TEMPLE             = 97,
RUINED_FANE                  = 98,
DISUSED_RELIQUARY            = 99,
DURANCE_OF_HATE_LEVEL_1      = 100,
DURANCE_OF_HATE_LEVEL_2      = 101,
DURANCE_OF_HATE_LEVEL_3      = 102,
THE_PANDEMONIUM_FORTRESS     = 103,
OUTER_STEPPES                = 104,
PLAINS_OF_DESPAIR            = 105,
CITY_OF_THE_DAMNED           = 106,
RIVER_OF_FLAME               = 107,
CHAOS_SANCTUM                = 108,
HARROGATH                    = 109,
BLOODY_FOOTHILLS             = 110,
RIGID_HIGHLANDS              = 111,
ARREAT_PLATEAU               = 112,
CRYSTALIZED_CAVERN_LEVEL_1   = 113,
CELLAR_OF_PITY               = 114,
CRYSTALIZED_CAVERN_LEVEL_2   = 115,
ECHO_CHAMBER                 = 116,
TUNDRA_WASTELANDS            = 117,
GLACIAL_CAVES_LEVEL_1        = 118,
GLACIAL_CAVES_LEVEL_2        = 119,
ROCKY_SUMMIT                 = 120,
NIHLATHAKS_TEMPLE            = 121,
HALLS_OF_ANGUISH             = 122,
HALLS_OF_DEATH'S_CALLING     = 123,
HALLS_OF_VAUGHT              = 124,
HELL1                        = 125,
HELL2                        = 126,
HELL3                        = 127,
THE_WORLDSTONE_KEEP_LEVEL_1  = 128,
THE_WORLDSTONE_KEEP_LEVEL_2  = 129,
THE_WORLDSTONE_KEEP_LEVEL_3  = 130,
THRONE_OF_DESTRUCTION        = 131,
THE_WORLDSTONE_CHAMBER       = 132,
PANDEMONIUM_RUN_1            = 133,
PANDEMONIUM_RUN_2            = 134,
PANDEMONIUM_RUN_3            = 135,
TRISTRAM                     = 136,


Create Enum Raw Data from SuperUniques.txt

Code: Select all

grep -v "^Expansion" SuperUniques.txt | awk -v FS='\t' '{print $1}' | \
sed '1d' | sed 's/[ \t]*$//' | sed -e 's/ /_/g' | \
awk '{printf "%-26s= %d,\n", toupper($1),NR-1}' | \
sed 's/$/\r/' > eD2SuperUniques.txt
Raw Output

Code: Select all

BISHIBOSH                 = 0,
BONEBREAK                 = 1,
COLDCROW                  = 2,
RAKANISHU                 = 3,
TREEHEAD_WOODFIST         = 4,
GRISWOLD                  = 5,
THE_COUNTESS              = 6,
PITSPAWN_FOULDOG          = 7,
FLAMESPIKE_THE_CRAWLER    = 8,
BONEASH                   = 9,
RADAMENT                  = 10,
BLOODWITCH_THE_WILD       = 11,
FANGSKIN                  = 12,
BEETLEBURST               = 13,
LEATHERARM                = 14,
COLDWORM_THE_BURROWER     = 15,
FIRE_EYE                  = 16,
DARK_ELDER                = 17,
THE_SUMMONER              = 18,
ANCIENT_KAA_THE_SOULLESS  = 19,
THE_SMITH                 = 20,
WEB_MAGE_THE_BURNING      = 21,
WITCH_DOCTOR_ENDUGU       = 22,
STORMTREE                 = 23,
SARINA_THE_BATTLEMAID     = 24,
ICEHAWK_RIFTWING          = 25,
ISMAIL_VILEHAND           = 26,
GELEB_FLAMEFINGER         = 27,
BREMM_SPARKFIST           = 28,
TOORC_ICEFIST             = 29,
WYAND_VOIDFINGER          = 30,
MAFFER_DRAGONHAND         = 31,
WINGED_DEATH              = 32,
THE_TORMENTOR             = 33,
TAINTBREEDER              = 34,
RIFTWRAITH_THE_CANNIBAL   = 35,
INFECTOR_OF_SOULS         = 36,
LORD_DE_SEIS              = 37,
GRAND_VIZIER_OF_CHAOS     = 38,
THE_COW_KING              = 39,
CORPSEFIRE                = 40,
THE_FEATURE_CREEP         = 41,
SIEGE_BOSS                = 42,
ANCIENT_BARBARIAN_1       = 43,
ANCIENT_BARBARIAN_2       = 44,
ANCIENT_BARBARIAN_3       = 45,
AXE_DWELLER               = 46,
BONESAW_BREAKER           = 47,
DAC_FARREN                = 48,
MEGAFLOW_RECTIFIER        = 49,
EYEBACK_UNLEASHED         = 50,
THREASH_SOCKET            = 51,
PINDLESKIN                = 52,
SNAPCHIP_SHATTER          = 53,
ANODIZED_ELITE            = 54,
VINVEAR_MOLECH            = 55,
SHARP_TOOTH_SAYER         = 56,
MAGMA_TORQUER             = 57,
BLAZE_RIPPER              = 58,
FROZENSTEIN               = 59,
NIHLATHAK_BOSS            = 60,
BAAL_SUBJECT_1            = 61,
BAAL_SUBJECT_2            = 62,
BAAL_SUBJECT_3            = 63,
BAAL_SUBJECT_4            = 64,
BAAL_SUBJECT_5            = 65,

Last edited by devurandom on Wed May 16, 2018 4:20 am, edited 1 time in total.
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin

Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..

User avatar
Necrolis
Senior Admin
Throne
Posts: 9125
Joined: Sat Mar 25, 2006 1:22 pm
Location: The Land of the Dead
South Africa

Hand-picked

Re: Automate Enum Creation

Post by Necrolis » Tue May 15, 2018 1:51 pm

I actually posted to tool for doing this years ago :D mainly for people that dont have or want to install yet another language for these kinds things.
Image
Netiquette, Do you USE it?!?! | Nefarius' Fixed TXT Files | Terms Of Service
Blackened | Day of Death | D2GFEx
"What was yours is mine. Your land, your people, and now your life." - Lim-Dul, the Necromancer
Judgement is Final, Death is Eternal

User avatar
devurandom
Forum Regular
Angel
Posts: 897
Joined: Sat Mar 07, 2015 9:07 pm
United States of America

Re: Automate Enum Creation

Post by devurandom » Tue May 15, 2018 2:49 pm

I must have missed that. Feel free to post an updated link.

GNU text Utilities above come installed on pretty much every distro of Linux, BSD and the like.
I'll post a couple more generated from larger files, so people can grab the raw data if they want.

;)
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin

Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..

User avatar
Necrolis
Senior Admin
Throne
Posts: 9125
Joined: Sat Mar 25, 2006 1:22 pm
Location: The Land of the Dead
South Africa

Hand-picked

Re: Automate Enum Creation

Post by Necrolis » Tue May 15, 2018 3:43 pm

I built this tool using NephTable (available in the file center; nifty for making any tools that need to process info from the D2 TXT files ;)), as an added bonus, this will also handle codes (items/tokens/comps/etc) correctly.

EDIT: can't even inline source code, again :| https://pastebin.com/HCHnXDAJ
Image
Netiquette, Do you USE it?!?! | Nefarius' Fixed TXT Files | Terms Of Service
Blackened | Day of Death | D2GFEx
"What was yours is mine. Your land, your people, and now your life." - Lim-Dul, the Necromancer
Judgement is Final, Death is Eternal

User avatar
kidpaddle94
Forum Legend
Principality
Posts: 2057
Joined: Thu Aug 13, 2009 2:54 pm
Location: localhost
Canada

Re: Automate Enum Creation

Post by kidpaddle94 » Wed May 16, 2018 12:41 am

I personally like Python for this kind of automation, most of my enums like these were generated using quick-made python scripts.

User avatar
devurandom
Forum Regular
Angel
Posts: 897
Joined: Sat Mar 07, 2015 9:07 pm
United States of America

Re: Automate Enum Creation

Post by devurandom » Wed May 16, 2018 4:30 am

@Whist Python is powerful enough to do the job, for sure.

Exceeded max characters in the first post
Attached file has space and tab delimited raw data.


Create Enum Raw Data from Missiles.txt

Code: Select all

awk -v FS='\t' '{print $1}' Missiles.txt | sed '1d' | sed 's/[ \t]*$//' | \
sed -e 's/ /_/g' | \
awk '{printf "MSL_%-30s= 0x%02X,\n", toupper($1),NR-1}' | \
sed 's/$/\r/' > eD2Missiles.txt
Raw Output

Code: Select all

MSL_ARROW                         = 0x00,
MSL_JAVELIN                       = 0x01,
MSL_BIGHEAD1                      = 0x02,
MSL_BIGHEAD2                      = 0x03,
MSL_BIGHEAD3                      = 0x04,
MSL_BIGHEAD4                      = 0x05,
MSL_BIGHEAD5                      = 0x06,
MSL_SPIKE1                        = 0x07,
MSL_SPIKE2                        = 0x08,
MSL_SPIKE3                        = 0x09,
MSL_SPIKE4                        = 0x0A,
MSL_SPIKE5                        = 0x0B,
MSL_FIREARROW                     = 0x0C,
MSL_CR_ARROW1                     = 0x0D,
MSL_CR_ARROW2                     = 0x0E,
MSL_CR_ARROW3                     = 0x0F,
MSL_CR_ARROW4                     = 0x10,
MSL_CR_ARROW5                     = 0x11,
MSL_BLOOD1                        = 0x12,
MSL_BLOOD2                        = 0x13,
MSL_BIGBLOOD1                     = 0x14,
MSL_BIGBLOOD2                     = 0x15,
MSL_SHAFIRE1                      = 0x16,
MSL_SHAFIRE2                      = 0x17,
MSL_SHAFIRE3                      = 0x18,
MSL_SHAFIRE4                      = 0x19,
MSL_SHAFIRE5                      = 0x1A,
MSL_MAGICARROW                    = 0x1B,
MSL_ICEARROW                      = 0x1C,
MSL_FIREEXPLODE                   = 0x1D,
MSL_ICEEXPLODE                    = 0x1E,
MSL_BOLT                          = 0x1F,
MSL_ANDARIELSPRAY                 = 0x20,
MSL_BIGHEADEXP                    = 0x21,
MSL_SHAMANEXP                     = 0x22,
MSL_THROWAXE                      = 0x23,
MSL_THROWKNIFE                    = 0x24,
MSL_GLAIVE                        = 0x25,
MSL_POISONJAV                     = 0x26,
MSL_POISONJAVCLOUD                = 0x27,
MSL_COLDARROW                     = 0x28,
MSL_EXPLODINGARROW                = 0x29,
MSL_EXPLODINGARROWEXP             = 0x2A,
MSL_PLAGUEJAVELIN                 = 0x2B,
MSL_OILPOTION                     = 0x2C,
MSL_EXPLOSIVEPOTION               = 0x2D,
MSL_FULMINATINGPOTION             = 0x2E,
MSL_RANCIDGASEPOTION              = 0x2F,
MSL_CHOKINGGASPOITION             = 0x30,
MSL_STRANGLINGGASPOTION           = 0x31,
MSL_NOTUSED50                     = 0x32,
MSL_EXPLOSIVEPOTIONEXP            = 0x33,
MSL_EXPLOSIVEPOTIONDEBRIS1        = 0x34,
MSL_EXPLOSIVEPOTIONDEBRIS2        = 0x35,
MSL_EXPLOSIVEPOTIONDEBRIS3        = 0x36,
MSL_HOLYBOLT                      = 0x37,
MSL_CHARGEDBOLT                   = 0x38,
MSL_SANCTUARYBOLT                 = 0x39,
MSL_FIREBOLT                      = 0x3A,
MSL_ICEBOLT                       = 0x3B,
MSL_INFERNOFLAME1                 = 0x3C,
MSL_INFERNOFLAME2                 = 0x3D,
MSL_FIREBALL                      = 0x3E,
MSL_MUMMY1                        = 0x3F,
MSL_MUMMY2                        = 0x40,
MSL_MUMMY3                        = 0x41,
MSL_MUMMY4                        = 0x42,
MSL_BLAZE                         = 0x43,
MSL_FIREWALLMAKER                 = 0x44,
MSL_FIREWALL                      = 0x45,
MSL_GOOSPIT1                      = 0x46,
MSL_GOOSPIT2                      = 0x47,
MSL_GOOSPIT3                      = 0x48,
MSL_GOOSPIT4                      = 0x49,
MSL_GOOSPIT5                      = 0x4A,
MSL_GOOSPLAT                      = 0x4B,
MSL_SAND_PILE                     = 0x4C,
MSL_UNHOLYBOLT1                   = 0x4D,
MSL_UNHOLYBOLT2                   = 0x4E,
MSL_UNHOLYBOLT3                   = 0x4F,
MSL_UNHOLYBOLT4                   = 0x50,
MSL_SANCTUARYCENTER               = 0x51,
MSL_FIREEXPLOSION                 = 0x52,
MSL_STUCKARROW                    = 0x53,
MSL_FOOTPRINT                     = 0x54,
MSL_IMMOLATIONARROW               = 0x55,
MSL_GUIDEDARROW                   = 0x56,
MSL_FREEZINGARROW                 = 0x57,
MSL_FREEZINGARROWEXP1             = 0x58,
MSL_FREEZINGARROWEXP2             = 0x59,
MSL_NOVA                          = 0x5A,
MSL_ICEBLAST                      = 0x5B,
MSL_BLESSEDHAMMER                 = 0x5C,
MSL_CHAINLIGHTNING                = 0x5D,
MSL_FISTOFARES                    = 0x5E,
MSL_CHILLBLOOD                    = 0x5F,
MSL_GLACIALSPIKE                  = 0x60,
MSL_TELEPORT                      = 0x61,
MSL_LIGHTNINGBOLT                 = 0x62,
MSL_LIGHTNINGHIT                  = 0x63,
MSL_METEOR                        = 0x64,
MSL_METEORCENTER                  = 0x65,
MSL_METEORTAIL                    = 0x66,
MSL_METEOREXPLODE                 = 0x67,
MSL_FIRESMALL                     = 0x68,
MSL_FIREMEDIUM                    = 0x69,
MSL_MONBLIZCENTER                 = 0x6A,
MSL_MONBLIZ1                      = 0x6B,
MSL_MONBLIZ2                      = 0x6C,
MSL_MONBLIZ3                      = 0x6D,
MSL_MONBLIZ4                      = 0x6E,
MSL_MONBLIZEXPLODE1               = 0x6F,
MSL_MONBLIZEXPLODE2               = 0x70,
MSL_MONBLIZEXPLODE3               = 0x71,
MSL_TEETH                         = 0x72,
MSL_CORPSEEXPLOSION               = 0x73,
MSL_POISONCORPSEEXPLOSION         = 0x74,
MSL_MONSTERCORPSEEXPLODE          = 0x75,
MSL_POISONNOVA                    = 0x76,
MSL_FROSTNOVA                     = 0x77,
MSL_ROGUE1                        = 0x78,
MSL_ROGUE2                        = 0x79,
MSL_ROGUE3                        = 0x7A,
MSL_BAT_LIGHTNING_BOLT            = 0x7B,
MSL_BAT_LIGHTNING_TRAIL           = 0x7C,
MSL_SKMAGE1                       = 0x7D,
MSL_SKMAGE2                       = 0x7E,
MSL_SKMAGE3                       = 0x7F,
MSL_SKMAGE4                       = 0x80,
MSL_VAMPIREFIREBALL               = 0x81,
MSL_VAMPIREFIREWALLMAKER          = 0x82,
MSL_VAMPIREFIREWALL               = 0x83,
MSL_VAMPIREMETEOR                 = 0x84,
MSL_VAMPIREMETEORCENTER           = 0x85,
MSL_VAMPIREMETEOREXP              = 0x86,
MSL_RAVEN1                        = 0x87,
MSL_RAVEN2                        = 0x88,
MSL_AMPHIBIANGOO1                 = 0x89,
MSL_AMPHIBIANGOO2                 = 0x8A,
MSL_TENTACLEGOO                   = 0x8B,
MSL_AMPHIBIANEXPLODE              = 0x8C,
MSL_POISONPUFF                    = 0x8D,
MSL_CURSEEFFECTRED                = 0x8E,
MSL_SPIDERGOOLAY                  = 0x8F,
MSL_FETISHINFERNO1                = 0x90,
MSL_FETISHINFERNO2                = 0x91,
MSL_SPIDERGOO                     = 0x92,
MSL_CURSECAST                     = 0x93,
MSL_HOWL                          = 0x94,
MSL_SHOUT                         = 0x95,
MSL_DUST                          = 0x96,
MSL_REDLIGHTMISSILE               = 0x97,
MSL_GREENLIGHTMISSILE             = 0x98,
MSL_BLUELIGHTMISSILE              = 0x99,
MSL_WHITELIGHTMISSILE             = 0x9A,
MSL_CORPSEPOISONCLOUD             = 0x9B,
MSL_CHILLBLOODCLOUD               = 0x9C,
MSL_CHILLBLOODPUFF                = 0x9D,
MSL_BLIZZARDCENTER                = 0x9E,
MSL_BLIZZARD1                     = 0x9F,
MSL_BLIZZARD2                     = 0xA0,
MSL_BLIZZARD3                     = 0xA1,
MSL_BLIZZARD4                     = 0xA2,
MSL_BLIZZARDEXPLODE1              = 0xA3,
MSL_BLIZZARDEXPLODE2              = 0xA4,
MSL_BLIZZARDEXPLODE3              = 0xA5,
MSL_THUNDERSTORM1                 = 0xA6,
MSL_THUNDERSTORM2                 = 0xA7,
MSL_THUNDERSTORM3                 = 0xA8,
MSL_THUNDERSTORM4                 = 0xA9,
MSL_MONSTERLIGHT                  = 0xAA,
MSL_POISONBALL                    = 0xAB,
MSL_DIABLIGHT                     = 0xAC,
MSL_REDEMPTION                    = 0xAD,
MSL_REDEMPTIONFAIL                = 0xAE,
MSL_HANDOFGOD                     = 0xAF,
MSL_DIABFIRE                      = 0xB0,
MSL_FINGERMAGESPIDER              = 0xB1,
MSL_ELECTRIC_THROWAXE             = 0xB2,
MSL_DIABWALLMAKER                 = 0xB3,
MSL_DIABWALL                      = 0xB4,
MSL_CURSEAMPLIFYDAMAGE            = 0xB5,
MSL_CURSEDIMVISION                = 0xB6,
MSL_CURSEWEAKEN                   = 0xB7,
MSL_CURSEIRONMAIDEN               = 0xB8,
MSL_CURSETERROR                   = 0xB9,
MSL_CURSEATTRACT                  = 0xBA,
MSL_CURSEREVERSEVAMPIRE           = 0xBB,
MSL_CURSECONFUSE                  = 0xBC,
MSL_CURSEDECREPIFY                = 0xBD,
MSL_CURSELOWERRESIST              = 0xBE,
MSL_CURSECENTER                   = 0xBF,
MSL_BONESPEAR                     = 0xC0,
MSL_BONESPIRIT                    = 0xC1,
MSL_COLDUNIQUE                    = 0xC2,
MSL_LIGHTUNIQUE                   = 0xC3,
MSL_SKBOWARROW1                   = 0xC4,
MSL_SKBOWARROW2                   = 0xC5,
MSL_SKBOWARROW3                   = 0xC6,
MSL_SKBOWARROW4                   = 0xC7,
MSL_SKBOWARROW5                   = 0xC8,
MSL_NOVA1                         = 0xC9,
MSL_NOVA2                         = 0xCA,
MSL_ANDYPOISONBOLT                = 0xCB,
MSL_TEETHEXPLODE                  = 0xCC,
MSL_LIGHTNINGJAVELIN              = 0xCD,
MSL_LIGHTNINGFURY                 = 0xCE,
MSL_BONEWALLMAKER                 = 0xCF,
MSL_NECROMAGE1                    = 0xD0,
MSL_NECROMAGE2                    = 0xD1,
MSL_NECROMAGE3                    = 0xD2,
MSL_NECROMAGE4                    = 0xD3,
MSL_SPARKLE                       = 0xD4,
MSL_MULTIPLESHOTARROW             = 0xD5,
MSL_MULTIPLESHOTBOLT              = 0xD6,
MSL_CHARGEDSTRIKEBOLT             = 0xD7,
MSL_BONESPEAREXPLODE              = 0xD8,
MSL_POISONEXPLOSIONCLOUD          = 0xD9,
MSL_BONECAST                      = 0xDA,
MSL_BATTLECRY                     = 0xDB,
MSL_PRIMEPOISONCLOUD              = 0xDC,
MSL_PLAGUEJAVCLOUD                = 0xDD,
MSL_RANCIDGASCLOUD                = 0xDE,
MSL_CHOKINGGASCLOUD               = 0xDF,
MSL_STRANGLINGGASCLOUD            = 0xE0,
MSL_BUGLIGHTNING                  = 0xE1,
MSL_PANTHERJAV1                   = 0xE2,
MSL_PANTHERJAV2                   = 0xE3,
MSL_PANTHERJAV3                   = 0xE4,
MSL_PANTHERJAV4                   = 0xE5,
MSL_IMMOLATIONFIRE                = 0xE6,
MSL_FURYLIGHTNING                 = 0xE7,
MSL_LIGHTNINGSTRIKE               = 0xE8,
MSL_FISTOFTHEHEAVENSDELAY         = 0xE9,
MSL_FISTOFTHEHEAVENSBOLT          = 0xEA,
MSL_WARCRY                        = 0xEB,
MSL_BATTLECOMMAND                 = 0xEC,
MSL_BATTLEORDERS                  = 0xED,
MSL_PANTHERPOTORANGE              = 0xEE,
MSL_PANTHERPOTGREEN               = 0xEF,
MSL_METEORFIRE                    = 0xF0,
MSL_TRAP_SPIKE_RIGHT              = 0xF1,
MSL_TRAP_SPIKE_LEFT               = 0xF2,
MSL_TRAP_CURSED_SKULL_RIGHT       = 0xF3,
MSL_TRAP_CURSED_SKULL_LEFT        = 0xF4,
MSL_TRAP_POISON_BALL_RIGHT        = 0xF5,
MSL_TRAP_POISON_BALL_LEFT         = 0xF6,
MSL_HYDRA                         = 0xF7,
MSL_BONESPEARTRAIL                = 0xF8,
MSL_GRIMWARDSMALLSTART            = 0xF9,
MSL_GRIMWARDSMALL                 = 0xFA,
MSL_GRIMWARDSMALLSTOP             = 0xFB,
MSL_GRIMWARDMEDIUMSTART           = 0xFC,
MSL_GRIMWARDMEDIUM                = 0xFD,
MSL_GRIMWARDMEDIUMSTOP            = 0xFE,
MSL_GRIMWARDLARGESTART            = 0xFF,
MSL_GRIMWARDLARGE                 = 0x100,
MSL_GRIMWARDLARGESTOP             = 0x101,
MSL_ZAKARUMLIGHT                  = 0x102,
MSL_GRIMWARDSCARE                 = 0x103,
MSL_FROZENORB                     = 0x104,
MSL_FROZENORBBOLT                 = 0x105,
MSL_FROZENORBNOVA                 = 0x106,
MSL_FROZENORBEXPLODE              = 0x107,
MSL_CHILLINGARMORBOLT             = 0x108,
MSL_FIREEXPLOSION2                = 0x109,
MSL_BLOWGUN                       = 0x10A,
MSL_CHAINLIGHTNING2               = 0x10B,
MSL_REVIVESMALL                   = 0x10C,
MSL_REVIVEMEDIUM                  = 0x10D,
MSL_REVIVELARGE                   = 0x10E,
MSL_MONGLACIALSPIKE               = 0x10F,
MSL_ICEBREAKSMALL                 = 0x110,
MSL_ICEBREAKMEDIUM                = 0x111,
MSL_ICEBREAKLARGE                 = 0x112,
MSL_ICEBREAKSMOKE                 = 0x113,
MSL_MEPHISTO                      = 0x114,
MSL_FIREHEAD                      = 0x115,
MSL_WHILRWIND                     = 0x116,
MSL_ARCANELIGHTNINGBOLT           = 0x117,
MSL_FROGFIRE                      = 0x118,
MSL_FROGCOLD                      = 0x119,
MSL_FROGPOIS                      = 0x11A,
MSL_DESERTFIREBALL                = 0x11B,
MSL_BRDEATHCONTROL                = 0x11C,
MSL_BRDEATHLIGHTNINGBOLT          = 0x11D,
MSL_BRDEATHLIGHTNINGHIT           = 0x11E,
MSL_DENOFEVILLIGHT                = 0x11F,
MSL_CAIRNSTONES                   = 0x120,
MSL_CAIRNSTONESSKY                = 0x121,
MSL_CAIRNSTONESGROUND             = 0x122,
MSL_TOWERMIST                     = 0x123,
MSL_TOWERMISTTRAIL                = 0x124,
MSL_BRDEATHSMOKES1                = 0x125,
MSL_BRDEATHSMOKENU                = 0x126,
MSL_BRDEATHSMOKEDT                = 0x127,
MSL_BRDEATHSPIRITS1               = 0x128,
MSL_BRDEATHSPIRITNU               = 0x129,
MSL_BRDEATHSPIRITDT               = 0x12A,
MSL_MEPHISTODEATHCONTROL          = 0x12B,
MSL_MEPHISTOFIREWALLMAKER         = 0x12C,
MSL_MEPHISTOFIREWALL              = 0x12D,
MSL_MEPHISTOFLYINGROCKSBIG        = 0x12E,
MSL_MEPHISTOEXPLOSIONBIG          = 0x12F,
MSL_MEPHISTOFLYINGROCKSSMALL      = 0x130,
MSL_MEPHISTOEXPLOSIONSMALL        = 0x131,
MSL_MEPHISTODONOTDRAW             = 0x132,
MSL_ANDYCONTROL0                  = 0x133,
MSL_ANDYFIREWALLMAKER             = 0x134,
MSL_ANDYFIREWALL                  = 0x135,
MSL_ANDYCOLUMNFIREBASE            = 0x136,
MSL_ANDYCOLUMNFIRE                = 0x137,
MSL_ANDYFALLINGDEBRIS1            = 0x138,
MSL_ANDYFALLINGDEBRIS2            = 0x139,
MSL_ANDYFALLINGDEBRIS3            = 0x13A,
MSL_ANDYDEBRISEXPLOSION1          = 0x13B,
MSL_ANDYDEBRISEXPLOSION2          = 0x13C,
MSL_ANDYDEBRISEXPLOSION3          = 0x13D,
MSL_ANDYDEBRISEXPLOSION4          = 0x13E,
MSL_ANDYDEBRISEXPLOSION5          = 0x13F,
MSL_WILLOWISPLIGHTNINGBOLT        = 0x140,
MSL_QUEENPOISONCLOUD              = 0x141,
MSL_DIRT_PILE                     = 0x142,
MSL_UNDEADMISSILE1                = 0x143,
MSL_UNDEADMISSILE2                = 0x144,
MSL_UNDEADMISSILE3                = 0x145,
MSL_UNDEADMISSILE4                = 0x146,
MSL_BONESPIRITEXPLODE             = 0x147,
MSL_DOPPLEZONEXPLODE              = 0x148,
MSL_MONBONESPIRIT                 = 0x149,
MSL_TOWERMISTFADE                 = 0x14A,
MSL_COUNTESSFIREWALL              = 0x14B,
MSL_TOWERCHESTSPAWNER             = 0x14C,
MSL_HELLMETEORLAUNCH1             = 0x14D,
MSL_HELLMETEORLAUNCH2             = 0x14E,
MSL_HELLMETEORUP                  = 0x14F,
MSL_HELLMETEORDOWN                = 0x150,
MSL_HELLMETEORBALL                = 0x151,
MSL_HORADRICSTAFF                 = 0x152,
MSL_HORADRICLIGHTNING             = 0x153,
MSL_HORADRICLIGHT                 = 0x154,
MSL_REGURGITATORCORPSE            = 0x155,
MSL_REGURGITATORCORPSEEXPL        = 0x156,
MSL_HIGHPRIESTLIGHTNING           = 0x157,
MSL_ICEBREAKSMALLMELT             = 0x158,
MSL_ICEBREAKLARGEMELT             = 0x159,
MSL_LEAPKNOCKBACK                 = 0x15A,
MSL_RADAMENTDEATH                 = 0x15B,
MSL_RADAMENTHANDOFGOD             = 0x15C,
MSL_RADAMENTHOLYBOLT              = 0x15D,
MSL_TAINTEDSUNCONTROL             = 0x15E,
MSL_TAINTEDSUNFLASH               = 0x15F,
MSL_TAINTEDSUNBALL                = 0x160,
MSL_QUEENDEATHCENTER              = 0x161,
MSL_QUEENDEATHGLOB                = 0x162,
MSL_QUEENDEATHSPLAT1              = 0x163,
MSL_QUEENDEATHSPLAT2              = 0x164,
MSL_HEALINGBOLT                   = 0x165,
MSL_MEPHISTOHOLEDELAY             = 0x166,
MSL_MEPHISTOHOLEBIRTH             = 0x167,
MSL_MEPHISTOHOLENEUTRAL           = 0x168,
MSL_MEPHISTOHOLEDEATH             = 0x169,
MSL_MEPHISTOHOLEDEAD              = 0x16A,
MSL_DURIELDEATHCONTROL            = 0x16B,
MSL_DURIELDEATHROCK               = 0x16C,
MSL_DURIELDEATHDEBRIS             = 0x16D,
MSL_DURIELDEATHSMOKE              = 0x16E,
MSL_MEPHISTOEXPLOSION             = 0x16F,
MSL_ORBMIST                       = 0x170,
MSL_ORBMISTTRAIL                  = 0x171,
MSL_ORBMISTFADE                   = 0x172,
MSL_PILUM                         = 0x173,
MSL_DIABLO_APPEARS                = 0x174,
MSL_HFCONTROL                     = 0x175,
MSL_HFFRAGMENT1                   = 0x176,
MSL_HFFRAGMENT2                   = 0x177,
MSL_HFFRAGMENT3                   = 0x178,
MSL_HFSPIRIT1                     = 0x179,
MSL_HFRESERVED3                   = 0x17A,
MSL_IZUAL_CONTROL                 = 0x17B,
MSL_IZUAL_MIST_LOOP               = 0x17C,
MSL_IZUAL_MIST_FADE               = 0x17D,
MSL_IZUAL_LIGHTNING               = 0x17E,
MSL_IZUAL_LIGHTNING_TRAIL         = 0x17F,
MSL_CAIRN_STONES_BOLT             = 0x180,
MSL_BOMB_IN_AIR                   = 0x181,
MSL_BOMB_ON_GROUND                = 0x182,
MSL_BOMB_EXPLOSION                = 0x183,
MSL_SHOCK_FIELD_IN_AIR            = 0x184,
MSL_SHOCK_FIELD_ON_GROUND         = 0x185,
MSL_THROWINGSTAR                  = 0x186,
MSL_ACIDSPRAY                     = 0x187,
MSL_BLADE_CREEPER                 = 0x188,
MSL_DISTRACTION                   = 0x189,
MSL_DISTRACTION_FOG               = 0x18A,
MSL_DISTRACTION_PUFF              = 0x18B,
MSL_DISTRACTION_START             = 0x18C,
MSL_DISTRACTION_END               = 0x18D,
MSL_IMPINFERNOFLAME1              = 0x18E,
MSL_IMPINFERNOFLAME2              = 0x18F,
MSL_BAALLIGHTNINGBOLT             = 0x190,
MSL_BAALLIGHTNINGTRAIL            = 0x191,
MSL_BAALLIGHTNINGBOLT2            = 0x192,
MSL_BAALLIGHTNINGTRAIL2           = 0x193,
MSL_IMPFIREBALL                   = 0x194,
MSL_IMPFIREBALLEXPLODE            = 0x195,
MSL_CATAPULTCHARGEDBALL_ON        = 0x196,
MSL_CATAPULTCHARGEDBALL           = 0x197,
MSL_CATAPULTCHARGEDBALLBOLT       = 0x198,
MSL_IMP_SPAWN_MONSTERS            = 0x199,
MSL_CATAPULT_SPIKE_BALL_ON        = 0x19A,
MSL_CATAPULT_SPIKE_BALL           = 0x19B,
MSL_CATAPULT_SPIKE_IN_AIR         = 0x19C,
MSL_CATAPULT_SPIKE_ON_GROUND      = 0x19D,
MSL_CATAPULT_SPIKE_EXPLOSION      = 0x19E,
MSL_CATAPULT_COLD_BALL_ON         = 0x19F,
MSL_CATAPULT_COLD_BALL            = 0x1A0,
MSL_CATAPULT_COLD_EXPLOSION       = 0x1A1,
MSL_CATAPULT_PLAGUE_BALL_ON       = 0x1A2,
MSL_CATAPULT_PLAGUE_BALL          = 0x1A3,
MSL_CATAPULT_PLAGUE_CLOUD         = 0x1A4,
MSL_CATAPULT_METEOR_BALL_ON       = 0x1A5,
MSL_CATAPULT_METEOR_BALL          = 0x1A6,
MSL_CATAPULT_METEOR_FIRE          = 0x1A7,
MSL_TOWER_DEATH                   = 0x1A8,
MSL_HEALING_VORTEX                = 0x1A9,
MSL_SUICIDECORPSEEXPLODE          = 0x1AA,
MSL_SUICIDEFIREEXPLODE            = 0x1AB,
MSL_SUICIDEICEEXPLODE             = 0x1AC,
MSL_EXPLODINGJAVALIN              = 0x1AD,
MSL_EXPLODINGJAVALINEXP           = 0x1AE,
MSL_LIGHTINGTRAILINGJAVALIN       = 0x1AF,
MSL_LIGHTJAVALINTRAIL             = 0x1B0,
MSL_LIGHTJAVALINEXPLOSION         = 0x1B1,
MSL_ICEJAVALIN                    = 0x1B2,
MSL_ICEJAVALINEXPLODE             = 0x1B3,
MSL_PLAGUEJAVELIN2                = 0x1B4,
MSL_PLAGUEJAVLINEXPLODE           = 0x1B5,
MSL_ADVLIGHTTRAILINGJAV           = 0x1B6,
MSL_ADVLIGHTTRAILINGJAV2          = 0x1B7,
MSL_ADVLIGHTJAVEXPLODE            = 0x1B8,
MSL_SUCFIREBALL                   = 0x1B9,
MSL_SUCFIREBALLEXPLODE            = 0x1BA,
MSL_SUCFIREBALLTRAIL              = 0x1BB,
MSL_SUCSHOCKFIELDMISSILE          = 0x1BC,
MSL_SUCSHOCKFIELDMISSILEEXP       = 0x1BD,
MSL_SUCSHOCKFIELD                 = 0x1BE,
MSL_HELLFIREMISSILE               = 0x1BF,
MSL_HELLFIREEXA                   = 0x1C0,
MSL_HELLFIREEXB                   = 0x1C1,
MSL_IMP_CHARGED_BOLT              = 0x1C2,
MSL_IMP_TELEPORT                  = 0x1C3,
MSL_MOLTENBOULDER                 = 0x1C4,
MSL_MOLTENBOULDEREMERGE           = 0x1C5,
MSL_MOLTENBOULDEREXPLODE          = 0x1C6,
MSL_MOLTENBOULDERFIREPATH         = 0x1C7,
MSL_MOLTENBOULDER-FLYINGROCKS     = 0x1C8,
MSL_FIRESTORM                     = 0x1C9,
MSL_FIRESTORMMAKER                = 0x1CA,
MSL_ARCTICBLAST1                  = 0x1CB,
MSL_ARCTICBLAST2                  = 0x1CC,
MSL_ERRUPTION_CENTER              = 0x1CD,
MSL_ERRUPTION_CRACK_1             = 0x1CE,
MSL_ERRUPTION_CRACK_2             = 0x1CF,
MSL_ERRUPTION_SMOKE_1             = 0x1D0,
MSL_ERRUPTION_SMOKE_2             = 0x1D1,
MSL_VINE_BEAST_WALK_1             = 0x1D2,
MSL_VINE_BEAST_WALK_2             = 0x1D3,
MSL_VINE_BEAST_NEUTRAL            = 0x1D4,
MSL_VINE_BEAST_ATTACK             = 0x1D5,
MSL_VINE_BEAST_DEATH              = 0x1D6,
MSL_VINES                         = 0x1D7,
MSL_VINES_TRAIL                   = 0x1D8,
MSL_VINES_WITHER                  = 0x1D9,
MSL_PLAGUE_VINES                  = 0x1DA,
MSL_PLAGUE_VINES_TRAIL            = 0x1DB,
MSL_PLAGUE_VINES_WITHER           = 0x1DC,
MSL_TWISTER                       = 0x1DD,
MSL_TORNADO                       = 0x1DE,
MSL_VOLCANO                       = 0x1DF,
MSL_VOLCANO_OVERLAY_FIRE          = 0x1E0,
MSL_VOLCANO_DEBRIS_2              = 0x1E1,
MSL_VOLCANO_EXPLOSION             = 0x1E2,
MSL_VOLCANO_SMALL_FIRE            = 0x1E3,
MSL_DRAGONBREATH_MISSILE          = 0x1E4,
MSL_LUREPROJECTILE                = 0x1E5,
MSL_LURECENTER                    = 0x1E6,
MSL_LURECLOUD                     = 0x1E7,
MSL_IMPMISS1                      = 0x1E8,
MSL_IMPMISS2                      = 0x1E9,
MSL_IMPMISS3                      = 0x1EA,
MSL_IMPMISS4                      = 0x1EB,
MSL_IMPMISS5                      = 0x1EC,
MSL_FROZENHORROR_ARCTICBLAST1     = 0x1ED,
MSL_FROZENHORROR_ARCTICBLAST2     = 0x1EE,
MSL_SENTRYCHARGEDBOLT             = 0x1EF,
MSL_SENTRYSPIKEINAIR              = 0x1F0,
MSL_SENTRYSPIKEONGROUND           = 0x1F1,
MSL_RECYCLER_DELAY                = 0x1F2,
MSL_RECYCLER_VINE                 = 0x1F3,
MSL_RECYCLER_FADE                 = 0x1F4,
MSL_RECYCLER_EXPLOSION            = 0x1F5,
MSL_DEATH_MAULER                  = 0x1F6,
MSL_DEATH_MAULER_TRAIL            = 0x1F7,
MSL_DEATH_MAULER_TRAIL_FADE       = 0x1F8,
MSL_BLADEFURY1                    = 0x1F9,
MSL_BLADEFRAGMENT1                = 0x1FA,
MSL_BLADEFURY2                    = 0x1FB,
MSL_BLADEFRAGMENT2                = 0x1FC,
MSL_BLADEFURY3                    = 0x1FD,
MSL_BLADEFRAGMENT3                = 0x1FE,
MSL_SHOCKWAVE                     = 0x1FF,
MSL_LIGHTNINGTALONS               = 0x200,
MSL_LIGHTNINGTALONSTRAIL          = 0x201,
MSL_PHOENIXTRAIL                  = 0x202,
MSL_RABIESPLAGUE                  = 0x203,
MSL_RABIESCONTAGION               = 0x204,
MSL_WAKE_OF_DESTRUCTION_MAKER     = 0x205,
MSL_WAKE_OF_DESTRUCTION           = 0x206,
MSL_DEATHSENTRYEXPLODE            = 0x207,
MSL_TIGERFURY                     = 0x208,
MSL_TIGERFURYTRAIL                = 0x209,
MSL_TIGERFURYTRAIL2               = 0x20A,
MSL_INFERNO_SENTRY_1              = 0x20B,
MSL_INFERNO_SENTRY_2              = 0x20C,
MSL_ANCIENT_THROWING_AXE          = 0x20D,
MSL_SENTRYLIGHTNINGBOLT           = 0x20E,
MSL_SENTRYLIGHTNINGHIT            = 0x20F,
MSL_ANYA_CENTER                   = 0x210,
MSL_ANYA_ICICLE                   = 0x211,
MSL_ANYA_ICEIMPACT                = 0x212,
MSL_ANYA_ICESTEAM                 = 0x213,
MSL_ANYA_ICEMAGIC                 = 0x214,
MSL_DRAGONTAIL_MISSILE            = 0x215,
MSL_DRAGONFLIGHT                  = 0x216,
MSL_DRAGONFLIGHTMAKER             = 0x217,
MSL_PROGRESSIVE_RADIUS_DAMAGE     = 0x218,
MSL_VINE_BEAST_WALK_1_FADE        = 0x219,
MSL_VINE_BEAST_WALK_2_FADE        = 0x21A,
MSL_VINE_BEAST_NEUTRAL_FADE       = 0x21B,
MSL_VINE_RECYCLER_DELAY           = 0x21C,
MSL_ANCIENT_DEATH_CENTER          = 0x21D,
MSL_ANCIENT_DEATH_CLOUD           = 0x21E,
MSL_LIGHTNING_CHARGE_UP_NOVA      = 0x21F,
MSL_CHAINLIGHTNINGCHARGE_UP       = 0x220,
MSL_PAIN_WORM_APPEAR              = 0x221,
MSL_BAAL_TAUNT_CONTROL            = 0x222,
MSL_BAAL_TAUNT_LIGHTNING          = 0x223,
MSL_BAAL_TAUNT_LIGHTNING_TRAIL    = 0x224,
MSL_BAAL_TAUNT_POISON             = 0x225,
MSL_BAAL_SPAWN_MONSTERS           = 0x226,
MSL_MINDBLAST_HIT                 = 0x227,
MSL_BLADE_SHIELD_MISSILE          = 0x228,
MSL_BLADE_SHIELD_ATTACHMENT       = 0x229,
MSL_BAAL_INFERNO                  = 0x22A,
MSL_BAAL_NOVA                     = 0x22B,
MSL_FISTSOFFIREEXPLODE            = 0x22C,
MSL_FISTSOFFIREFIREWALL           = 0x22D,
MSL_CLAWSOFTHUNDERBOLT            = 0x22E,
MSL_CLAWSOFTHUNDERNOVA            = 0x22F,
MSL_BLADESOFICEEXPLODE            = 0x230,
MSL_BLADESOFICECUBES              = 0x231,
MSL_BLADESOFICECUBESMELT          = 0x232,
MSL_ROYALSTRIKEMETEOR             = 0x233,
MSL_ROYALSTRIKEMETEORCENTER       = 0x234,
MSL_ROYALSTRIKEMETEORTAIL         = 0x235,
MSL_ROYALSTRIKEMETEOREXPLODE      = 0x236,
MSL_ROYALSTRIKEMETEORFIRE         = 0x237,
MSL_ROYALSTRIKECHAINLIGHTNING     = 0x238,
MSL_ROYALSTRIKECHAOSICE           = 0x239,
MSL_WORLD_STONE_CHIP_1            = 0x23A,
MSL_WORLD_STONE_CHIP_2            = 0x23B,
MSL_WORLD_STONE_CHIP_3            = 0x23C,
MSL_WORLD_STONE_CHIP_4            = 0x23D,
MSL_HIGHPRIESTLIGHTNING2          = 0x23E,
MSL_INFERNOFLAME3                 = 0x23F,
MSL_MINDBLAST_CENTER              = 0x240,
MSL_ARMAGEDDONCONTROL             = 0x241,
MSL_ARMAGEDDONROCK                = 0x242,
MSL_ARMAGEDDONTAIL                = 0x243,
MSL_ARMAGEDDONEXPLOSION           = 0x244,
MSL_HURRICANESWOOSH               = 0x245,
MSL_HURRICANECART                 = 0x246,
MSL_HURRICANEROCK                 = 0x247,
MSL_HURRICANESACK                 = 0x248,
MSL_HURRICANETREE                 = 0x249,
MSL_HURRICANEVASE                 = 0x24A,
MSL_BAALCORPSEEXPLODEDELAY        = 0x24B,
MSL_BAALCORPSEEXPLODEEXPL         = 0x24C,
MSL_BAAL_COLD_MAKER               = 0x24D,
MSL_BAAL_COLD_TRAIL               = 0x24E,
MSL_BAAL_SPAWN_MONSTERS_EXP       = 0x24F,
MSL_IMPMISS21                     = 0x250,
MSL_IMPMISS22                     = 0x251,
MSL_IMPMISS23                     = 0x252,
MSL_IMPMISS24                     = 0x253,
MSL_IMPMISS25                     = 0x254,
MSL_ANYASTEAM1                    = 0x255,
MSL_ANYASTEAM2                    = 0x256,
MSL_ANCIENTSGUIDE                 = 0x257,
MSL_ANCIENTSMARKER                = 0x258,
MSL_ANCIENTSCONTROL               = 0x259,
MSL_OVERSEERCONTROL               = 0x25A,
MSL_NIHLITHAK1                    = 0x25B,
MSL_NIHLITHAK2                    = 0x25C,
MSL_NIHLITHAK3                    = 0x25D,
MSL_NEHLITHAKCONTROL              = 0x25E,
MSL_NEHLITHAKSWOOSH               = 0x25F,
MSL_NEHLITHAKDEBRIS1              = 0x260,
MSL_NEHLITHAKDEBRIS2              = 0x261,
MSL_NEHLITHAKDEBRIS3              = 0x262,
MSL_NEHLITHAKDEBRIS4              = 0x263,
MSL_NEHLITHAKGLOW                 = 0x264,
MSL_BAALTELEPORT                  = 0x265,
MSL_BAALCLONEDEATH                = 0x266,
MSL_ANYASTEAMVENT                 = 0x267,
MSL_ANYASTEAM                     = 0x268,
MSL_NEHLITHAKHOLE                 = 0x269,
MSL_NEHLITHAKHOLELIGHT            = 0x26A,
MSL_VOLCANOFIRETRAIL              = 0x26B,
MSL_NEHLITHAKGLOW2                = 0x26C,
MSL_NEHLITHAKBONECHIPS            = 0x26D,
MSL_BAALCORPSEEXPLODEFADE         = 0x26E,
MSL_ARMAGEDDONFIRE                = 0x26F,
MSL_ICESPARKLE                    = 0x270,
MSL_BAALFX_CONTROL                = 0x271,
MSL_BAALFX_SPIRIT_1               = 0x272,
MSL_BAALFX_SPIRIT_2               = 0x273,
MSL_BAALFX_SPIRIT_3               = 0x274,
MSL_BAALFX_SPIRIT_4               = 0x275,
MSL_BAALFX_SPIRIT_5               = 0x276,
MSL_BAALFX_BAAL_HEAD_APPEAR       = 0x277,
MSL_BAALFX_BAAL_HEAD_1            = 0x278,
MSL_BAALFX_BAAL_HEAD_2            = 0x279,
MSL_BAALFX_BAAL_HEAD_3            = 0x27A,
MSL_BAALFX_TYREAL_DEBRIS_1        = 0x27B,
MSL_BAALFX_TYREAL_DEBRIS_2        = 0x27C,
MSL_BAALFX_TYREAL_DEBRIS_3        = 0x27D,
MSL_BAALFX_TYREAL_DEBRIS_BREAK    = 0x27E,
MSL_WORLDSTONE_SHAKE              = 0x27F,
MSL_BLESSEDHAMMEREX               = 0x280,
MSL_SENTRYLIGHTNINGBOLT2          = 0x281,
MSL_SENTRYLIGHTNINGHIT2           = 0x282,
MSL_LIGHTNINGTOWERNOVA            = 0x283,
MSL_SKBOWARROW6                   = 0x284,
MSL_SKBOWARROW7                   = 0x285,
MSL_SKBOWARROW8                   = 0x286,
MSL_BIGHEAD6                      = 0x287,
MSL_VIPER_POISJAV                 = 0x288,
MSL_VIPER_POISJAVCLOUD            = 0x289,
MSL_VIPER_FIRE                    = 0x28A,
MSL_VIPER_FIRECLOUD               = 0x28B,
MSL_VIPER_BONESPEAR               = 0x28C,
MSL_COUNTESSFIREWALLMAKER         = 0x28D,
MSL_BAAL_TAUNT_LIGHTNING_CONTROL  = 0x28E,
MSL_BAAL_TAUNT_POISON_CONTROL     = 0x28F,
MSL_EXPLODINGARROWEXP2            = 0x290,
MSL_FREEZINGARROWEXP3             = 0x291,
MSL_PANTHERJAV5                   = 0x292,
MSL_SPIKE6                        = 0x293,
MSL_CR_ARROW6                     = 0x294,
MSL_SKMAGEPOIS                    = 0x295,
MSL_SKMAGECOLD                    = 0x296,
MSL_SKMAGEFIRE                    = 0x297,
MSL_SKMAGELTNG                    = 0x298,
MSL_SUCCUBUSMISS                  = 0x299,
MSL_WILLOWISPLIGHTNINGBOLT2       = 0x29A,
MSL_MUMMYEX                       = 0x29B,
MSL_GOOSPITEX                     = 0x29C,
MSL_IMPMISSEX                     = 0x29D,
MSL_DIABLOGEDDONCONTROL           = 0x29E,
MSL_DIABLOGEDDONROCK              = 0x29F,
MSL_DIABLOGEDDONTAIL              = 0x2A0,
MSL_DIABLOGEDDONEXPLOSION         = 0x2A1,
MSL_DIABLOGEDDONFIRE              = 0x2A2,
MSL_MEGADEMONINFERNO              = 0x2A3,
MSL_TRAPFIREBOLT                  = 0x2A4,
MSL_TRAPPOISONJAVCLOUD            = 0x2A5,
MSL_TRAPNOVA                      = 0x2A6,
MSL_MEPHFROSTNOVA                 = 0x2A7,
MSL_MEPHLIGHT                     = 0x2A8,
MSL_VAMPIREMETEORFIRE             = 0x2A9,
MSL_STRAFEARROW                   = 0x2AA,
MSL_STRAFEBOLT                    = 0x2AB,
MSL_SIEGE_BEAST_STOMP_MISSILE     = 0x2AC,

You do not have the required permissions to view the files attached to this post.
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin

Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..

Return to “Code Editing”