From ef5b42f01f074143a0c7849b4b069a8e24e63292 Mon Sep 17 00:00:00 2001 From: Kayne Ruse Date: Fri, 21 Jun 2013 18:21:13 +1000 Subject: [PATCH] Added exp calculator --- misc/experience-script.lua | 49 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 misc/experience-script.lua diff --git a/misc/experience-script.lua b/misc/experience-script.lua new file mode 100644 index 0000000..b81cade --- /dev/null +++ b/misc/experience-script.lua @@ -0,0 +1,49 @@ +function CalcExp(base, mod, level) + return math.floor(base * mod ^ level) +end + +function CalcSumExp(base, mod, level) + local ret = CalcExp(base, mod, level) + if (level > 1) then + return ret + CalcSumExp(base, mod, level-1) + else + return ret + end +end + +function CalcExpTables(base, mod, levelCap) + local exp = {} + local sum = {} + for i = 1, levelCap do + exp[i] = CalcExp(base, mod, i) + sum[i] = CalcSumExp(base, mod, i) + end + return exp, sum +end + +--the variables +base = 1000 +mod = 1.14 +levelCap = 20 + +--calc the tables +exp, sum = CalcExpTables(base, mod, levelCap) + +--output the data +io.write("Level\t\tExp\t\tTotal\t\tLaps\n") +for i = 1, 60 do io.write("-") end +io.write("\n") + +for i = 1, levelCap do + if i % 5 == 0 then + sep = "\t---\t" + else + sep = "\t\t" + end + io.write(i, + sep, exp[i], + sep, sum[i], + sep, math.floor(sum[i] / sum[1] * 10) / 10, --rounded +-- sep, sum[i] / sum[1], --real + "\n") +end