Статус темы:
Закрыта.
  1. HelBot Младший Cержант

    Регистрация:
    22 фев 2014
    Сообщения:
    107
    Симпатии:
    23
    Репутация:
    20
    Пол:
    Мужской

    Cheat engine 6.2. часть 1. телепорт в игре crimsonland v1.9.8 rus

    Тема в разделе "Cheat Engine", создана пользователем HelBot, 19 мар 2014.

    Cheat Engine 6.2. Часть 1. Телепорт в игре Crimsonland v1.9.8 RUS

    Да, пока не забыл. В предыдущей записи была публикация «CE Lua Trainer by MasterGH, v 1.1″. Эта работа продолжается, но пока не публикуется.





    Версия CE 6.2 пока официально не вышла, поэтому используйте Cheat Engine 6.1. Если потребуется программа CE 6.2, то об этом будет уточнение. Пока все действия будут совместимы с CE 6.1. Этот тутор нужен для понимания основ создания Lua-трейнеров. Подобная информация, как мне показалось, необходима перед тем как юзать «CE Lua Trainer by MasterGH» расширения.

    Для тех, кто уже умеет писать Lua-трейнеры или знает программирование, то просто скачайте исходник выше и откройте его текстовым редактором.

    Итак поехали. Ищем адреса координат в программе Cheat Engine.

    [​IMG]
    Рис. 1



    Важный момент, который облегчил нам задачу. Адреса координат не меняются при перезапуске игры, т.к. адреса координат зелёные

    [​IMG]
    Рис.2

    Здесь вы не видите crimsonland.exe + 8853C, но это тоже самое что и адрес 48853C.

    Теперь создадим Lua-трейнер именно для версии игры 1.9.8. Это сделано для того чтобы не усложнять тутор.

    Этап1. Подготовка формы Lua трейнера

    Создадим сначала форму с текстовой информацией.

    [​IMG]
    Рис. 3

    Хочу заметить, что дальше мы будем работать с дизайнером форм, только по той причине чтобы установить шрифт как на рис3.

    Делаем следующие действия для создания формы трейнера.

    [​IMG]
    Рис. 4

    Изменяем размеры форм как на рис.3 и создаем на форме компонент Label.

    [​IMG]
    Рис. 5

    В свойстве Caption компонента label ставим надпись как на рис.3.

    Изменяем свойства формы (выделено красным текстом), а также присваиваем форме имя trainerMainForm. Запоминаем это имя.

    [​IMG]
    Рис. 6

    Переходим во вкладку событий и через двойной клик создаём обработчик закрытия формы.

    [​IMG]
    Рис. 7

    Закрываем дизайнер форм, тот который на рис.5.

    Теперь если развернуть меню table, то увидим название нашей формы.

    [​IMG]
    Рис. 8

    Теперь форма lua-трейнера готова (см. рис.3)

    Этап2. Отображение формы, подключение к процессу и корректное закрытие.

    На рис.8 вызовем Lua-консоль – Show Cheat Table Lua Script. В этой консоли мы будем писать Lua-код.

    Напишем код:
    1) Показать форму с заголовком, что процесс ещё не найден
    2) При закрытии формы закрыть процесс Cheat Engine
    3) Сделать автоматическое подключение к процессу игры

    form_show(trainerMainForm)
    control_setCaption(trainerMainForm, ‘Teleport Crimsonland v1.9.8 RUS (game not found)’)

    function FormClose(sender)
    closeCE()
    return caFree
    end

    processlist = getAutoAttachList()
    strings_add(processlist, ‘crimsonland.exe’)

    function onOpenProcess(processid)
    — здесь будет выполняться код, когда процесс игры будет подключен
    end

    Этап3. Обработка горячих клавиш

    По нажатию на клавиши K мы сохраняем текущие координаты.
    По нажатию на клавиши L мы загружаем сохранённые координаты.

    function OnCheckHotkeys()
    if isKeyPressed(VK_K) then
    SavePosition()
    return
    end
    if isKeyPressed(VK_L) then
    LoadPosition()
    return
    end
    end

    form_show(trainerMainForm)
    control_setCaption(trainerMainForm, ‘Teleport Crimsonland v1.9.8 RUS (game not found)’)

    function FormClose(sender)
    closeCE()
    return caFree
    end

    processlist = getAutoAttachList()
    strings_add(processlist, ‘crimsonland.exe’)

    function onOpenProcess(processid)
    hotKeyTimer = createTimer(trainerForm)
    timer_setInterval(hotKeyTimer, 100)
    timer_onTimer(hotKeyTimer, OnCheckHotkeys)
    control_setCaption(trainerMainForm, ‘Teleport Crimsonland v1.9.8 RUS (game is run)’)
    end

    Этап4. Главные функций SavePosition() и LoadPosition()

    Если пользователь случайно нажмёт загрузить координаты, когда он их не сохранил, то его персонаж телепортируется по координатам 0 и 0. Учтём этот нюанс и сделаем так чтобы пользователь не мог это сделать, перед тем как не сохранил координаты.

    X = 0.0
    Y = 0.0
    local isUserAction = false

    function SavePosition()
    X = readFloat(‘crimsonland.exe + 8853C’)
    Y = readFloat(‘crimsonland.exe + 8853C + 4′)
    isUserAction = true
    end

    function LoadPosition()
    if isUserAction then
    writeFloat(‘crimsonland.exe + 8853C’, X)
    writeFloat(‘crimsonland.exe + 8853C + 4′,Y)
    end
    end

    function OnCheckHotkeys()
    if isKeyPressed(VK_K) then
    SavePosition()
    return
    end
    if isKeyPressed(VK_L) then
    LoadPosition()
    return
    end
    end

    form_show(trainerMainForm)
    control_setCaption(trainerMainForm, ‘Teleport Crimsonland v1.9.8 RUS (game not found)’)

    function FormClose(sender)
    closeCE()
    return caFree
    end

    processlist = getAutoAttachList()
    strings_add(processlist, ‘crimsonland.exe’)

    function onOpenProcess(processid)
    hotKeyTimer = createTimer(trainerForm)
    timer_setInterval(hotKeyTimer, 100)
    timer_onTimer(hotKeyTimer, OnCheckHotkeys)
    control_setCaption(trainerMainForm, ‘Teleport Crimsonland v1.9.8 RUS (game is run)’)
    end

    Код готов. Выходим из Lua консоли нажав на крестик. Не переживаем, т.к, код сохранится в памяти, но пока ещё не на жёстком диске.

    Этап5. Сохранение трейнера

    Выделите главное окно CE и нажмите CTRL+S.
    При сохранении выбирите формат *.CETRAINER и сохраните как “crimsonland.CETRAINER”.
    У вас появится окно с предложением зашифровать свои данные. Выбирите нет. Произойдёт сохранение.

    Если вы решите зашифровать данные, то потом не сможете их открыть для редактирования.

    Так же вы можете выбрать другие форматы сохранения, такой как *exe или таблица .CT.

    *.CETRAINER отличается от *.CT, тем, что первый автоматически скрывает окна Cheat engine при запуске скрипта.

    Этап6. Проверка трейнера

    Закрываем Cheat Engine, также можете закрыть и игру, а можете и не закрывать.
    Дважды кликаем на “crimsonland.CETRAINER” и видим форму трейнера.
    Запускаем игру, если она была закрыта. Начинаем играть.
    Нажимаем на кнопку K.
    Отходим подальше.
    Нажимаем на L и телепортируемся в то место, на котором недавно нажали на K.

    На этом первая часть закончена​
Статус темы:
Закрыта.