• Do not use Discord to host any images you post, these links expire quickly! You can learn how to add images to your posts here.
Resource icon

v21.1 Automatic Level Scaling 1.5.1

This resource pertains to version 21.1 of Pokémon Essentials.
  • Add evolution level for all natural evolution methods. If there's more than one natural evolution with different levels, the lowest level is considered for all evolutions (I don't think this ever happens among all pokemon up to this point).
  • If INCLUDE_NON_NATURAL_EVOLUTIONS is false, now natural evolutions are considered as an evolution possibility for pokemon with multiple evolutions. Previously, if one of the evolutions was not natural, the pokemon would not evolve at all, now it'll only evolve to the ones that use a natural method.
  • Add the includeNextStages setting. If false, stops evolution at the species used in the function call (or defined in the PBS).
  • Add the reset_settings EventHandlers.
  • Update code readability and optimization.
  • Like
Reactions: E4Artemy
Pokemon with regional forms finally evolve using their default evolution methods instead of the default evolution levels. The POKEMON_WITH_REGIONAL_FORMS array is not necessary anymore (no bugs would happen if you include it by accident either).
Like pokemon with multiple evolutions, if you select, in the PBS or a function call, a regional form evolution for a non-regional form pokemon with multiple evolutions, the script will automatically select the regional form used. For example, you can select alolan exeggutor in the encounters PBS, and only alolan exeggutors will show up in the area (or exeggcutes if the trainer is below the default first evolution level). If no specific regional form is provided, the script will always select the first form. This might be more intuitive in practice than in this explication.

The include_non_natural_evolutions setting is now included and enabled by default, if disabled, all pokemon that evolve with one or more methods not included in the NATURAL_EVOLUTION_METHODS will not evolve. You can also change its value using AutomaticLevelScaling.setTemporarySetting and AutomaticLevelScaling.setSettings.
  • Like
Reactions: E4Artemy
Fix settings reset after the first setNewLevel in the trainer EventHandlers. Updated variable and property names and removed unnecessary nesting, for code readability.
  • Like
Reactions: Jedahjony
For the sake of optimization, simplicity, and code readability, the DIFFICULTIES array is now a hash. Changing the difficulty works the same as usual, the only difference is, when creating a difficulty, instead of passing the id in the constructor of a Difficulty, you can simply use the hash index.
Fix a bug related to only_scale_if_lower and only_scale_if_higher in v19.
From now on, using the final stage in the PBS (or in a function) will set the pokemon to a specific evolution, while using any previous stage will make the evolution random.
Fix proportional scaling going over the max level.
Add include_previous_stages settings, when true, returns pokemon to their previous evolution stages if they did not reach their evolution level.
  • Add setTemporarySetting method, an updated version of setSettings.
  • Add getScaledLevel method, for difficulty-based gift pokemon, trades, and fixed encounters.
  • Updated docs.
Changelog:
  • Fix regional forms evolutions to evolve according to the previous form.
  • Fix first_evolution_level not working properly.
Back
Top