Damage calculator
Gen 9 Damage Calculator
This module defines a gen9 damage calculator
- poke_env.calc.damage_calc_gen9.calculate_atk_mods(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle)
- poke_env.calc.damage_calc_gen9.calculate_attack(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, is_critical: bool = False)
- poke_env.calc.damage_calc_gen9.calculate_base_damage(attacker_identifier: str, defender_identifier: str, base_power: float, attack: float, defense: float, move: Move, move_type: PokemonType | None, move_target: Target, battle: Battle | DoubleBattle, is_critical: bool = False)
- poke_env.calc.damage_calc_gen9.calculate_base_power(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, has_ate_ability_type_change: bool)
- poke_env.calc.damage_calc_gen9.calculate_base_power_mods(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, base_power: float, has_ate_ability_type_change: bool, attacker_first: bool)
- poke_env.calc.damage_calc_gen9.calculate_damage(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, is_critical: bool = False)
Return the possible damage range for a move.
- Parameters:
attacker_identifier (str) – Identifier of the attacking Pokémon.
defender_identifier (str) – Identifier of the defending Pokémon.
move (Move) – Move being used.
battle (Battle or DoubleBattle) – Current battle object containing both Pokémon.
is_critical (bool) – Whether to compute damage for a critical hit.
- Returns:
Tuple of minimum and maximum damage rolls.
- Return type:
Notes that several edge cases are ignored and behaviour may deviate from the official damage calculator.
- poke_env.calc.damage_calc_gen9.calculate_def_mods(attacker_identifier: str, defender_identifier: str, battle: Battle | DoubleBattle, hits_physical: bool = False)
- poke_env.calc.damage_calc_gen9.calculate_defense(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, is_critical: bool = False)
- poke_env.calc.damage_calc_gen9.calculate_final_mods(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, type_effectiveness: float, flags: Dict[str, int], is_critical: bool = False, hit_count: int = 0)
- poke_env.calc.damage_calc_gen9.get_berry_resist_type(berry: str) PokemonType | None
- poke_env.calc.damage_calc_gen9.get_final_damage(base_amount: int, i: int, effectiveness: float, is_burned: bool, stab_mod: int, final_mod: int) float
- poke_env.calc.damage_calc_gen9.get_item_boost_type(item: str) PokemonType | None
- poke_env.calc.damage_calc_gen9.get_move_effectiveness(move: Move, move_type: PokemonType, type: PokemonType, is_ghost_revealed: bool | None = False, is_gravity: bool | None = False, is_ring_target: bool | None = False) float
- poke_env.calc.damage_calc_gen9.get_stab_mod(pokemon: Pokemon, move: Move, move_type: PokemonType | None)
Gen 1-2 Damage Calculator
This module defines a gen1-2 damage calculator
- poke_env.calc.damage_calc_gen1_2.calculate_damage_gen12(attacker_identifier: str, defender_identifier: str, move: Move, battle: Battle | DoubleBattle, is_critical: bool = False)
Return the possible damage range for a move.
- Parameters:
attacker_identifier (str) – Identifier of the attacking Pokémon.
defender_identifier (str) – Identifier of the defending Pokémon.
move (Move) – Move being used.
battle (Battle or DoubleBattle) – Current battle object containing both Pokémon.
is_critical (bool) – Whether to compute damage for a critical hit.
- Returns:
Tuple of minimum, maximum, and complete list of damage rolls.
- Return type: