CELua[RU]
    • Категории
    • Последние
    • Метки
    • Популярные
    • Пользователи
    • Группы
    • Зарегистрироваться
    • Войти
    1. Главная
    2. MasterGH
    3. Сообщения
    Не в сети
    • Профиль
    • Подписки 1
    • Подписчики 1
    • Темы 131
    • Сообщения 255
    • Группы 4

    Сообщения

    Последние Лучшие сообщения Спорные
    • Рубрика "Lua код сегодня" №1

      Каждый день мы выкладываем в рубрику, какой-нибудь небольшой Lua код и разбираем его.

      Lua код №1

      local address = 0x015035C8
      local int_value = readInteger(address)
      print ("Результат: "..int_value)
      > Результат: 98 
      

      В этом примере происходит чтение значения из некоторого адреса и его значение выводится в консоль.
      Для чего это нужно? Например, для того чтобы прочитать количество здоровья персонажа.

      Как протестировать?

      1. Открываем Cheat Engine
      2. Открываем туториал
      3. Находим адрес
      4. В Lua консоли вводим наш код и получаем резульат

      72cb31c0-40d7-40e3-93d9-934dc5d440cc-изображение.png

      написал в Обучающие примеры ce lua readmemory обучалка
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      Пользователь @Pitronic написал в Защита Трейнера:

      Задача такая написать этот ассемблер код в луа без ENABLE , DISABLE чтоб всегда был включен всякий раз когда се подключается к процессу

      Здесь пример из документации

      Здесь модифицированный пример

      local scriptStr = [[
      [ENABLE]
      {$lua}
      print('>ENABLE')
      {$asm}
      [DISABLE]
      {$lua}
      print('>DISABLE')
      {$asm}
      ]]
      
      local enabledOk, disableInfo = autoAssemble(scriptStr)
      
      if enabledOk then
        print('>The auto assembler script was enabled successfully.')
      else
        print('>There was an error enabling the auto assembler script.')
      end
      
      print(disableInfo)
      local disabledOk = autoAssemble(scriptStr, disableInfo)
      
      if disabledOk then
        disableInfo = nil
        print('>The auto assembler script was disabled successfully.')
      else
        print('>There was an error disabling the auto assembler script.')
      end
      

      Здесь результат

      ENABLE
      The auto assembler script was enabled successfully.
      DISABLE
      The auto assembler script was disabled successfully.

      Я думаю, что тут все понятно. И сделать под твою задачу будет просто 🙂

      написал в Вопросы
      MasterGHM
      MasterGH
    • Новинка. BB коды

      Туториал по bb кодам. Т.е. по тому как форматировать сообщения

      Markdown Reference

      Создание таблиц (поискать в интернете)

      Tables Are Cool
      col 1 is left-aligned $1600
      col 2 is centered $12
      col 3 is right-aligned $1

      Не хватает спойлеров, видео тегов, опросов.
      Точнее надо будет мне искать и ставить их как плагины

      написал в Новости
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      Мда, слетел редактор кода.
      Мало, что понял опять. Посмотрю позже

      написал в Вопросы
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      Редактор кода не сразу подгружается. Минут 5 прошло после использования функции и он загрузился. Происходит после пересборки форума. Сейчас должно быть нормально. Поскульку пересобираю форум часто, то может повторится.

      По поводу твоего вопроса я честно говоря не очень понял, что хочешь сделать. Не знаю код Влада и то код, который ты привел мне не понятен в целом для чего он. Он удалет файлы и как с твоим вопросом это связано не понятно

      написал в Вопросы
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      @Pitronic сарказма не было. У меня действительно нет скриптов по защите. А тема интеренсная.

      написал в Вопросы
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      Пользователь @Pitronic написал в Защита Трейнера:

      Дай тот код который считаешь лучше

      У меня нет) Я не делаю защиты для трейнеров ) эту тему надо изучать

      написал в Вопросы
      MasterGHM
      MasterGH
    • RE: Предложение по информационному разделу "Я не автор"

      @Pitronic ок. Я бы создал отдельный раздел статей и в нем раздел других авторов

      написал в Обсуждения и предложения
      MasterGHM
      MasterGH
    • RE: Защита Трейнера

      @Pitronic здесь логика следующая. Если обнаружены процессы по названию, то CE закрывается. Можно добавить другие названия процессов и тогда CE тоже буже закрываться. Например, если открыт калькулятор, то CE закроется. Сделать это на AA посложнее. Мне кажется проще на lua как в этом примере

      написал в Вопросы
      MasterGHM
      MasterGH
    • Новинка. Использование тегов

      На форуме есть возможность привязывать теги к темам.
      У тегов есть счетчики.
      По счетчикам можно определить, какие теги больше интересны.

      написал в Новости
      MasterGHM
      MasterGH
    • RE: Предложения по дополнительному разделу

      @Pitronic ок..

      написал в Обсуждения и предложения
      MasterGHM
      MasterGH
    • Логические операторы

      Существует три логических оператора: and, or, not.

      Те, кто уже знаком с языками программирования знают, как эти логические операторы работают.

      Например,

          A = true
          B = true    
          if A and B then print('Условие "A and B" выполняется') end    
          if A or B then print('Условие "A or B" выполняется') end    
          B = false
          if not (B == A) then print('Условие "not (B == A)" выполняется') end
      

      Но, дальше интереснее.

      Все логические операторы считают false и nil ложными, а все остальное — истинными. 
      Оператор "and" возвращает свой первый аргумент, если он ложен и в противном случае возвращается второй аргумент
      Оператор "or" возвращает свой первый аргумент, если он не равен false и в противном случае возвращается второй аргумент.
      

      Сходу можно запутаться, но с примерами станет понятнее

        print (4 and 5) --> "5". В этом примере '4" не ложный, а значит при операторе "and" вернется второй аргумент "5".
        print(0 and 13) --> "0". Аналогично
        print(false and 13) --> "false". В этом примере первый аргумент false(ложный), а значит при операторе and вернется "false".
      
      print(4 or 5)  --> "4"  В этом примере "4" не ложный, а значит при операторе "or" вернется уже первый аргумент "4".
        print(false or 5) --> "5" В этом примере "false" ложный, а значит при операторе "or" вернется уже первый аргумент "5".
      

      Если кто вспомнил, то в C# есть такой оператор "?" (условный)

       string result = 4 == 4 ? "равно" : "не равно";  // result будет равен true
      

      На Lua это эквивалентно

      local result = ( (4 == 5 and "равно") or "не равно")
      

      А если опустить все скобки, то

      local result = 4 < 5 and "равно" or "не равно".
      

      Скобки можно опустить, потому что "and" имеет выше приоритет чем "or."

      Или вот еще пример

      compactmenuitem.Caption = state and 'Compact View Mode' or 'Full View Mode'
      

      Вот такая интересная штука для ускоренного сравнения вместо конструкции

       if условие then
          -- код
        else
          -- код
        end
      

      Идем дальше. Полезной идиомой Lua является

      x = x or v
      

      что эквивалентно

       if not х then 
           х = v 
        end
      

      Т. е. x равен значению v, когда x ложное.

      Оператор "not" всегда возвращает true или false

          print(not nil)      --> true
          print(not false)    --> true
          print(not 0)        --> false
          print(not not nil)  --> false
      
      написал в Обучающие примеры ce lua логика обучалка
      MasterGHM
      MasterGH
    • Управление состояниями memory record

      Перехватываем состояния у checkbox memory recrod (у записи в таблицы CE) и меняем состояние активации и деактивации по другим условиям

      {$lua}
      \-- прсто инфо
      memrec.OnActivate = function(record, before, currentstate)
        print("OnActivate"..(before and "Before " or "After ")..(currentstate and "true" or "false"))
        return true
      end
      \-- прсто инфо
      memrec.OnDeactivate = function(record, before, currentstate)
        print("OnDeactivate"..(before and "Before " or "After ")..(currentstate and "true" or "false"))
        return true
      end
      \-- подмена состояния
      function onMemRecPostExecute(memoryrecord, newState, succeeded)
        if memoryrecord == memrec and newState then
           print('Меня активировали, но я деактивируюсь сам')
           memrec.Active = false
        end
      end
      {$asm}
      
      
      [ENABLE]
      {$lua}
        print('Состояния сейчас '..(memrec.Active and "true" or "false"))
      
        print('Пишу в адрес [адрес..] ... (float)10000.0')
      {$asm}
      // написать свой адрес
       //[адрес..]:
       // dd  (float)10000.0
       // написать свой адрес
       //[адрес..]:
       // dd  (float)10000.0
       // написать свой адрес
       //[адрес..]:
       // dd  (float)10000.0
      [DISABLE]
      
      написал в Приёмы ce aa ce memrec фишки
      MasterGHM
      MasterGH
    • Запущен форум celua.ru

      Запущен форум
      Добавлены новые категории.
      Добавлена тема о том, что можно писать на форуме.

      написал в Новости
      MasterGHM
      MasterGH
    • Темы форума

      О чем писать

      • Обучение программированию (общие и специализированные принципы )
      • Заметки, справочные руководства, блоги и другая структурированная информация
      • Делиться своими идеями, мыслями, примерами по отладке, по программированию
      • Уникальные обучающие примеры от коротких до больших в виде скриптов, плагинов и прочего.
      • Просто общение в разделах
      написал в Обсуждения и предложения
      MasterGHM
      MasterGH
    • 1
    • 2
    • 9
    • 10
    • 11
    • 12
    • 13
    • 13 / 13