Перейти к содержанию

Эндер Виггин

Фанаты Фуллреста
  • Постов

    590
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Эндер Виггин

  1. короче, во ВСЕХ файлах той папки надо править слова "mod_call" на "amk_mod", остальное без изменений?

    Я его скачал сразу. Но пусть висит... а лучше куда-нибудь залей и раздавай всем страждущим...

    Не просто заменить... Но в целом, да.

    Щаз залью кудысь... отредактированное.... от себя... там сон кагды хош... и разные иконки у разных аномалий не элитном детекторе...

    Вот тута лежит енто добро...

  2. Хех. Пока что более простого способа не получилось... Буду пробовать, но не ручаюсь, что получится... А пока что надо руцями править 3 файла, в сумме около 25 строк...

     

    ------------------------

    А куда делси прикрепленный файл? Странно... Щас по новой прицеплю...

  3. Я выложил только-только раскодированный файл. Сам правь в нем все что надо... :) А вот чтоб им пользоваться, надо чуть постараться... В папке gamedata/scripts/ найди все файлы вызывающие функцию mod_call. Её вызов выглядит так: mod_call("название_функции",аргумент1,аргумент2...). Теперь вместо каждого вызове ентой функции напиши amk_mod.название_функции(аргумент1,аргумент2...)... И усё будет ОК... Ежели всей ентой фигней не хочешь страдать, то подожди маленько, я дома более простой способ попробую...
  4. Ура! Я таки скачал компилер ЛУА и вскрыл шифр! К тому же научился отучивать амк.скрипт от раскодирования, пока нудным способом, но добравшись домой попробую попроще сделать...

    Вот выкладываю вскрытый файлик для версии 1.2.3.

  5. Ну скоро енто еще через полгода... А АМКшники, скорей всего, перейдут на Чистое Небо... Хотя тенденция назревает нехорошая - у них уже сейчас появляются признаки звезданутой болезни...
  6. Хех. Почти вскрыл я тот файлик. 90-95% символов раскодировано правильно. В принципе, дальше можна руками поправить... Есть подозрения, что глюки из-за того, что у ЛУА немного нестандартная кодировка символов. Ежели не смогу поправить, то буду искать ЛУА-компилер и на ЛУА писать декодер... Воть. Надо еще отучить амк.скрипт от декодирования и всё будет чики-пики...

    АМК-тим неустанно клепает фикс за фиксом, патч за патчем... Вместо того, чтобы внимательней быть... У них в новых версиях вылазят старые косяки... Вот и сейчас заливают новый патч...

  7. Можно после редактирования подправить амк.скрипт, шоб он не раскодировал, а так юзаль... Пока за енто дело ещё не брался...

     

    Надо вот тут порыться в амк.скрипте...

    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

  8. 2Странный

    после версии 1.2.2. АМК-тим стали жадными и закодировали файлик... Поройся в файле amk.script (советую нотепад++, он шарит LUA) - там есть функции для раскодирования ентого файла... Один чел его таки вскрыл... могу кинуть вскрытый файл... Я, пока что, не смог....

×
×
  • Создать...