Помогите разобрать Lua- код из Dota 2 чит

Тема в разделе "WASM.BEGINNERS", создана пользователем MoleculeDEV, 16 июн 2025.

  1. MoleculeDEV

    MoleculeDEV New Member

    Публикаций:
    0
    Регистрация:
    16 июн 2025
    Сообщения:
    2
    Код (Lua):
    1. local =setmetatable({},{__call=function(,)return function()
    2. local = loadstring or load;
    3. local = :gsub("", "")
    4. return ()()
    5. end
    6. end})
    7. local = function()
    8.      local = ""
    9.     for =1, do
    10.           = .. string.char(({0x6E,0x6F,0x74,0x68,0x69,0x6E,0x67})[math.random(7)])
    11.      end;
    12.      return
    13. end;
    14. local = function()
    15.       local =0;
    16.       for , in next, do =+#({})[1]
    17.       end;
    18. return end;
    19. local =  function()
    20.        local = {}
    21.        for = 1, math.random(7,14)do  
    22.              [#+1]=string.format("\\x%02X",math.random(0x20,0x7E))
    23.        end;
    24.        return table.concat()
    25. end;
    26. local = function()
    27.        local ={}
    28.        [()]=()[(5)]=()[()]=()
    29.        return
    30. end;
    31. local =function()
    32.            local =math.random()>0.5;
    33.            local =math.random()>0.5;
    34.            local =()
    35.            return setmetatable({[(3)]=,[]=,[()]=,["\0\0\0"]=()},)
    36. end;
    37. return ()
     
  2. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    463
    Код содержит множество пропусков, которые делают его трудным для полного понимания. Однако основные действия, включая создание строк и использование
    метатаблиц, могут быть частью некоего чит-кода, который взаимодействует с окружением Dota 2.
    Разберем данный код Lua, который, судя по всему, разработан для использования в читах для Dota 2. Мы обсудим, что делает каждая часть кода.
    1. Определение метатаблицы:
    Код (Lua):
    1. local = setmetatable({}, {__call=function(,) return function()
    Здесь создается метатаблица с методом `__call`, который позволяет вызывать объект как функцию.
    2. Загрузка и выполнение кода:
    Код (Lua):
    1.    local = loadstring or load;
    2.    local = :gsub("", "")
    3.    return ()()
    4.    end
    В этом блоке код загружает строку и выполняет ее. `loadstring` (или `load`, если он недоступен) используется для компиляции строкового кода в функции.
    Также используется `gsub`, но его функциональность не ясна из-за отсутствия аргументов.
    3. Создание строки из случайных символов:
    Код (Lua):
    1.    local = function()
    2.        local = ""
    3.        for = 1, do
    4.            = .. string.char(({0x6E, 0x6F, 0x74, 0x68, 0x69, 0x6E, 0x6E, 0x67})[math.random(7)])
    5.        end
    6.        return
    7.    end
    Эта часть кода создает строку, состоящую из случайных символов, представленных в hexadecimal (например, `0x6E` соответствует букве "n").
    4. Счетчик объектов:
    Код (Lua):
    1.    local = function()
    2.        local = 0;
    3.        for, in next do =+#({})[1] end;
    4.        return
    5.    end;
    Здесь заведен счетчик, который, как предполагается, должен считать что-то, но сам механизм не завершен.
    5. Генерация случайной строки в hex-формате:
    Код (Lua):
    1.    local = function()
    2.        local = {}
    3.        for = 1, math.random(7, 14) do
    4.            [#+1] = string.format("\\x%02X", math.random(0x20, 0x7E))
    5.        end;
    6.        return table.concat()
    7.    end;
    Этот блок генерирует массив случайных hex-значений и соединяет их в одну строку.
    6. Структура данных:
    Код (Lua):
    1.    local = function()
    2.        local = {}
    3.        [()]=()[(5)]=()[()]=()
    4.        return
    5.    end;
    Здесь код создает таблицу (вероятно, для хранения каких-либо данных), но опять же, из-за пропусков и неясных переменных этот участок кода не завершен.
    7. Случайная логика и метатаблицы:
    Код (Lua):
    1.    local = function()
    2.        local = math.random() > 0.5;
    3.        local = math.random() > 0.5;
    4.        local = ()
    5.        return setmetatable({[(3)] = , [] = , [()]=, ["\0\0\0"] =()}, )
    6.    end;
    7.    return ()
    В этом блоке производится случайная логика, чтобы определить поведение. Также создается новая метатаблица.
     
  3. MoleculeDEV

    MoleculeDEV New Member

    Публикаций:
    0
    Регистрация:
    16 июн 2025
    Сообщения:
    2
    Спасибо за разбор! А как он может влиять на CDOTA_PlayerResource? Мне говорили, он меняет пераметры героев
     
  4. Research

    Research Active Member

    Публикаций:
    1
    Регистрация:
    6 янв 2024
    Сообщения:
    463
    Для точных выводов нужна полная версия кода с ясными значениями переменных и вызовами функции.
     
  5. mantissa

    mantissa Administrator Команда форума

    Публикаций:
    0
    Регистрация:
    9 сен 2022
    Сообщения:
    179
    Откуда этот кусок кода? В доте на луа написан интерфейс
     
  6. Intro

    Intro Well-Known Member

    Публикаций:
    0
    Регистрация:
    29 авг 2009
    Сообщения:
    1.708
    Каша а не код, это даже не спагетти, а наркоманский бред. А какая версия луа?