• Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Зарегистрироваться
  • Войти
GameHackLab[RU]
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Зарегистрироваться
  • Войти

[Cheat Engine] Как сделать множитель урона?

Запланировано Прикреплена Закрыта Перенесена Взлом игр (вопросы и ответы)
10 Сообщения 4 Posters 599 Просмотры
Загружаем больше сообщений
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • H
    Heretic
    отредактировано 21 авг. 2024 г., 21:50

    Здравствуйте! Скачал готовую таблицу на игру и потихоньку добавлял в неё некоторые новые функции которые мне были нужны и вот руки дошли до урона, в таблице уже был скрипт который меня цифру урона, но я хотел сделать именно множитель, что, по итогу, у меня не вышло. Поэтому прошу помощи в этом.

    Вот скрипт на изменение урона из готовой таблицы:

    [ENABLE]
    
    aobscanmodule(GunDamage,$process,F3 0F 10 96 18 01 00 00 48)
    alloc(newmem,$100,GunDamage)
    
    label(code)
    label(return)
    
    newmem:
      mov [rsi+00000118],(float)25
    
    code:
      movss xmm2,[rsi+00000118]
      jmp return
    
    GunDamage:
      jmp newmem
      nop 3
    return:
    registersymbol(GunDamage)
    
    [DISABLE]
    
    GunDamage:
      db F3 0F 10 96 18 01 00 00
    
    unregistersymbol(GunDamage)
    dealloc(newmem)
    

    Я только начинаю осваивать CE, поэтому буду рад коду с подробным описанием.
    Заранее благодарю за любую помощь!

    На всякий случай укажу тут:
    Игра: Deep Rock Galactic
    Автор таблицы: Ray2160

    S 1 ответ Последний ответ 23 авг. 2024 г., 09:20 Ответить Цитировать 0
    • S
      StoneWeaver administrators @Heretic
      отредактировано 23 авг. 2024 г., 09:20

      @Heretic привет! Ты можешь считывать цифру урона, ты можешь считать цифру урона в xmm2, как у тебя в секции оригинального кода, а потом домножить эту цифру прямо в регистре на нужный множитель. Что-то вроде того (проверь на правильность, писал "на коленке"):

      label(code)
      label(return)
      
      newmem:
        movss xmm2,[rsi+00000118]
        mulss xmm2,[multiplier]
        jmp return
      
      multiplier:
         dd (float)5.0
      
      GunDamage:
        jmp newmem
        nop 3
      return:
      registersymbol(GunDamage)
      
      [DISABLE]
      
      GunDamage:
        db F3 0F 10 96 18 01 00 00
      
      unregistersymbol(GunDamage)
      dealloc(newmem)
      
      H 1 ответ Последний ответ 23 авг. 2024 г., 18:31 Ответить Цитировать 1
      • H
        Heretic @StoneWeaver
        отредактировано 23 авг. 2024 г., 18:31

        @StoneWeaver
        Спасибо за помощь!
        Но кажется оно немного кривовато работает, изначально сработало (правда при установке значения 2.0 он сносил гораздо больше, чем в 2 раза), но потом урон вернулся к прежнему значению и перестал меняться. Есть ли возможность как-то умножить значение [rsi+00000118], а не xmm2?

        Я просто скопировал и вставил часть вашего кода, выглядел скрипт при тесте вот так:

        [ENABLE]
        
        aobscanmodule(GunDamage,$process,F3 0F 10 96 18 01 00 00 48)
        alloc(newmem,$100,GunDamage)
        
        label(return)
        
        newmem:
          movss xmm2,[rsi+00000118]
          mulss xmm2,[multiplier]
          jmp return
        
        multiplier:
           dd (float)2.0
        
        GunDamage:
          jmp newmem
          nop 3
        return:
        registersymbol(GunDamage)
        
        [DISABLE]
        
        GunDamage:
          db F3 0F 10 96 18 01 00 00
        
        unregistersymbol(GunDamage)
        dealloc(newmem)
        
        G 2 ответов Последний ответ 23 авг. 2024 г., 18:44 Ответить Цитировать 0
        • G
          garik66 @Heretic
          отредактировано 23 авг. 2024 г., 18:44

          @Heretic попробуй дописать строку в скрипт
          newmem:
          movss xmm2,[rsi+00000118]
          mulss xmm2,[multiplier]
          movss [rsi+00000118],xmm2 // вот эту
          jmp return

          H 1 ответ Последний ответ 24 авг. 2024 г., 16:30 Ответить Цитировать 0
          • G
            garik66 @Heretic
            отредактировано garik66 24 авг. 2024 г., 10:03

            Это сообщение удалено!
            1 ответ Последний ответ Ответить Цитировать 0
            • P
              Partizan1078
              отредактировано Partizan1078 24 авг. 2024 г., 16:15

              При умножении урона нужна инструкция которая срабатывает 1 раз за 1 выстрел. Но т.к. игра сделана на ue4 то я предполагаю можно ручками найти множитель. Который предусмотрен самим движком. Он 100% есть.
              А вообще с утра ещё поковырялся.
              И нашёл урон разного оружия.
              cacfd8f1-8dc0-4d91-8914-21df7a49c9e3-Dmg.png
              FSD-Win64-Shipping.7z
              v.1.39.102546

              H 1 ответ Последний ответ 24 авг. 2024 г., 16:32 Ответить Цитировать 1
              • H
                Heretic @garik66
                отредактировано 24 авг. 2024 г., 16:30

                @garik66
                Здравствуйте!
                Попробовал, не помогло и кажется, проблема, что возникла в прошлый раз (что урон вернулся в норму и скриптом не изменялся) теперь на постоянной основе, но при этом скрипт на изменение цифры урона работает

                1 ответ Последний ответ Ответить Цитировать 0
                • H
                  Heretic @Partizan1078
                  отредактировано 24 авг. 2024 г., 16:32

                  @Partizan1078
                  Здравствуйте!
                  Благодарю за подсказку, попробую поискать какой-нибудь множитель (надеюсь моих навыков хватит).
                  Не могли бы вы рассказать, если не сложно, как вы искали урон оружия?

                  P 1 ответ Последний ответ 24 авг. 2024 г., 16:44 Ответить Цитировать 0
                  • P
                    Partizan1078 @Heretic
                    отредактировано Partizan1078 24 авг. 2024 г., 16:44

                    @Heretic
                    https://fearlessrevolution.com/viewtopic.php?f=23&t=14414
                    Как я нашёл урон..... Использовал таблицу-дампер-парсер структур...
                    Плюс приблизительное понимание где что находится в структурах движка UE4 (если разраб конкретной игры ничего не поменял)

                    H 1 ответ Последний ответ 25 авг. 2024 г., 17:42 Ответить Цитировать 3
                    • H
                      Heretic @Partizan1078
                      отредактировано 25 авг. 2024 г., 17:42

                      @Partizan1078
                      Понял, благодарю!
                      Постараюсь разобраться, может найду ещё что-нибудь интересное для добавления в таблицу)

                      1 ответ Последний ответ Ответить Цитировать 0
                      9 из 10
                      • Первое сообщение
                        9/10
                        Последнее сообщение