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

[Question] Regional Pokemon Variant Megas?

  • 2
    Posts
    10
    Years
    • Seen Jul 8, 2022
    So, for my rom hack, I'm trying to figure out how to add mega forms for a different form of a Pokemon? First, would for regional form be in pokemonforms txt or do I have to classify it as its own Pokemon? Or do I put the form in, then classify it with the mega form?
     
    If I'm not mistaken, if you're mentioning pokemonforms.txt, then you're not working on a ROM hack, you're working with Pokémon Essentials.

    Golisopod-User made a Gen 8 project which contains the script that you want.

    The example I'm giving here is based on the case of Slowbro: form 0 can mega-evolve, and form 1 (Galarian) cannot.

    So, how do you add a new Mega to another form?

    Let's say you have a new form for Weavile. In your pokemonforms.txt, you have:
    Code:
    #-------------------------------
    [WEAVILE,1]
    FormName = This is a test form
    Type1 = GRASS
    Type2 = FAIRY
    This is the "base form" for your new Mega. Then, you need to define a new form for your Mega:
    Code:
    #-------------------------------
    [WEAVILE,2]
    FormName = Mega Weavile of the Test form
    Type1 = GRASS
    Type2 = FAIRY
    MegaStone = WEAVILETESTFORMITE
    UnmegaForm = 1

    Two lines require your attention here.

    The first line is:
    Code:
    MegaStone = WEAVILETESTFORMITE
    This is the name of the Mega Stone, here WEAVILETESTFORMITE - Weavile Test Formite.

    The second line that requires your attention is:
    Code:
    UnmegaForm = 1
    Here, you are specifying that the form 2 being a Mega-form, should revert to form 1 instead of form 0 (which it would if you don't specify this line).

    But that's not it.

    You need to do a bit of scripting too.
    Code:
    MultipleForms.register(:WEAVILE,{
      "getSpecificMegaForm" => proc { |pkmn|
        next 2 if (pkmn.form == 1 && pkmn.hasItem?(:WEAVILETESTFORMITE))
        next
      },
      "getSpecificUnmegaForm" => proc { |pkmn|
        next 1 if pkmn.form == 2
        next
      }
    })
    This script says that only form 1 of Weavile can Mega-Evolve, and it will mega-evolve into form 2.

    So, I am not sure why there seems to be redundancy between pokemonforms.txt and this script, the thing is, this script is necessary.
     
    Back
    Top