This Library is a dependency for JeremyUI, it provides spell data parsed from the DBCache.bin file in a format that can be used by the Lua engine and several functions to facilitate parsing it.
This library allows me to support several patches at once and automatically update values from spell data instead of hard-coding them.
For the most part it mimics the functionality of SimC for these purposes.
JeremyUI is the first and only WeakAuras UI that uses AI to generate a rotation in realtime!
This WA takes data about the player and the enemies you're fighting and organizes your available actions into a table of function coefficients. Resource costs, and time to complete each action are used as multidimensional constraints. I then use a branch and bound algorithm to rank each candidate action. The value of each action is dependent on spec and includes damage, healing, cooldown reduction, procs, talents, and other effects. These are calculated statistically. Each state space search extends 5 seconds into the future and is recalculated in 500ms intervals unless pushed ahead by a spec feature.
For data that cannot be gathered from DBCache, Combat Log, or API functions (e.g., number of enemies hit by a frontal cone ability) I use machine learning to determine a weighted average.
Currently JeremyUI supports only a couple specs.
Click here to find JeremyUI on wago.io