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

[Scripting Question] Remove Type when mega evolving

37
Posts
5
Years
    • Seen Jul 25, 2020
    I want to make a Mega Evolution of Mew, but i want him to lose his psychic type and substitute it with "???" type, i found out how to make him type "???" but i don't know how to remove psychic type
     
    26
    Posts
    6
    Years
    • Seen Dec 19, 2018
    I'm pretty sure all you have to do is just annotate in Pokemonforms.txt the typing of the Mega Evolution, and it should completely change its typing based on that. For example:

    [MEW-1]
    FormName=Mega Mew
    MegaStone=Mewnite
    Type1=???
    BaseStats=100,100,100,100,100,100
    Abilities=PRESSURE

    This should replace its typing to ??? when mega evolved. Make sure to test it with another typing first just in case ??? is the issue. I just tested it with Gyarados so when Mega evolved, it loses its Water typing and simply changes it to pure Dark.
     
    Last edited:
    26
    Posts
    6
    Years
    • Seen Dec 19, 2018
    Uh well you must be using an extremely old version of essentials unless the most recent update removed that .txt for some reason. I'm using the second newest version. Make sure it's not under a different name, because you cant really define an alternate form without some kind of PBS file unless you do it directly in the Pokemon_Forms scripts, which is usually only for defining certain conditions such as when a Pokemon will change form, not their stats or typing. I just don't see how you don't have some kind of form PBS file. Where are you defining the Mega forms?

    EDIT: You don't need to delete a post and make a new one just to quote my post btw you can just use the edit function.
     
    Last edited:
    37
    Posts
    5
    Years
    • Seen Jul 25, 2020
    I'm pretty sure all you have to do is just annotate in Pokemonforms.txt the typing of the Mega Evolution, and it should completely change its typing based on that. For example:

    [MEW-1]
    FormName=Mega Mew
    MegaStone=Mewnite
    Type1=???
    BaseStats=100,100,100,100,100,100
    Abilities=PRESSURE

    This should replace its typing to ??? when mega evolved. Make sure to test it with another typing first just in case ??? is the issue. I just tested it with Gyarados so when Mega evolved, it loses its Water typing and simply changes it to pure Dark.

    I don't have any Pokemonforms.txt file in my PBS
     
    37
    Posts
    5
    Years
    • Seen Jul 25, 2020
    Uh well you must be using an extremely old version of essentials unless the most recent update removed that .txt for some reason. I'm using the second newest version. Make sure it's not under a different name, because you cant really define an alternate form without some kind of PBS file unless you do it directly in the Pokemon_Forms scripts, which is usually only for defining certain conditions such as when a Pokemon will change form, not their stats or typing. I just don't see how you don't have some kind of form PBS file. Where are you defining the Mega forms?

    EDIT: You don't need to delete a post and make a new one just to quote my post btw you can just use the edit function.
    Maybe i'm using an old version but i'm familiar with it(how can i see which version i'm using?). I created the form from the script, i was able to change stats and ability and add type but i can't remove the psychic type
     

    Ego13

    hollow_ego
    311
    Posts
    6
    Years
  • You are probably using version 16

    You can change the type similar to what is used with Castform

    Code:
    "type1"=>proc{|pokemon|
       next if pokemon.form==0            # Normal Form
       case pokemon.form
       when 1; next getID(PBTypes,:FIRE)  # Sunny Form
       when 2; next getID(PBTypes,:WATER) # Rainy Form
       when 3; next getID(PBTypes,:ICE)   # Snowy Form
       end
    },
    "type2"=>proc{|pokemon|
       next if pokemon.form==0            # Normal Form
       case pokemon.form
       when 1; next getID(PBTypes,:FIRE)  # Sunny Form
       when 2; next getID(PBTypes,:WATER) # Rainy Form
       when 3; next getID(PBTypes,:ICE)   # Snowy Form
       end
    }
    },

    The key here is that you need to set both types to the same, otherwise you end up with a dual type. This is because of how Essentials handles the typing. Technically speaking every Pokemon has two types in Essentials, but if they are both the same they will be displayed as being mono-typed.
     
    37
    Posts
    5
    Years
    • Seen Jul 25, 2020
    You are probably using version 16

    You can change the type similar to what is used with Castform

    Code:
    "type1"=>proc{|pokemon|
       next if pokemon.form==0            # Normal Form
       case pokemon.form
       when 1; next getID(PBTypes,:FIRE)  # Sunny Form
       when 2; next getID(PBTypes,:WATER) # Rainy Form
       when 3; next getID(PBTypes,:ICE)   # Snowy Form
       end
    },
    "type2"=>proc{|pokemon|
       next if pokemon.form==0            # Normal Form
       case pokemon.form
       when 1; next getID(PBTypes,:FIRE)  # Sunny Form
       when 2; next getID(PBTypes,:WATER) # Rainy Form
       when 3; next getID(PBTypes,:ICE)   # Snowy Form
       end
    }
    },

    The key here is that you need to set both types to the same, otherwise you end up with a dual type. This is because of how Essentials handles the typing. Technically speaking every Pokemon has two types in Essentials, but if they are both the same they will be displayed as being mono-typed.
    Thank you so much it worked.
     
    Back
    Top