class Spell(models.Model): school = models.PositiveIntegerField(blank=True, null=True) category = models.ForeignKey("SpellCategory", db_index=True, blank=True, null=True, related_name="spell_category") unknown1 = models.IntegerField(blank=True, null=True) dispel_type = models.ForeignKey("SpellDispelType", db_index=True, blank=True, null=True) mechanic = models.ForeignKey("SpellMechanic", db_index=True, blank=True, null=True) unknown7 = models.IntegerField(blank=True, null=True) unknown8 = models.IntegerField(blank=True, null=True) unknown9 = models.IntegerField(blank=True, null=True) unknown10 = models.IntegerField(blank=True, null=True) unknown11 = models.IntegerField(blank=True, null=True) unknown12 = models.IntegerField(blank=True, null=True) unknown13 = models.IntegerField(blank=True, null=True) unknown14 = models.IntegerField(blank=True, null=True) creature_type = models.IntegerField(blank=True, null=True) focus_object = models.ForeignKey("SpellFocusObject", db_index=True, blank=True, null=True) caster_aura_state = models.IntegerField(blank=True, null=True) target_aura_state = models.IntegerField(blank=True, null=True) cast_time = models.ForeignKey("SpellCastTimes", db_index=True, blank=True, null=True) category_cooldown = models.IntegerField(blank=True, null=True) spell_cooldown = models.IntegerField(blank=True, null=True) interrupt_flags = models.IntegerField(blank=True, null=True) aura_intterupt_flags = models.IntegerField(blank=True, null=True) category_interrupt_flags = models.IntegerField(blank=True, null=True) proc_flags = models.IntegerField(blank=True, null=True) proc_chance = models.IntegerField(blank=True, null=True) proc_charges = models.IntegerField(blank=True, null=True) level_max = models.IntegerField(blank=True, null=True) level_base = models.IntegerField(blank=True, null=True) level = models.IntegerField(blank=True, null=True) duration = models.ForeignKey("SpellDuration", db_index=True, blank=True, null=True) power_type = models.PositiveIntegerField(db_index=True, blank=True, null=True) mana_cost = models.IntegerField(blank=True, null=True) mana_cost_per_level = models.IntegerField(blank=True, null=True) mana_per_second = models.IntegerField(blank=True, null=True) mana_per_second_per_level = models.IntegerField(blank=True, null=True) range = models.ForeignKey("SpellRange", db_index=True, blank=True, null=True) projectile_speed = models.FloatField(null=True, blank=True, decimal_places=2, max_digits=8) modal_next_spell = models.IntegerField(blank=True, null=True) stack_amount = models.IntegerField(blank=True, null=True) item_1 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_item_1") item_2 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_item_2") reagent_1 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_1") reagent_2 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_2") reagent_3 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_3") reagent_4 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_4") reagent_5 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_5") reagent_6 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_6") reagent_7 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_7") reagent_8 = models.ForeignKey("Item", db_index=True, blank=True, null=True, related_name="spell_reagent_8") reagent_1_amount = models.IntegerField(blank=True, null=True) reagent_2_amount = models.IntegerField(blank=True, null=True) reagent_3_amount = models.IntegerField(blank=True, null=True) reagent_4_amount = models.IntegerField(blank=True, null=True) reagent_5_amount = models.IntegerField(blank=True, null=True) reagent_6_amount = models.IntegerField(blank=True, null=True) reagent_7_amount = models.IntegerField(blank=True, null=True) reagent_8_amount = models.IntegerField(blank=True, null=True) unknown59 = models.IntegerField(blank=True, null=True) item_class = models.ForeignKey("ItemClass", db_index=True, blank=True, null=True) item_sub_class = models.ForeignKey("ItemSubClass", db_index=True, blank=True, null=True) effect_1 = models.ForeignKey("SpellEffectNames", db_index=True, blank=True, null=True, related_name="spell_effect_1") effect_2 = models.ForeignKey("SpellEffectNames", db_index=True, blank=True, null=True, related_name="spell_effect_2") effect_3 = models.ForeignKey("SpellEffectNames", db_index=True, blank=True, null=True, related_name="spell_effect_3") effect_1_die_sides = models.IntegerField(blank=True, null=True) effect_2_die_sides = models.IntegerField(blank=True, null=True) effect_3_die_sides = models.IntegerField(blank=True, null=True) effect_1_base_dice = models.IntegerField(blank=True, null=True) effect_2_base_dice = models.IntegerField(blank=True, null=True) effect_3_base_dice = models.IntegerField(blank=True, null=True) effect_1_dice_per_level = models.IntegerField(blank=True, null=True) effect_2_dice_per_level = models.IntegerField(blank=True, null=True) effect_3_dice_per_level = models.IntegerField(blank=True, null=True) effect_1_points_per_level = models.IntegerField(blank=True, null=True) effect_2_points_per_level = models.IntegerField(blank=True, null=True) effect_3_points_per_level = models.IntegerField(blank=True, null=True) effect_1_base_points = models.IntegerField(blank=True, null=True) effect_2_base_points = models.IntegerField(blank=True, null=True) effect_3_base_points = models.IntegerField(blank=True, null=True) effect_1_mechanic = models.ForeignKey("SpellMechanic", db_index=True, blank=True, null=True, related_name="spell_effect_1_mechanic") effect_2_mechanic = models.ForeignKey("SpellMechanic", db_index=True,blank=True, null=True, related_name="spell_effect_2_mechanic") effect_3_mechanic = models.ForeignKey("SpellMechanic", db_index=True,blank=True, null=True, related_name="spell_effect_3_mechanic") effect_1_implicit_target_1 = models.IntegerField(blank=True, null=True) effect_2_implicit_target_1 = models.IntegerField(blank=True, null=True) effect_3_implicit_target_1 = models.IntegerField(blank=True, null=True) effect_1_implicit_target_2 = models.IntegerField(blank=True, null=True) effect_2_implicit_target_2 = models.IntegerField(blank=True, null=True) effect_3_implicit_target_2 = models.IntegerField(blank=True, null=True) effect_1_radius = models.ForeignKey("SpellRadius", db_index=True, blank=True, null=True, related_name="spell_effect_1_radius") effect_2_radius = models.ForeignKey("SpellRadius", db_index=True, blank=True, null=True, related_name="spell_effect_2_radius") effect_3_radius = models.ForeignKey("SpellRadius", db_index=True, blank=True, null=True, related_name="spell_effect_3_radius") effect_1_aura = models.IntegerField(blank=True, null=True) effect_2_aura = models.IntegerField(blank=True, null=True) effect_3_aura = models.IntegerField(blank=True, null=True) effect_1_amplitude = models.IntegerField(blank=True, null=True) effect_2_amplitude = models.IntegerField(blank=True, null=True) effect_3_amplitude = models.IntegerField(blank=True, null=True) effect_1_proc = models.IntegerField(blank=True, null=True) effect_2_proc = models.IntegerField(blank=True, null=True) effect_3_proc = models.IntegerField(blank=True, null=True) effect_1_chain_target = models.IntegerField(blank=True, null=True) effect_2_chain_target = models.IntegerField(blank=True, null=True) effect_3_chain_target = models.IntegerField(blank=True, null=True) effect_1_item = models.IntegerField(blank=True, null=True) effect_2_item = models.IntegerField(blank=True, null=True) effect_3_item = models.IntegerField(blank=True, null=True) effect_1_misc_value = models.IntegerField(blank=True, null=True) effect_2_misc_value = models.IntegerField(blank=True, null=True) effect_3_misc_value = models.IntegerField(blank=True, null=True) effect_1_trigger_spell = models.ForeignKey("Spell", db_index=True, blank=True, null=True, related_name="spell_effect_1_trigger_spell") effect_2_trigger_spell = models.ForeignKey("Spell", db_index=True, blank=True, null=True, related_name="spell_effect_2_trigger_spell") effect_3_trigger_spell = models.ForeignKey("Spell", db_index=True, blank=True, null=True, related_name="spell_effect_3_trigger_spell") effect_1_proc_chance = models.IntegerField(blank=True, null=True) effect_2_proc_chance = models.IntegerField(blank=True, null=True) effect_3_proc_chance = models.IntegerField(blank=True, null=True) visual = models.ForeignKey("SpellVisual", db_index=True, blank=True, null=True) unknown116 = models.IntegerField(blank=True, null=True) icon = models.ForeignKey("SpellIcon", db_index=True, blank=True, null=True, related_name="spell_icon") target_icon = models.ForeignKey("SpellIcon", db_index=True, blank=True, null=True, related_name="spell_target_icon") priority = models.IntegerField(blank=True, null=True) name_en = models.CharField(maxlength=255, blank=True, null=True) name_kr = models.CharField(maxlength=255, blank=True, null=True) name_fr = models.CharField(maxlength=255, blank=True, null=True) name_de = models.CharField(maxlength=255, blank=True, null=True) name_cn = models.CharField(maxlength=255, blank=True, null=True) name_tw = models.CharField(maxlength=255, blank=True, null=True) name_07 = models.CharField(maxlength=255, blank=True, null=True) name_08 = models.CharField(maxlength=255, blank=True, null=True) name_flags = models.IntegerField(blank=True, null=True) rank_en = models.CharField(maxlength=255, blank=True, null=True) rank_kr = models.CharField(maxlength=255, blank=True, null=True) rank_fr = models.CharField(maxlength=255, blank=True, null=True) rank_de = models.CharField(maxlength=255, blank=True, null=True) rank_cn = models.CharField(maxlength=255, blank=True, null=True) rank_tw = models.CharField(maxlength=255, blank=True, null=True) rank_07 = models.CharField(maxlength=255, blank=True, null=True) rank_08 = models.CharField(maxlength=255, blank=True, null=True) rank_flags = models.IntegerField(blank=True, null=True) description_en = models.TextField(blank=True, null=True) description_kr = models.TextField(blank=True, null=True) description_fr = models.TextField(blank=True, null=True) description_de = models.TextField(blank=True, null=True) description_cn = models.TextField(blank=True, null=True) description_tw = models.TextField(blank=True, null=True) description_07 = models.TextField(blank=True, null=True) description_08 = models.TextField(blank=True, null=True) description_flags = models.IntegerField(blank=True, null=True) buff_description_en = models.TextField(blank=True, null=True) buff_description_kr = models.TextField(blank=True, null=True) buff_description_fr = models.TextField(blank=True, null=True) buff_description_de = models.TextField(blank=True, null=True) buff_description_cn = models.TextField(blank=True, null=True) buff_description_tw = models.TextField(blank=True, null=True) buff_description_07 = models.TextField(blank=True, null=True) buff_description_08 = models.TextField(blank=True, null=True) buff_description_flags = models.IntegerField(blank=True, null=True) mana_cost_percent = models.IntegerField(blank=True, null=True) cooldown_category = models.ForeignKey("SpellCategory", db_index=True, blank=True, null=True, related_name="spell_cooldown_category") cooldown = models.IntegerField(blank=True, null=True) target_max_level = models.IntegerField(blank=True, null=True) target_class = models.ForeignKey("ChrClass", to_field='id2', blank=True, null=True) unknown161 = models.IntegerField(blank=True, null=True) targets = models.IntegerField(blank=True, null=True) unknown163 = models.IntegerField(blank=True, null=True) damage_type = models.PositiveIntegerField(blank=True, null=True) unknown165 = models.IntegerField(blank=True, null=True) unknown166 = models.IntegerField(blank=True, null=True) damage_multiplier_1 = models.IntegerField(blank=True, null=True) damage_multiplier_2 = models.IntegerField(blank=True, null=True) damage_multiplier_3 = models.IntegerField(blank=True, null=True) unknown170 = models.IntegerField(blank=True, null=True) unknown171 = models.IntegerField(blank=True, null=True) unknown172 = models.IntegerField(blank=True, null=True) unknown173 = models.IntegerField(blank=True, null=True) unknown174 = models.IntegerField(blank=True, null=True)