PDA

View Full Version : [Essentials tutorial] Location based evolution script for pokemon essentials


pokehackster
May 21st, 2010, 02:32 AM
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.

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

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.

Peeky Chew
May 21st, 2010, 03:48 AM
Thanks, that'll be helpfull. We need a proper archive for the usefull tutorials.

pokehackster
May 21st, 2010, 05:55 AM
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
May 21st, 2010, 07:14 AM
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:


mossmaps=[
24,
25,
32,
76
]
for i in mossmaps
if $game_map.map_id==i
return poke
end
endThis 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:

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 (http://pokemonessentials.wikia.com/wiki/Evolution[/url). The wiki can also serve well as a place to keep all those tutorials Peeky Chew mentioned.

pokehackster
May 21st, 2010, 10:20 AM
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

Maruno
May 21st, 2010, 11:13 AM
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:

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.

pokehackster
May 22nd, 2010, 02:20 AM
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

Alexandre
May 23rd, 2010, 03:05 AM
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
May 23rd, 2010, 05:59 AM
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.
May 23rd, 2010, 06:08 AM
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
May 23rd, 2010, 06:13 AM
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.
May 23rd, 2010, 06:21 AM
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.

pokehackster
May 24th, 2010, 06:29 AM
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