FANDOM


Allowing Pokemon to learn moves from a former evolution
This tutorial was written by Swdfm.
Click here for more tutorials!


This tutorial explains how to allow the Move Relearner to reteach moves to Pokemon that can only be obtained through a former evolution.

Some Pokemon that evolve with stones don't have the same moveset that their former evolutions have, and can't even be retaught it. Doesn't really sound fair to me. So that's why I solved it!

OK, so you could go the long way about it, and change all the Moves in the PBS folder so that Pokemon can learn moves from their former evolutions, but that is very tedious and time consuming.

Or you could do this!

In PokeBattle_Pokemon

Before line

def resetMoves

put

def getBabyMoveList
movelist=[]
atkdata=pbRgssOpen("Data/attacksRS.dat","rb")
offset=atkdata.getOffset(pbGetBabySpecies(@species)-1)
length=atkdata.getLength(pbGetBabySpecies(@species)-1)>>1
atkdata.pos=offset
for k in 0..length-1
level=atkdata.fgetw
move=atkdata.fgetw
movelist.push([level,move])
end
atkdata.close
return movelist
end

In PScreen_MoveRelearner

before line

def pbHasRelearnableMove?(pokemon)

put

def pbEachBabyNaturalMove(pokemon)
movelist=pokemon.getBabyMoveList
for i in movelist
yield i[1],i[0]
end
end

in def pbGetRelearnableMoves(pokemon), before the line

tmoves=[]

put

pbEachBabyNaturalMove(pokemon){|move,level|
if level <=pokemon.level && !pokemon.hasMove?(move)
moves.push(move) if !moves.include?(move)
end
}


This method has a few setbacks. While it is useful, it allows Pokemon to learn moves at probably an earlier level than they should. (Traditionally, lower evolutions are supposed to learn moves quicker). There are methods you can use to counteract this, such as putting a lower level limit on the Move Relearner.

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.