SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
dbc_t Class Reference

Public Member Functions

uint32_t replaced_id (uint32_t id_spell) const
 
bool replace_id (uint32_t id_spell, uint32_t replaced_by_id)
 
 dbc_t (bool ptr=false)
 
const char * wow_ptr_status () const
 
util::span< const util::span< const dbc_item_data_t > > items () const
 
double melee_crit_base (player_e, unsigned) const
 
double spell_crit_base (player_e, unsigned) const
 
double combat_rating_multiplier (unsigned item_level, combat_rating_multiplier_type type) const
 
double stamina_multiplier (unsigned item_level, combat_rating_multiplier_type type) const
 
double melee_crit_base (pet_e t, unsigned level) const
 
double spell_crit_base (pet_e t, unsigned level) const
 
double dodge_base (player_e t) const
 
double dodge_base (pet_e t) const
 
double resource_base (player_e t, unsigned level) const
 
double health_base (player_e t, unsigned level) const
 
const stat_data_tattribute_base (player_e t, unsigned level) const
 
const stat_data_tattribute_base (pet_e t, unsigned level) const
 
const stat_data_trace_base (race_e r) const
 
const stat_data_trace_base (pet_e t) const
 
double parry_factor (player_e t) const
 
double dodge_factor (player_e t) const
 
double miss_factor (player_e t) const
 
double block_factor (player_e t) const
 
double block_vertical_stretch (player_e t) const
 
double vertical_stretch (player_e t) const
 
double horizontal_shift (player_e t) const
 
double spell_scaling (player_e t, unsigned level) const
 
double melee_crit_scaling (player_e t, unsigned level) const
 
double melee_crit_scaling (pet_e t, unsigned level) const
 
double spell_crit_scaling (player_e t, unsigned level) const
 
double spell_crit_scaling (pet_e t, unsigned level) const
 
double health_per_stamina (unsigned level) const
 
double item_socket_cost (unsigned ilevel) const
 
double armor_mitigation_constant (unsigned level) const
 
double npc_armor_value (unsigned level) const
 
double combat_rating (unsigned combat_rating_id, unsigned level) const
 
int resolve_item_scaling (unsigned level) const
 
double resolve_level_scaling (unsigned level) const
 
double avoid_per_str_agi_by_level (unsigned level) const
 
unsigned real_ppm_scale (unsigned) const
 
double real_ppm_modifier (unsigned spell_id, player_t *player, unsigned item_level=0) const
 
const spell_data_tspell (unsigned spell_id) const
 
const spelleffect_data_teffect (unsigned effect_id) const
 
const spellpower_data_tpower (unsigned power_id) const
 
const talent_data_ttalent (unsigned talent_id) const
 
const dbc_item_data_titem (unsigned item_id) const
 
const item_enchantment_data_titem_enchantment (unsigned enchant_id) const
 
const item_name_description_titem_description (unsigned description_id) const
 
const gem_property_data_tgem_property (unsigned gem_id) const
 
const random_prop_data_trandom_property (unsigned ilevel) const
 
unsigned random_property_max_level () const
 
const item_damage_one_hand_data_titem_damage_1h (unsigned ilevel) const
 
const item_damage_two_hand_data_titem_damage_2h (unsigned ilevel) const
 
const item_damage_one_hand_caster_data_titem_damage_caster_1h (unsigned ilevel) const
 
const item_damage_two_hand_caster_data_titem_damage_caster_2h (unsigned ilevel) const
 
const item_armor_quality_data_titem_armor_quality (unsigned ilevel) const
 
const item_armor_shield_data_titem_armor_shield (unsigned ilevel) const
 
const item_armor_total_data_titem_armor_total (unsigned ilevel) const
 
const item_armor_location_data_titem_armor_inv_type (unsigned inv_type) const
 
util::span< const item_bonus_entry_titem_bonus (unsigned bonus_id) const
 
util::span< const item_effect_titem_effects (unsigned item_id) const
 
std::vector< const racial_spell_entry_t * > racial_spell (player_e c, race_e r) const
 
const spelltext_data_tspell_text (unsigned spell_id) const
 
const spelldesc_vars_data_tspell_desc_vars (unsigned spell_id) const
 
unsigned class_max_size () const
 
unsigned specialization_max_per_class () const
 
unsigned specialization_max_class () const
 
bool ability_specialization (uint32_t spell_id, std::vector< specialization_e > &spec_list) const
 
double weapon_dps (unsigned item_id, unsigned ilevel=0) const
 
double weapon_dps (const dbc_item_data_t &, unsigned ilevel=0) const
 
double effect_average (unsigned effect_id, unsigned level) const
 
double effect_average (const spelleffect_data_t *effect, unsigned level) const
 
double effect_delta (unsigned effect_id, unsigned level) const
 
double effect_delta (const spelleffect_data_t *effect, unsigned level) const
 
double effect_min (unsigned effect_id, unsigned level) const
 
double effect_min (const spelleffect_data_t *effect, unsigned level) const
 
double effect_max (unsigned effect_id, unsigned level) const
 
double effect_max (const spelleffect_data_t *effect, unsigned level) const
 
double effect_bonus (unsigned effect_id, unsigned level) const
 
double effect_bonus (const spelleffect_data_t *effect, unsigned level) const
 
unsigned talent_ability_id (player_e c, specialization_e spec_id, util::string_view spell_name, bool tokenized=false) const
 
unsigned class_ability_id (player_e c, specialization_e spec_id, util::string_view spell_name, bool tokenized=false) const
 
unsigned pet_ability_id (player_e c, util::string_view spell_name, bool tokenized=false) const
 
unsigned race_ability_id (player_e c, race_e r, util::string_view spell_name) const
 
unsigned specialization_ability_id (specialization_e spec_id, util::string_view spell_name, util::string_view spell_desc={}) const
 
unsigned mastery_ability_id (specialization_e spec) const
 
bool is_specialization_ability (uint32_t spell_id) const
 
bool is_specialization_ability (specialization_e spec_id, unsigned spell_id) const
 
specialization_e spec_by_spell (uint32_t spell_id) const
 
unsigned replace_spell_id (unsigned spell_id) const
 
bool spec_idx (specialization_e spec_id, uint32_t &class_idx, uint32_t &spec_index) const
 
specialization_e spec_by_idx (const player_e c, unsigned idx) const
 
std::vector< const spell_data_t *> effect_affects_spells (unsigned, const spelleffect_data_t *) const
 
std::vector< const spelleffect_data_t *> effects_affecting_spell (const spell_data_t *) const
 
std::vector< const spelleffect_data_t * > effect_labels_affecting_spell (const spell_data_t *) const
 
std::vector< const spelleffect_data_t * > effect_labels_affecting_label (short label) const
 
std::vector< const spelleffect_data_t * > effect_categories_affecting_spell (const spell_data_t *) const
 
std::pair< const curve_point_t *, const curve_point_t * > curve_point (unsigned curve_id, double value) const
 
const azerite_power_entry_tazerite_power (unsigned power_id) const
 
const azerite_power_entry_tazerite_power (util::string_view name, bool tokenized=false) const
 
util::span< const azerite_power_entry_tazerite_powers () const
 
unsigned azerite_item_level (unsigned power_level) const
 
unsigned child_item (unsigned) const
 
unsigned parent_item (unsigned) const
 
util::span< const spell_data_t *const > spells_by_label (size_t label) const
 
util::span< const spell_data_t *const > spells_by_category (unsigned category) const
 

Public Attributes

bool ptr