Jump to content

TheShadyRelapse

New Member
  • Posts

    6
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by TheShadyRelapse

  1. I have noticed this with the WISH Egg Chansey it says the Pokemon is illegal because the PID and Abilities don't match.
  2. This exercise will make it so traded Pokémon will listen to you fully at any level. It's a small tweak that changes it from 8 Badges to listen fully to 0 Badges to listen fully. Platinum ------------ Open up the overlay_0016.bin file in a hex editor. Go to the location 0x13090 in overlay_0016.bin. You should see a string of bytes like this (square brackets for emphasis): 98 D7 F5 C4 FE [08] 28 02 DB 0C Change the 08 to be 00. Save, and reinsert the file into your ROM. You should now find that traded Pokémon always listen to you. HG / SS ------------ Extract a decompressed overlay_0012.bin with crystaltile2 via the "Extract" option, then open it in a hex editor. Go to the location 0x136A4 in the decompressed overlay_0012.bin. You should see a string of bytes like this (square brackets for emphasis): 98 DE F5 46 F8 [08] 28 02 DB 0C Change the 08 to be 00. Save, and reinsert into your ROM with crystaltile2 using the "Compression" option. You should now find that traded Pokémon always listen to you.
  3. Editing Poké Mart Items --- A quick addendum - this only definitely works for fixed item inventories, like the secondary clerk in some Poké Marts. I'm not sure how to edit the general market that changes after every few Badges. This requires the use of a hex editor such as Hex Workshop or HxD. This tutorial can be used for Platinum or HG/SS. I think the same steps may apply to Black/White as well, but in Black 2/White 2 it's stored in a different file (I believe a/2/8/2). Step 1: Calculate the hex string for the items in the mart that you want to edit. --- https://bulbapedia.bulbagarden.net/wiki/List_of_items_by_index_number_(Generation_IV) This page lists all items in the game with their numerical index. Internally, the game has a list of items that appear in each Poké Mart. Take note of the "Hex" column in that page. For example, a Protector has a hexadecimal index of 0x0141. The other thing to note is that the game stores bytes in little endian form. That means internally, you'd see the Protector written as "41 01". Each byte is the opposite way around. The hex string is just a few of these strung together. So for example, let's say we had a mart that sold Grass Mail (0x0089), Flame Mail (0x008A) and Bubble Mail (0x008B) and it's listed in that exact order in-game... Grass Mail Flame Mail Bubble Mail That means we'll need to search "89 00 8A 00 8B 00" to find it - each individual item has its bytes flipped due to little endian form, and then they're just strung together. In HG/SS, the item order is top left first, then top right, then middle left, middle right, bottom left, bottom right, top left on page two etc. To find what items to search for, look at the Poké Mart inventory you want to edit, cross-reference it with the page linked above and you can produce the hex string from that. Step 2: Extract the file the data is contained in. --- Poké Mart data is located in the arm9.bin. If you're playing Platinum, you can just open it up in the hex editor immediately. You can get your arm9.bin by extracting it with crystaltile2, or in the file folders SDSME/PPRE produce when a ROM is loaded into them. If you're playing HG/SS, you need to first decompress the arm9.bin as it's compressed internally. To do this, extract the arm9.bin with crystaltile2 but select "Extract(U)" instead of "Export". Step 3: Search the hex string in the arm9.bin --- Simply open your arm9.bin file up in a hex editor and search for the string above. For example, I'd search "89 00 8A 00 8B 00" if I were following the example above. Generally there should only be one result, as most of the fixed mart inventories are unique. Step 4: Edit the hex string to be the items you want --- Now we just change the items to what we want. Following the example above, let's say instead of Grass Mail, Flame Mail and Bubble Mail, I want to now sell Bloom Mail, Tunnel Mail and Steel Mail. I replace Grass Mail with Bloom Mail; referencing the index number document, I replace 89 00 with 8C 00. I replace Flame Mail with Tunnel Mail; so I change 8A 00 to be 8D 00. I replace Bubble Mail with Steel Mail; so I change 8B 00 to be 8E 00. That's all there is to this part! We can then save the arm9.bin file. Step 5: Reinsert the arm9.bin file into the game --- If this is Platinum and you just opened the arm9.bin file out of a folder PPRE/SDSME produced, you can just write the ROM. Otherwise, import the arm9.bin file over the current one with crystaltile2, then save your ROM. For HG/SS, you'll need to right-click on the arm9.bin in the File Explorer on crystaltile2 again, and this time select "Compression" followed by your arm9.bin. You should have a short pause as it reinserts, then you can save your ROM. You should now see the changes reflected in-game!
  4. Enjoy! 456 - ケイコウオ - A110CBC391E1.pk4 393 - ポッチャマ - 6F6AF4E0AE85.pk4 392 - ゴウカザル - 06E74A21D784.pk4
  5. I chose 49 because at the time I was thinking maybe If I change the the byte to any number it would do something so I tried 49 and it worked I also tried 64 which also worked so I'm glad that it works
  6. Infinite TMs in Gen IV --- Let me first preface this by saying that this was figured out by Mikelan98 (with some help from Nextworld and BagBoy to find some of the offsets in different languages). Mikelan98 has requested that you give credit to him if you implement this in your hack. This is simply a documentation so the information doesn't get lost - I didn't figure out any of this myself! This is for the American (U) versions of Platinum and Heart Gold / Soul Silver. Step 1: Extract the relevant files --- First we need to get the right files out of the ROM. For Platinum, you'll need the arm9.bin and the overlay_0084.bin files. For HG / SS, you'll need the decompressed arm9.bin and a decompressed overlay_0015.bin files. (Use the Extract(U) option in crystaltile2 to decompress.) Step 2: Edit the code to make the TM quantity not drop after use --- For Platinum, we want to make the following changes: * Search for "FE 00 28 07 D1 08 48" in the arm9.bin file. * Replace the "D1" with "E0" so that it now reads "FE 00 28 07 E0 08 48". For HG/SS, we want to make the following changes: * Search for "FD 00 28 07 D1 0A 48" in the decompressed arm9.bin file. * Replace the "D1" with "E0" so that it now reads "FD 00 28 07 E0 0A 48". Step 3: Edit the code to make the item quantity not appear for TMs in the bag --- For Platinum, we want to make the following changes: * Search for "FF F7 83 FF 04 B0" in the overlay_0084.bin file. * Replace the first four bytes with "00 00 00 00", so it should now read "00 00 00 00 04 B0". For HG/SS, we want to make the following changes: * Search for "81 42 53 D3" in the decompressed overlay_0015.bin file. * Replace the "D3" with E0 so that it now reads "81 42 53 E0". Step 4: Rebuild the ROM --- You'll need to reinsert the relevant files as needed. For HG/SS, you'll need to recompress them when adding them to the ROM by using the "Compression" option to import them back when using crystaltile2. After that, save and/or build your ROM, and you should find that TMs don't show a quantity anymore, and they also won't disappear after being used.
×
×
  • Create New...