theSLAYER Posted August 24, 2017 Posted August 24, 2017 Pokemon Gold/Silver offsets Speculated will be in italics. Offset Size Contents 0x2000 8 Options 0x2009 2 Player Trainer ID 0x200B 11 Player name 0x2016 11 Unused (Player's mom name) 0x2021 11 Rival name 0x202C 5 Unused (Red's name) 0x2031 5 Unused (Green's name) ? Daylight savings 0x204E 4 Time played (hh mm ss frame) 0x2065 1 Player palette 0x23D3 3 Money 0x23DC 1 Johto Badges 0x23DE 57 TM pocket 0x2417 42 Item pocket item list 0x2441 27 Key item pocket item list 0x245C 26 Ball pocket item list 0x2476 102 PC item list 0x26FC 1 Current PC Box number 0x26FF 238 PC Box names 0x28CC 428 Team Pokémon list 0x28AE 32 Pokédex owned 0x2AAE 32 Pokédex seen 0x2DAE 1102 Current Box Pokémon list NA Player gender 0x4000 1102 PC Box 1 Pokémon list 0x4450 1102 PC Box 2 Pokémon list 0x48A0 1102 PC Box 3 Pokémon list 0x4CF0 1102 PC Box 4 Pokémon list 0x5149 1102 PC Box 5 Pokémon list 0x5590 1102 PC Box 6 Pokémon list 0x59E0 1102 PC Box 7 Pokémon list 0x6000 1102 PC Box 8 Pokémon list 0x6450 1102 PC Box 9 Pokémon list 0x68A0 1102 PC Box 10 Pokémon list 0x6CF0 1102 PC Box 11 Pokémon list 0x7140 1102 PC Box 12 Pokémon list 0x7590 1102 PC Box 13 Pokémon list 0x79E0 1102 PC Box 14 Pokémon list 0x2DAB 2 Checksum 1 (sum 0x2009 to 0x2DAA) 0x7E6B 2 Checksum 2details here Team List format 0x28CC 1 Team List Count 0x28CD 6 List of Species 0x28D3 1 Terminator 0x28D4 48 Party Member 1 Data 0x2904 48 Party Member 2 Data 0x2934 48 Party Member 3 Data 0x2964 48 Party Member 4 Data 0x2994 48 Party Member 5 Data 0x29C4 48 Party Member 6 Data 0x29F4 11 Party Member 1 OT Name 0x29FF 11 Party Member 2 OT Name 0x2A0A 11 Party Member 3 OT Name 0x2A15 11 Party Member 4 OT Name 0x2A20 11 Party Member 5 OT Name 0x2A2B 11 Party Member 6 OT Name 0x2A36 11 Party Member 1 Nickname 0x2A41 11 Party Member 2 Nickname 0x2A4C 11 Party Member 3 Nickname 0x2A57 11 Party Member 4 Nickname 0x2A62 11 Party Member 5 Nickname 0x2A6D 11 Party Member 6 Nickname Current Box Format (and likely all box formats mirror this 0x2DAE 1 Current Box Filled Count 0x2DAF 20 20 Species 0x2DC3 1 Terminator (to be, for species list) 0x2DC4 640 20 Pokemon Data 0x3044 220 20 OT Names 0x3120 220 20 Nicknames 1 2
Holla! Posted August 24, 2017 Posted August 24, 2017 There's no Korean version of Crystal. https://bulbapedia.bulbagarden.net/wiki/Pokémon_Crystal_Version
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 1 hour ago, Holla! said: There's no Korean version of Crystal. https://bulbapedia.bulbagarden.net/wiki/Pokémon_Crystal_Version I forgot about that XD That certainly lessens my workload ><@Kaphotics I'm hoping this can be added to PKHeX. I pretty much worked out all the needed data, except I'm a bit lost regarding the Checksum 2
BlackShark Posted August 24, 2017 Posted August 24, 2017 6 hours ago, theSLAYER said: except I'm a bit lost regarding the Checksum 2 This should be correct, but confirmation would be good. 0x1A13 - 0x1C38 0x3DD8 - 0x3F79 0x106B - 0x1533 0x7E39 - 0x7E6A 0x1534 - 0x1A12 Checksum: 0x7E6B 1
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 13 minutes ago, BlackShark said: This should be correct, but confirmation would be good. 0x1A13 - 0x1C38 0x3DD8 - 0x3F79 0x106B - 0x1533 0x7E39 - 0x7E6A 0x1534 - 0x1A12 Checksum: 0x7E6B The 5 values on top, I assume they're initially written at the next 2 bytes, then summed again and written to the final location?
BlackShark Posted August 24, 2017 Posted August 24, 2017 1 minute ago, theSLAYER said: The 5 values on top, I assume they're initially written at the next 2 bytes, then summed again and written to the final location? Calculate a sum for each of those areas, then sum those sums together to get the checksum and truncate it to be a 16 bit value. The sums of the single areas don't get written anywhere. 2
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 36 minutes ago, BlackShark said: Calculate a sum for each of those areas, then sum those sums together to get the checksum and truncate it to be a 16 bit value. The sums of the single areas don't get written anywhere. I grabbed all the bytes and did a calculation on my Excel, I confirm that calculation checks out. Summed up values are 159B0, and the values at my 0x7E6B-6C is 0xB059. Spoiler 1
BlackShark Posted August 24, 2017 Posted August 24, 2017 Thanks for confirming the checksum calculation! Now to complete this: 0x1A58 is indeed the time played, but from the backup save. For the primary save it is at 0x204E. Player palette is at 0x2065. I'm not sure about the daylight savings, but it seems to be unused in the Korean games. Mom doesn't ask you about it. 1
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 29 minutes ago, BlackShark said: Thanks for confirming the checksum calculation! Now to complete this: 0x1A58 is indeed the time played, but from the backup save. For the primary save it is at 0x204E. Player palette is at 0x2065. I'm not sure about the daylight savings, but it seems to be unused in the Korean games. Mom doesn't ask you about it. Done! It'll be cool to edit color palette, even if it's not legal XD
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 1 minute ago, Jackson2K12 said: Is the Korean version of GS out now ? The original GBC releases GS version for Korea. Also, just so ya know, the VC releases of RBYG contained the exact same roms as original releases of the games, just that they also have a patching function that can patch the VC content when running. The saves also were saved at the same offsets, hence chances GSC save offsets for VC will be the same as the original release.
Jackson2K12 Posted August 24, 2017 Posted August 24, 2017 1 minute ago, theSLAYER said: The original GBC releases GS version for Korea. Also, just so ya know, the VC releases of RBYG contained the exact same roms as original releases of the games, just that they also have a patching function that can patch the VC content when running. The saves also were saved at the same offsets, hence chances GSC save offsets for VC will be the same as the original release. Cool, it might be worth starting Silver now then, and import the save file when the VC versions are released
theSLAYER Posted August 24, 2017 Author Posted August 24, 2017 1 minute ago, Jackson2K12 said: Cool, it might be worth starting Silver now then, and import the save file when the VC versions are released Do remember that the saves of Gen I and Gen II games cannot cross language Yeah, I've prepared a bunch of saves for the reason. Playing on Korean once in a while XD
Kaphotics Posted August 25, 2017 Posted August 25, 2017 22 hours ago, theSLAYER said: I forgot about that XD That certainly lessens my workload ><@Kaphotics I'm hoping this can be added to PKHeX. I pretty much worked out all the needed data, except I'm a bit lost regarding the Checksum 2 It's pretty much confirmed that VC G/S will not have Korean games (no announcement for korea), thus is there really a need to have it incorporated to PKHeX? There'd be a lot of required things: Different character table (strings) Different item/species/etc names (strings) Prevention of loading to VC1/Gen7 games Mixing in a 3rd set of offsets Korean G/S would be locked to itself, so I don't see a need to support it in the multi-game editor (pkhex). Maybe a separate program / fork of PKHeX is best? Korean G/S is essentially a rom hack 1
theSLAYER Posted August 25, 2017 Author Posted August 25, 2017 @Kaphotics There is an announcement for VC GS in korea:http://www.pokemonkorea.co.kr/VCGS/ I would agree that it'll be kinda of a hassle. At least Korean Encoding for Gen II is already documented. Also, the Korean save structure is similar to the ENG games, and as a result, they are able to trade without corruption. (Just traded from Silver KOR to Red ENG yesterday) [of course I do not know if it'll be incorporated into VC] 1
HaxAras Posted August 25, 2017 Posted August 25, 2017 19 hours ago, theSLAYER said: Do remember that the saves of Gen I and Gen II games cannot cross language Yeah, I've prepared a bunch of saves for the reason. Playing on Korean once in a while XD I no longer have any to test but I seem to remember something similar of the sort. Something about the data being handled differently and you couldn't really trade between then. I might have tried with English and Japanese gen 1 games back in the day. 1
theSLAYER Posted August 28, 2017 Author Posted August 28, 2017 On 25 August 2017 at 6:55 PM, HaxAras said: I no longer have any to test but I seem to remember something similar of the sort. Something about the data being handled differently and you couldn't really trade between then. I might have tried with English and Japanese gen 1 games back in the day. English with Japanese trades will certainly cause problems. I did Korean and English trade, and the English Pokemon kept their English names on the Korean save! The Korean Pokemon names on English saves looks like garbled nonsense, but beyond that it functionally works. (Tho for this very reason, I'm afraid VC GS KOR won't have time capsule and trades with other languages) 1
HaxAras Posted August 28, 2017 Posted August 28, 2017 29 minutes ago, theSLAYER said: English with Japanese trades will certainly cause problems. I did Korean and English trade, and the English Pokemon kept their English names on the Korean save! The Korean Pokemon names on English saves looks like garbled nonsense, but beyond that it functionally works. (Tho for this very reason, I'm afraid VC GS KOR won't have time capsule and trades with other languages) That's sorta how it works in gen 3. When you trade an English Wartortle to a Japanese Fire Red for example, it will be named WARTOR. And if it evolves, it will keep it's name. Same with Japanese mons on an English game and probably any language. I never tested with the others (I could). If you migrate a non-native Pokemon, it's name will be treated as a nickname. So a French Articuno will be named ARTOKODIN when it goes through bank. I migrated the in-game-trade Farfetch'd named CH'DING to gen 4/5/6/7 using a Japanese save for gens 3-4 and it's nickname was preserved, despite being shortened in gen 3. I never tested with a Pokemon like Wartortle in a Japanese save though. The point of all this is: This is in gen 3 where you can trade between all the languages and they didn't really fix it properly until gen 4. Where Korean games can't trade with the others, as I was told. So I highly doubt something as far back as gen 2 could work properly. It would just create an interesting nightmare. (Also, mind sending me a Korean gen 2 PKM? I'm curious about what happens if I evolve it and if I migrate it using bank/if I even can and what happens if I trade it to gen 1if it's a gen 1 mon, etc. Lots of experiments and tests to run.)
theSLAYER Posted August 28, 2017 Author Posted August 28, 2017 I didn't think of that. I assumed they'll treat it as a glitch Pokemon, due to its nickname. later, upload to here a Gen 1 vc save (tell me for which game), and I'll time capsule a Korean Pokemon to it. (Also prepare 2 trash Pokemon in your party, for the time capsule procedure) IIRC when PKHeX modifies such a Pokemon, the nickname and OT gets wiped out, so at this point, attaching a PKX file wouldn't work.
HaxAras Posted August 28, 2017 Posted August 28, 2017 15 minutes ago, theSLAYER said: I didn't think of that. I assumed they'll treat it as a glitch Pokemon, due to its nickname. later, upload to here a Gen 1 vc save (tell me for which game), and I'll time capsule a Korean Pokemon to it. (Also prepare 2 trash Pokemon in your party, for the time capsule procedure) IIRC when PKHeX modifies such a Pokemon, the nickname and OT gets wiped out, so at this point, attaching a PKX file wouldn't work. I'll have to find a gen 1 save online. I don't currently have any gen 1 carts. Just a Silver cart. I really can't wait for these gen 2 VC games to be released. It will put to bed so many questions.
theSLAYER Posted August 28, 2017 Author Posted August 28, 2017 59 minutes ago, HaxAras said: I'll have to find a gen 1 save online. I don't currently have any gen 1 carts. Just a Silver cart. I really can't wait for these gen 2 VC games to be released. It will put to bed so many questions. When you said migrate, I assumed you had a Gen 1 VC game >< yeah, but bank support won't be out until nov 17. at least trading questions would get resolved
Lum Posted August 28, 2017 Posted August 28, 2017 (edited) Korean GS has buggy support for non-Japanese games, including Crystal. A few interface issues where longer names overrun the dialogue box. Sometimes trying to link may freeze up too. It's kind of unavoidable for completionists. Supposedly Mew and Celebi were never distributed to gen 2 in Korea. gen 5 at long last introduced normal trading with Korean Edited August 28, 2017 by Lum
HaxAras Posted August 28, 2017 Posted August 28, 2017 30 minutes ago, Lum said: Korean GS has buggy support for non-Japanese games, including Crystal. So do Japanese and Korean games trade together fine? Cause now I would like to know what happens if you send an English Pokemon to a Korean save. Then trade the English Pokemon to the Japanese save and the Japanese mon to the English save and what happens when it evolves. Outside of doing the coin case glitch in an English game, you could get the events in an English game and trade them to a Korean save. Then just release the glitched name mon from the English save.
theSLAYER Posted August 28, 2017 Author Posted August 28, 2017 Could run a few tries when I get back.
Lum Posted August 28, 2017 Posted August 28, 2017 1 hour ago, HaxAras said: So do Japanese and Korean games trade together fine? Cause now I would like to know what happens if you send an English Pokemon to a Korean save. Then trade the English Pokemon to the Japanese save and the Japanese mon to the English save and what happens when it evolves. Outside of doing the coin case glitch in an English game, you could get the events in an English game and trade them to a Korean save. Then just release the glitched name mon from the English save. No. Korea and Japanese games were first compatible in Black and White.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now