DB/Spell
Jump to navigation
Jump to search
Header Info
Records.................33142 Fields....................179 Record Size...............716 String Block Size.....1233679
Structure
http://dev.trinitycore.org/trinitycore2/src/561ac59c59ac/src/game/DBCStructure.h
#define MAX_SPELL_EFFECTS 3 struct SpellEntry { uint32 Id; // 0 m_ID uint32 Category; // 1 m_category uint32 Dispel; // 2 m_dispelType uint32 Mechanic; // 3 m_mechanic uint32 Attributes; // 4 m_attribute uint32 AttributesEx; // 5 m_attributesEx uint32 AttributesEx2; // 6 m_attributesExB uint32 AttributesEx3; // 7 m_attributesExC uint32 AttributesEx4; // 8 m_attributesExD uint32 AttributesEx5; // 9 m_attributesExE uint32 AttributesEx6; // 10 m_attributesExF uint32 Stances; // 11 m_shapeshiftMask uint32 StancesNot; // 12 m_shapeshiftExclude uint32 Targets; // 13 m_targets uint32 TargetCreatureType; // 14 m_targetCreatureType uint32 RequiresSpellFocus; // 15 m_requiresSpellFocus uint32 FacingCasterFlags; // 16 m_facingCasterFlags uint32 CasterAuraState; // 17 m_casterAuraState uint32 TargetAuraState; // 18 m_targetAuraState uint32 CasterAuraStateNot; // 19 m_excludeCasterAuraState uint32 TargetAuraStateNot; // 20 m_excludeTargetAuraState uint32 casterAuraSpell; // 21 m_casterAuraSpell uint32 targetAuraSpell; // 22 m_targetAuraSpell uint32 excludeCasterAuraSpell; // 23 m_excludeCasterAuraSpell uint32 excludeTargetAuraSpell; // 24 m_excludeTargetAuraSpell uint32 CastingTimeIndex; // 25 m_castingTimeIndex uint32 RecoveryTime; // 26 m_recoveryTime uint32 CategoryRecoveryTime; // 27 m_categoryRecoveryTime uint32 InterruptFlags; // 28 m_interruptFlags uint32 AuraInterruptFlags; // 29 m_auraInterruptFlags uint32 ChannelInterruptFlags; // 30 m_channelInterruptFlags uint32 procFlags; // 31 m_procTypeMask uint32 procChance; // 32 m_procChance uint32 procCharges; // 33 m_procCharges uint32 maxLevel; // 34 m_maxLevel uint32 baseLevel; // 35 m_baseLevel uint32 spellLevel; // 36 m_spellLevel uint32 DurationIndex; // 37 m_durationIndex uint32 powerType; // 38 m_powerType uint32 manaCost; // 39 m_manaCost uint32 manaCostPerlevel; // 40 m_manaCostPerLevel uint32 manaPerSecond; // 41 m_manaPerSecond uint32 manaPerSecondPerLevel; // 42 m_manaPerSecondPerLeve uint32 rangeIndex; // 43 m_rangeIndex float speed; // 44 m_speed //uint32 modalNextSpell; // 45 m_modalNextSpell not used uint32 StackAmount; // 46 m_cumulativeAura uint32 Totem[2]; // 47-48 m_totem int32 Reagent[8]; // 49-56 m_reagent uint32 ReagentCount[8]; // 57-64 m_reagentCount int32 EquippedItemClass; // 65 m_equippedItemClass (value) int32 EquippedItemSubClassMask; // 66 m_equippedItemSubclass (mask) int32 EquippedItemInventoryTypeMask; // 67 m_equippedItemInvTypes (mask) uint32 Effect[MAX_SPELL_EFFECTS]; // 68-70 m_effect //int32 EffectDieSides[MAX_SPELL_EFFECTS]; // 71-73 m_effectDieSides - Removed in 3.3.3 //int32 EffectBaseDice[MAX_SPELL_EFFECTS]; // 74-76 m_effectBaseDice - Removed in 3.3.3 float EffectDicePerLevel[MAX_SPELL_EFFECTS]; // 77-79 m_effectDicePerLevel float EffectRealPointsPerLevel[MAX_SPELL_EFFECTS]; // 80-82 m_effectRealPointsPerLevel int32 EffectBasePoints[MAX_SPELL_EFFECTS]; // 83-85 m_effectBasePoints (don't must be used in spell/auras explicitly, must be used cached Spell::m_currentBasePoints) uint32 EffectMechanic[MAX_SPELL_EFFECTS]; // 86-88 m_effectMechanic uint32 EffectImplicitTargetA[MAX_SPELL_EFFECTS]; // 89-91 m_implicitTargetA uint32 EffectImplicitTargetB[MAX_SPELL_EFFECTS]; // 92-94 m_implicitTargetB uint32 EffectRadiusIndex[MAX_SPELL_EFFECTS]; // 95-97 m_effectRadiusIndex - spellradius.dbc uint32 EffectApplyAuraName[MAX_SPELL_EFFECTS]; // 98-100 m_effectAura uint32 EffectAmplitude[MAX_SPELL_EFFECTS]; // 101-103 m_effectAuraPeriod float EffectMultipleValue[MAX_SPELL_EFFECTS]; // 104-106 m_effectAmplitude uint32 EffectChainTarget[MAX_SPELL_EFFECTS]; // 107-109 m_effectChainTargets uint32 EffectItemType[MAX_SPELL_EFFECTS]; // 110-112 m_effectItemType int32 EffectMiscValue[MAX_SPELL_EFFECTS]; // 113-115 m_effectMiscValue int32 EffectMiscValueB[MAX_SPELL_EFFECTS]; // 116-118 m_effectMiscValueB uint32 EffectTriggerSpell[MAX_SPELL_EFFECTS]; // 119-121 m_effectTriggerSpell float EffectPointsPerComboPoint[MAX_SPELL_EFFECTS]; // 122-124 m_effectPointsPerCombo flag96 EffectSpellClassMask[MAX_SPELL_EFFECTS]; // uint32 SpellVisual[2]; // 134-135 m_spellVisualID uint32 SpellIconID; // 136 m_spellIconID uint32 activeIconID; // 137 m_activeIconID //uint32 spellPriority; // 138 not used char* SpellName[16]; // 139-154 m_name_lang //uint32 SpellNameFlag; // 155 not used char* Rank[16]; // 156-171 m_nameSubtext_lang //uint32 RankFlags; // 172 not used //char* Description[16]; // 173-188 m_description_lang not used //uint32 DescriptionFlags; // 189 not used //char* ToolTip[16]; // 190-205 m_auraDescription_lang not used //uint32 ToolTipFlags; // 206 not used uint32 ManaCostPercentage; // 207 m_manaCostPct uint32 StartRecoveryCategory; // 208 m_startRecoveryCategory uint32 StartRecoveryTime; // 209 m_startRecoveryTime uint32 MaxTargetLevel; // 210 m_maxTargetLevel uint32 SpellFamilyName; // 211 m_spellClassSet flag96 SpellFamilyFlags; // 212-214 uint32 MaxAffectedTargets; // 215 m_maxTargets uint32 DmgClass; // 216 m_defenseType uint32 PreventionType; // 217 m_preventionType //uint32 StanceBarOrder; // 218 m_stanceBarOrder not used float DmgMultiplier[3]; // 219-221 m_effectChainAmplitude //uint32 MinFactionId; // 222 m_minFactionID not used //uint32 MinReputation; // 223 m_minReputation not used //uint32 RequiredAuraVision; // 224 m_requiredAuraVision not used uint32 TotemCategory[2]; // 225-226 m_requiredTotemCategoryID int32 AreaGroupId; // 227 m_requiredAreaGroupId uint32 SchoolMask; // 228 m_schoolMask uint32 runeCostID; // 229 m_runeCostID //uint32 spellMissileID; // 230 m_spellMissileID not used //uint32 PowerDisplayId; // 231 PowerDisplay.dbc, new in 3.1
// helpers int32 CalculateSimpleValue(uint8 eff) const { return EffectBasePoints[eff]+int32(EffectBaseDice[eff]); }
private: // prevent creating custom entries (copy data from original in fact) SpellEntry(SpellEntry const&); // DON'T must have implementation };
Old
Column Field Type Notes 1 ID Integer 2 iRefID_Resistances Integer School Category. Also serves as resistance component. 3 iRefID_SpellCategory Integer 4 Unknown Integer 5 iRefID_SpellDispelType Integer Dispel type 6 iRefID_SpellMechanic Integer Main mechanic applied to the spell being cast 7 Unknown BitMask Bit 0x10000000 = "Cannot be cast when in combat". 8 Unknown BitMask 9 targets BitMask ...> Internal arrays? 10 Unknown BitMask Moved from column 168 (Patch 0.12.0) Bit 0x100000 = Persist through death (Flasks, Ghost, Deserter etc) 11 Unknown Unknown Added with 0.12.0 12 Unknown Unknown Added with Beta 2.0.0.6022 13 iRefMask_SpellShapeshiftForm BitMask BitMask for which shapeshift forms this spell can be used in. 14 iRefMask_SpellShapeshiftForm BitMask BitMask for which shapeshift forms this spell cannot be used in. 15 Unknown Unknown 16 iRefMask_CreatureType BitMask 17 iRefID_SpellFocusObject Integer The object that needs to be near, targeted, or on person to cast 18 caster_aura_state Integer Requirements that need to be met, before spell/ability is usable, on caster... 19 target_aura_state Integer ...or target. 20 Unknown Unknown (Added in 2.0.0.5894) 21 Unknown Unknown (Added in 2.0.0.5894) 22 iRefID_SpellCastTimes Integer The time in milliseconds to cast 23 category_recovery_time Integer Spell cooldown. If this is set affects whole category, else... 24 recovery_time Integer ...if this is set affects only spell/ability being used. Note: Both can be set with different cooldowns. 25 interrupt_flags BitMask What table(s) do these fields point to? <... 26 aura_interrupt_flags BitMask ... 27 channel_interrupt_flags BitMask ... 28 proc_flags BitMask ...> Internal arrays? 29 proc_chance Integer 30 proc_charges Integer 31 level_max Integer The spell level when additional damage is no longer calculated. 32 level_base Integer 33 level_spell Integer 34 iRefID_SpellDuration Integer Duration is in milliseconds. ($d) 35 power_type Integer 36 mana_cost Integer To get rage cost, divide this value by 10. 37 mana_cost_per_level Integer 38 mana_per_second Integer 39 mana_per_second_per_level Integer 40 iRefID_SpellRange Integer Yard increments 41 projectile_speed Float Speed of the "animation bolt" as it travels from caster to target. 42 modal_next_spell Integer 43 stack_amount Integer Specifies how many times the spell can be applied to a target 44 iRefID_Tool_1 Integer Required tool to cast. (eg. Mining Pick, Flint and Tinder) 45 iRefID_Tool_2 Integer direct reference to an item-id 46 iRefID_Reagent_1 Integer Reagent required to cast. Direct reference to an item-id 47 iRefID_Reagent_2 Integer 48 iRefID_Reagent_3 Integer 49 iRefID_Reagent_4 Integer 50 iRefID_Reagent_5 Integer 51 iRefID_Reagent_6 Integer 52 iRefID_Reagent_7 Integer 53 iRefID_Reagent_8 Integer 54 reagent_count_1 Integer Amount of reagents required to use spell/ability. 55 reagent_count_2 Integer 56 reagent_count_3 Integer 57 reagent_count_4 Integer 58 reagent_count_5 Integer 59 reagent_count_6 Integer 60 reagent_count_7 Integer 61 reagent_count_8 Integer 62 iRefMask_ItemClass BitMask 63 iRefMask_ItemSubClass BitMask 64 iRefMask_Inventory Slots BitMask for enchanting 65 effect_1_id Integer SpellEffectNames.dbc 66 effect_2_id Integer SpellEffectNames.dbc 67 effect_3_id Integer SpellEffectNames.dbc 68 effect_1_die_sides Integer Random Damage 69 effect_2_die_sides Integer 70 effect_3_die_sides Integer 71 effect_1_base_dice Integer 72 effect_2_base_dice Integer 73 effect_3_base_dice Integer 74 effect_1_dice_per_level Integer 75 effect_2_dice_per_level Integer 76 effect_3_dice_per_level Integer 77 effect_1_real_points_per_level Float 78 effect_2_real_points_per_level Float 79 effect_3_real_points_per_level Float 80 effect_1_base_points Integer Base Damage ($s1) 81 effect_2_base_points Integer 82 effect_3_base_points Integer 83 effect_1_mechanic_id Integer SpellMechanic.dbc 84 effect_2_mechanic_id Integer SpellMechanic.dbc 85 effect_3_mechanic_id Integer SpellMechanic.dbc 86 effect_1_implicit_target_a Integer 87 effect_2_implicit_target_a Integer 88 effect_3_implicit_target_a Integer 89 effect_1_implicit_target_b Integer 90 effect_2_implicit_target_b Integer 91 effect_3_implicit_target_b Integer 92 effect_1_radius Integer SpellRadius.dbc 93 effect_2_radius Integer SpellRadius.dbc 94 effect_3_radius Integer SpellRadius.dbc 95 effect_1_aura Integer SpellAuraNames.dbc 96 effect_2_aura Integer SpellAuraNames.dbc 97 effect_3_aura Integer SpellAuraNames.dbc 98 effect_1_amplitude Integer Refence ID: $o1 in description/buff desc. 99 effect_2_amplitude Integer $o2 100 effect_3_amplitude Integer $o3 101 effect_1_proc_value Float $e1 102 effect_2_proc_value Float $e2 103 effect_3_proc_value Float $e3 104 effect_1_chain_target Integer 105 effect_2_chain_target Integer 106 effect_3_chain_target Integer 107 effect_1_item_type Integer used when creating items. Q:Does this refer to these Item Types? Reference to ItemCache.wdb 108 effect_2_item_type Integer 109 effect_3_item_type Integer 110 effect_1_misc_value Integer Reference to SpellItemEnchantment.dbc for enchanting 111 effect_2_misc_value Integer 112 effect_3_misc_value Integer 113 effect_1_trigger_spell Integer spellid that this spell teaches or triggers 114 effect_2_trigger_spell Integer 115 effect_3_trigger_spell Integer 116 effect_1_proc_chance Float Seems to be $b1, having something to do with finishing moves... 117 effect_2_proc_chance Float $b2 118 effect_3_proc_chance Float $b3 119 iRefID_SpellVisual Integer 120 Unknown Integer Only on one spell, Sire's Suicide (18184) with a value of 749 121 iRefID_SpellIcon Integer Icon used in spellbook. 122 iRefID_SpellIcon Integer Icon used on target. 123 spell_priority Integer Deciding factor if it overrides other effects. 124-132 sRefName String + Loc Names different then your clients localization will appear as null terminated strings 133-141 rank String + Loc 142-150 book_description String + Loc DBC String Variables 151-159 buff_desciption String + Loc 160 mana_cost_percent Integer 161 start_recovery_category Integer 162 start_recovery_time Integer Global cooldown. 163 affected_target_level Integer example: "Only affects Humanoid targets level affected_target_level or lower." 164 iRefID_ChrClasses Integer Column 16 165 Unknown BitMask 166 spell_targets Integer How many targets are affected around the currently targeted Mob/Player. 167 Unknown BitMask 168 dmg_class Integer 0=None, 1=Magic, 2=Melee, 3=Ranged 169 Unknown Integer Vals = 0,1,2 170 Unknown Integer 171 dmg_multiplier_1 Float 172 dmg_multiplier_2 Float 173 dmg_multiplier_3 Float 174 Unknown Unknown 175 Unknown Unknown 176 Unknown Unknown 177 iRefID_TotemCategory_1 Integer Required tool (BC Alpha 8/26/2006) 178 iRefID_TotemCategory_2 Integer Required tool (BC Alpha 8/26/2006) 179 Unknown Unknown (Added build 5965)
Retrieved from "http://www.sourcepeek.com/wiki/Spell.dbc"