When a pool is about to fill up it will select the lowest mastery that can be leveled without dropping below 95% (or a custom threshold). If there is no mastery cheap enough then it will select the cheapest.
You can see everything it levels up in the console. For example: AutoMastery: Leveled up Teak Logs to 57 for 16,116 XP because it was the highest that could be leveled without dropping below 95% (Earned 144.264 XP. Pool before: 100.000%. Pool after: 99.601%)
You can instead select specific masteries to focus on via the console by setting AUTOMASTERY.settings[skill].selectedMasteries
to an array containing the desired mastery ids. Default is []
for automatic selection.
You can change the threshold for a skill via the console by setting AUTOMASTERY.settings[skill].threshold
to the desired percentage. Default is 95
.
You can have it select the highest instead of the lowest mastery for a skill by setting AUTOMASTERY.settings[skill].selectLowest
to false
.
The mastery to level up gets chosen like this:
if the pool is about to reach 100% (or a custom % via AUTOMASTERY.settings[skill].spendWhenPoolReaches):
if specific masteries have been selected by the user via AUTOMASTERY.settings[skill].selectedMasteries, and those aren't all maxed yet, then only look at those
select the lowest mastery that can be leveled while staying above the threshold (95% or custom via AUTOMASTERY.settings[skill].threshold)
(or highest if AUTOMASTERY.settings[skill].selectLowest is false)
(if the highest/lowest value appears multiple times then select the last one in the list)
if no mastery selected:
select the cheapest to level mastery (because this will drop the pool below the threshold)
(if the lowest value appears multiple times then select the last one in the list)
if a mastery is selected then level up that mastery