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

Preventing Pokemon from being released

12
Posts
5
Years
    • Seen Jun 15, 2019
    Hello, I participate in a Youtube Play's Pokemon Emerald group (like Twitch Play's Pokemon) and we have a problem with trolls releasing Pokemon. It is a very small group, so there are hours during day where the mods and responsible players are asleep/at work, so anyone can pick up the controls and release a Pokemon. The admin is also busy so unless it is a member super important to the team, a roll back to a previous save might not happen. And by the time someone releases a Pokemon or two, the culprit is long gone so it is hard to ban them (and they could always make an another account anyway). The easiest solution would be to mod the game to limit releasing Pokemon.

    The simplest way of doing this would be to add code so that if a player tried to release a Pokemon without certain markings (the markings used by the PC, like circle, square, triangle, and heart) then the Pokemon would not be released. I would prefer it to go to the message when you try to release your last HM user or any other message that the game normally has for a failed release. While a 1/64 chance at getting the code right is a risk, the delay for every button press is 5 sec, so it would take hours to get it by accident. If the admin, mod, or other trusted person needed to release a Pokemon for some reason, they could have the code to do so.

    Now I have XSE so I am willing to do the work. I just need to know a few things. Also to note, this is an english randomized Emerald version.

    • At what location is the code for releasing pokemon
    • Is there code that can check what markings a selected pokemon has
    • Where is the code for the failed release message

    Maybe it would be cool to make this a full fledged tool someday, but right now I just want to stop some trolls. This would be a great feature for others doing Youtube/Twitch Play's Pokemon. Or for other uses, the combination could be set to only released unmarked Pokemon so you don't release a Pokemon you marked as special.
     
    476
    Posts
    6
    Years
    • Seen Feb 26, 2020
    How exactly does the viewer even get control over the game to begin with? I feel like stopping that would pretty quickly solve your issues...
     

    Skeli

    Lord of the Rings
    300
    Posts
    10
    Years
  • I did some digging and found that the routine for the release prevention is found at 0x9328C. More specifically though, the part where Surf and Dive, the moves preventing the release, are loaded in, starts at 0x93354.
    I would assume if you wanted a way to prevent the release of a certain Pokemon, you could call the function GetAttribute on it to get the markings, then compare it to your specific pattern.

    The strings though not really so important:
    String "PKMN came back!": 0x418392
    String "Was it worried about you?" 0x4183A0

    Edit: This is FR, I wasn't reading.
    The strings in Emerald:
    String "PKMN came back!": 0x5EB979
    String "Was it worried about you?" 0x5EB987

    I don't know where exactly the function is in Emerald, but I think its somewhere between 0x80D20 and 0x81890

    Hope this helped.
     
    Last edited:
    Back
    Top