Difference between revisions of "Scaling"

From Tales of Maj'Eyal
Jump to: navigation, search
(Stubbed combatTalentMindDamage)
(combatTalentScale: Copy edit)
Line 22: Line 22:
  
 
;Example of talent description
 
;Example of talent description
:Talent parameter is '''''x<sub>1</sub>'''''&ndash;'''''x<sub>2</sub>'''''<sup>[[Scaling#cTS|cTS]]</sup>
+
:Talent parameter is '''''x<sub>1</sub>''''''''''x<sub>2</sub>'''''<sup>[[Scaling#cTS|cTS]]</sup>
  
;Simple translation of talent description above
+
;What the talent description is trying to convey
 
:The talent parameter will have value '''''x<sub>1</sub>''''' at talent level 1, and value '''''x<sub>2</sub>''''' at talent level 5, with some diminishing returns.
 
:The talent parameter will have value '''''x<sub>1</sub>''''' at talent level 1, and value '''''x<sub>2</sub>''''' at talent level 5, with some diminishing returns.
 
:''(this is all you need to know in the majority of cases)''
 
:''(this is all you need to know in the majority of cases)''
Line 31: Line 31:
 
:Using the function '''''x(t) = m * (t + shift) <sup>power</sup> + b + add''''',
 
:Using the function '''''x(t) = m * (t + shift) <sup>power</sup> + b + add''''',
 
:find the values of '''''m''''' and '''''b''''' that produce the best fit to the two points '''''x(&thinsp;t<sub>1 </sub>)''''' = '''''x<sub>1</sub>''''' and '''''x(&thinsp;t<sub>2 </sub>)''''' = '''''x<sub>2</sub>''''',
 
:find the values of '''''m''''' and '''''b''''' that produce the best fit to the two points '''''x(&thinsp;t<sub>1 </sub>)''''' = '''''x<sub>1</sub>''''' and '''''x(&thinsp;t<sub>2 </sub>)''''' = '''''x<sub>2</sub>''''',
:then return the value of the talent parameter '''''x(t)''''' with the fitted function using the actual talent level '''''t''''' of the character
+
:then return the value of the talent parameter '''''x(t)''''' with the fitted function given the actual talent level '''''t''''' of the character
  
 
;Default values for the fit parameters are
 
;Default values for the fit parameters are
Line 41: Line 41:
  
 
;Custom fit parameters should be noted on the talent page if possible
 
;Custom fit parameters should be noted on the talent page if possible
:If the talent description is: This skill has a range of 5&ndash;10<sup>[[Scaling#cTS|cTS:0.75P]]</sup>
+
:If the talent description is: This skill has a range of 5–10<sup>[[Scaling#cTS|cTS:0.75P]]</sup>
 
:then the fit parameter '''''power = 0.75''''' will be used instead.
 
:then the fit parameter '''''power = 0.75''''' will be used instead.
  
 
;Example of calculation
 
;Example of calculation
:If the description of a talent is: This skill has a range of 5&ndash;10<sup>[[Scaling#cTS|cTS]]</sup>
+
:If the description of a talent is: This skill has a range of 5–10<sup>[[Scaling#cTS|cTS]]</sup>
 
:then the game will use default values to produce the fit function
 
:then the game will use default values to produce the fit function
 
:'''''x(t) = 4.045 * t <sup>0.5</sup> + 0.955'''''
 
:'''''x(t) = 4.045 * t <sup>0.5</sup> + 0.955'''''
Line 69: Line 69:
  
 
<span id="cTSD"></span>
 
<span id="cTSD"></span>
 +
 
==combatTalentStatDamage==
 
==combatTalentStatDamage==
  
 
<span id="cTWD"></span>
 
<span id="cTWD"></span>
 
==combatTalentWeaponDamage==
 
==combatTalentWeaponDamage==

Revision as of 17:00, 26 July 2014

This page will list some of the scaling functions that are frequently used in game to calculate talent parameters. The sections below are named after the actual function names used in the game's Lua files. The goal here is to provide a very basic understanding of how various talent parameters are scaled so that talent pages do not need to be filled with a plethora of X's. Instead, the actual range of values can be displayed on each talent page with a footnote linking to this article for further details.

For consistency with the Lua code, this page will use x to denote the value of a talent parameter and t the talent level.

combatScale

combatStatLimit

combatStatScale

combatTalentLimit

combatTalentMindDamage

combatTalentScale

Example of talent description
Talent parameter is x1x2cTS
What the talent description is trying to convey
The talent parameter will have value x1 at talent level 1, and value x2 at talent level 5, with some diminishing returns.
(this is all you need to know in the majority of cases)
What the game actually does
Using the function x(t) = m * (t + shift) power + b + add,
find the values of m and b that produce the best fit to the two points x( t1 ) = x1 and x( t2 ) = x2,
then return the value of the talent parameter x(t) with the fitted function given the actual talent level t of the character
Default values for the fit parameters are
power = 0.5
shift = 0
add = 0
t1 = 1
t2 = 5
Custom fit parameters should be noted on the talent page if possible
If the talent description is: This skill has a range of 5–10cTS:0.75P
then the fit parameter power = 0.75 will be used instead.
Example of calculation
If the description of a talent is: This skill has a range of 5–10cTS
then the game will use default values to produce the fit function
x(t) = 4.045 * t 0.5 + 0.955
which would return the following values for the talent's range
Talent Level t Range x(t)
1 5
2 6.68
3 7.96
4 9.05
5 10
6 10.86
7 11.66
In cases such as this where non-integer values are not meaningful, they are generally rounded down to the nearest integer instead.

combatTalentStatDamage

combatTalentWeaponDamage