• 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!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • 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.

[Essentials Tutorial] Pokemon-Amie in Essentials, plus the Affection, Fullness, and Enjoyment stats

rigbycwts

Hmm, hmm.
  • 98
    Posts
    12
    Years
    • Seen Feb 22, 2019
    This tutorial implements the Affection, Fullness, and Enjoyment stats. Also includes a toned-down version of Pokemon-Amie.

    You know this drill: to avoid breaking codes, set the thread to Printable.

    1. Modify PokeBattle_Pokemon:
    Spoiler:

    2. Modify PokeBattle_Battler:
    Spoiler:

    3. Modify PokeBattle_Battle:
    Spoiler:

    4. Add the following script below the EBS scripts if you have them, but put it above Main.
    Spoiler:

    5. Modify PScreen_Pokegear to enable Pokemon-Amie.
    Spoiler:

    Screenshot:
    [PokeCommunity.com] Pokemon-Amie in Essentials, plus the Affection, Fullness, and Enjoyment stats
     
    Last edited:
    A few criticisms:

    1.) When a player trades a Pokemon, the Pokemon's affection resets to zero. As far as I noticed, there is no mention of this in the code.

    2.) I see you initialize a MAXAMIESTATVALUE as if letting developers choose their own maximum, but in other places you act as if the max is a hardcoded 255. Minor inconsistency.



    That being said, this script looks awesome and shows a lot of promise.
     
    A few criticisms:

    1.) When a player trades a Pokemon, the Pokemon's affection resets to zero. As far as I noticed, there is no mention of this in the code.

    2.) I see you initialize a MAXAMIESTATVALUE as if letting developers choose their own maximum, but in other places you act as if the max is a hardcoded 255. Minor inconsistency.

    That being said, this script looks awesome and shows a lot of promise.
    For #1, I added a function called resetAffection which resets the Affection to 0.
    For #2, the hardcoded 255 values are replaced with MAXAMIESTATVALUE.

    Changes are already in the first post.
     
    One (minor) nitpick, why have people replace parts of vanilla scripts manually.
    From my experience this leads to mistakes on the users part and more potential questions for you to deal with.
    I would advice to just alias the edited methods and add the necessary properties etc and put it all in one 'script'.

    I don't have any interest in Amie myself, but thanks for sharing this with the community.
     
    One (minor) nitpick, why have people replace parts of vanilla scripts manually.
    From my experience this leads to mistakes on the users part and more potential questions for you to deal with.
    I would advice to just alias the edited methods and add the necessary properties etc and put it all in one 'script'.

    I don't have any interest in Amie myself, but thanks for sharing this with the community.
    It is intentional since when someone wanted to implement something like an evolution script that uses these attributes (e.g. the Eevee to Sylveon method), and/or a move that the power or effect is based on the Affection stat, for example, it looks convenient in my point of view to edit vanilla scripts instead of going for plug-and-play.

    EDIT: Step 3 of this tutorial is also my reason for editing vanilla scripts. I want to make it similar to the actual games when it comes to the text being displayed.
     
    Yeah. Step 3 is the main reason not to make this plug-and-play. Most of the edits people make to games is to the battle system.
    I agree. It's because I wanted to add something like this, regardless of the battle system being used (whether EBS or the default Essentials battle UI):
    [PokeCommunity.com] Pokemon-Amie in Essentials, plus the Affection, Fullness, and Enjoyment stats
     
    Your doing really great! I need this for my game project! Thank you, I'll credit you and use it!
     
    I did everything according to directions in printable version but I get this error when going into Pokemon Amie through the Pokegear:

    Exception: NameError
    Message: uninitialized constant Scene_Pokegear::PokeAmie_Essentials
    PScreen_Pokegear:161:in `update_command'
    PScreen_Pokegear:159:in `pbFadeOutIn'
    PScreen_Pokegear:159:in `update_command'
    PScreen_Pokegear:133:in `update'
    PScreen_Pokegear:114:in `main'
    PScreen_Pokegear:111:in `loop'
    PScreen_Pokegear:118:in `main'
    PSystem_Utilities:995:in `pbLoadRpgxpScene'
    PScreen_PauseMenu:168:in `pbStartPokemonMenu'
    PScreen_PauseMenu:143:in `loop'

    If it matters, I don't use EBS so I skipped part 4 (I assume that part is only for EBS users)
     
    I did everything according to directions in printable version but I get this error when going into Pokemon Amie through the Pokegear:

    Exception: NameError
    Message: uninitialized constant Scene_Pokegear::PokeAmie_Essentials
    PScreen_Pokegear:161:in `update_command'
    PScreen_Pokegear:159:in `pbFadeOutIn'
    PScreen_Pokegear:159:in `update_command'
    PScreen_Pokegear:133:in `update'
    PScreen_Pokegear:114:in `main'
    PScreen_Pokegear:111:in `loop'
    PScreen_Pokegear:118:in `main'
    PSystem_Utilities:995:in `pbLoadRpgxpScene'
    PScreen_PauseMenu:168:in `pbStartPokemonMenu'
    PScreen_PauseMenu:143:in `loop'

    If it matters, I don't use EBS so I skipped part 4 (I assume that part is only for EBS users)

    My bad. Step 4 uses EBS's Animated Bitmap Wrapper.
     
    Back
    Top