How to Combine Evolution Methods?

AvaMareep

Rookie
Member
Joined
Jul 6, 2018
Posts
1
Hi all. I'm not new to pokemon essentials, I've been toying around for years but I'm getting down to actually making a game. I have some questions about evolution. I'm running v17.2

I want to make pokemon that evolve with items through trade (Onix-Steelix with metal coat) evolve through one of the following methods:

Level and held item - Onix evolving to Steelix at upon level up at lvl32 or higher so long as it's holding metal coat

Level and use an item - I changed pokemon.txt and metal coat in the debug menu so that onix can evolve to steelix when using metal coat on it, but there's no level restriction.

Level and Custom item - I followed instructions to implement my own item (Omnistone) into the game. It "simulates the energy normally put off by pokemon trades". Esentially, it activates evolution normally activated by trading (magmortar from holding magmarizer, etc) While the item shows up and I can select the use option, it has no effect. I assume I'd have to put it in pokemon.txt, but how would I combine the use of it with the need to hold an item or a specific level? I used the Linkstone tutorial by FL, who made Pokemon Island, on essentials wiki, but the section of the script it says to modify has changed since that tutorial was put up, and I wasn't able to finagle it to work.

I suppose it's not the most essential. I could, of course, balance it so that players don't get the items til their pokemon should be of a certain level, so they don't have a level 5 Slowking, or something ludicrous.

Or perhaps, a script for an npc that checks the first pokemon in your party to see if you have a pokemon that evolves from an item, and only giving it out at that level?

Any help is greatly appreciated :)
 

ArchyArc

Lead Developer of Pokemon Sacred Johto
Member
Joined
May 10, 2017
Posts
37
so i use 16.2 so it might be easier to do it in 17.2 but ill try to help.

Since these are new evolution methods you'll have to add them for the Pokemon.txt to notice them. only custom one my game has is a stone + item. (replaces trading with items) however levels aren't apart of it.


One simple way is to allow them to evolve by both stone and level or by held item and level seperately so two evolution methods. but thats not what you want.
in Pokemon_Evolution script, find where is says;

when PBEvolution::Custom 1

when PBEvolution::Custom2
...
these are custom evolution methods. you can change their names but make sure wherever it says Custom 1 in that file change it to the name or else it wont work.

then both custom and using item are the same.

Code:
when PBEvolution::Custom2
    return poke if pokemon.level>=level && if pokemon.item==level
  when PBEvolution::Custom3
    return poke if pokemon.level>=level && level==item

So custom 2 (as i have a custom 1 evolution method, so ignore that) is Level + Hold item
while custom 3 is Level + Using an item.

however these should work, i'm not sure how to set them up in the Pokemon.txt, if its Custom 2,34,DUSKSTONE or something else, might have to test with that and come back to me xP
 
Top