

Mkxp-z is the replacement to RGSS that Essentials uses, and is the basic game framework on which Essentials is built. I can't promise it will be that clever about it, but at least the AI now knows what a Revive does. Certain wild Pokémon, namely Legendary/Mythical/Ultra Beast Pokémon, can have a higher skill level and will not use moves entirely at random - this also depends on a flag, but one in pokemon.txt rather than trainer_types.txt. Many of these skill flags are given to a trainer automatically based on their trainer type's skill level.

There's a flag for whether the trainer should keep their final Pokémon until last, for example. Now, though, some skill flags have been invented, which dictate how a trainer's AI behaves. Skill flags were supported in previous versions of Essentials, but were unused. And if the AI breaks while deciding what to do, it will no longer give the player a free shot by doing nothing at all for that round. They'll also avoid using a move which scores significantly worse than another move they could use - previously it would just have a smaller chance to use such bad moves.

There's a bit less randomness now, as trainers will completely avoid using a move they know will fail. I also added a lot of new code and calculations to give the AI a better idea of how things work and what situations are good and bad. I broke it into more manageable chunks and rewrote pretty much all of it. This post is a summary of the bigger changes, and you can check out the change log linked above to see a more exhaustive list of what's new.Ī year ago, I asked people what they most wanted to be done to Essentials, and the biggest response was "improve the AI". This is mostly unintentional, and a year just seems to be how long it takes to make a version's worth of changes. The trend these days is for Essentials to get a new release each year.
