DB/SpellItemEnchantment: Difference between revisions
Jump to navigation
Jump to search
Barncastle (talk | contribs) m (→1.12.1.5875) |
|||
(10 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
struct SpellItemEnchantmentRec { | struct SpellItemEnchantmentRec { | ||
uint32_t m_ID; | uint32_t m_ID; | ||
uint32_t m_effect[3]; | uint32_t m_effect[3]; // ITEM_ENCHANTMENT | ||
uint32_t m_effectPointsMin[3]; | uint32_t m_effectPointsMin[3]; | ||
uint32_t m_effectPointsMax[3]; | uint32_t m_effectPointsMax[3]; | ||
uint32_t m_effectArg[3]; | uint32_t m_effectArg[3]; // if ITEM_ENCHANTMENT_PROC || ITEM_ENCHANTMENT_BUFF_EQUIPPED then {{Template:DBField|table=Spell|column=m_ID}} else 0 | ||
{{Template:Type|langstringref}} m_name_lang; | {{Template:Type|langstringref}} m_name_lang; | ||
{{Template:Type/foreign_key|table=ItemVisuals}} m_itemVisual; | {{Template:Type/foreign_key|table=ItemVisuals}} m_itemVisual; | ||
}; | }; | ||
Line 35: | Line 26: | ||
1 ID Integer | 1 ID Integer | ||
2 charges Integer Mostly unused. Added 3.x? | 2 charges Integer Mostly unused. Added 3.x? | ||
3 [[SpellDispelType.dbc]]_1 Integer | 3 [[SpellDispelType.dbc]]_1 Integer ITEM_ENCHANTMENT of effect 1 | ||
4 [[SpellDispelType.dbc]]_2 Integer | 4 [[SpellDispelType.dbc]]_2 Integer ITEM_ENCHANTMENT of effect 2 | ||
5 [[SpellDispelType.dbc]]_3 Integer | 5 [[SpellDispelType.dbc]]_3 Integer ITEM_ENCHANTMENT of effect 3 | ||
6 minAmount1 Integer Amount of damage/armor/apply/spell for effect 1 | 6 minAmount1 Integer Amount of damage/armor/apply/spell for effect 1 | ||
7 minAmount2 Integer Amount of damage/armor/apply/spell for effect 2 | 7 minAmount2 Integer Amount of damage/armor/apply/spell for effect 2 | ||
Line 49: | Line 40: | ||
15-31 sRefName String+[[Loc]] The name of the enchantment | 15-31 sRefName String+[[Loc]] The name of the enchantment | ||
32 [[ItemVisuals.dbc]] Integer The glow to add to the items that has this enchant | 32 [[ItemVisuals.dbc]] Integer The glow to add to the items that has this enchant | ||
33 Flags Integer | 33 Flags Integer See below | ||
34 [[ItemCache.wdb]] Integer Reference to the Gem that has this ability (Added in 2.0.0.5610) | 34 [[ItemCache.wdb]] Integer Reference to the Gem that has this ability (Added in 2.0.0.5610) | ||
35 [[SpellItemEnchantmentCondition.dbc]] Integer Conditions for the effect to take place (Added in 2.0.0.5610) | 35 [[SpellItemEnchantmentCondition.dbc]] Integer Conditions for the effect to take place (Added in 2.0.0.5610) | ||
Line 56: | Line 47: | ||
38 requiredLevel Integer Required level to use the enchant | 38 requiredLevel Integer Required level to use the enchant | ||
enum ITEM_ENCHANTMENT | |||
{ | |||
ITEM_ENCHANTMENT_MISC = 0x0, | |||
ITEM_ENCHANTMENT_PROC = 0x1, | |||
ITEM_ENCHANTMENT_DAMAGE = 0x2, | |||
ITEM_ENCHANTMENT_BUFF_EQUIPPED = 0x3, | |||
ITEM_ENCHANTMENT_ADD_ARMOR = 0x4, | |||
#if {{Template:Sandbox/VersionRange|min_expansionlevel=2}} | |||
ITEM_ENCHANTMENT_TYPE_STAT = 0x5, | |||
#end | |||
#if {{Template:Sandbox/VersionRange|min_expansionlevel=3}} | |||
ITEM_ENCHANTMENT_TYPE_TOTEM = 0x6, | |||
ITEM_ENCHANTMENT_TYPE_USE_SPELL = 0x7, | |||
ITEM_ENCHANTMENT_TYPE_PRISMATIC_SOCKET = 0x8 | |||
#end | |||
}; | |||
==4.3.4.15595== | |||
struct SpellItemEnchantmentEntry // sizeof(0x5C) | struct SpellItemEnchantmentEntry // sizeof(0x5C) | ||
{ | { | ||
Line 96: | Line 105: | ||
float m_effectScalingPoints[3]; | float m_effectScalingPoints[3]; | ||
}; | }; | ||
===Flags=== | |||
{| style="background:#FCFCFC; color:black" | |||
|- | |||
! width="80" | Value | |||
! width="400" | Description | |||
|- | |||
| 0x001 || causes souldbound whilst applied <code>CGItem_C::IsBound</code> | |||
|- | |||
| 0x002 || suppress enchantment log | |||
|- | |||
| 0x004 || Mainhand Only | |||
|- | |||
| 0x008 || player spell enchantment e.g. [Rockbiter] / TBC classic : Allow Entering Arena | |||
|- | |||
| 0x010 || Do Not Save To DB | |||
|- | |||
| 0x020 || bonus increments by 1 <code>CalculateEnchantmentBonus</code> / TBC classic : Scale As A Gem | |||
|- | |||
| 0x040 || Disable In Challenge Modes | |||
|- | |||
| 0x080 || Disable in Proving Grounds | |||
|- | |||
| 0x100 || collectable / Allow transmog | |||
|- | |||
| 0x200 || hidden if not collected | |||
|} | |||
[[Category:DBC]] | [[Category:DBC]] | ||
[[Category:DBC_Alpha]] | [[Category:DBC_Alpha]] |
Latest revision as of 04:52, 9 October 2021
0.5.3.3368
struct SpellItemEnchantmentRec { uint32_t m_ID; uint32_t m_effect[3]; // ITEM_ENCHANTMENT uint32_t m_effectPointsMin[3]; uint32_t m_effectPointsMax[3]; uint32_t m_effectArg[3]; // if ITEM_ENCHANTMENT_PROC || ITEM_ENCHANTMENT_BUFF_EQUIPPED then SpellRec::m_ID else 0 langstringrefⁱ m_name_lang; foreign_keyⁱ<uint32_t, &ItemVisualsRec::m_ID> m_itemVisual; };
1.12.1.5875
struct SpellItemEnchantmentRec { uint32_t m_ID; uint32_t m_effect[3]; // ITEM_ENCHANTMENT uint32_t m_effectPointsMin[3]; uint32_t m_effectPointsMax[3]; uint32_t m_effectArg[3]; langstringrefⁱ m_name_lang; uint32_t m_itemVisual; uint32_t m_flags };
Structure
Column Field Type Notes 1 ID Integer 2 charges Integer Mostly unused. Added 3.x? 3 SpellDispelType.dbc_1 Integer ITEM_ENCHANTMENT of effect 1 4 SpellDispelType.dbc_2 Integer ITEM_ENCHANTMENT of effect 2 5 SpellDispelType.dbc_3 Integer ITEM_ENCHANTMENT of effect 3 6 minAmount1 Integer Amount of damage/armor/apply/spell for effect 1 7 minAmount2 Integer Amount of damage/armor/apply/spell for effect 2 8 minAmount3 Integer Amount of damage/armor/apply/spell for effect 3 9 maxAmount1 Integer Mostly dupe 10 maxAmount2 Integer Mostly dupe 11 maxAmount3 Integer Mostly dupe 12 objectId1 Integer if type1 == 5, then Stat Types, else Spell.dbc 13 objectId2 Integer if type2 == 5, then Stat Types, else Spell.dbc 14 objectId2 Integer if type3 == 5, then Stat Types, else Spell.dbc 15-31 sRefName String+Loc The name of the enchantment 32 ItemVisuals.dbc Integer The glow to add to the items that has this enchant 33 Flags Integer See below 34 ItemCache.wdb Integer Reference to the Gem that has this ability (Added in 2.0.0.5610) 35 SpellItemEnchantmentCondition.dbc Integer Conditions for the effect to take place (Added in 2.0.0.5610) 36 SkillLine.dbc Integer A required profession. 37 SkillLevel Integer And the level for that profession. 38 requiredLevel Integer Required level to use the enchant
enum ITEM_ENCHANTMENT { ITEM_ENCHANTMENT_MISC = 0x0, ITEM_ENCHANTMENT_PROC = 0x1, ITEM_ENCHANTMENT_DAMAGE = 0x2, ITEM_ENCHANTMENT_BUFF_EQUIPPED = 0x3, ITEM_ENCHANTMENT_ADD_ARMOR = 0x4, #if ≥ ITEM_ENCHANTMENT_TYPE_STAT = 0x5, #end #if ≥ ITEM_ENCHANTMENT_TYPE_TOTEM = 0x6, ITEM_ENCHANTMENT_TYPE_USE_SPELL = 0x7, ITEM_ENCHANTMENT_TYPE_PRISMATIC_SOCKET = 0x8 #end };
4.3.4.15595
struct SpellItemEnchantmentEntry // sizeof(0x5C) { m_ID; // +0x0, size 0x4, type 0 m_charges; // +0x4, size 0x4, type 0 m_effect; // +0x8, size 0xC, type 0 m_effectPointsMin; // +0x14, size 0xC, type 0 m_effectPointsMax; // +0x20, size 0xC, type 0 m_effectArg; // +0x2C, size 0xC, type 0 langstringrefⁱ m_name_lang; // +0x38, size 0x4, type 2 m_itemVisual; // +0x3C, size 0x4, type 0 m_flags; // +0x40, size 0x4, type 0 m_src_itemID; // +0x44, size 0x4, type 0 m_condition_id; // +0x48, size 0x4, type 0 m_requiredSkillID; // +0x4C, size 0x4, type 0 m_requiredSkillRank; // +0x50, size 0x4, type 0 m_minLevel; // +0x54, size 0x4, type 0 m_itemLevel; // +0x58, size 0x4, type 0 };
6.0.1.18179
struct SpellItemEnchantmentRec { uint32_t m_ID; uint32_t m_charges; uint32_t m_effect[3]; uint32_t m_effectPointsMin[3]; uint32_t m_effectArg[3]; langstringrefⁱ m_name_lang; uint32_t m_itemVisual; uint32_t m_flags; uint32_t m_src_itemID; uint32_t m_condition_id; uint32_t m_requiredSkillID; uint32_t m_requiredSkillRank; uint32_t m_minLevel; uint32_t m_maxLevel; uint32_t m_itemLevel; uint32_t m_scalingClass; uint32_t m_scalingClassRestricted; float m_effectScalingPoints[3]; };
Flags
Value | Description |
---|---|
0x001 | causes souldbound whilst applied CGItem_C::IsBound
|
0x002 | suppress enchantment log |
0x004 | Mainhand Only |
0x008 | player spell enchantment e.g. [Rockbiter] / TBC classic : Allow Entering Arena |
0x010 | Do Not Save To DB |
0x020 | bonus increments by 1 CalculateEnchantmentBonus / TBC classic : Scale As A Gem
|
0x040 | Disable In Challenge Modes |
0x080 | Disable in Proving Grounds |
0x100 | collectable / Allow transmog |
0x200 | hidden if not collected |