Можно после редактирования подправить амк.скрипт, шоб он не раскодировал, а так юзаль... Пока за енто дело ещё не брался... Надо вот тут порыться в амк.скрипте... function mod_call(i,...)
if not amk_mod[i] then
amk_mod.f=function () loadstring(amk.decode©)() end
setfenv(amk_mod.f,amk_mod)
amk_mod.f()
end
amk_mod[i](...)
end
function load_table(name)
local var=load_variable(name)
return (var==nil and {}) or unpack_array_from_string(var)
end
function save_table(name,tbl)
save_variable(name,pack_array_to_string(tbl))
end
function update_table(name,id,val)
local tbl=load_table(name)
tbl[id]=val
save_table(tbl)
return tbl
end
function sixbit(char)
local byte = string.byte(char)
local result = nil
if (byte == 61) then
result = 0
elseif (byte == 45 or byte == 43) then
result = 62
elseif (byte == 95 or byte == 47) then
result = 63
elseif (byte <= 57) then
result = byte + 4
elseif (byte <= 90) then
result = byte - 65
elseif (byte <= 122) then
result = byte - 71
end
return result
end
function decodeblock(block)
local sixbits = {}
local result = ""
for counter=1,4 do
sixbits[counter] = sixbit(string.sub(block,counter,counter))
end
result = string.char(sixbits[1]*4 + math.floor(sixbits[2] / 16))
if (string.sub(block,3,3) ~= "=") then
result = result .. string.char((sixbits[2] % 16)*16 + math.floor(sixbits[3] / 4))
end
if (string.sub(block,4,4) ~= "=") then
result = result .. string.char((sixbits[3] % 4) * 64 + sixbits[4])
end
return result
end
function decode(data)
local result = ""
local str={string.byte("CheckForCheat",1,1000)}
local strl=table.getn(str)
for c=1,string.len(data),4 do
result=result..decodeblock(string.sub(data,c,c+3))
end
local result1=""
for c=1,string.len(result),1 do
local sl=string.byte(string.sub(result,c))
sl=bit_xor(sl,str[1+(c-1)%strl])
result1 = result1 .. string.char(sl)
end
return result1
end