• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Battle] [Pokered] How to remove the badge boost?

  • 14
    Posts
    11
    Years
    • Seen Jan 1, 2025
    I'd like to remove badge boosts from Pokered. How do I do this?

    At first it seemed easy with core.asm, where it seems I could just remove a call ApplyBadgeStatBoosts function and the entire function itself. The problem is that in effects.asm the function's also used for .applyBadgeBoostsAndStatusPenalties and it's a bit too complicated for me to see what I can do with it there without messing up the rest.

    1 thing I'm wondering is if I could succesfully remove all badge boosts by, in ApplyBadgeStatBoosts in core.asm, editing ( ret z ; return if link battle ) to ( ret nz ; return if link battle ). Would that make the ApplyBadgeStatBoosts function in a regular battle like it does in a link battle, and invalidate all badge boosts as a result? Or would that do the opposite (applying badge boosts to link battles)?
     
    1 thing I'm wondering is if I could succesfully remove all badge boosts by, in ApplyBadgeStatBoosts in core.asm, editing ( ret z ; return if link battle ) to ( ret nz ; return if link battle ). Would that make the ApplyBadgeStatBoosts function in a regular battle like it does in a link battle, and invalidate all badge boosts as a result? Or would that do the opposite (applying badge boosts to link battles)?

    Yes, changing the condition of ret to its opposite will make it return in the opposite situation (=badge boosts only in link battles). To completely remove them you would use the unconditional "ret" instruction.
    But if you do that, the ApplyBadgeStatBoosts is no longer doing anything and you might as well remove the whole function and all calls to it.
     
    Ah, so I can just turn it into ret and all calls to badge boosts do nothing. Thanks, I'll go for that then, I'm not experienced enough to mess with the code, if I can just keep the code intact but it simply adds no stat whatsoever, that's mission accomplished for me and I don't care it's making some useless calculations in the back.

    So, just to double-check if this looks right, I changed ret z in the "return if link battle" commented line to ret and I now have this for the first part of the ApplyBadgeStatBoosts function which should disable the badge boost rather than enable it for non-link battles:

    ld a, [wLinkState]
    cp LINK_STATE_BATTLING
    ret ; return if link battle (edit: always return)
    ld a, [wObtainedBadges]
    ld b, a
    ld hl, wBattleMonAttack
    ld c, $4
     
    Back
    Top