• 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.

[Pokeemerald] [TUTORIAL] Replacing Overworlds and adding Unique Palettes

vxo

ROM Hacker
  • 65
    Posts
    7
    Years

    Replacing Overworlds and adding Unique Palettes

    Part I: Adding Dynamic Overworld Palette System

    Source: https://github.com/pret/pokeemerald/wiki/Dynamic-overworld-palette-system

    Notice: The current implementation breaks the reflection palette system, though for ease of adding new overworlds that should be adapted so it is dynamic as well, rather than requiring explicit reflection palettes.
    Notice: Depending on your version of Pokeemerald, the function sub_808E894() has been decompiled, so it could be called LoadEventObjectPalette()
    Notice: Where it states + or -, add or delete the entire line

    Spoiler:

    Part II: Replacing Overworlds and Adding Unique Palettes

    Source: https://github.com/pret/pokeemerald/wiki/Adding-new-overworlds

    Spoiler:


    Part III: Troubleshooting


    Spoiler:
     
    Last edited:
    Hey! This tut need to be modified a little...
    In here:
    {gEventObjectPalette_<PALETTE NAME>, EVENT_OBJ_PAL_<PALETTE NAME>},
    change this to {gEventObjectPalette_<NAME OF THE SPRITE YOU ARE MODIFYING>, EVENT_OBJ_PAL_<PALETTE NAME>},
    eg:
    {gObjectEventPalette_Youngster, OBJ_EVENT_PAL_youngsterhgss},
    here I was replacing a youngster sprite...
    and this:
    #define EVENT_OBJ_PAL_<PALETTE NAME> 0x<HEX NUMBER>
    to this:
    #define EVENT_OBJ_EVENT_PAL_<PALETTE NAME> 0x<HEX NUMBER>
    Credits Ryuusei Boy/Fubuki Shirou(I don't know his PC name.. it' the discord one!)
     
    Back
    Top