Jump to content

[GEN 3] Special Ribbon Data


Guest

Recommended Posts

It looks like it has not been documented anywhere yet and it might be worth to share it.
These are the locations where the Special Ribbon data is stored:


Save File Section 4

RS
Offset 0x290

FRLG
Offset 0x21C

E
Offset 0x328


Info:

Spoiler

Offset   Content
0x0      MARINE RIBBON
0x01     LAND RIBBON
0x02     SKY RIBBON
0x03     COUNTRY RIBBON
0x04     NATIONAL RIBBON
0x05     EARTH RIBBON
0x06     WORLD RIBBON
0x07     Unknown
0x08     Unknown
0x09     Unknown
0x0A     Unknown

0x0 =  
0x1 = 2003 REGIONAL TOURNEY CHAMPION RIBBON
0x2 = 2003 NATIONAL TOURNEY CHAMPION RIBBON
0x3 = 2003 GLOBAL CUP CHAMPION RIBBON
0x4 = 2003 REGIONAL TOURNEY Runner-up RIBBON
0x5 = 2003 NATIONAL TOURNEY Runner-up RIBBON
0x6 = 2003 GLOBAL CUP Runner-up RIBBON
0x7 = 2003 REGIONAL TOURNEY Semifinalist RIBBON
0x8 = 2003 NATIONAL TOURNEY Semifinalist RIBBON
0x9 = 2003 GLOBAL CUP Semifinalist RIBBON
0xA = 2004 REGIONAL TOURNEY CHAMPION RIBBON
0xB = 2004 NATIONAL TOURNEY CHAMPION RIBBON
0xC = 2004 GLOBAL CUP CHAMPION RIBBON
0xD = 2004 REGIONAL TOURNEY Runner-up RIBBON
0xE = 2004 NATIONAL TOURNEY Runner-up RIBBON
0xF = 2004 GLOBAL CUP Runner-up RIBBON
0x10 = 2004 REGIONAL TOURNEY Semifinalist RIBBON
0x11 = 2004 NATIONAL TOURNEY Semifinalist RIBBON
0x12 = 2004 GLOBAL CUP Semifinalist RIBBON
0x13 = 2005 REGIONAL TOURNEY CHAMPION RIBBON
0x14 = 2005 NATIONAL TOURNEY CHAMPION RIBBON
0x15 = 2005 GLOBAL CUP CHAMPION RIBBON
0x16 = 2005 REGIONAL TOURNEY Runner-up RIBBON
0x17 = 2005 NATIONAL TOURNEY Runner-up RIBBON
0x18 = 2005 GLOBAL CUP Runner-up RIBBON
0x19 = 2005 REGIONAL TOURNEY Semifinalist RIBBON
0x1A = 2005 NATIONAL TOURNEY Semifinalist RIBBON
0x1B = 2005 GLOBAL CUP Semifinalist RIBBON
0x1C = POKEMON BATTLE CUP CHAMPION RIBBON
0x1D = POKEMON BATTLE CUP Runner-up RIBBON
0x1E = POKEMON BATTLE CUP Semifinalist RIBBON
0x1F = POKEMON BATTLE CUP Participation RIBBON
0x20 = POKEMON LEAGUE CUP CHAMPION RIBBON
0x21 = POKEMON LEAGUE CUP Runner-up RIBBON
0x22 = POKEMON LEAGUE CUP Semifinalist RIBBON
0x23 = POKEMON LEAGUE CUP Participation RIBBON
0x24 = ADVANCE CUP CHAMPION RIBBON
0x25 = ADVANCE CUP Runner-up RIBBON
0x26 = ADVANCE CUP Semifinalist RIBBON
0x27 = ADVANCE CUP Participation RIBBON
0x28 = POKEMON Tournament Participation RIBBON
0x29 = POKEMON Event Participation RIBBON
0x2A = POKEMON Festival Participation RIBBON
0x2B = Difficulty-clearing Commemorative RIBBON
0x2C = RIBBON awarded for clearing all difficulties
0x2D = 100-striaght Win Commemorative RIBBON
0x2E = DARKNESS TOWER Clear Commemorative RIBBON
0x2F = RED TOWER Clear Commemorative RIBBON
0x30 = BLACKIRON TOWER Clear Commemorative RIBBON
0x31 = FINAL TOWER Clear Commemorative RIBBON
0x32 = Legend-making Commemorative RIBBON
0x33 = POKEMON CENTER TOKYO Commemorative RIBBON
0x34 = POKEMON CENTER OSAKA Commemorative RIBBON
0x35 = POKEMON CENTER NAGOYA Commemorative RIBBON
0x36 = POKEMON CENTER NY Commemorative RIBBON
0x37 = Summer Holidays RIBBON
0x38 = Winter Holidays RIBBON
0x39 = Spring Holidays RIBBON
0x3A = Evergreen RIBBON
0x3B = Special Holidays RIBBON
0x3C = Hard Worker RIBBON
0x3D = Lots of Friends RIBBON
0x3E = Full of Energy RIBBON
0x3F = A Commemorative RIBBON for a loved POKEMON

 


I already checked the assemblies on GitHub and it seems like this has not been disassembled yet... 
The games have built in some kind of mechanic where when a Pokémon is traded (holding a Special Ribbon?) this data is apparently compared and exchanged. By default the slots are set to 0 but I noticed something strange in some save files I have examined. Some save files had slots filled with FFs and this is exchanged in case of a trade as well. That's how I confirmed that there 11 Slots even there are just 7 Special Ribbons in total. I have a feeling that the FF padding might be coming from COL & XD. Unfortunately the FF padding was also to be seen in the Festa Metang save files from Ahiru's Wonderland. So we can't be completely sure what kind of data was distributed with it.

The German Debug Version of Pokémon Ruby has a Debug Menu including Mystery Event functions and one of them is for giving a Special Ribbon to all Pokémon inside the Team. Which is a Marine Ribbon with the assigned text "2003 REGIONAL TOURNEY CHAMPION RIBBON". In this case only the respective Slot of the Marine Ribbon changed while the other Slots remained untouched. I think for Festa Metang it was done the same way and the FF padding really just came from the GCN Games. If anyone has a relatively fresh Colosseum or XD save file which has never traded with a GBA game before we could figure out where this data came from.

Edited by ajxpk
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...