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

Vanilla 17.2 Evolution and forms

Azurestonedog

AZR Stonedog
21
Posts
7
Years
  • I know that the spiky-eared pichu has a section in the evolution code that prohibits it from evolving. If I'm adding just the Alolan forms of the Kanto dex mon, do I need lines near to or around that area in order to make sure that they evolve into the right form (ie ASandhsrew - ASandslash (defined internally as SANDSHREW-1 and SANDSLASH-1))? along the lines of

    def pbCheckEvolutionEx(pokemon) #Vanilla location of spiky-eared pichu non-evolution

    return 1 if isConst?(pokemon.species,PBSpecies,:SANDSHREW) && pokemon.form==1

    I looked at the wiki, but it could do with some more clarity on this
     
    Last edited by a moderator:
    772
    Posts
    13
    Years
    • UK
    • Seen Apr 19, 2024
    Just set the evolution as something that can't be obtained normally in the pokemon.txt pbs and put the correct evolution in the forms pbs

    i.e.
    for vulpix i have in pokemon.txt
    Evolutions=NINETALES,Item,FIRESTONE,NINETALES,Location,51

    then in the forms txt file
    Evolutions=NINETALES,Item,ICESTONE

    Thats the way i understand from the instructions and it does seem to work
     

    Azurestonedog

    AZR Stonedog
    21
    Posts
    7
    Years
  • Thanks, I read that part on the wiki and it seemed weird, so I wanted to demonstrate that I was looking at possible other examples in order to better my understanding. an example like that in the wiki and some rationale behind why that has to be the case would help reduce the weirdness, not that you should write it
     
    40
    Posts
    8
    Years
    • She/Her
    • Seen Apr 11, 2024
    As far as I can tell, adding new parts to the forms sections act as what I can only describe as a Non overwriting "I do it this way too" kind of thing.
    This is my understanding so I may be wrong.
    My brain has complicated ways to understand things that aren't the usual ways so hope this makes sense.
     

    Maruno

    Lead Dev of Pokémon Essentials
    5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    As far as I can tell, adding new parts to the forms sections act as what I can only describe as a Non overwriting "I do it this way too" kind of thing.
    This is my understanding so I may be wrong.
    My brain has complicated ways to understand things that aren't the usual ways so hope this makes sense.
    No. If it's written in pokemonforms.txt, it REPLACES whatever was written in pokemon.txt for that property (but only for that form). If you wanted to add a single extra evolution method to Eevee form 1, you'd have to write out ALL of the existing evolutions again from the base form for form 1, and add the extra method on the end.

    The wiki was worded a little abstractly, I see. I used "evolution path" to specifically refer to the species a Pokémon will evolve into - it has nothing to do with the method. If there's a species that the base form cannot evolve into but an alternate form can, the base form (i.e. what's in pokemon.txt) should also list that species in its evolution line (but with an impossible evolution method). I've rewritten the wiki to hopefully clarify this.

    I've not tested this, but "Unknown" is technically an evolution method too. It does nothing. As far as I'm aware, you could define for Sandshrew form 1:

    Code:
    Evolutions=SANDSLASH,Unknown,
    and Sandshrew form 1 won't be able to evolve. I'll test it later, and modify the Pichu example in Essentials if it's good.



    The original question was "do I need to do anything special to make sure an Alolan Pokémon remains Alolan when it evolves?". Answer: no. A Pokémon retains its form number when it evolves, so a Sandshrew form 1 would become a Sandslash form 1. You'd just call form 1 for each of them "Alolan", and name those forms and make sprites and such for them and so on. If both the base form and the Alolan form evolve in exactly the same way (e.g. Diglett and Alolan Diglett both evolve at level 26), you don't even need to have an "Evolutions=" line for the Alolan form, since it's not different. If a property isn't written in pokemonforms.txt, it'll inherit from the base form in pokemon.txt.
     
    Back
    Top