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

[Essentials Tutorial] Location based evolution script for pokemon essentials

89
Posts
15
Years
  • Seen Apr 5, 2016
i was looking through some older tutorials and though of a way to have a location based evolution in poccil's starter kit with minimal effort.
Code:
        return poke if $game_map.map_id==level  && pokemon.happiness>=220
Just copy that into one of the custom evolution types. Then if you want to make a location based evolution for a pokemon then you can make it like so:
nextstage,custom#,map_id#

heres and example for making nosepass evolve into probopass at map with an ID# of 30
Code:
PROBOPASS,Custom1,30

If a Nosepass with high happiness battled on that map and won it would evolve into probopass.

no credit required for this code.
 
89
Posts
15
Years
  • Seen Apr 5, 2016
its no problem XD i just kinda thought it up while i was looking at some old rmxp scripts of mine i still feel like a newb though cause i still cant figure out if the starter kit has a hall of fame script or if i have to make one =/

EDIT: although i might see if poccil wants some of the stuff ive added to it 0.0 ive already updated it to have all the sprites from gen3+ for the trainers and updated those charsets with DS ones
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
That's one possible way of doing location-based evolution, but it'll only accept one map ID. An alternate way would be to make a new evolution method (called "MossyRock" or whatever), and use something like the following:

Code:
mossmaps=[
    24,
    25,
    32,
    76
]
for i in mossmaps
 if $game_map.map_id==i
  return poke
 end
end
This allows you to list all the maps on which you want the Pokémon to evolve via this method. The corresponding line to put in pokemon.txt is as follows:

Code:
Evolutions=LEAFEON,MossyRock,
You'd make another evolution method for "IcyRock", and so on for each evolution location in your game.

Naturally, that's just one other possibility. There are many kinds of methods you can invent. More information on evolution can be found on the wiki. The wiki can also serve well as a place to keep all those tutorials Peeky Chew mentioned.
 
89
Posts
15
Years
  • Seen Apr 5, 2016
actualy the way i set it up it should evolve any pokemon based on the map number you put as the map ID in pokemon.txt not just a single area

edit: but your script does give me an idea for a new way to do it thats even easier ^.^ so thank you and i have checked out ur wiki it does help when im in a bind for trying to finish somethin in my game
 
Last edited:

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Your method does indeed work reasonably. The only downside (which my version fixes) is that, if you have several maps in which the evolution will take place (e.g. a large forest or cave), then the pokemon.txt line will look something like this:

Code:
Evolutions=LEAFEON,Location,30,LEAFEON,Location,31,LEAFEON,Location,46,LEAFEON,Location,65...
A bit longwinded, I thought, and not quite as easy to organise. It'd still work, of course.


It's not my wiki, it's everyone's. ;) It's good to know at least someone is finding it useful, though.
 
89
Posts
15
Years
  • Seen Apr 5, 2016
Yeah Im most likely going to use my method in my game cause Ive already added the script XD but Im working on mapping rite now and its taking forever -.- but I have managed to make some progress so far. I was gonna release it earlier this month but I had to throw the deadline out the window cause of how long it took me to edit all the trainer sprites I added. Which Im thinking of just packing them into a zip file and sharing them on here or sending them to poccil since they were formatted for the starter kit all i gotta say is having almost every trainer sprite from gen3+ is a good way to throw some diversity into a game
 
401
Posts
19
Years
  • Age 29
  • Seen Dec 4, 2016
I don't recommend ever using the statement if $game_map.map_id == x. I don't exactly know why, but that has caused problems for both me and Luka in the past. Maybe poccil has fixed it, but it whenever I used that, it did give me headaches >.>
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
Interesting you should say that. I haven't used that phrase much, but it hasn't given me problems. I can't see why it should, either (unless you mix up "=" and "==").
 

Luka S.J.

Jealous Croatian
1,270
Posts
15
Years
Interesting you should say that. I haven't used that phrase much, but it hasn't given me problems. I can't see why it should, either (unless you mix up "=" and "==").

Maybe its only for the older versions of essentials, but when we tried using $game_map.map_id==bleh, every map was cut off. Connections didn't work and sometimes you would even get stuck in places. I still haven't found out why it did it, but from my experience, the safest way would be using $game_map.name.include?("bleh"). Works all the time for me.
 

Maruno

Lead Dev of Pokémon Essentials
5,285
Posts
16
Years
It must be the way you used it. I'm using the 3rd Feb 2009 version (quite old), and for simple checks like the one this thread is about, there's no problems.
 

Luka S.J.

Jealous Croatian
1,270
Posts
15
Years
It must be the way you used it. I'm using the 3rd Feb 2009 version (quite old), and for simple checks like the one this thread is about, there's no problems.

LOL....I have the 2007 version of Essentials, I'm on the quite old one :P Which is why some of the things might not work properly.
 
89
Posts
15
Years
  • Seen Apr 5, 2016
o.0 wow u guys are waaaaaay behind im on the newest one and it is amazing shadow pokes multiform pokes almost everything u could ever need in the kit is updated well cept for the trainer sprites and the charsets but i took care of that =3
 
Back
Top