Miscellaneous fixes to configs and other values (#8662)

This commit is contained in:
amiosi 2026-01-03 11:34:30 -05:00 committed by GitHub
parent 7d291d9b01
commit c506d52d32
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 53 additions and 34 deletions

View File

@ -36,7 +36,7 @@
#define B_SPORT_DMG_REDUCTION GEN_LATEST // In Gen5+, Water/Mud Sport reduce Fire/Electric Damage by 67% instead of 50%.
#define B_EXPLOSION_DEFENSE GEN_LATEST // In Gen5+, Self-Destruct and Explosion don't halve the targets' defense.
#define B_PARENTAL_BOND_DMG GEN_LATEST // In Gen7+, Parental Bond's second hit does 25% of the initial hits damage. Before, it did 50%.
#define B_MULTIPLE_TARGETS_DMG GEN_LATEST // In Gen4+, damage dealt by moves that hit multiple targets at once is reduced to 75%. Before, it was 50%.
#define B_MULTIPLE_TARGETS_DMG GEN_LATEST // In Gen4+, damage dealt by moves that hit multiple targets at once is reduced to 75%. In Gen3, it was 50%, unless the move hit the entire field, in which case there was no reduction.
// Type settings
#define B_GHOSTS_ESCAPE GEN_LATEST // In Gen6+, abilities like Shadow Tag or moves like Mean Look fail on Ghost-type Pokémon. They can also escape any Wild Battle.
@ -54,18 +54,18 @@
#define B_UPROAR_IGNORE_SOUNDPROOF GEN_LATEST // In Gen5+, Uproar status ignores Soundproof.
#define B_DISABLE_TURNS GEN_LATEST // Disable's turns. See Cmd_disablelastusedattack.
#define B_TAILWIND_TURNS GEN_LATEST // In Gen5+, Tailwind lasts 4 turns instead of 3.
#define B_SLEEP_TURNS GEN_LATEST // In Gen5+, sleep lasts for 1-3 turns instead of 2-5 turns.
#define B_SLEEP_TURNS GEN_LATEST // In Gen5+, sleep lasts for 2-4 turns instead of 2-5 turns.
#define B_TAUNT_TURNS GEN_LATEST // In Gen5+, Taunt lasts 3 turns if the user acts before the target, or 4 turns if the target acted before the user. In Gen3, taunt lasts 2 turns and in Gen 4, 3-5 turns.
#define B_SPORT_TURNS GEN_LATEST // In Gen6+, Water/Mud Sport last 5 turns, even if the user switches out.
#define B_MEGA_EVO_TURN_ORDER GEN_LATEST // In Gen7, a Pokémon's Speed after Mega Evolution is used to determine turn order, not its Speed before.
#define B_RECALC_TURN_AFTER_ACTIONS GEN_LATEST // In Gen8, switching/using a move affects the current turn's order of actions, better known as dynamic speed.
#define B_RECALC_TURN_AFTER_ACTIONS GEN_LATEST // In Gen8+, switching/using a move affects the current turn's order of actions, better known as dynamic speed.
#define B_FAINT_SWITCH_IN GEN_LATEST // In Gen4+, sending out a new Pokémon after the previous one fainted happens at the end of the turn. Before, it would happen after each action.
// Move data settings
#define B_UPDATED_MOVE_DATA GEN_LATEST // Updates move data in gMovesInfo, including Power, Accuracy, PP, stat changes, targets and chances of secondary effects.
#define B_UPDATED_MOVE_TYPES GEN_LATEST // Updates move types.
#define B_UPDATED_MOVE_FLAGS GEN_LATEST // Updates move flags.
#define B_PHYSICAL_SPECIAL_SPLIT GEN_LATEST // In Gen3, the move's type determines if it will do physical or special damage. The split icon in the summary will reflect this.
#define B_PHYSICAL_SPECIAL_SPLIT GEN_LATEST // In Gens1-3, the move's type determines if it will do physical or special damage. The split icon in the summary will reflect this.
#define B_RECOIL_IF_MISS_DMG GEN_LATEST // In Gen5+, Jump Kick and High Jump Kick will always do half of the user's max HP when missing.
#define B_KLUTZ_FLING_INTERACTION GEN_LATEST // In Gen5+, Pokémon with the Klutz ability can't use Fling.
#define B_UPDATED_CONVERSION GEN_LATEST // In Gen6+, Conversion changes the user's type to match their first move's. Before, it would choose a move at random.
@ -85,7 +85,7 @@
// Move stat change settings
#define B_FELL_STINGER_STAT_RAISE GEN_LATEST // In Gen7+, it raises Atk by 3 stages instead of 2 if it causes the target to faint.
#define B_KINGS_SHIELD_LOWER_ATK GEN_LATEST // In Gen8+, it lowers Atk by 1 stage instead of 2 of opponents that hit it.
#define B_SPEED_BUFFING_RAPID_SPIN GEN_LATEST // In Gen8, Rapid Spin raises the user's Speed by 1 stage.
#define B_SPEED_BUFFING_RAPID_SPIN GEN_LATEST // In Gen8+, Rapid Spin raises the user's Speed by 1 stage.
#define B_CHARGE_SPDEF_RAISE GEN_LATEST // In Gen5+, Charge raises the user's Special Defense by 1 stage.
#define B_MINIMIZE_EVASION GEN_LATEST // In Gen5+, Minimize raises evasion by 2 stages instead of 1.
#define B_GROWTH_STAT_RAISE GEN_LATEST // In Gen5+, Growth raises Attack in addition to Special Attack by 1 stage each. Under the effects of the sun, it raises them by 2 stages each instead.
@ -118,11 +118,11 @@
#define B_WIDE_GUARD GEN_LATEST // In Gen5 only, Wide Guard has a chance to fail if used consecutively.
#define B_QUICK_GUARD GEN_LATEST // In Gen5 only, Quick Guard has a chance to fail if used consecutively.
#define B_IMPRISON GEN_LATEST // In Gen5+, Imprison doesn't fail if opposing pokemon don't have any moves the user knows.
#define B_ALLY_SWITCH_FAIL_CHANCE GEN_LATEST // In Gen9, using Ally Switch consecutively decreases the chance of success for each consecutive use.
#define B_ALLY_SWITCH_FAIL_CHANCE GEN_LATEST // In Gen9+, using Ally Switch consecutively decreases the chance of success for each consecutive use.
#define B_SKETCH_BANS GEN_LATEST // In Gen9+, Sketch is unable to copy more moves than in previous generations.
#define B_KNOCK_OFF_REMOVAL GEN_LATEST // In Gen5+, Knock Off removes the foe's item instead of rendering it unusable.
#define B_HEAL_BELL_SOUNDPROOF GEN_LATEST // In Gen5, Heal Bell affects all mons with Soundproof. In Gen6-8 it affects inactive mons, but not battlers. In Gen9 it always affects the user.
#define B_CHARGE GEN_LATEST // In Gen8-, Charge status is lost regardless of the typing of the next move.
#define B_CHARGE GEN_LATEST // In Gens3-7, Charge status is lost regardless of the typing of the next move.
#define B_POWDER_RAIN GEN_LATEST // In Gen7+, Powder doesn't damage the user of a Fire type move in heavy rain.
#define B_AFTER_YOU_TURN_ORDER GEN_LATEST // In Gen8+, After You doesn't fail if the turn order wouldn't change after use.
#define B_QUASH_TURN_ORDER GEN_LATEST // In Gen8+, Quash-affected battlers move according to speed order. Before Gen8, Quash-affected battlers move in the order they were affected by Quash.
@ -139,10 +139,10 @@
#define B_GALE_WINGS GEN_LATEST // In Gen7+ requires full HP to trigger.
#define B_STANCE_CHANGE_FAIL GEN_LATEST // In Gen7+, Stance Change fails if the Pokémon is unable to use a move because of confusion, paralysis, etc. In Gen6, it doesn't.
#define B_SHADOW_TAG_ESCAPE GEN_LATEST // In Gen4+, if both sides have a Pokémon with Shadow Tag, all battlers can escape. Before, neither side could escape this situation.
#define B_MOODY_ACC_EVASION GEN_LATEST // In Gen8, Moody CANNOT raise Accuracy and Evasion anymore.
#define B_MOODY_ACC_EVASION GEN_LATEST // In Gen8+, Moody CANNOT raise Accuracy and Evasion anymore.
#define B_FLASH_FIRE_FROZEN GEN_LATEST // In Gen5+, Flash Fire can trigger even when frozen, when it couldn't before.
#define B_SYNCHRONIZE_TOXIC GEN_LATEST // In Gen5+, if a Pokémon with Synchronize is badly poisoned, the opponent will also become badly poisoned. Previously, the opponent would become regular poisoned.
#define B_UPDATED_INTIMIDATE GEN_LATEST // In Gen8, Intimidate doesn't work on opponents with the Inner Focus, Scrappy, Own Tempo or Oblivious abilities. It also activates Rattled.
#define B_UPDATED_INTIMIDATE GEN_LATEST // In Gen8+, Intimidate doesn't work on opponents with the Inner Focus, Scrappy, Own Tempo or Oblivious abilities. It also activates Rattled.
#define B_OBLIVIOUS_TAUNT GEN_LATEST // In Gen6+, Pokémon with Oblivious can't be taunted.
#define B_STURDY GEN_LATEST // In Gen5+, Sturdy causes the Pokémon to have 1 HP remaining if another Pokémon's attack or confusion damage would have brought it from full health to 0 HP.
#define B_PLUS_MINUS_INTERACTION GEN_LATEST // In Gen5+, Plus and Minus can be activated with themselves and the opposite ability. Before, only the opposing ability could activate it.
@ -170,13 +170,13 @@
#define B_POWDER_OVERCOAT GEN_LATEST // In Gen6+, Overcoat blocks powder and spore moves from affecting the user.
// Item settings
#define B_CONFUSE_BERRIES_HEAL GEN_LATEST // Before Gen7, Figy and similar berries restore 1/8th of HP and trigger at half HP. In Gen7 they restore half HP, triggering at 25% HP. In Gen8 they heal 1/3rd of HP.
#define B_CONFUSE_BERRIES_HEAL GEN_LATEST // In Gens3-6, Figy and similar berries restore 1/8th of HP and trigger at half HP. In Gen7 they restore half HP, triggering at 25% HP. In Gen8 they heal 1/3rd of HP.
#define B_X_ITEMS_BUFF GEN_LATEST // In Gen7+, the X Items raise a stat by 2 stages instead of 1.
#define B_MENTAL_HERB GEN_LATEST // In Gen5+, the Mental Herb cures Taunt, Encore, Torment, Heal Block, and Disable in addition to Infatuation from before.
#define B_TRAINERS_KNOCK_OFF_ITEMS TRUE // If TRUE, trainers can steal/swap your items (non-berries are restored after battle). In vanilla games trainers cannot steal items.
#define B_TRAINERS_KNOCK_OFF_ITEMS TRUE // If TRUE, trainers can steal/swap your items (non-berries are restored after battle). In vanilla games, trainers cannot steal items outside of facilities.
#define B_RETURN_STOLEN_NPC_ITEMS GEN_LATEST // In Gen5+, Thief and Covet no longer steal items from NPCs.
#define B_STEAL_WILD_ITEMS GEN_LATEST // In Gen9, Thief and Covet steal a wild pokemon's item and send it to the bag. Before Gen9, the stolen item would be held by the Thief/Covet user.
#define B_RESTORE_HELD_BATTLE_ITEMS GEN_LATEST // In Gen9, all non-berry items are restored after battle.
#define B_STEAL_WILD_ITEMS GEN_LATEST // In Gen9+, Thief and Covet steal a wild pokemon's item and send it to the bag. In Gens2-8, the stolen item would be held by the Thief/Covet user.
#define B_RESTORE_HELD_BATTLE_ITEMS GEN_LATEST // In Gen9+, all non-berry items are restored after battle.
#define B_SOUL_DEW_BOOST GEN_LATEST // In Gens3-6, Soul Dew boosts Latis' Sp. Atk and Sp. Def. In Gen7+ it boosts the power of their Psychic and Dragon type moves instead.
#define B_NET_BALL_MODIFIER GEN_LATEST // In Gen7+, Net Ball's catch multiplier is x5 instead of x3.
#define B_DIVE_BALL_MODIFIER GEN_LATEST // In Gen4+, Dive Ball's effectiveness increases by x3.5 when Surfing or Fishing.

View File

@ -1758,7 +1758,7 @@ static u32 GetSwitchinStatusDamage(u32 battler)
{
if (status & STATUS1_BURN)
{
if (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7)
if (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 || GetConfig(CONFIG_BURN_DAMAGE) == GEN_1)
statusDamage = maxHP / 16;
else
statusDamage = maxHP / 8;
@ -1769,7 +1769,7 @@ static u32 GetSwitchinStatusDamage(u32 battler)
}
else if (status & STATUS1_FROSTBITE)
{
if (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7)
if (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 || GetConfig(CONFIG_BURN_DAMAGE) == GEN_1)
statusDamage = maxHP / 16;
else
statusDamage = maxHP / 8;

View File

@ -531,7 +531,7 @@ static bool32 HandleEndTurnBurn(u32 battler)
&& IsBattlerAlive(battler)
&& !IsAbilityAndRecord(battler, ability, ABILITY_MAGIC_GUARD))
{
s32 burnDamage = GetNonDynamaxMaxHP(battler) / (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 ? 16 : 8);
s32 burnDamage = GetNonDynamaxMaxHP(battler) / ((GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 || GetConfig(CONFIG_BURN_DAMAGE) == GEN_1) ? 16 : 8);
if (ability == ABILITY_HEATPROOF)
{
if (burnDamage > (burnDamage / 2) + 1) // Record ability if the burn takes less damage than it normally would.
@ -556,7 +556,7 @@ static bool32 HandleEndTurnFrostbite(u32 battler)
&& IsBattlerAlive(battler)
&& !IsAbilityAndRecord(battler, GetBattlerAbility(battler), ABILITY_MAGIC_GUARD))
{
SetPassiveDamageAmount(battler, GetNonDynamaxMaxHP(battler) / (GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 ? 16 : 8));
SetPassiveDamageAmount(battler, GetNonDynamaxMaxHP(battler) / ((GetConfig(CONFIG_BURN_DAMAGE) >= GEN_7 || GetConfig(CONFIG_BURN_DAMAGE) == GEN_1) ? 16 : 8));
BattleScriptExecute(BattleScript_FrostbiteTurnDmg);
effect = TRUE;
}
@ -908,9 +908,11 @@ static bool32 HandleEndTurnYawn(u32 battler)
else
{
if (B_SLEEP_TURNS >= GEN_5)
gBattleMons[battler].status1 |= ((Random() % 3) + 2);
gBattleMons[battler].status1 |= (RandomUniform(RNG_SLEEP_TURNS, 2, 4));
else if (B_SLEEP_TURNS >= GEN_3)
gBattleMons[battler].status1 |= (RandomUniform(RNG_SLEEP_TURNS, 2, 5));
else
gBattleMons[battler].status1 |= ((Random() % 4) + 3);
gBattleMons[battler].status1 |= (RandomUniform(RNG_SLEEP_TURNS, 2, 8));
CancelMultiTurnMoves(battler, SKY_DROP_STATUS_YAWN);
TryActivateSleepClause(battler, gBattlerPartyIndexes[battler]);

View File

@ -361,7 +361,7 @@ const struct TrainerClass gTrainerClasses[TRAINER_CLASS_COUNT] =
[TRAINER_CLASS_YOUNG_COUPLE] = { _("YOUNG COUPLE"), 8 },
[TRAINER_CLASS_OLD_COUPLE] = { _("OLD COUPLE"), 10 },
[TRAINER_CLASS_SIS_AND_BRO] = { _("SIS AND BRO"), 3 },
[TRAINER_CLASS_SALON_MAIDEN] = { _("SALON MAIDEN"), 0, BALL_ULTRA },
[TRAINER_CLASS_SALON_MAIDEN] = { _("SALON MAIDEN"), 5, BALL_ULTRA },
[TRAINER_CLASS_DOME_ACE] = { _("DOME ACE") },
[TRAINER_CLASS_PALACE_MAVEN] = { _("PALACE MAVEN") },
[TRAINER_CLASS_ARENA_TYCOON] = { _("ARENA TYCOON") },

View File

@ -2952,9 +2952,11 @@ static void SetNonVolatileStatus(u32 effectBattler, enum MoveEffect effect, cons
{
case MOVE_EFFECT_SLEEP:
if (B_SLEEP_TURNS >= GEN_5)
gBattleMons[effectBattler].status1 |= STATUS1_SLEEP_TURN(1 + RandomUniform(RNG_SLEEP_TURNS, 1, 3));
gBattleMons[effectBattler].status1 |= STATUS1_SLEEP_TURN(RandomUniform(RNG_SLEEP_TURNS, 2, 4));
else if (B_SLEEP_TURNS >= GEN_3)
gBattleMons[effectBattler].status1 |= STATUS1_SLEEP_TURN(RandomUniform(RNG_SLEEP_TURNS, 2, 5));
else
gBattleMons[effectBattler].status1 |= STATUS1_SLEEP_TURN(1 + RandomUniform(RNG_SLEEP_TURNS, 2, 5));
gBattleMons[effectBattler].status1 |= STATUS1_SLEEP_TURN(RandomUniform(RNG_SLEEP_TURNS, 2, 8));
TryActivateSleepClause(effectBattler, gBattlerPartyIndexes[effectBattler]);
gBattlescriptCurrInstr = BattleScript_MoveEffectSleep;
break;
@ -13578,6 +13580,8 @@ static void Cmd_handleballthrow(void)
case BALL_SAFARI:
if (B_SAFARI_BALL_MODIFIER <= GEN_7)
ballMultiplier = 150;
else if (B_SAFARI_BALL_MODIFIER == GEN_1)
ballMultiplier = 200;
break;
case BALL_NET:
if (IS_BATTLER_ANY_TYPE(gBattlerTarget, TYPE_WATER, TYPE_BUG))

View File

@ -8523,8 +8523,20 @@ s32 DoFixedDamageMoveCalc(struct DamageContext *ctx)
dmg = gBattleMons[ctx->battlerAtk].level;
break;
case EFFECT_PSYWAVE:
randDamage = B_PSYWAVE_DMG >= GEN_5 ? (Random() % 101) : ((Random() % 11) * 10);
dmg = gBattleMons[ctx->battlerAtk].level * (randDamage + 50) / 100;
if (B_PSYWAVE_DMG >= GEN_5)
{
randDamage = Random() % 101;
dmg = gBattleMons[ctx->battlerAtk].level * (randDamage + 50) / 100;
}
else if (B_PSYWAVE_DMG >= GEN_3)
{
randDamage = Random() % 11;
dmg = gBattleMons[ctx->battlerAtk].level * ((randDamage * 10) + 50) / 100;
}
else
{
dmg = Random() % ((gBattleMons[ctx->battlerAtk].level + (gBattleMons[ctx->battlerAtk].level / 2)) + 1);
}
break;
case EFFECT_FIXED_HP_DAMAGE:
dmg = GetMoveFixedHPDamage(ctx->move);

View File

@ -3226,7 +3226,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.copycatBanned = TRUE,
.sleepTalkBanned = B_UPDATED_MOVE_FLAGS >= GEN_3,
.instructBanned = TRUE,
.encoreBanned = TRUE,
.encoreBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.assistBanned = TRUE,
.contestEffect = C_UPDATED_MOVE_EFFECTS >= GEN_6 ? CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING : CONTEST_EFFECT_REPETITION_NOT_BORING,
.contestCategory = CONTEST_CATEGORY_CUTE,
@ -5802,7 +5802,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.sleepTalkBanned = TRUE,
.instructBanned = TRUE,
.mimicBanned = TRUE,
.encoreBanned = TRUE,
.encoreBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.assistBanned = TRUE,
.contestEffect = C_UPDATED_MOVE_EFFECTS >= GEN_6 ? CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING : CONTEST_EFFECT_REPETITION_NOT_BORING,
.contestCategory = CONTEST_CATEGORY_CUTE,
@ -7208,7 +7208,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.copycatBanned = TRUE,
.sleepTalkBanned = TRUE,
.instructBanned = TRUE,
.encoreBanned = TRUE,
.encoreBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.assistBanned = B_UPDATED_MOVE_FLAGS >= GEN_6,
.mimicBanned = TRUE,
.contestEffect = CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED,
@ -7394,7 +7394,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.priority = 0,
.category = DAMAGE_CATEGORY_STATUS,
.ignoresProtect = TRUE,
.mirrorMoveBanned = TRUE,
.mirrorMoveBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.metronomeBanned = B_UPDATED_MOVE_FLAGS >= GEN_4,
.copycatBanned = TRUE,
.sleepTalkBanned = TRUE,
@ -8959,7 +8959,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.priority = 0,
.category = DAMAGE_CATEGORY_STATUS,
.zMove = { .effect = Z_EFFECT_DEF_UP_1 },
.ignoresProtect = B_UPDATED_MOVE_FLAGS >= GEN_6,
.ignoresProtect = (B_UPDATED_MOVE_FLAGS >= GEN_6 || B_UPDATED_MOVE_FLAGS < GEN_3),
.magicCoatAffected = TRUE,
.contestEffect = CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS,
.contestCategory = CONTEST_CATEGORY_CUTE,
@ -10127,7 +10127,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.copycatBanned = TRUE,
.sleepTalkBanned = TRUE,
.instructBanned = TRUE,
.encoreBanned = TRUE,
.encoreBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.assistBanned = TRUE,
.mimicBanned = TRUE,
.contestEffect = CONTEST_EFFECT_NEXT_APPEAL_EARLIER,
@ -10158,7 +10158,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.copycatBanned = TRUE,
.sleepTalkBanned = TRUE,
.instructBanned = TRUE,
.encoreBanned = TRUE,
.encoreBanned = (B_UPDATED_MOVE_FLAGS >= GEN_7 || B_UPDATED_MOVE_FLAGS < GEN_3),
.assistBanned = TRUE,
.mimicBanned = TRUE,
.contestEffect = CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE,
@ -11756,6 +11756,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] =
.sleepTalkBanned = TRUE,
.instructBanned = TRUE,
.assistBanned = TRUE,
.sketchBanned = TRUE,
.additionalEffects = ADDITIONAL_EFFECTS({
.moveEffect = MOVE_EFFECT_CONFUSION,
#if B_UPDATED_MOVE_DATA >= GEN_6

View File

@ -96,7 +96,7 @@ SINGLE_BATTLE_TEST("Dream Eater works if the target is behind a Substitute (Gen
{
s16 damage;
s16 healed;
KNOWN_FAILING;
KNOWN_FAILING; // Dream Eater can hit and drain from a Substitute, but not bypass it.
GIVEN {
ASSUME(GetMoveEffect(MOVE_YAWN) == EFFECT_YAWN);
ASSUME(GetMoveEffect(MOVE_SUBSTITUTE) == EFFECT_SUBSTITUTE);

View File

@ -126,6 +126,6 @@ SINGLE_BATTLE_TEST("(DYNAMAX) Dynamaxed Pokemon can be encored immediately after
TO_DO_BATTLE_TEST("Encore's effect ends if the encored move runs out of PP");
TO_DO_BATTLE_TEST("Encore lasts for 2-6 turns (Gen 2-3)");
TO_DO_BATTLE_TEST("Encore lasts for 4-8 turns (Gen 4)");
TO_DO_BATTLE_TEST("Encore lasts for 3-7 turns (Gen 4)");
TO_DO_BATTLE_TEST("Encore lasts for 3 turns (Gen 5+)");
TO_DO_BATTLE_TEST("Encore randomly chooses an opponent target");

View File

@ -7,7 +7,7 @@ ASSUMPTIONS
ASSUME(GetMoveNonVolatileStatus(MOVE_WILL_O_WISP) == MOVE_EFFECT_BURN);
}
SINGLE_BATTLE_TEST("Burn deals 1/8th damage (Gen1-6) or 1/16th (Gen7+) per turn")
SINGLE_BATTLE_TEST("Burn deals 1/8th damage (Gen2-6) or 1/16th (Gen1 and Gen7+) per turn")
{
u32 j, config, value;
PARAMETRIZE { config = GEN_7; value = 16; }