From RPTools Wiki
Jump to navigation Jump to search

eval() Function

Introduced in version pre-1.3
Evaluates an expression in a string and returns the result. The string contains the same type of expression that is usually located between macro brackets (e.g { } or [r: 2+2]). eval() is commonly used to evaluate dynamically built input() parameters, or dice expressions stored in token properties. For more complex evaluation functions, see evalMacro() and execMacro().




  • expr - A string containing the expression to be evaluated.


[r: eval("1+1")]

Returns 2

[r: eval("3d6")]

Returns a random number from 3 to 18.

[r: eval("TestVar = 2")]

Returns 2

[h: TestVar = 2][r: eval("TestVar/2")]

Returns 1

Tip Since eval() only accepts strings as parameter and it happens quite often that you have either numbers or strings following code is a good method to make it work in any case.

[h: foo = eval(string(bar))]

See Also