Перейти к содержанию

Gnosis

Стажёры
  • Постов

    17
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Gnosis

  1. 5 минут назад, ReWanet сказал:

    У меня скрипт работает на ура

    ну ты же в сингл играешь, а я в мульт. В сингле, возможно, и работает, но при смене сессии в мульте, адреса обнуляются. Регистр тот же, но имена адресов меняются. Остается и инструкция. Вот как вычислить смену адресов? По какому принципу они меняются? Ведь должен быть статик.

    Скрытый текст

    { Game   : RedOrchestra.exe
      Version:
      Date   : 2017-10-15
      Author : hp

      This script does blah blah blah
    }

    [ENABLE]
    //code from here to '[DISABLE]' will be used to enable the cheat

    aobscanmodule(INJECT,Core.dll,03 C2 89 03 8B D8 8B 44 24 14) // should be unique
    alloc(newmem,$1000)

    label(code)
    label(return)

    newmem:
    cmp [ebx],eax
    je code
    code:
    mov [0DB60580],#0
    mov [0DB6057C],#0

      mov [ebx],eax
      mov ebx,eax
      mov eax,[esp+14]

      jmp return

    INJECT+02:
      jmp newmem
      nop
      nop
      nop
    return:
    registersymbol(INJECT)

    [DISABLE]
    //code from here till the end of the code will be used to disable the cheat
    INJECT+02:
      db 89 03 8B D8 8B 44 24 14

    unregistersymbol(INJECT)
    dealloc(newmem)

    {
    // ORIGINAL CODE - INJECTION POINT: "Core.dll"+26B6E

    "Core.dll"+26B54: 75 10                          -  jne Core.dll+26B66
    "Core.dll"+26B56: 8B 4E 08                       -  mov ecx,[esi+08]
    "Core.dll"+26B59: 6A 00                          -  push 00
    "Core.dll"+26B5B: 40                             -  inc eax
    "Core.dll"+26B5C: 56                             -  push esi
    "Core.dll"+26B5D: 89 46 0C                       -  mov [esi+0C],eax
    "Core.dll"+26B60: FF 15 F8 68 1D 10              -  call dword ptr [Core.dll+D68F8]
    "Core.dll"+26B66: 8B 03                          -  mov eax,[ebx]
    "Core.dll"+26B68: 8B 54 24 10                    -  mov edx,[esp+10]
    "Core.dll"+26B6C: 03 C2                          -  add eax,edx
    // ---------- INJECTING HERE ----------
    "Core.dll"+26B6E: 89 03                          -  mov [ebx],eax
    "Core.dll"+26B70: 8B D8                          -  mov ebx,eax
    "Core.dll"+26B72: 8B 44 24 14                    -  mov eax,[esp+14]
    // ---------- DONE INJECTING  ----------
    "Core.dll"+26B76: 5E                             -  pop esi
    "Core.dll"+26B77: 89 18                          -  mov [eax],ebx
    "Core.dll"+26B79: 5B                             -  pop ebx
    "Core.dll"+26B7A: 59                             -  pop ecx
    "Core.dll"+26B7B: C2 08 00                       -  ret 0008
    "Core.dll"+26B7E: CC                             -  int 3
    "Core.dll"+26B7F: CC                             -  int 3
    "Core.dll"+26B80: 51                             -  push ecx
    "Core.dll"+26B81: 53                             -  push ebx
    "Core.dll"+26B82: 56                             -  push esi
    }
     

     

  2. Так я и делал, но после перезагрузки уровня, все слетает. Щас табличку попробую, но по коду - то же, что и я делал. 

    ЗЫ: Да, код не работает(( Я ж говорил, что он динамический, так и есть. Ругается при смене левла. Ты так же, как и я, просто присвоил нули динамическим адресам.

  3. 1 час назад, ReWanet сказал:

    Думаю NoSpread и сам уже сделаешь.

    РеВанет, ты, может быть, не понял, что я имел в виду. Смотри, это не разброс, ты движешь мышку и ствол уходит от центра, т.е. в центр не стреляет. Я не знаю, как это называется по-английски. Сам попробуй и увидишь, как это действует (поверни мышь до упора влево и вправо). В любом случае, спасибо тебе за труды. Сейчас у меня пройдут веселые дни и я сам поковыряюсь на основе твоих изысканий) За это отвечает два адреса по оси координат х и у, об этом я писал выше и на скринах их выделил.

  4. В 17.10.2017 в 22:54, ReWanet сказал:

    4. Отдаление рук

    Болшое и человеческое тебе за труд!  Завтра роспись у меня с одной девачкай, а после постараюсь во всем разобраться. Но уверен, что ты молодец! (как в репку тебе дать, не нашел, но плюсую духовно :))

     

    ЗЫ: Глянул табличку, все хорошо, отдачи нет и рапид-файер, но основная задача все же не решена. движения ружжа так и осталось произвольным. Может, у тебя все норм было, просто разница клиентов?

     

  5. Всем хао!

     

    Впервые пишу на форуме, так что тему можно легко переместить в правильном направлении.

    Дело, собственно, вот в чем, есть в игре такая фича -  "свободное перемещение оружия", из-за которого затрудняется стрельба "от бедра". Нашёл с помощью CE адреса, отвечающее за это. Адреса эти динамические (меняются только две цифры в середине), указателей на них нет или я не могу их найти. В инструкции эти адреса являются значениями edx. Если присвоить в скрипте СЕ, например, [edx+10],#0, то позиция оружия замораживается, но при обращении в игре к какой-нить UI-функции, к примеру, "счет", игра крашится. Однако, если присвоить, в том же скрипте, конкретно этим адресам ноль, то все работает как надо, но грезы разбиваются об динамизм)) Ноп инструкции блокирует также и движение мыши, что не есть гут.

     

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

     

    ЗЫ: Не пинайте сильно, я токмо учусь.

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.