[REL] Data debugger
Well, this is my first lua script for toribash. It copies all variables into a file, named bump.txt at the game folder. If the variable is a table, it will copy it content also. If the variable is a table calling itself or calling its parent, it won't be copied again (for instance, table _G).
Lua progammers: you can use my own PrintTable function that prints a whole table in your own lua.
local table_already_printed = {}
local printfunction
local function PrintTable(tab , tabuls)
if not (tabuls) then
tabuls = 0
end
if (type(tab) ~= "table") then
error("Is not a table",2)
end
if (table_already_printed[tab]) then
return
end
table_already_printed[tab] = true
local outputtabs = ""
if (tabuls > 0) then
for i = 1, tabuls do
outputtabs = outputtabs.." "
end
end
printfunction(outputtabs.."{\n")
for k,v in pairs(tab) do
printfunction(outputtabs..tostring(k).." = "..tostring(v).."\n")
if (type(v) == "table") then
PrintTable(tab,tabuls + 1)
end
end
printfunction(outputtabs.."}\n")
end
local oldoutput = io.output()
io.output("bump.txt")
local file = io.output()
printfunction = function(text)
file:write(text)
end
table_already_printed[_G] = true
for k,v in pairs(_G) do
printfunction(tostring(k).." = "..tostring(v).."\n")
if (type(v) == "table") then
PrintTable(v,1)
end
end
io.output(oldoutput)
Here is an example of what it does:
...
get_downloads = function: 003E8E48
set_joint_force_color = function: 003EAA40
uke_score = 3000
get_full_mode_chat_lines = function: 003ECC18
collectgarbage = function: 003E4F58
indiv = table: 0FE27C88
{
fitness = 120194:
jointVals = table: 0FE27C38
}
set_option = function: 003E7600
indicate_joint = function: 003E5658
...