This package contains the type of functions which are also used in my spreadsheet LotroPlan for most of the calculations like calculating rating percentages from ratings, item stats from item levels (armour values for instance), LI title stats from I,II,III etc.
The included VisualBasic script compiles statdata.csv which results in the CalcStat.lua file with the major calculation function (other output formats, Star Basic and VB-script, are available, but no support functions are included in this package). Statdata.csv contains currently ~2100 entries (an entry is one stat calculation segment). You can most conveniently view the .csv with a spreadsheet application.
Note: most is up to date with U24, but some effects/passives might be in need of more work. Rule of thumb: if you don't see a segment in the calculation tree which starts or ends in the character level 116-130 range(no typo
) then it's likely not updated(yet).
- fixed a bug in Roman number decoding for LI titles.
- fixed a bug in Roman number decoding for LI titles reprisal.
- added comments to the calculation function support file CalcSsup.lua
- implemented a binary search tree for the stats lookup. tree height/depth is 10 at the moment (max capacity 2^10=1024 stats).
- added more comments to statdata.csv
- some stats were added or changed(made current with BR U23.2p2) see post below.
- added TpenArmour, TpenResist and TpenBPE with the new penetration calculations. N=tier, so like CalcStat("TpenArmour",120,3) for Tier 3.
- added T2penArmour which is the same as the old T2penMit stat (reused in the game). Other old stats T2penResist etc are also still available. Old pen stats are used in older instances (instances without T3).
added some basics like:
- all character class base stat tables
- hope/dread percentages
- stat tome main values: CalcStat("TomeMain",nil,"XVIII")
- stat tome total values (adds up all up to rank): CalcStat("TomeTotal",nil,"XX")
new calculation type 'D'(ata lookup table) for values of which I can't find a good formula fit for
- added virtue stats. Like some other stats, virtue stats come in 3 strengths - L(ow), M(edium) and H(igh). Example: CalcStat("VirtMoraleH",20)
- added new virtue system stats. example: CalcStat("VirtCompassion",60,"PhyMit") gives Physical Mitigation Rating rank 60 Compassion or CalcStat("VirtZeal",49,"VPTacMas") gives Virtue Passive Tactical Mastery Rating rank 49 Zeal.
- VRnkToILvl: virtue rank to item level mapping
- VRnkCap: virtue rank overall cap (60)
- VRnkLvlCap: virtue rank character level based cap
- VirtRnkCost: virtue xp cost single rank
- VirtRnkCostTot: total virtue xp cost to reach rank from 0