Skip to content
✏️

Suggest Improvements

Help improve (ID: ) - Spot errors or suggest better descriptions

Envenom Analysis

Extended In-Game Description

For use in Elite Redux extended ability UI (IMPORTANT: exactly 280-300 chars counted WITH spaces) "Moves have a 30% chance to poison the target."

Extended In-Game Description

When this Pokémon attacks and deals damage, there's a 30% chance to poison the target. The poisoning effect bypasses protective abilities like Safeguard but cannot affect targets that are already statused, immune to poison, or are Poison/Steel-type unless overridden by specific abilities.

Implementation Details

Code Location

  • File: /Users/joel/Github/eliteredux/eliteredux-source/src/abilities.cc
  • Lines: 8613-8621

Mechanics Analysis

Core Function

cpp
constexpr Ability Envenom = {
    .onAttacker = +[](ON_ATTACKER) -> int {
        CHECK(ShouldApplyOnHitAffect(target))
        CHECK(CanBePoisoned(battler, target, MOVE_NONE))
        CHECK(Random() % 100 < 30)

        return AbilityStatusEffect(MOVE_EFFECT_POISON);
    },
};

Activation Conditions

  1. ShouldApplyOnHitAffect(target): Basic check for hit-based effects
  2. CanBePoisoned(battler, target, MOVE_NONE): Comprehensive poison immunity check
  3. Random() % 100 < 30: 30% activation chance

Poison Immunity Checks

The CanBePoisoned function performs several checks:

  • Target must not already have a status condition
  • Checks for status immunity via IsStatusImmune(battlerTarget, CHECK_POISON)
  • Verifies type compatibility via CanPoisonType

Type Restrictions

From CanPoisonType function:

  • Poison-type Pokémon: Immune to poison
  • Steel-type Pokémon: Immune to poison
  • Exception: Certain abilities can override type immunity (e.g., abilities with onCanStatusType)

Effect Application

  • Uses AbilityStatusEffect(MOVE_EFFECT_POISON) to apply regular poison
  • Sets HITMARKER_IGNORE_SAFEGUARD flag, bypassing Safeguard protection
  • Applies standard poison damage (1/8 HP per turn)

Key Characteristics

Strengths

  • Reliable 30% chance on all damaging moves
  • Bypasses Safeguard ability
  • Works with any damaging move (contact or non-contact)
  • Can pressure bulky defensive Pokémon

Limitations

  • Cannot poison already statused targets
  • Ineffective against Poison and Steel types (unless overridden)
  • Blocked by poison immunity abilities
  • No effect on non-damaging moves

Strategic Applications

  • Excellent for wearing down walls and tanks
  • Synergizes well with moves that force switches
  • Particularly effective against defensive cores lacking Poison/Steel types
  • Can pressure healing-reliant strategies

Comparison to Similar Abilities

  • Poison Point: Only triggers on contact moves (30% chance)
  • Poison Touch: Only on contact moves (30% chance)
  • Toxic Spikes: Entry hazard, not move-based
  • Envenom: Works on ALL damaging moves, regardless of contact

Technical Notes

  • Poison applied is regular poison (1/8 HP), not badly poisoned
  • Effect triggers after damage calculation
  • Subject to standard poison duration and cure methods
  • Stacks with other status-inflicting effects if they occur first

Elite Redux Ability Codex