• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

[ASM & Hex] Code illiterate newbie looking to increase the damage of Type-enhancing items (Platinum)

4
Posts
4
Years
    • Seen Jun 30, 2022
    As said in the title, I'm completely illiterate to hex and code (I couldn't even pass an introductory course in C++), but I'm looking to increase the mulitplier that Mystic Water, Miracle Seed, Silk Scarf, etc. as well as Muscle Band and Wise Glasses, give to attacks.

    Knowing that the "index number" of an item is 0x00F2 doesn't really help me much when I don't know what an index number is, where to find an item in an editor, what editor to use, and what values to edit.

    Converting from base 10 to 16 is easy enough, I do it all the time working with digital colors. My issue is what values I need to edit and how.

    If there's a known tool to edit these items it would be even more appreciated since it would be faster to use.
     
    Last edited:
    4
    Posts
    4
    Years
    • Seen Jun 30, 2022
    Curious if this forum is still alive or has been abandoned at this point.

    I can elaborate a little at least to the degree not being able to post image links will let me.

    When I look up information for the data in the game, I've found a list of item index numbers. Cool. So I see the Master ball is 0x0001. I have no idea what that means, but from what other people's efforts have told me, "Go to address 0x8162A and change 49 to BD" means "use the goto search for the value 8162A, then change the value at that offset from 49 to BD." I was successful in doing this and thus was able to make TMs in Platinum reusable.

    Hooray!

    So, let's look back at the Master Ball example. Okay, its value is at 0x0001. So let's goto offset 0001 aaaand

    Oh, that's the title of the game. Specifically, the first letter O in Pokemon. Good to know that the data for the Master Ball is also apparently shared with the game's title.

    The "tutorials" on this cite seem of no help, either.

    showthread.php?t=131283 here, for example, is supposed to be a "BASIC HEX EDITING" tutorial,

    They refer to whatever a "pointer" is, when no hex editor I can find has a means of changing or locating pointers. So I had to do even more external research and a pointer is... an offset, but backwards, kind of. So the author says to go to pointer 0x1D6E95C for the data on the move Fire Punch, which backwards would be 5CE9D6810, aaand

    "The file doesn't contain the offset 5CE9D6810"

    Hmmm.

    Well, maybe the tutorial maker just used the word "Pointer" as a synonym for "Offset"? Alright, well lets goto the offset 1D6E95C. According to the author, the following bytes should be 04 00 00 4B 0A 64 0F 0A 00 00 00 13 11 01 00 00. Nope, not even close, the bytes on and following that offset are all 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00.

    So either I'm missing something fundamental to what the authors of the "basic" tutorials are saying, or they are fundamentally not giving accurate information to where data is found in the game's code in Hex.
     
    Last edited:
    448
    Posts
    6
    Years
    • Seen today
    Alright, well lets goto the offset 1D6E95C. According to the author, the following bytes should be 04 00 00 4B 0A 64 0F 0A 00 00 00 13 11 01 00 00. Nope, not even close, the bytes on and following that offset are all 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00.

    The tutorial you're using is listing the offsets for diamond/pearl, not for platinum.
     
    Back
    Top