• 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.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Dawn, Gloria, Juliana, or Summer - 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.

Nicknaming Pokemon turns into ?????????? after taking Potion from PC

  • 148
    Posts
    18
    Years
    • Age 30
    • Seen Jul 19, 2024
    For whatever reason, when my script that gives the player their starter Pokemon asks for the nickname, it replaces the Pokemon with ???????? if the player has grabbed his/her potion from PC at the beginning of the game. However, if they didn't, it works perfectly fine. What could be causing this issue?
     
    The nicknaming special determines which Pokemon you're nicknaming by the value in variable 0x8004. A value of 0x0 indicates that you're nicknaming the first Pokemon, 0x1 is the second etc. Now the game starts out with 0x8004 set to 0x0 by default, but turning on the PC in the player's room (not even taking out the item), 0x8004 is set to 0x1 as an argument for the PC special. So if you interact with the PC, 0x8004 is no longer set to 0x0, leaving the nicknaming special to try and nickname the second Pokemon in your party which doesn't exist, leading to the error you're receiving. To fix this, edit your script to include the command 'setvar 0x8004 0x0' before the nicknaming special and everything should work perfectly.
     
    The nicknaming special determines which Pokemon you're nicknaming by the value in variable 0x8004. A value of 0x0 indicates that you're nicknaming the first Pokemon, 0x1 is the second etc. Now the game starts out with 0x8004 set to 0x0 by default, but turning on the PC in the player's room (not even taking out the item), 0x8004 is set to 0x1 as an argument for the PC special. So if you interact with the PC, 0x8004 is no longer set to 0x0, leaving the nicknaming special to try and nickname the second Pokemon in your party which doesn't exist, leading to the error you're receiving. To fix this, edit your script to include the command 'setvar 0x8004 0x0' before the nicknaming special and everything should work perfectly.

    That seems to have fixed it! Thank you! Is there something similar that I need to do for future give Pokemon scripts? Or is this the only case where this could happen?
     
    Last edited:
    Back
    Top