2022-09-11 14:14:49 -04:00
2022-01-22 19:41:31 -05:00
2019-04-07 19:18:42 -05:00
2023-03-05 17:17:39 -03:00
2023-01-14 21:05:10 -05:00
2023-05-15 18:37:38 -04:00
2023-06-08 21:07:07 -04:00
2022-01-22 19:37:46 -05:00
2022-09-11 14:14:49 -04:00
2021-11-15 00:21:40 -05:00

Pokémon Emerald

This is a fork of the matching decompilation at PRET.

This fork tries to maintain vanilla compatibility whenever possible. It doesn't increase the size of any save data structure or the object event structure.

There are several branches, each with one main feature (and sometimes some extra stuff):

followers branch:

  • HGSS-style pokémon followers for all 386 pokémon, including emotes, the 28 Unown forms and a majority of follower messages.
  • Dynamic overworld palettes & reflections compatible with vanilla berry trees.
  • PID (but not legitimacy) preserving Pokémon nature-changing function
  • Function to detect modern emulators/GBA hardware.

icons branch:

  • Everything from the followers branch.
  • All pokemon icons updated to Gen 6, based on this repo
  • This includes compatibility with the PC, trade, contests, mail, Battle Dome. Examples: PC Party Contest
  • Icons share palettes with front sprites, meaning that shiny pokemon will also have shiny icons!

lighting branch:

  • Everything from the followers branch.
  • Day/night shading compatible with weather.
  • GSC-style window lights.
  • WIP interframe-blended lamp lights at night, i.e in Rustboro.
  • HGSS-style alpha-blended shadows for object events.

Additional branches to mention:

  • followers-expanded-id - like followers, but includes backwards-compatible 16-bit graphics IDs for object events.
  • lighting-expanded-id - like the above but for lighting.

To set up the repository, see INSTALL.md.

FAQ

Q: How do I mark certain colors in a palette as light-blended?

A: Create a .pla file in the same folder as the .pal with the same name.

In this file you can enter color indices [0,15] on separate lines to mark those colors as being light-blended, i.e:

06.pla:

# A comment
0 # if color 0 is listed, uses it to blend with instead of the default!
1
9
10

You might have to make mostlyclean or change the .pal file to pick up the changes.

See also

Other disassembly and/or decompilation projects:

Contacts

You can find PRET on Discord and IRC.

Languages
C 84.7%
Assembly 12%
C++ 2.5%
Makefile 0.4%
Python 0.4%