• 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!
  • 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.

[Other] "Cheat-proof-ing" your hack?

  • 1,309
    Posts
    13
    Years
    • She/Her
    • Seen May 18, 2025
    Hi everyone! I had a look around and couldn't find anything on it so I figured Id post this in a thread.


    Is there a way through hex editing or any other means, that you can lock the availability for players to use cheats in-game? Such as Gameshark codes, or my current nemesis, walk-through-walls? =P


    I know if it is possible it's probably tricky, but would really like to know if there's anyway it can be done. For reference, I'm using FR 1.0. Thanks!
     
    It is possible but would require a ♥♥♥♥load work. You pretty much need to store certain data at different locations in order to render existing codes for Fire Red useless. Even if you manage something like that people will still be able to write their own cheats based on your modified version due to tools like ARCrypt and the fact that everything else is easily accessible thanks to emulators and whatnot.
     
    Last edited by a moderator:
    Maybe you could change the cheat's coding so that it resets the game if you input the function using cheats. Or punish the player in some way. But it will take a load of work. If Walk-Through-Walls is your enemy, then you should just look into that.
     
    I don't really see the need. I mean, considering that the player is downloading the hack for their enjoyment, they only have themselves to blame if they cut down the playtime, break the game, or deny themselves of what the game design offers because they decided to cheat.

    Heck, unless the game is badly balanced or has a gamebreaking bug that requires it, I can't see any reason someone would cheat in a Pokemon hack. I know it happens, but I'd find far more reason in cheating in official games than hacks.
     
    Thanks for the feedback! Yeah the only reason I was really trying to stop it is because using WTW in my hack to get to things that aren't supposed to be accessible at that point will more than definitely cause people to break the game, people have done so and then reported it as a bug which is really annoying, hence why I was trying to find a way to block it, haha. Seems like a whole lot of work, but thanks for putting me right! =)
     
    Two things to consider:
    1. WTW is very useful to the hacker to test things quickly. Other cheats not so much because...
    2. Hacking events in or altering things is much more effective (and sometimes it's easier like with shop scripts) than cheat codes. It also gets around cheat-proofing.

    You can edit the header if you wish for no one to alter your hack at all, but this is a double-edged sword in some ways as it ends up more annoying for others than anything else.
     
    It's actually fairly simple to hack the game to store the data for "possibility of moving" (probably 4 bytes of data for each direction from the current map location) to different ram location(s).

    Just locate where the "possiblity of moving" data is now (, the gameshark code will tell that somehow itself already since it contains the address, in some form, where it writes 1-byte data value permanently when the code is turned on).
    After you know, use some kind of assembly editor / debugger to locate all the locations in the rom where those addresses are accessed (don't use hex editor because it's possible that the same bytes exist in that order elsewhere although it's very unlikely, after all, we're talking about a 4-byte "pointer" value), and change them to point to somewhere else where there is space in ram for storing the 4-byte data.


    I have personally thought of also removing the "walk through walls" possibility along with being able to cheat which pokemon you encounter and at which level. I haven't done so yet but well... it's not like it would be much of a work at all to do either.

    P.S
    If you move the data elsewhere, you can of course write your own gameshark code for "walking through walls" for testing purposes later.
     
    Back
    Top