FreeER Grandmaster Cheater Supreme Reputation: 53 Joined: 09 Aug 2013 Posts: 1091
|
Posted: Mon Jan 22, 2018 9:45 pm Post subject: |
|
|
For lua in CE isn't essentially all of that, with the exception of perhaps garbage code, unnecessary with just encodeFunction and decodeFuntion?
1. write all your code eg. Code: | local size = math.random(10,100000000000)
function print_size()
print("Sasha's d--k is "..size.." inches long!");
end
print_size() |
2. wrap it in a function and pass it to encodeFunction, print the result
Code: | local my_script_to_encode = function()
-- all the code
local size = math.random(10,100000000000)
function print_size()
print("Sasha's d--k is "..size.." inches long!");
end
print_size()
end
print(encodeFunction(my_script_to_encode)) |
in the table/trainer you ship/share you pass that encoded string to decodeFunction and then call the returned function
Code: | local my_function = decodeFunction('c-oWpDNPJ!ketlRCB=/U!NS2(5ypT38s!d+42)bqCz#931ti!Q92nRg92guM7#JE4FfgbzG%*4;#W??pn%o#18B!b=7{OXV7,8T}EUdYSB@fO2MTvPS]MJVeP-BG_UX+!:gXFmjiZb(].*@q?QW=QgU:pO29n586huY{qz]*Q7H1#0R+4P6L3?Q!]j38T;L5kSGrmzSGCl,TUsuwGy:.}%GWELy1?F]@GC1/1-E9B)or7JQaY][TsWD,O}')
my_function() |
so the only thing anyone sees is the encoded function string which once decoded is only the lua bytecode. So, no comments, no names (other than globals, to my knowledge). Which as mentioned earlier can be reversed but is harder to do.
Now, if you're not using CE then you may not have access to something like that and have to fall back on those things but if you are...
throw in enableDRM() and that should make it a bit harder to read the byte code from CE's memory (though they could just get the string from the CT itself and decode it theirselves if you don't do something to prevent that lol)
edit: AA scripts can be done in lua code as well via autoAssemble, though you could also just implement it all yourself in lua if you understand it (allocate, write code, hook with jump etc.).
|
|