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

    Как при отключении скрипта вернуть или (записать) в адрес значение ?

    Запланировано Прикреплена Закрыта Перенесена Взлом игр (начинающим)
    18 Сообщения 3 Posters 229 Просмотры
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • G
      garik66 @Asusih
      отредактировано

      @Asusih да и забыл, все-таки проверь первый мой скрипт, загрузив игру заново, есть подозрение, что ты проверял его с уже измененным значением в адресе игры.

      1 ответ Последний ответ Ответить Цитировать 1
      • LIRWL
        LIRW
        отредактировано

        на прямую пиши mov eax,00000001 под патч или этим же хуком..
        если перезаписывает что то... патчи его.. либо флаго dd 00 - 01
        newmem:

        originalcode:
        mov eax,00000001

        exit:
        jmp returnhere

        G A 2 ответов Последний ответ Ответить Цитировать 1
        • G
          garik66 @LIRW
          отредактировано

          @LIRW первый скрипт, это и есть запись напрямую, со слов ТС это не сработало, видимо дальше по коду перезаписывается.
          с флагами более большой скрипт планировал предложить 3 вариантом.
          Второй мой скрипт это уже прыжок куда-надо, но ТС пока не отписался сработало или нет.

          LIRWL A 2 ответов Последний ответ Ответить Цитировать 1
          • LIRWL
            LIRW @garik66
            отредактировано

            @garik66 Игорь понял тебя. Пусть пробует тогда.

            1 ответ Последний ответ Ответить Цитировать 0
            • A
              Asusih @garik66
              отредактировано Asusih

              @garik66 ,это включает пол функции в игре. То есть вообще функция открывает все рецепты и бесплатный крафт, тут же не появляются все рецепты и крафт тоже не работает . С первым скриптом такая же ситуация (

              1 ответ Последний ответ Ответить Цитировать 0
              • A
                Asusih @LIRW
                отредактировано

                Это сообщение удалено!
                1 ответ Последний ответ Ответить Цитировать 0
                • A
                  Asusih @garik66
                  отредактировано Asusih

                  @garik66, он получается не меняет значение. То есть если добавить адрес в таблицу, то значение остается неизменным. Просто не совсем понимаю, почему просто нельзя в автоассемблере записать при выключении скрипта значение, или это делается через флаги ?

                  G 2 ответов Последний ответ Ответить Цитировать 0
                  • G
                    garik66 @Asusih
                    отредактировано garik66

                    @Asusih судя, по описанному тобой, скрипт с флагом тоже скорее всего тебе не поможет.
                    Но давай попробуем

                    1. добавь скрипт в таблицу
                    [ENABLE]
                    alloc(newmem,2048,Player:UpdatePlacement+b23)
                    label(returnhere)
                    label(originalcode)
                    label(exit)
                    label(Flag)
                    registersymbol(Flag)
                    
                    newmem:
                    cmp [Flag],1
                    jne @f
                    mov [rdi+00000790] ,#1
                    jmp originalcode
                    
                    @@:
                    mov [rdi+00000790] ,0
                    
                    originalcode:
                    movzx eax,byte ptr [rdi+00000790]
                    
                    exit:
                    jmp returnhere
                    
                    Flag:
                    dd 1
                    
                    Player:UpdatePlacement+b23:
                    jmp newmem
                    nop 2
                    returnhere:
                    
                    [DISABLE]
                    unregistersymbol(Flag)
                    dealloc(newmem)
                    Player:UpdatePlacement+b23:
                    db 0F B6 87 90 07 00 00
                    
                    1. теперь нужно добавить в таблицу адрес Flag, после активации скрипта.
                      По умолчанию будет в нем 1, перед отключением скрипта в адресе нужно поставить в адресе Flag 0.
                    1 ответ Последний ответ Ответить Цитировать 0
                    • G
                      garik66 @Asusih
                      отредактировано

                      @Asusih отпишись, после проверки - интересно.

                      A 2 ответов Последний ответ Ответить Цитировать 1
                      • A
                        Asusih @garik66
                        отредактировано

                        @garik66 ,хорошо , чуть позже проверю

                        1 ответ Последний ответ Ответить Цитировать 0
                        • A
                          Asusih @garik66
                          отредактировано

                          @garik66 ,спасибо, это работает. Благодарен, вообще хотелось как писал, но думаю что так не получится, а так большое спасибо !

                          G 2 ответов Последний ответ Ответить Цитировать 1
                          • G
                            garik66 @Asusih
                            отредактировано

                            @Asusih для того чтобы сделать все в одном скрипте нужно изучать игровой код. В этом случае СЕ-ных логов не достаточно.

                            1 ответ Последний ответ Ответить Цитировать 0
                            • G
                              garik66 @Asusih
                              отредактировано

                              @Asusih и еще вариант:
                              Найти указатели на адрес и написать простейший скрипт

                              [ENABLE]
                              //code from here to '[DISABLE]' will be used to enable the cheat
                              mov[адрес с указателями],1
                               
                               
                              [DISABLE]
                              //code from here till the end of the code will be used to disable the cheat
                              mov[адрес с указателями],0
                              
                              A 1 ответ Последний ответ Ответить Цитировать 1
                              • A
                                Asusih @garik66
                                отредактировано

                                @garik66, оо, попытаюсь сделать,спасибо большое.

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