• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Our friends from the Johto Times are hosting a favorite Pokémon poll - and we'd love for you to participate! Click here for information on how to vote for your favorites!
  • Cyndy, May, Hero (Conquest), or Wes - which Pokémon protagonist is your favorite? Let us know by voting in our poll!
  • 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.

[Tool✓] UPDATED: Cannot properly apply JPAN's hacked engine.

  • 222
    Posts
    7
    Years
    • Seen Nov 18, 2023
    So I applied JPAN's ips to an unedited ROM. The first two rooms are perfect, with the mom being gone obviously since it cleans up person events. JPAN's custom specials work fine in script tiles, as well. Walking outdoors into pallet town, however...

    [PokeCommunity.com] UPDATED: Cannot properly apply JPAN's hacked engine.


    So then I tried again with another clean, unedited rom and used the included tool instead to apply all the specials. Pallet town is no longer corrupted, but using any custom special resets the ROM to the copyright screen.

    What am I doing wrong? What is the correct way to apply this hack base?

    Side note: Additionally, I have found no way using this engine to edit personality values such as nature or gender. Is there a way to do this using this engine? Because editing the pointers directly causes a bad egg.
     
    Last edited:
    So I applied JPAN's ips to an unedited ROM. The first two rooms are perfect, with the mom being gone obviously since it cleans up person events. JPAN's custom specials work fine in script tiles, as well. Walking outdoors into pallet town, however...

    [PokeCommunity.com] UPDATED: Cannot properly apply JPAN's hacked engine.


    So then I tried again with another clean, unedited rom and used the included tool instead to apply all the specials. Pallet town is no longer corrupted, but using any custom special resets the ROM to the copyright screen.

    What am I doing wrong? What is the correct way to apply this hack base?

    Side note: Additionally, I have found no way using this engine to edit personality values such as nature or gender. Is there a way to do this using this engine? Because editing the pointers directly causes a bad egg.

    Pallet town isn't actually corrupted, it just doesn't have any warps to receive the player. JPAN's patch removes all events on the maps in the game, including warps, but I'm not sure why he left the warps in the player's house maps untouched.

    You need to eliminate the checksums if you want to change the PID without causing a bad egg.
     
    Pallet town isn't actually corrupted, it just doesn't have any warps to receive the player.

    I have fair reason to believe it is corrupted, since the events tab for Pallet in AdvanceMap is blank (doesn't load) and every other map keeps its warps and flying places (but removes only scripts and people events).

    I THINK I KNOW WHY IT'S CORRUPTED THOUGH:
    I read somewhere that I am not supposed to apply JPAN's engine to a unedited rom, but apply JPAN's clearing patch first. Unfortunately the link is way outdated and so now I'm stuck. Anyone have the download to this patch since the link is dead?

    Alternatively, why isn't the tool working?
     
    I have fair reason to believe it is corrupted, since the events tab for Pallet in AdvanceMap is blank (doesn't load) and every other map keeps its warps and flying places (but removes only scripts and people events).

    I THINK I KNOW WHY IT'S CORRUPTED THOUGH:
    I read somewhere that I am not supposed to apply JPAN's engine to a unedited rom, but apply JPAN's clearing patch first. Unfortunately the link is way outdated and so now I'm stuck. Anyone have the download to this patch since the link is dead?

    Alternatively, why isn't the tool working?

    Believe me, it isn't corrupted. I was mistaken in my earlier post as warps are kept in the game's maps, but not for Pallet Town's main map.

    Add a single warp (or any other event type) in the events tab to load the map with events on it. You will then see the flying spot. Whenever you leave the player's house after adding the warp you will appear in a perfectly normal Pallet Town.
     
    Believe me, it isn't corrupted. I was mistaken in my earlier post as warps are kept in the game's maps, but not for Pallet Town's main map.

    Add a single warp (or any other event type) in the events tab to load the map with events on it. You will then see the flying spot. Whenever you leave the player's house after adding the warp you will appear in a perfectly normal Pallet Town.

    THANK YOU!!!!! I guess I had just gotten thrown off by the fact that the events tab was completely blank, but I added an event and reopened the map and it was back! I can't say how much I can thank you1
     

    Welp, I edited all of those bytes and giving pokemon works fine... until you try to edit any part of it. The party value becomes blank. Here is my attempt at editing the personality value to 1111 1111 1111 1110 (0xFF and 0xFE), because according to the wiki personality is at the very beginning of the slot data (hence my editing starting at 0x2024284) and is a dword (2 bytes) long.

    Code:
    writebytetooffset 0xFF 0x2024284
    writebytetooffset 0xFE 0x2024285

    What am I doing wrong?

    EDIT: Wait a second a dword is 4 bytes long not 2. Let me try again real quick.

    EDIT 2: Well here is my updated code but it is still not working. One time I could try to get into SUMMARY only to be greeted with purple screen and another time my party looked like this:

    [PokeCommunity.com] UPDATED: Cannot properly apply JPAN's hacked engine.


    Here is updated code snippet:
    Code:
    writebytetooffset 0xFF 0x2024284
    writebytetooffset 0xFF 0x2024285
    writebytetooffset 0xFF 0x2024286
    writebytetooffset 0xFE 0x2024287
     
    Last edited:
    Welp, I edited all of those bytes and giving pokemon works fine... until you try to edit any part of it. The party value becomes blank. Here is my attempt at editing the personality value to 1111 1111 1111 1110 (0xFF and 0xFE), because according to the wiki personality is at the very beginning of the slot data (hence my editing starting at 0x2024284) and is a dword (2 bytes) long.

    Code:
    writebytetooffset 0xFF 0x2024284
    writebytetooffset 0xFE 0x2024285

    What am I doing wrong?

    EDIT: Wait a second a dword is 4 bytes long not 2. Let me try again real quick.

    EDIT 2: Well here is my updated code but it is still not working. One time I could try to get into SUMMARY only to be greeted with purple screen and another time my party looked like this:

    [PokeCommunity.com] UPDATED: Cannot properly apply JPAN's hacked engine.


    Here is updated code snippet:
    Code:
    writebytetooffset 0xFF 0x2024284
    writebytetooffset 0xFF 0x2024285
    writebytetooffset 0xFF 0x2024286
    writebytetooffset 0xFE 0x2024287

    Hmm, that's strange. With this script, I'm able to change from a male Bulbasaur with a Naughty nature to a female Bulbasaur with a Hardy nature with zero issues on my end:

    Code:
    #dynamic 0x800000
    
    #org @start
    checkflag 0x828
    if 0x1 goto @skip
    givepokemon 0x1 0x1 0x0 0x0 0x0 0x0
    writebytetooffset 0xFF 0x2024284
    writebytetooffset 0xFF 0x2024285
    writebytetooffset 0xFF 0x2024286
    writebytetooffset 0xFE 0x2024287
    setflag 0x828
    release
    end
    
    #org @skip
    writebytetooffset 0x00 0x2024284
    writebytetooffset 0x00 0x2024285
    writebytetooffset 0x00 0x2024286
    writebytetooffset 0x00 0x2024287
    release
    end

    Do you get any errors if you try this one?
     
    Do you get any errors if you try this one?

    Yup. I even double checked it by not editing anything the first time; randomized lvl 1 bulbasaur came successfully. Stepped on tile again and the party looked blank.

    Obviously I did not hexedit my thingy correctly, even though I followed the instructions carefully.

    So could you please post me your hex data from that area (somewhere around from x3F900 to x40550) so I could try overwriting it with your working edit? Presumably because we don't typically edit core scripts like that the other parts of that region would be exactly the same on both our ROMs and it shouldn't really affect anything.

    I can't really thank you enough for helping!
     
    Yup. I even double checked it by not editing anything the first time; randomized lvl 1 bulbasaur came successfully. Stepped on tile again and the party looked blank.

    Obviously I did not hexedit my thingy correctly, even though I followed the instructions carefully.

    So could you please post me your hex data from that area (somewhere around from x3F900 to x40550) so I could try overwriting it with your working edit? Presumably because we don't typically edit core scripts like that the other parts of that region would be exactly the same on both our ROMs and it shouldn't really affect anything.

    I can't really thank you enough for helping!

    I'll also go one better, here's an .ips patch which is confirmed to correctly run the script in my previous post. You can test the script for yourself on it and copy the data over.
     
    Last edited:
    You can test the script for yourself on it and copy the data over.

    I can confirm your path works; transferring data to my rom as we type. Should have an update in a few minutes.

    Let me just say that when (if) my hack is completed, you'll be getting a mention in the credits for your extremely patient help.

    While we're at it, how exactly does the modulo for the natures work. I thought that kind of stuff didn't work on binary? Does the game convert the the binary into decimal before performing modulo to determine nature?

    EDIT: Yup works perfectly! Now I can edit PKMN data to my heart's content! :15:
     
    Last edited:
    I can confirm your path works; transferring data to my rom as we type. Should have an update in a few minutes.

    Let me just say that when (if) my hack is completed, you'll be getting a mention in the credits for your extremely patient help.

    While we're at it, how exactly does the modulo for the natures work. I thought that kind of stuff didn't work on binary? Does the game convert the the binary into decimal before performing modulo to determine nature?

    EDIT: Yup works perfectly! Now I can edit PKMN data to my heart's content! :15:

    I have zero idea how the game handles the modulo haha.

    I'm really glad to hear that its working now. I was a bit scared a few posts ago when nothing was working!
     
    Back
    Top