• 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.
  • Our friends from the Johto Times are hosting a favorite Pokémon poll - and we'd love for you to participate! Click here for information on how to vote for your favorites!
  • Scottie, Todd, Serena, Kris - which Pokémon protagonist is your favorite? Let us know by voting in our poll!
  • 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.

[ASM & Hex] It was possible to do?

AtecainCorp.

Rejishan awake...
  • 1,377
    Posts
    16
    Years
    I think about make separate palletes for SHINY ICONS when we get Shiny Pokemon. It was possible to do in GBA roms? I not asking in sense of same RUBY. But also for EMERALD
     
    I think about make separate palletes for SHINY ICONS when we get Shiny Pokemon. It was possible to do in GBA roms? I not asking in sense of same RUBY. But also for EMERALD

    I can't speak for the other ROMs, but in Firered when an Icon is loaded it evaluates PID to determine which unown letter to show. You can make a small hook there and evaluate shiny and use a different palette.
     
    I would love to know how to do this too, unfortunately I can't create my own ASM routines. Also, we would need to create all the shiny palettes.

    Something I did notice was when using Advanced Series Icon Editor, you can select a palette for the icon. None include the Pokemon's shiny version, but perhaps these can be edited and then a routine can be created for changing the icons to their shiny forms.
     
    Yeah there are a couple of tables.

    Here's data from the community hack header which you can look at:
    https://github.com/EternalCode/g3headers/blob/pokenav/include/pokeagb/pokemon/pokeicons.h

    The idea is there is a table with pal indexes 0-2, indexed by species. For a given species, the pal is going to be:
    index = pal_index_table[species]; // i.e the 3rd value would be for Venasaur
    pal = pal_table[index]

    So you just need to change how the game calculates this, expand the tables and load a different palette easily. Because Unowns exist, the game uses a special function that takes species and returns which pal to use.
     
    Back
    Top