wowdev / WoWDBDefs

Client database definitions for World of Warcraft
Other
254 stars 95 forks source link

ItemSparse.dbd definition error for 2.5.x #77

Closed tywtyw2002 closed 3 years ago

tywtyw2002 commented 3 years ago

The Field_2_5_1_38043_059<u8> should be Field_2_5_1_38043_059<u8>[5] to indecte DamageType

The below is the rough Field map.

{
  "ID": "ID",
  "Field_2_5_1_38043_000": "AllowableRace",
  "Field_2_5_1_38043_001_lang": "Description_lang",
  "Field_2_5_1_38043_002_lang": "Display3_lang",
  "Field_2_5_1_38043_003_lang": "Display2_lang",
  "Field_2_5_1_38043_004_lang": "Display1_lang",
  "Field_2_5_1_38043_005_lang": "Display_lang",
  "Field_2_5_1_38043_006": "DmgVariance",
  "Field_2_5_1_38043_007": "DurationInInventory",
  "Field_2_5_1_38043_008": "QualityModifier",
  "Field_2_5_1_38043_009": "BagFamily",
  "Field_2_5_1_38043_010": "ItemRange",
  "Field_2_5_1_38043_011[0]": "StatPercentageOfSocket[0]",
  "Field_2_5_1_38043_011[1]": "StatPercentageOfSocket[1]",
  "Field_2_5_1_38043_011[2]": "StatPercentageOfSocket[2]",
  "Field_2_5_1_38043_011[3]": "StatPercentageOfSocket[3]",
  "Field_2_5_1_38043_011[4]": "StatPercentageOfSocket[4]",
  "Field_2_5_1_38043_011[5]": "StatPercentageOfSocket[5]",
  "Field_2_5_1_38043_011[6]": "StatPercentageOfSocket[6]",
  "Field_2_5_1_38043_011[7]": "StatPercentageOfSocket[7]",
  "Field_2_5_1_38043_011[8]": "StatPercentageOfSocket[8]",
  "Field_2_5_1_38043_011[9]": "StatPercentageOfSocket[9]",
  "Field_2_5_1_38043_012[0]": "StatPercentEditor[0]",
  "Field_2_5_1_38043_012[1]": "StatPercentEditor[1]",
  "Field_2_5_1_38043_012[2]": "StatPercentEditor[2]",
  "Field_2_5_1_38043_012[3]": "StatPercentEditor[3]",
  "Field_2_5_1_38043_012[4]": "StatPercentEditor[4]",
  "Field_2_5_1_38043_012[5]": "StatPercentEditor[5]",
  "Field_2_5_1_38043_012[6]": "StatPercentEditor[6]",
  "Field_2_5_1_38043_012[7]": "StatPercentEditor[7]",
  "Field_2_5_1_38043_012[8]": "StatPercentEditor[8]",
  "Field_2_5_1_38043_012[9]": "StatPercentEditor[9]",
  "Field_2_5_1_38043_013": "Stackable",
  "Field_2_5_1_38043_014": "MaxCount",
  "Field_2_5_1_38043_015": "RequiredAbility",
  "Field_2_5_1_38043_016": "SellPrice",
  "Field_2_5_1_38043_017": "BuyPrice",
  "Field_2_5_1_38043_018": "VendorStackCount",
  "Field_2_5_1_38043_019": "PriceVariance",
  "Field_2_5_1_38043_020": "PriceRandomValue",
  "Field_2_5_1_38043_021[0]": "Flags[0]",
  "Field_2_5_1_38043_021[1]": "Flags[1]",
  "Field_2_5_1_38043_021[2]": "Flags[2]",
  "Field_2_5_1_38043_021[3]": "Flags[3]",
  "Field_2_5_1_38043_022": "OppositeFactionItemID",
  "Field_2_5_1_38043_023": "MaxDurability",
  "Field_2_5_1_38043_024": "ItemNameDescriptionID",
  "Field_2_5_1_38043_025": "RequiredTransmogHoliday",
  "Field_2_5_1_38043_026": "RequiredHoliday",
  "Field_2_5_1_38043_027": "LimitCategory",
  "Field_2_5_1_38043_028": "Gem_properties",
  "Field_2_5_1_38043_029": "Socket_match_enchantment_ID",
  "Field_2_5_1_38043_030": "TotemCategoryID",
  "Field_2_5_1_38043_031": "InstanceBound",
  "Field_2_5_1_38043_032[0]": "ZoneBound",
  "Field_2_5_1_38043_032[1]": "Field_2_5_1_38043_032[1]",
  "Field_2_5_1_38043_033": "ItemSet",
  "Field_2_5_1_38043_034": "LockID",
  "Field_2_5_1_38043_035": "StartQuestID",
  "Field_2_5_1_38043_036": "PageID",
  "Field_2_5_1_38043_037": "ItemDelay",
  "Field_2_5_1_38043_038": "RequiredFactionID",
  "Field_2_5_1_38043_039": "RequiredSkillRank",
  "Field_2_5_1_38043_040": "RequiredSkill",
  "Field_2_5_1_38043_041": "ItemLevel",
  "Field_2_5_1_38043_042": "AllowableClass",
  "Field_2_5_1_38043_043": "ItemRandomSuffixGroupID",
  "Field_2_5_1_38043_044": "RandomSelect",
  "Field_2_5_1_38043_045[0]": "DamageMin[0]",
  "Field_2_5_1_38043_045[1]": "DamageMin[1]",
  "Field_2_5_1_38043_045[2]": "DamageMin[2]",
  "Field_2_5_1_38043_045[3]": "DamageMin[3]",
  "Field_2_5_1_38043_045[4]": "DamageMin[4]",
  "Field_2_5_1_38043_046[0]": "DamageMax[0]",
  "Field_2_5_1_38043_046[1]": "DamageMax[1]",
  "Field_2_5_1_38043_046[2]": "DamageMax[2]",
  "Field_2_5_1_38043_046[3]": "DamageMax[3]",
  "Field_2_5_1_38043_046[4]": "DamageMax[4]",
  "Field_2_5_1_38043_047[0]": "DefensiveStats[0]",
  "Field_2_5_1_38043_047[1]": "DefensiveStats[1]",
  "Field_2_5_1_38043_047[2]": "DefensiveStats[2]",
  "Field_2_5_1_38043_047[3]": "DefensiveStats[3]",
  "Field_2_5_1_38043_047[4]": "DefensiveStats[4]",
  "Field_2_5_1_38043_047[5]": "DefensiveStats[5]",
  "Field_2_5_1_38043_047[6]": "DefensiveStats[6]",
  "Field_2_5_1_38043_048": "Field_2_5_1_38043_048",
  "Field_2_5_1_38043_049": "ExpansionID",
  "Field_2_5_1_38043_050": "Field_2_5_1_38043_050",
  "Field_2_5_1_38043_051": "Field_2_5_1_38043_051",
  "Field_2_5_1_38043_052": "Field_2_5_1_38043_052",
  "Field_2_5_1_38043_053[0]": "SocketType[0]",
  "Field_2_5_1_38043_053[1]": "SocketType[1]",
  "Field_2_5_1_38043_053[2]": "SocketType[2]",
  "Field_2_5_1_38043_054": "SheatheType",
  "Field_2_5_1_38043_055": "Material",
  "Field_2_5_1_38043_056": "PageMaterialID",
  "Field_2_5_1_38043_057": "LanguageID",
  "Field_2_5_1_38043_058": "Bonding",
  "Field_2_5_1_38043_059": "DamageType",
  "Field_2_5_1_38043_060[0]": "StatModifier_bonusStat[0]",
  "Field_2_5_1_38043_060[1]": "StatModifier_bonusStat[1]",
  "Field_2_5_1_38043_060[2]": "StatModifier_bonusStat[2]",
  "Field_2_5_1_38043_060[3]": "StatModifier_bonusStat[3]",
  "Field_2_5_1_38043_060[4]": "StatModifier_bonusStat[4]",
  "Field_2_5_1_38043_060[5]": "StatModifier_bonusStat[5]",
  "Field_2_5_1_38043_060[6]": "StatModifier_bonusStat[6]",
  "Field_2_5_1_38043_060[7]": "StatModifier_bonusStat[7]",
  "Field_2_5_1_38043_060[8]": "StatModifier_bonusStat[8]",
  "Field_2_5_1_38043_060[9]": "StatModifier_bonusStat[9]",
  "Field_2_5_1_38043_061": "ContainerSlots",
  "Field_2_5_1_38043_062": "MinReputation",
  "Field_2_5_1_38043_063": "RequiredPVPMedal",
  "Field_2_5_1_38043_064": "Field_2_5_1_38043_064",
  "Field_2_5_1_38043_065": "InventoryType",
  "Field_2_5_1_38043_066": "OverallQualityID",
  "Field_2_5_1_38043_067": "AmmoType",
  "Field_2_5_1_38043_068[0]": "StatValue[0]",
  "Field_2_5_1_38043_068[1]": "StatValue[1]",
  "Field_2_5_1_38043_068[2]": "StatValue[2]",
  "Field_2_5_1_38043_068[3]": "StatValue[3]",
  "Field_2_5_1_38043_068[4]": "StatValue[4]",
  "Field_2_5_1_38043_068[5]": "StatValue[5]",
  "Field_2_5_1_38043_068[6]": "StatValue[6]",
  "Field_2_5_1_38043_068[7]": "StatValue[7]",
  "Field_2_5_1_38043_068[8]": "StatValue[8]",
  "Field_2_5_1_38043_068[9]": "StatValue[9]",
  "Field_2_5_1_38043_069": "RequiredLevel"
}
Marlamin commented 3 years ago

These files are dumped automatically, sometimes array lengths are wrong (and sometimes, but rarely, missing), but looking at the DB2 file itself the column you tagged as DamageType definitely seems to be 8 bits long if I'm reading it correctly. I'll see how far I can get mapping this.

tywtyw2002 commented 3 years ago

The 8bits long is correct. But that is an [5] array instead of a single unit.

For item Thunderfury, it has 2 DamageTypes for melee and natural.

Screen Shot 2021-03-26 at 10 45 27
Marlamin commented 3 years ago

As far as I can tell those are part of the field after (bonus stats) 3 for Agility and 7 for Stamina. Your note makes sense though as I'm not sure where the nature damage went. Will need further looking into.

Marlamin commented 3 years ago

The 8 bits I mentioned was for the total array size as that is how it is measured in the file. Again, might be wrong as I have no idea where the nature damage went off to.

tywtyw2002 commented 3 years ago

You are right, that should be 8 bits only.

Same thing, no idea for damage type 2-5 goes.