Stigmaer Опубликовано 27 декабря, 2018 Поделиться Опубликовано 27 декабря, 2018 (изменено) Начал ломать весёлую ферму 2 нашёл адрес на улучшение завода, открыл инструкцию обращающююся к этому адресу. Из всех инструкций не одна не сработала на скрипт, только в одной получилось, но не на адрес в скобках, а на чистый eax. Но здесь вышла другая проблема если поставить значение 4 игра вылетает, это потому что колодец , автомобиль, самолёт и склад максимальное значение 3, а если поставить 3 то заводы не на полном улучшении и при включенном скрипте их не возможно улучшить до 4 улучшения. Пробовал как Hipho в одном из видео сделать так называемый фильтр свой чужой, чтоб на заводы сделать 4 а на хозяйства 3 но анализ данных структур неожиданно не дал результатов, то есть там где фиолетовый цвет, почему то в обоих группах одинаковое значение, что меня вообще сбило с толку. Решил спросить на форуме а может возможно создать такой скрипт, который сам бы назначил там где максимальное значение 3 записал 3, а где 4 записал бы 4. Ниже скидываю сам скрипт со значением 3 ну и дополнительную информацию на всякий случай вдруг нужна. Скрипт: Спойлер { Game : farm2.exe Version: Date : 2018-12-27 Author : Stigmaer This script does blah blah blah } [ENABLE] aobscanmodule(maxizavod,farm2.exe,39 41 08 53 56) // should be unique alloc(newmem,$1000) label(code) label(return) newmem: mov eax,3 // здесь максимально улучшается только хозяйство, а заводы только до 3 улучшения code: cmp [ecx+08],eax // на [ecx+08] скрипт не работает push ebx push esi jmp return maxizavod: jmp newmem return: registersymbol(maxizavod) [DISABLE] maxizavod: db 39 41 08 53 56 unregistersymbol(maxizavod) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "farm2.exe"+3F346 "farm2.exe"+3F321: 8B EC - mov ebp,esp "farm2.exe"+3F323: 6A FF - push -01 "farm2.exe"+3F325: 68 A5 49 61 00 - push farm2.exe+2149A5 "farm2.exe"+3F32A: 64 A1 00 00 00 00 - mov eax,fs:[00000000] "farm2.exe"+3F330: 50 - push eax "farm2.exe"+3F331: 64 89 25 00 00 00 00 - mov fs:[00000000],esp "farm2.exe"+3F338: 51 - push ecx "farm2.exe"+3F339: B8 38 11 00 00 - mov eax,00001138 "farm2.exe"+3F33E: E8 BD DD 19 00 - call farm2.exe+1DD100 "farm2.exe"+3F343: 8B 45 08 - mov eax,[ebp+08] // ---------- INJECTING HERE ---------- "farm2.exe"+3F346: 39 41 08 - cmp [ecx+08],eax "farm2.exe"+3F349: 53 - push ebx "farm2.exe"+3F34A: 56 - push esi // ---------- DONE INJECTING ---------- "farm2.exe"+3F34B: 57 - push edi "farm2.exe"+3F34C: 89 65 F0 - mov [ebp-10],esp "farm2.exe"+3F34F: C7 45 FC 00 00 00 00 - mov [ebp-04],00000000 "farm2.exe"+3F356: 74 08 - je farm2.exe+3F360 "farm2.exe"+3F358: 89 41 08 - mov [ecx+08],eax "farm2.exe"+3F35B: 8B 01 - mov eax,[ecx] "farm2.exe"+3F35D: FF 50 04 - call dword ptr [eax+04] "farm2.exe"+3F360: 8B 4D F4 - mov ecx,[ebp-0C] "farm2.exe"+3F363: 5F - pop edi "farm2.exe"+3F364: 5E - pop esi } Дополнительная информация: Спойлер EAX=00000001 EBX=00000000 ECX=12CEB3C8 EDX=00000001 ESI=0234E868 EDI=12CEB140 EBP=001271E8 ESP=001260A0 EIP=0043F349 Вероятный базовый указатель =12CEB3C8 0043F33E - call 005DD100 0043F343 - mov eax,[ebp+08] 0043F346 - cmp [ecx+08],eax 0043F349 - push ebx 0043F34A - push esi Заранее благодарю всех кто откликнется! Изменено 27 декабря, 2018 пользователем Stigmaer дополнение Ссылка на комментарий Поделиться на другие сайты Поделиться
partoftheworlD Опубликовано 27 декабря, 2018 Поделиться Опубликовано 27 декабря, 2018 Найди инструкцию которая хранит максимальное значение и пиши в текущее, и никакие проверки в скриптах не нужны Ссылка на комментарий Поделиться на другие сайты Поделиться
Stigmaer Опубликовано 27 декабря, 2018 Автор Поделиться Опубликовано 27 декабря, 2018 2 минуты назад, partoftheworlD сказал: Найди инструкцию которая хранит максимальное значение А где её искать? Ссылка на комментарий Поделиться на другие сайты Поделиться
MEDBEDb Опубликовано 28 декабря, 2018 Поделиться Опубликовано 28 декабря, 2018 4 часа назад, Stigmaer сказал: А где её искать? Ну как где? Где-то в структуре, она должна быть рядом с текущим значением, в пределах 4-5 позиций. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 28 декабря, 2018 Поделиться Опубликовано 28 декабря, 2018 8 часов назад, Stigmaer сказал: возможно создать такой скрипт Конечно. В структуре (регионе памяти) найди максимальное значение улучшений и пиши его сразу в eax: newmem: mov eax, [ecx+xx] - xx -смещение до максимума. code: Ссылка на комментарий Поделиться на другие сайты Поделиться
Stigmaer Опубликовано 28 декабря, 2018 Автор Поделиться Опубликовано 28 декабря, 2018 (изменено) 1 час назад, Garik66 сказал: В структуре (регионе памяти) найди максимальное значение улучшений и пиши его сразу в eax: Сделай если не сложно маленький урок на эту тему, только пожалуйста на примере другой игры, чтоб я увидел принцип как найти и как связать всё это в скрипте. В будующем ситуация то может повториться. Изменено 28 декабря, 2018 пользователем Stigmaer исправление грам. ошибок Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 28 декабря, 2018 Поделиться Опубликовано 28 декабря, 2018 29 минут назад, Stigmaer сказал: Сделай если не сложно маленький урок на эту тему таких уроков много: и у меня, и у других участников форума и полный гугл. Подойдет любой - ну например infiniteHP Ссылка на комментарий Поделиться на другие сайты Поделиться
MEDBEDb Опубликовано 28 декабря, 2018 Поделиться Опубликовано 28 декабря, 2018 5 часов назад, Stigmaer сказал: Сделай если не сложно маленький урок на эту тему, только пожалуйста на примере другой игры, чтоб я увидел принцип как найти и как связать всё это в скрипте. В будующем ситуация то может повториться. Ты совсем издеваешься? Я не наезжаю, мне просто интересно... Ты когда - нибудь структуры вообще рассматривал? А на счёт урока... Ну еклм, ладно, держи: Ссылка на комментарий Поделиться на другие сайты Поделиться
Stigmaer Опубликовано 28 декабря, 2018 Автор Поделиться Опубликовано 28 декабря, 2018 (изменено) 2 часа назад, MEDBEDb сказал: Ты совсем издеваешься? Я не издеваюсь веришь,,нет, 2 часа назад, MEDBEDb сказал: Ты когда - нибудь структуры вообще рассматривал? первый раз с такой задачей столкнулся. 2 часа назад, MEDBEDb сказал: Ты когда - нибудь структуры вообще рассматривал? Нет сразу скрипты писал. Кто ни будь у кого есть до этого доступ! Поставьте Медведю плюс за меня! Изменено 28 декабря, 2018 пользователем Stigmaer исправление грам. ошибок Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения