SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
warlock::pets::demonology::random_demons::vicious_hellhound_t Struct Reference
Inheritance diagram for warlock::pets::demonology::random_demons::vicious_hellhound_t:
warlock::pets::warlock_simple_pet_t warlock::warlock_pet_t pet_t player_t actor_t noncopyable

Public Member Functions

 vicious_hellhound_t (warlock_t *)
 Wrathguard End. More...
 
void init_base_stats () override
 Initialize base variables from database or other sources. More...
 
void arise () override
 Player arises from the dead.
 
action_tcreate_action (util::string_view, util::string_view) override
 
- Public Member Functions inherited from warlock::pets::warlock_simple_pet_t
 warlock_simple_pet_t (warlock_t *, util::string_view, pet_e)
 
timespan_t available () const override
 
- Public Member Functions inherited from warlock::warlock_pet_t
 warlock_pet_t (warlock_t *, util::string_view, pet_e, bool=false)
 
void init_action_list () override
 
void create_buffs () override
 Create player buffs. More...
 
void schedule_ready (timespan_t=0_ms, bool=false) override
 Player is ready to perform another action.
 
double composite_player_multiplier (school_e) const override
 
double composite_player_target_multiplier (player_t *, school_e) const override
 
void init_special_effects () override
 
const warlock_pet_td_tfind_target_data (const player_t *target) const override
 
warlock_pet_td_tget_target_data (player_t *target) const override
 
resource_e primary_resource () const override
 
warlock_to ()
 
const warlock_to () const
 
- Public Member Functions inherited from pet_t
 pet_t (sim_t *sim, player_t *owner, util::string_view name, bool guardian=false, bool dynamic=false)
 
 pet_t (sim_t *sim, player_t *owner, util::string_view name, pet_e pet_type, bool guardian=false, bool dynamic=false)
 
void create_options () override
 Specialize pet "player-scope" options. More...
 
void create_buffs () override
 Create pet buffs. More...
 
void init () override
 
void init_base_stats () override
 Initialize base variables from database or other sources. More...
 
void init_target () override
 
void init_finished () override
 
void reset () override
 Reset player. More...
 
void assess_damage (school_e, result_amount_type, action_state_t *s) override
 
virtual void summon (timespan_t duration=timespan_t::zero())
 
virtual void dismiss (bool expired=false)
 
virtual void adjust_duration (timespan_t adjustment)
 
const char * name () const override
 
const player_tget_owner_or_self () const override
 Returns owner if available, otherwise the player itself.
 
const spell_data_tfind_pet_spell (util::string_view name)
 
double composite_attribute (attribute_e attr) const override
 
double composite_player_multiplier (school_e) const override
 
double composite_player_target_multiplier (player_t *, school_e) const override
 
double hit_exp () const
 
double composite_movement_speed () const override
 Return the combined (passive+temporary) movement speed. More...
 
double composite_melee_expertise (const weapon_t *) const override
 
double composite_melee_hit () const override
 
double composite_spell_hit () const override
 
double pet_crit () const
 
double composite_melee_crit_chance () const override
 
double composite_spell_crit_chance () const override
 
double composite_melee_speed () const override
 
double composite_melee_haste () const override
 
double composite_spell_haste () const override
 This is the subset of the old_spell_haste that applies to RPPM.
 
double composite_spell_speed () const override
 This is the old spell_haste and incorporates everything that buffs cast speed.
 
double composite_bonus_armor () const override
 
double composite_damage_versatility () const override
 
double composite_heal_versatility () const override
 
double composite_mitigation_versatility () const override
 
double composite_melee_attack_power () const override
 
double composite_spell_power (school_e school) const override
 
double composite_player_critical_damage_multiplier (const action_state_t *s) const override
 
double composite_dodge () const override
 
double composite_parry () const override
 
double composite_armor () const override
 
void init_resources (bool force) override
 
bool requires_data_collection () const override
 
timespan_t composite_active_time () const override
 Total activity time for this actor during the iteration.
 
void acquire_target (retarget_source, player_t *=nullptr) override
 Poor man's targeting support. More...
 
void demise () override
 Player dies.
 
- Public Member Functions inherited from player_t
void sequence_add (const action_t *a, const player_t *target, timespan_t ts)
 
void sequence_add_wait (timespan_t amount, timespan_t ts)
 
 player_t (sim_t *sim, player_e type, util::string_view name, race_e race_e)
 
const char * name () const override
 
void init_character_properties ()
 Initialize race, specialization, talents, professions.
 
double get_stat_value (stat_e)
 
void stat_gain (stat_e stat, double amount, gain_t *g=nullptr, action_t *a=nullptr, bool temporary=false)
 
void stat_loss (stat_e stat, double amount, gain_t *g=nullptr, action_t *a=nullptr, bool temporary=false)
 
void create_talents_numbers ()
 
void create_talents_armory ()
 
void create_talents_wowhead ()
 
void clear_action_priority_lists () const
 
void copy_action_priority_list (util::string_view old_list, util::string_view new_list)
 Replaces "old_list" action_priority_list data with "new_list" action_priority_list data.
 
void change_position (position_e)
 Change the player position ( fron/back, etc. More...
 
void register_resource_callback (resource_e resource, double value, resource_callback_function_t callback, bool use_pct, bool fire_once=true)
 Add a new resource callback, firing when a specified threshold for a resource is crossed. More...
 
bool add_action (util::string_view action, util::string_view options={}, util::string_view alist="default")
 Add action to action list. More...
 
bool add_action (const spell_data_t *s, util::string_view options={}, util::string_view alist="default")
 Add action to action list. More...
 
void add_option (std::unique_ptr< option_t > o)
 
void parse_talents_numbers (util::string_view talent_string)
 
bool parse_talents_armory (util::string_view talent_string)
 Old-style armory format for xx.battle.net / xx.battlenet.com.
 
bool parse_talents_armory2 (util::string_view talent_url)
 New armory format used in worldofwarcraft.com / www.wowchina.com.
 
void parse_temporary_enchants ()
 
bool is_moving () const
 
double composite_block_dr (double extra_block) const
 Helper function to calculate block value after diminishing returns.
 
bool is_pet () const
 
bool is_enemy () const
 
bool is_boss () const
 
bool is_add () const
 
bool is_sleeping () const
 
bool is_my_pet (const player_t *t) const
 
bool is_active () const
 Is the actor active currently.
 
bool in_gcd () const
 
bool recent_cast () const
 
bool dual_wield () const
 
bool has_shield_equipped () const
 
specialization_e specialization () const
 
const char * primary_tree_name () const
 
timespan_t total_reaction_time ()
 
double avg_item_level () const
 Get average item level the player is wearing.
 
double get_attribute (attribute_e a) const
 
double strength () const
 
double agility () const
 
double stamina () const
 
double intellect () const
 
double spirit () const
 
double mastery_coefficient () const
 
double get_player_distance (const player_t &) const
 
double get_ground_aoe_distance (const action_state_t &) const
 
double get_position_distance (double m=0, double v=0) const
 
double compute_incoming_damage (timespan_t interval) const
 
double compute_incoming_magic_damage (timespan_t interval) const
 
double calculate_time_to_bloodlust () const
 
slot_e parent_item_slot (const item_t &item) const
 
slot_e child_item_slot (const item_t &item) const
 
timespan_t cooldown_tolerance () const
 Actor-specific cooldown tolerance for queueable actions.
 
position_e position () const
 
pet_tcast_pet ()
 
const pet_tcast_pet () const
 
azerite_power_t find_azerite_spell (util::string_view name, bool tokenized=false) const
 
azerite_power_t find_azerite_spell (unsigned power_id) const
 
azerite_essence_t find_azerite_essence (util::string_view name, bool tokenized=false) const
 
azerite_essence_t find_azerite_essence (unsigned power_id) const
 
item_runeforge_t find_runeforge_legendary (util::string_view name, bool tokenized=false) const
 
conduit_data_t find_conduit_spell (util::string_view name) const
 
const spell_data_tfind_soulbind_spell (util::string_view name) const
 
const spell_data_tfind_covenant_spell (util::string_view name) const
 
const spell_data_tfind_racial_spell (util::string_view name, race_e r=RACE_NONE) const
 
const spell_data_tfind_class_spell (util::string_view name, specialization_e s=SPEC_NONE) const
 
const spell_data_tfind_rank_spell (util::string_view name, util::string_view rank, specialization_e s=SPEC_NONE) const
 
const spell_data_tfind_pet_spell (util::string_view name) const
 
const spell_data_tfind_talent_spell (util::string_view name, specialization_e s=SPEC_NONE, bool name_tokenized=false, bool check_validity=true) const
 Retrieves the Spell Data Associated with a given talent. More...
 
const spell_data_tfind_specialization_spell (util::string_view name, specialization_e s=SPEC_NONE) const
 
const spell_data_tfind_specialization_spell (util::string_view name, util::string_view desc, specialization_e s=SPEC_NONE) const
 
const spell_data_tfind_specialization_spell (unsigned spell_id, specialization_e s=SPEC_NONE) const
 
const spell_data_tfind_mastery_spell (specialization_e s) const
 
const spell_data_tfind_spell (util::string_view name, specialization_e s=SPEC_NONE) const
 Tries to find spell data by name. More...
 
const spell_data_tfind_spell (unsigned int id, specialization_e s) const
 
const spell_data_tfind_spell (unsigned int id) const
 
pet_tfind_pet (util::string_view name) const
 
item_tfind_item_by_name (util::string_view name)
 
item_tfind_item_by_id (unsigned id)
 
item_tfind_item_by_use_effect_name (util::string_view name)
 
action_tfind_action (util::string_view) const
 
cooldown_tfind_cooldown (util::string_view name) const
 
target_specific_cooldown_tfind_target_specific_cooldown (util::string_view name) const
 
dot_tfind_dot (util::string_view name, player_t *source) const
 
stats_tfind_stats (util::string_view name) const
 
gain_tfind_gain (util::string_view name) const
 
proc_tfind_proc (util::string_view name) const
 
benefit_tfind_benefit (util::string_view name) const
 
uptime_tfind_uptime (util::string_view name) const
 
sample_data_helper_tfind_sample_data (util::string_view name) const
 
action_priority_list_tfind_action_priority_list (util::string_view name) const
 
int find_action_id (util::string_view name) const
 
cooldown_tget_cooldown (util::string_view name, action_t *action=nullptr)
 
target_specific_cooldown_tget_target_specific_cooldown (util::string_view name, timespan_t duration=timespan_t::zero())
 
target_specific_cooldown_tget_target_specific_cooldown (cooldown_t &base_cooldown)
 
real_ppm_tget_rppm (util::string_view)
 
real_ppm_tget_rppm (util::string_view, const spell_data_t *data, const item_t *item=nullptr)
 
real_ppm_tget_rppm (util::string_view, double freq, double mod=1.0, unsigned s=RPPM_NONE)
 
shuffled_rng_tget_shuffled_rng (util::string_view name, int success_entries=0, int total_entries=0)
 
dot_tget_dot (util::string_view name, player_t *source)
 
gain_tget_gain (util::string_view name)
 
proc_tget_proc (util::string_view name)
 
stats_tget_stats (util::string_view name, action_t *action=nullptr)
 
benefit_tget_benefit (util::string_view name)
 
uptime_tget_uptime (util::string_view name)
 
sample_data_helper_tget_sample_data (util::string_view name)
 
action_priority_list_tget_action_priority_list (util::string_view name, util::string_view comment={})
 
int get_action_id (util::string_view name)
 
cooldown_waste_data_tget_cooldown_waste_data (const cooldown_t *cd)
 
virtual void invalidate_cache (cache_e c)
 
virtual void override_talent (util::string_view override_str)
 
virtual void init_meta_gem ()
 
virtual std::vector< std::string > get_item_actions ()
 
virtual std::vector< std::string > get_profession_actions ()
 
virtual std::vector< std::string > get_racial_actions ()
 
virtual void init_race ()
 
virtual void init_talents ()
 
virtual void replace_spells ()
 
virtual void init_position ()
 
virtual void init_professions ()
 
virtual void init_spells ()
 
virtual void init_items ()
 
virtual void init_azerite ()
 Initializes the Azerite-related support structures for an actor if there are any. More...
 
virtual void init_weapon (weapon_t &)
 Initialize azerite-related support structures for the actor.
 
virtual void init_initial_stats ()
 Initialize initial stats from base + gear. More...
 
virtual void init_defense ()
 Initialize defensive properties (role, position, data collection, etc.)
 
virtual void create_special_effects ()
 
virtual void init_special_effect (special_effect_t &effect)
 Modify generic special effect initialization. More...
 
virtual void init_scaling ()
 
virtual void init_gains ()
 
virtual void init_procs ()
 
virtual void init_uptimes ()
 
virtual void init_benefits ()
 
virtual void init_rng ()
 
virtual void init_stats ()
 
virtual void init_distance_targeting ()
 
virtual void init_absorb_priority ()
 Define absorb priority. More...
 
virtual void init_assessors ()
 
virtual void init_background_actions ()
 
virtual void create_actions ()
 
virtual void init_actions ()
 
virtual void add_precombat_buff_state (buff_t *buff, int stacks, double value, timespan_t duration)
 
virtual void add_precombat_cooldown_state (cooldown_t *cd, timespan_t duration)
 
virtual void apply_affecting_auras (action_t &)
 Called in every action constructor for all actions constructred for a player.
 
virtual void action_init_finished (action_t &)
 
virtual bool verify_use_items () const
 Verify that the user input (APL) contains an use-item line for all on-use items.
 
virtual void combat_begin ()
 
virtual void combat_end ()
 
virtual void merge (player_t &other)
 Merge player data with player from other thread. More...
 
virtual void datacollection_begin ()
 Begin data collection for statistics.
 
virtual void datacollection_end ()
 End data collection for statistics.
 
virtual void actor_changed ()
 Single actor batch mode calls this every time the active (player) actor changes for all targets.
 
virtual void activate ()
 A method to "activate" an actor in the simulator. More...
 
virtual void deactivate ()
 
virtual int level () const
 Scaled player level. More...
 
virtual double resource_regen_per_second (resource_e) const
 
double apply_combat_rating_dr (rating_e rating, double value) const
 
virtual double composite_melee_attack_power_by_type (attack_power_type type) const
 
virtual double composite_melee_crit_chance_multiplier () const
 
virtual double composite_spell_crit_chance_multiplier () const
 
virtual double composite_mastery () const
 
virtual double composite_mastery_value () const
 
virtual double composite_leech () const
 
virtual double composite_run_speed () const
 
virtual double composite_avoidance () const
 
virtual double composite_corruption () const
 
virtual double composite_corruption_resistance () const
 
virtual double composite_total_corruption () const
 
virtual double composite_base_armor_multiplier () const
 
virtual double composite_armor_multiplier () const
 
virtual double composite_miss () const
 
virtual double composite_block () const
 Composite block chance. More...
 
virtual double composite_block_reduction (action_state_t *s) const
 
virtual double composite_crit_block () const
 
virtual double composite_crit_avoidance () const
 
virtual double composite_attack_power_multiplier () const
 
virtual double composite_spell_power_multiplier () const
 
virtual double matching_gear_multiplier (attribute_e) const
 
virtual double composite_player_dd_multiplier (school_e, const action_t *=nullptr) const
 
virtual double composite_player_td_multiplier (school_e, const action_t *a=nullptr) const
 
virtual double composite_persistent_multiplier (school_e) const
 Persistent multipliers that are snapshot at the beginning of the spell application/execution.
 
virtual double composite_player_heal_multiplier (const action_state_t *s) const
 
virtual double composite_player_dh_multiplier (school_e) const
 
virtual double composite_player_th_multiplier (school_e) const
 
virtual double composite_player_absorb_multiplier (const action_state_t *s) const
 
virtual double composite_player_pet_damage_multiplier (const action_state_t *, bool guardian) const
 
virtual double composite_player_target_pet_damage_multiplier (player_t *target, bool guardian) const
 
virtual double composite_player_target_crit_chance (player_t *target) const
 
virtual double composite_player_critical_healing_multiplier () const
 
virtual double composite_player_target_armor (player_t *target) const
 
virtual double composite_mitigation_multiplier (school_e) const
 
virtual double temporary_movement_modifier () const
 Return the highest-only temporary movement modifier. More...
 
virtual double passive_movement_modifier () const
 Return the sum of all passive movement modifier. More...
 
virtual double composite_attribute_multiplier (attribute_e attr) const
 
virtual double composite_rating_multiplier (rating_e) const
 
virtual double composite_rating (rating_e rating) const
 
virtual double composite_spell_hit_rating () const
 
virtual double composite_spell_crit_rating () const
 
virtual double composite_spell_haste_rating () const
 
virtual double composite_melee_hit_rating () const
 
virtual double composite_melee_crit_rating () const
 
virtual double composite_melee_haste_rating () const
 
virtual double composite_ranged_hit_rating () const
 
virtual double composite_ranged_crit_rating () const
 
virtual double composite_ranged_haste_rating () const
 
virtual double composite_mastery_rating () const
 
virtual double composite_expertise_rating () const
 
virtual double composite_dodge_rating () const
 
virtual double composite_parry_rating () const
 
virtual double composite_block_rating () const
 
virtual double composite_damage_versatility_rating () const
 
virtual double composite_heal_versatility_rating () const
 
virtual double composite_mitigation_versatility_rating () const
 
virtual double composite_leech_rating () const
 
virtual double composite_speed_rating () const
 
virtual double composite_avoidance_rating () const
 
virtual double composite_corruption_rating () const
 
virtual double composite_corruption_resistance_rating () const
 
virtual void interrupt ()
 Player is being interrupted.
 
virtual void halt ()
 
virtual void moving ()
 
virtual void finish_moving ()
 
virtual void stun ()
 
virtual void clear_debuffs ()
 
virtual void trigger_ready ()
 
virtual void schedule_off_gcd_ready (timespan_t delta_time=timespan_t::min())
 
virtual void schedule_cwc_ready (timespan_t delta_time=timespan_t::min())
 
virtual action_tselect_action (const action_priority_list_t &, execute_type type=execute_type::FOREGROUND, const action_t *context=nullptr)
 
virtual action_texecute_action ()
 
virtual void regen (timespan_t periodicity=timespan_t::from_seconds(0.25))
 
virtual double resource_gain (resource_e resource_type, double amount, gain_t *source=nullptr, action_t *action=nullptr)
 
virtual double resource_loss (resource_e resource_type, double amount, gain_t *source=nullptr, action_t *action=nullptr)
 
virtual void recalculate_resource_max (resource_e resource_type, gain_t *source=nullptr)
 
virtual bool resource_available (resource_e resource_type, double cost) const
 
virtual bool record_healing () const
 Figure out if healing should be recorded.
 
virtual role_e primary_role () const
 
virtual stat_e convert_hybrid_stat (stat_e s) const
 
virtual stat_e normalize_by () const
 Scale factor normalization stat. More...
 
virtual double health_percentage () const
 
virtual double max_health () const
 
virtual double current_health () const
 
virtual timespan_t time_to_percent (double percent) const
 
virtual void cost_reduction_gain (school_e school, double amount, gain_t *g=nullptr, action_t *a=nullptr)
 
virtual void cost_reduction_loss (school_e school, double amount, action_t *a=nullptr)
 
virtual void collect_resource_timeline_information ()
 
virtual void target_mitigation (school_e, result_amount_type, action_state_t *)
 
virtual void assess_damage_imminent_pre_absorb (school_e, result_amount_type, action_state_t *)
 
virtual void assess_damage_imminent (school_e, result_amount_type, action_state_t *)
 
virtual void do_damage (action_state_t *)
 
virtual void assess_heal (school_e, result_amount_type, action_state_t *)
 
virtual bool taunt (player_t *)
 
virtual void summon_pet (util::string_view name, timespan_t duration=timespan_t::zero())
 
virtual void dismiss_pet (util::string_view name)
 
virtual std::unique_ptr< expr_tcreate_expression (util::string_view expression_str)
 
virtual std::unique_ptr< expr_tcreate_action_expression (action_t &, util::string_view expression_str)
 Player specific action expressions. More...
 
virtual std::unique_ptr< expr_tcreate_resource_expression (util::string_view expression_str)
 
void recreate_talent_str (talent_format format=talent_format::NUMBERS)
 
virtual std::string create_profile (save_e=SAVE_ALL)
 
virtual void copy_from (player_t *source)
 
virtual void create_pets ()
 
virtual pet_tcreate_pet (util::string_view name, util::string_view type={})
 
virtual void armory_extensions (const std::string &, const std::string &, const std::string &, cache::behavior_e=cache::players())
 
virtual void do_dynamic_regen (bool forced=false)
 Perform dynamic resource regeneration. More...
 
player_tget_owner_or_self ()
 
virtual bool has_t18_class_trinket () const
 
virtual void pre_analyze_hook ()
 
virtual double composite_player_vulnerability (school_e) const
 
virtual void activate_action_list (action_priority_list_t *a, execute_type type=execute_type::FOREGROUND)
 Adds all on use item actions for all items with their on use effect not excluded in the exclude_effects string.
 
virtual void analyze (sim_t &)
 Analyze statistical data of a player.
 
scaling_metric_data_t scaling_for_metric (enum scale_metric_e metric) const
 Return the scaling metric over which this player gets scaled. More...
 
virtual action_tcreate_proc_action (util::string_view, const special_effect_t &)
 
rng::rng_trng ()
 
rng::rng_trng () const
 
virtual timespan_t time_to_move () const
 
virtual void trigger_movement (double distance, movement_direction_type)
 
virtual void update_movement (timespan_t duration)
 
virtual void teleport (double yards, timespan_t duration=timespan_t::zero())
 Instant teleport. More...
 
virtual movement_direction_type movement_direction () const
 
virtual void cancel_auto_attacks ()
 Cancel the main hand (and off hand, if applicable) swing timer.
 
virtual void reset_auto_attacks (timespan_t delay=timespan_t::zero(), proc_t *proc=nullptr)
 Reset the main hand (and off hand, if applicable) swing timer Optionally delay by a set amount.
 
virtual void delay_auto_attacks (timespan_t delay, proc_t *proc=nullptr)
 Delay the main hand (and off hand, if applicable) swing timer.
 
virtual std::string default_potion () const
 
virtual std::string default_flask () const
 
virtual std::string default_food () const
 
virtual std::string default_rune () const
 
virtual std::string default_temporary_enchant () const
 
virtual attack_power_type default_ap_type () const
 Default attack power type to use for value computation. More...
 
virtual void output_json_report (js::JsonOutput &) const
 
void add_active_dot (unsigned action_id)
 
void remove_active_dot (unsigned action_id)
 
unsigned get_active_dots (unsigned action_id) const
 
virtual void adjust_dynamic_cooldowns ()
 
virtual void adjust_global_cooldown (gcd_haste_type type)
 
virtual void adjust_auto_attack (gcd_haste_type type)
 
virtual void vision_of_perfection_proc ()
 8.2 Vision of Perfection proc handler More...
 
virtual player_tactor_by_name_str (util::string_view) const
 
void min_threshold_trigger ()
 Add a wake-up call at the next resource threshold level, compared to the current resource status of the actor.
 
void register_combat_begin (buff_t *b)
 Register a buff that triggers at the beginning of combat.
 
void register_precombat_begin (buff_t *b)
 Register a buff that triggers at the beginning of precombat.
 
void register_combat_begin (action_t *a)
 Register an action that triggers at the beginning of combat.
 
void register_combat_begin (const combat_begin_fn_t &fn)
 Register a custom function that triggers at the beginning of combat.
 
void register_precombat_begin (const combat_begin_fn_t &fn)
 Register a custom function that triggers at the beginning of precombat.
 
void register_combat_begin (double amount, resource_e resource, gain_t *g=nullptr)
 Register a resource gain that triggers at the beginning of combat.
 
void register_on_demise_callback (player_t *source, std::function< void(player_t *)> fn)
 
void register_on_arise_callback (player_t *source, std::function< void(void)> fn)
 
void register_on_kill_callback (std::function< void(player_t *)> fn)
 
void update_off_gcd_ready ()
 
void update_cast_while_casting_ready ()
 
spawner::base_actor_spawner_tfind_spawner (util::string_view id) const
 
int nth_iteration () const
 
bool is_ptr () const
 
- Public Member Functions inherited from actor_t
 actor_t (sim_t *s, util::string_view name)
 

Additional Inherited Members

- Public Types inherited from pet_t
using base_t = player_t
 
- Public Types inherited from player_t
enum  timeofday_e { NIGHT_TIME, DAY_TIME }
 
enum  zandalari_loa_e {
  AKUNDA, BWONSAMDI, GONK, KIMBUL,
  KRAGWA, PAKU
}
 
enum  vulpera_tricks_e {
  CORROSIVE, FLAMES, SHADOWS, HEALING,
  HOLY
}
 
using resource_callback_function_t = std::function< void()>
 
using combat_begin_fn_t = std::function< void(player_t *)>
 Start-of-combat effects.
 
- Static Public Member Functions inherited from player_t
static player_tcreate (sim_t *sim, const player_description_t &)
 
static bool _is_enemy (player_e t)
 
static bool _is_sleeping (const player_t *t)
 
- Public Attributes inherited from warlock::warlock_pet_t
action_tspecial_action
 
melee_attack_tmelee_attack
 
stats_tsummon_stats
 
struct warlock::warlock_pet_t::buffs_t buffs
 
bool is_main_pet = false
 
target_specific_t< warlock_pet_td_ttarget_data
 
- Public Attributes inherited from pet_t
std::string full_name_str
 
player_t *const owner
 
double stamina_per_owner
 
double intellect_per_owner
 
bool summoned
 
bool dynamic
 
bool affects_wod_legendary_ring
 
pet_e pet_type
 
event_texpiration
 
timespan_t duration
 
int npc_id
 
struct pet_t::owner_coefficients_t owner_coeff
 
- Public Attributes inherited from player_t
player_e type
 
player_tparent
 
int index
 
int creation_iteration
 
size_t actor_index
 
int actor_spawn_index
 
race_e race
 
role_e role
 
int true_level
 
int party
 
int ready_type
 
specialization_e _spec
 
bool bugs
 
int disable_hotfixes
 
bool scale_player
 
double death_pct
 
double height
 
double combat_reach
 
profile_source profile_source_
 
player_tdefault_target
 
player_ttarget
 
bool initialized
 
bool potion_used
 
std::string talents_str
 
std::string id_str
 
std::string target_str
 
std::string region_str
 
std::string server_str
 
std::string origin_str
 
std::string race_str
 
std::string professions_str
 
std::string position_str
 
enum player_t::timeofday_e timeofday
 
enum player_t::zandalari_loa_e zandalari_loa
 
enum player_t::vulpera_tricks_e vulpera_tricks
 
timespan_t gcd_ready
 
timespan_t base_gcd
 
timespan_t min_gcd
 
gcd_haste_type gcd_type
 
double gcd_current_haste_value
 
timespan_t started_waiting
 
std::vector< pet_t * > pet_list
 
std::vector< pet_t * > active_pets
 
std::vector< absorb_buff_t * > absorb_buff_list
 
std::map< unsigned, instant_absorb_tinstant_absorb_list
 
int invert_scaling
 
timespan_t reaction_offset
 
timespan_t reaction_max
 
timespan_t reaction_mean
 
timespan_t reaction_stddev
 
timespan_t reaction_nu
 
timespan_t world_lag
 
timespan_t world_lag_stddev
 
timespan_t brain_lag
 
timespan_t brain_lag_stddev
 
bool world_lag_override
 
bool world_lag_stddev_override
 
timespan_t cooldown_tolerance_
 
std::unique_ptr< dbc_tdbc
 
const dbc_override_tdbc_override
 
std::vector< std::unique_ptr< option_t > > options
 
std::vector< stat_e > stat_timelines
 
std::unique_ptr< player_talent_points_ttalent_points
 
std::string talent_overrides_str
 
std::array< int, PROFESSION_MAX > profession
 
std::unique_ptr< azerite::azerite_state_tazerite
 Azerite state object.
 
std::unique_ptr< azerite::azerite_essence_state_tazerite_essence
 Azerite essence state object.
 
std::unique_ptr< covenant::covenant_state_tcovenant
 Covenant state object.
 
struct player_t::base_initial_current_t base
 
struct player_t::base_initial_current_t initial
 
struct player_t::base_initial_current_t current
 
rating_t passive_rating_multiplier
 Passive combat rating multipliers.
 
gear_stats_t passive
 
timespan_t last_cast
 
struct player_t::diminishing_returns_constants_t def_dr
 
weapon_t main_hand_weapon
 
weapon_t off_hand_weapon
 
attack_tmain_hand_attack
 
attack_toff_hand_attack
 
double current_attack_speed
 
player_resources_t resources
 
action_texecuting
 
action_tqueueing
 
action_tchanneling
 
action_tstrict_sequence
 
event_treadying
 
event_toff_gcd
 
event_tcast_while_casting_poll_event
 
std::vector< const cooldown_t * > off_gcd_cd
 
std::vector< const cooldown_t * > off_gcd_icd
 
std::vector< const cooldown_t * > cast_while_casting_cd
 
std::vector< const cooldown_t * > cast_while_casting_icd
 
timespan_t off_gcd_ready
 
timespan_t cast_while_casting_ready
 
bool in_combat
 
bool action_queued
 
bool first_cast
 
action_tlast_foreground_action
 
std::vector< action_t * > prev_gcd_actions
 
std::vector< action_t * > off_gcdactions
 
timespan_t cast_delay_reaction
 
timespan_t cast_delay_occurred
 
effect_callbacks_t callbacks
 
auto_dispose< std::vector< special_effect_t * > > special_effects
 
std::vector< std::pair< player_t *, std::function< void(player_t *)> > > callbacks_on_demise
 
std::vector< std::pair< player_t *, std::function< void(void)> > > callbacks_on_arise
 
std::vector< std::function< void(player_t *)> > callbacks_on_kill
 
auto_dispose< std::vector< action_t * > > action_list
 
std::set< action_t * > dynamic_target_action_list
 Actions that have an action-specific dynamic targeting.
 
std::string action_list_str
 
std::string choose_action_list
 
std::string action_list_skip
 
std::string modify_action
 
std::string use_apl
 
bool use_default_action_list
 
auto_dispose< std::vector< dot_t * > > dot_list
 
auto_dispose< std::vector< action_priority_list_t * > > action_priority_list
 
std::vector< action_t * > precombat_action_list
 
action_priority_list_tactive_action_list
 
action_priority_list_tdefault_action_list
 
action_priority_list_tactive_off_gcd_list
 
action_priority_list_tactive_cast_while_casting_list
 
action_priority_list_trestore_action_list
 
std::unordered_map< std::string, std::string > alist_map
 
std::string action_list_information
 
bool no_action_list_provided
 
std::unordered_map< std::string, std::string > apl_variable_map
 
std::unordered_map< std::string, std::string > precombat_state_map
 
bool quiet
 
std::unique_ptr< player_report_extension_treport_extension
 
timespan_t arise_time
 
timespan_t iteration_fight_length
 
timespan_t iteration_waiting_time
 
timespan_t iteration_pooling_time
 
int iteration_executed_foreground_actions
 
std::array< double, RESOURCE_MAX > iteration_resource_lost
 
std::array< double, RESOURCE_MAX > iteration_resource_gained
 
std::array< double, RESOURCE_MAX > iteration_resource_overflowed
 
double rps_gain
 
double rps_loss
 
std::string tmi_debug_file_str
 
double tmi_window
 
auto_dispose< std::vector< buff_t * > > buff_list
 
auto_dispose< std::vector< proc_t * > > proc_list
 
auto_dispose< std::vector< gain_t * > > gain_list
 
auto_dispose< std::vector< stats_t * > > stats_list
 
auto_dispose< std::vector< benefit_t * > > benefit_list
 
auto_dispose< std::vector< uptime_t * > > uptime_list
 
auto_dispose< std::vector< cooldown_t * > > cooldown_list
 
auto_dispose< std::vector< target_specific_cooldown_t * > > target_specific_cooldown_list
 
auto_dispose< std::vector< real_ppm_t * > > rppm_list
 
auto_dispose< std::vector< shuffled_rng_t * > > shuffled_rng_list
 
std::vector< cooldown_t * > dynamic_cooldown_list
 
std::array< std::vector< plot_data_t >, STAT_MAX > dps_plot_data
 
std::vector< std::vector< plot_data_t > > reforge_plot_data
 
auto_dispose< std::vector< sample_data_helper_t * > > sample_data_list
 
std::vector< std::unique_ptr< cooldown_waste_data_t > > cooldown_waste_data_list
 
player_collected_data_t collected_data
 
double iteration_dmg
 
double priority_iteration_dmg
 
double iteration_dmg_taken
 
double dpr
 
std::vector< incoming_damage_entry_tincoming_damage
 
double iteration_heal
 
double iteration_heal_taken
 
double iteration_absorb
 
double iteration_absorb_taken
 
double hpr
 
std::vector< unsigned > absorb_priority
 
player_processed_report_information_t report_information
 
std::string items_str
 
std::string meta_gem_str
 
std::string potion_str
 
std::string flask_str
 
std::string food_str
 
std::string rune_str
 
std::string temporary_enchant_str
 
std::vector< item_titems
 
gear_stats_t gear
 
gear_stats_t enchant
 
gear_stats_t total_gear
 
std::unique_ptr< set_bonus_tsets
 
meta_gem_e meta_gem
 
bool matching_gear
 
bool karazhan_trinkets_paired
 
std::unique_ptr< cooldown_titem_cooldown
 
timespan_t default_item_group_cooldown
 
cooldown_tlegendary_tank_cloak_cd
 
double warlords_unseeing_eye
 
stats_twarlords_unseeing_eye_stats
 
double auto_attack_modifier
 
double auto_attack_multiplier
 
std::unique_ptr< player_scaling_tscaling
 
double base_movement_speed
 
double passive_modifier
 
double x_position
 
double y_position
 
double default_x_position
 
double default_y_position
 
struct player_t::consumables_t consumables
 
struct player_t::buffs_t buffs
 
struct player_t::debuffs_t debuffs
 
struct player_t::external_buffs_t external_buffs
 
struct player_t::gains_t gains
 
struct player_t::spells_t spells
 
struct player_t::procs_t procs
 
struct player_t::uptimes_t uptimes
 
struct player_t::racials_t racials
 
struct player_t::antumbra_t antumbra
 
struct player_t::passives_t passive_values
 
bool active_during_iteration
 
const spelleffect_data_t_mastery
 
player_stat_cache_t cache
 
auto_dispose< std::vector< action_variable_t * > > variables
 
std::vector< std::string > action_map
 
regen_type resource_regeneration
 
timespan_t last_regen
 Last iteration time regeneration occurred. Set at player_t::arise()
 
std::vector< bool > regen_caches
 A list of CACHE_x enumerations (stats) that affect the resource regeneration of the actor.
 
bool dynamic_regen_pets
 Flag to indicate if any pets require dynamic regneration. Initialized in player_t::init().
 
uint64_t visited_apls_
 Visited action lists, needed for call_action_list support. Reset by player_t::execute_action().
 
unsigned action_list_id_
 Internal counter for action priority lists, used to set action_priority_list_t::internal_id for lists.
 
execute_type current_execute_type
 Current execution type.
 
struct player_t::shadowlands_opt_t shadowlands_opts
 
event_tresource_threshold_trigger
 
std::vector< double > resource_thresholds
 
assessor::state_assessor_pipeline_t assessor_out_damage
 
std::vector< combat_begin_fn_tcombat_begin_functions
 
std::vector< combat_begin_fn_tprecombat_begin_functions
 
std::vector< spawner::base_actor_spawner_t * > spawners
 
- Public Attributes inherited from actor_t
sim_tsim
 
spawner::base_actor_spawner_tspawner
 
std::string name_str
 
int event_counter
 
- Static Public Attributes inherited from player_t
static const int default_level = 60
 
- Protected Attributes inherited from warlock::pets::warlock_simple_pet_t
action_tspecial_ability
 

Constructor & Destructor Documentation

◆ vicious_hellhound_t()

warlock::pets::demonology::random_demons::vicious_hellhound_t::vicious_hellhound_t ( warlock_t owner)

Wrathguard End.

Vicious Hellhound Begin

Member Function Documentation

◆ init_base_stats()

void warlock::pets::demonology::random_demons::vicious_hellhound_t::init_base_stats ( )
overridevirtual

Initialize base variables from database or other sources.

After player_t::init_base is executed, you can modify the base member until init_initial is called

Reimplemented from warlock::warlock_pet_t.