You have to check the file AI_Move, and more precisely the function pbRegisterMoveWild.
In Pokemon Essentials v18.dev (and probably in any other version of Essentials), the code of this function is:
Code:
# Wild Pokémon choose their moves randomly.
def pbRegisterMoveWild(_user,idxMove,choices)
choices.push([idxMove,100,-1]) # Move index, score, target
end
Basically it gives a 100 score to any move the Pokémon has (the higher the score, the more likely it will be chosen). You need to alter the evaluation of the moves, just like in pbRegisterMoveTrainer (which gets the move score from pbGetMoveScore()).