• 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?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best places on the 'net to talk Pokémon and more! Community members will not see the bottom screen advertisements.
  • Want to share your adventures playing Pokémon?
    Check out our new Travel Journals forum for sharing playthroughs of ROM Hacks, Fan Games, and other Pokémon content!
  • IMPORTANT: Following a takedown request, the following hacks have been delisted from PokéCommunity:

    • Pokémon Glazed
    • Pokémon: Giratina Strikes Back
    • Pokémon Flora Sky
    • Pokémon Stranded
    The downloads and discussion threads for these hacks will no longer be accessible, and staff will be unable to return questions regarding accessing this content.

Stop Eevee from evolving?

19
Posts
11
Years
  • Seen Jul 25, 2012
Back with another question!

So in my Pokemon adventure, the player starts with an Eevee. Thing is, I don't want the player to be able to evolve said Eevee into an Umbreon or Espeon before the first gym. The point of the game is once you beat the first gym, you're given a choice of one of either water stone, fire stone or thunder stone as a prize instead of a TM as it usually is, and then two areas open up to allow you to evolve your Eevee into either a Leafeon or Glaceon.

Preventing those five evolutions is fine but how would I prevent the player from evolving the Eevee into an Umbreon/Espeon before the first gym?

Also how would I go about setting up an NPC that says one thing while having a certain pkmn in your party and another thing if you don't have it in your party? Like if I had an Eevee in my party, the NPC would say 'that's a cute Eevee!' and if I didn't have an Eevee, it'd say "Cute pokemon!" or something.

Thanks!

(please no criticism on me choosing Eevee as the starter for this game @A@ )
 
28
Posts
15
Years
to check for a pokémon in your team you have to use a conditional branch with pbHasSpecies?(::PBSpecies::EEVEE)
The other questition ... i think you have to change the pokemon.txt during the game, but i don't know how
 
19
Posts
11
Years
  • Seen Jul 25, 2012
Ah thanks for the first thing =D Will try that out!

For the second thing, thanks xD I'll take a deeper look into it. In the meantime, does anyone else know how?
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Basically, what you're saying is that you don't want Eevee to evolve before the first Gym (although most of its evolution options aren't available yet anyway). Do we know of something else that prevents evolution? The Everstone?

In the same place that the Everstone does its thing, you should add a copy of it except for it applying to Eevee while a particular Global Switch is off (rather than checking the held item). This Switch should be turned on once the first Gym has been beaten. Luckily, you'll be using such a Switch anyway to unlock the next path, so just use that one.
 

Nickalooose

--------------------
1,309
Posts
15
Years
  • Seen Dec 28, 2023
The best and easiest way would be to edit PokemonEvolution in the scripts and use a switch OR a variable(I would use a variable if you want Espeon or Umbreon before the other);

To use a switch, set a switch for this particular thing, set it to true in the event AFTER you beat the gym leader... Then add:
Code:
&& $game_switches[x]==true

Change x to fit the number...

For a variable;

Maybe you'll want to have on before the other... But that's a diferent type of question.

But variable is the same, just set the variable to 1, and add;
Code:
&& $game_variables[x]>=1

After the evolution method that has happinessday and happinessnight as "poke if" I'm not at a computer at the moment so I can't specify the exact method but that's how you'd do it at least...

This means that when any Pokemon can't evolve by day or night. Until you turn one of this on so hopefully you won't have that problem

EDIT: damn you Maruno you beat me haha
 
19
Posts
11
Years
  • Seen Jul 25, 2012
Maruno - Ohhh a global switch makes sense! So what you're saying is make a copy of an everstone, so that it does the same thing, but make it an item that is not a held item or one that is put in your bag or something? Switch the global switch on/off for the beginning then off/on when the gym is beat?

Nickalooose - Ahh thanks too =D I just reaallly don't want to play with the actual scripts for now. I understand very little in that area, just enough to know sort of how to use it in events and stuff and I don't want to screw anything up. ><
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Maruno - Ohhh a global switch makes sense! So what you're saying is make a copy of an everstone, so that it does the same thing, but make it an item that is not a held item or one that is put in your bag or something? Switch the global switch on/off for the beginning then off/on when the gym is beat?
No no no, you don't need to make an item. An item is what the Everstone IS, not what it DOES. You just need to copy what it does, in the same place as it.

In the script section PokemonEvolution, find the following code (at the bottom) and add the red part:

Code:
def pbCheckEvolutionEx(pokemon)
  return -1 if isConst?(pokemon.item,PBItems,:EVERSTONE)
  [COLOR=Red]return -1 if isConst?(pokemon.species,PBSpecies,:EEVEE) && !$game_switches[42][/COLOR]
  return -1 if pokemon.species<=0 || pokemon.egg?
  ret=-1
  for form in pbGetEvolvedFormData(pokemon.species)
You may well use a different Switch number. The Switch will start off being OFF, and you turn it ON once the player has defeated the Gym.

That's all.
 
19
Posts
11
Years
  • Seen Jul 25, 2012
Oh okay now I get it. Oops. =3

Works perfectly! Thanks so much!
Now to figure out why my leader doesn't say what I told her to say after the battle... O-o

But yes, thanks so much!
 
Last edited:
Back
Top