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

Coder

Ветераны
  • Постов

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

  • Посещение

  • Победитель дней

    13

Весь контент Coder

  1. Здравствуй, босс! Для начала посмотри его видео урок внимательнее, скопируй его скрипт и вставь, потом отредактируй под себя.
  2. Найди инструкции которые пишут в адрес с патронами, и напиши нужный тебе скрипт. Если же тебе надо, чтобы значение осталось таким же как и было (а не 999 например), ищи инструкцию, которая пишет в твой адрес при выстрели, а потом проверь что ещё к ней обращается, если же там только твой адрес, можешь нопить её и всё. Если там ещё чужие адреса окажутся, делай фильтр (как его сделать можно найти на форуме). ACID, нет разницы - указал ты конкретное число или будет браться тоже самое число только с какого-нибудь регистра.
  3. Ну есть такая штука, как WorldtoScreen, переводит мировые координаты в экранные.
  4. Coder

    Mass Effect 3

    Версия игры: 1.0.5427.1; дата создания: 04.18.2012; 11 функций Корабль: F1 - Невидимый корабль, жнецы никогда за вами не явятся F2 - Бесконечное топливо F3 - Телепорт корабля F4 - Сохранить позицию F5 - Загрузить позиция Шепард и его команда: F6 - Режим бога (здоровье никогда не отнимется) + убийство с одного касания/пинка/ранения F7 - Бесконечная броня (!!будьте осторожны, сверхмощные повреждения, отнимают здоровье даже через броню!!) F8 - Прибавить указанное количество кредитов F10 - Телепорт Шепарда F11 - Сохранить позицию F12 - Загрузить позицию P.S. требует .NET 4.0 Обсуждение моих трейнеров - http://forum.gamehac...BE%D1%82-coder/ ME3_Trainer.zip
  5. Coder

    Far Cry

    Версия игры 1.4 (актуальная на данный момент); Версия трейнера 1.0; дата создания: 04.04.2012 Функции: F1 - Бесконечные патроны F2 - Бесконечная выносливость F3 - Режим бога (максимум брони и здоровья + они не отнимаются: взрывами, падениями, ударами, стрельбой и т.д.) + бесконечные гранаты F4 - Отключение искусственного интеллекта игры (все ваши враги на уровне просто стоят и всё, никак не реагируют ни на что), если вы захотите всё вернуть назад, отключите эту функцию, и загрузите последнюю сохранённую игру. Трейнер закрывается правым кликом мыши. P.S. требует .NET 4.0 Обсуждение моих трейнеров - http://forum.gamehacklab.ru/topic/1359-%D0%BE%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D1%82%D1%80%D0%B5%D0%BD%D0%B5%D1%80%D0%BE%D0%B2-%D0%BE%D1%82-coder/ Скачать: FarCry Trainer.zip
  6. Полностью подверждаю слова кенга. Полное нитро имеет значение (float)6, инструкция которая пишет обращается в адрес [edi+50], несмотря на то, что адрес нитро расположен в [edi+58], ну да ладно К тому же игра полностью меняет базу указателей при рестарте гонки. Стабильно держатся только координаты для этой гонки (в других гонках уже нужно заново искать указатели на координаты). Это что-то новое в защите игр. От EA я такого никак не ожидал. P.S. ну вот какого чёрта отладчик отображает что эта инструкция пишет в адрес нитро, хотя она пишет совершенно в другой адрес.
  7. Coder

    Ridge Racer Unbounded

    Версия игры 1.02; версия трейнера 1.1; дата создания трейнера 02.02.2012 Описание: F1 - Бесконечная энергия (нитро) F2 - Всегда первый F3 - ТелепортХак, после включения (F4 - Сохранить координаты, F5 - Восстановить координаты). P.S. требует .NET 4.0 Обсуждение моих трейнеров - http://forum.gamehacklab.ru/topic/1359-%D0%BE%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D1%82%D1%80%D0%B5%D0%BD%D0%B5%D1%80%D0%BE%D0%B2-%D0%BE%D1%82-coder/ RidgeTrainer.zip
  8. Версия игры 1.0.5.0; версия трейнера 1.0, дата создания 03.02.2012 Описание: F1 - Бесконечная закись азота F2 - Остановка таймера (даже если вы не приехали первым фактически, вы всё равно выиграете (игра определяет победителя по времени)) F3 - Бесконечные бонусы (турбо, ЭМИ, вертолёты, заграждения и т.д., даже если вам не выдали никаких бонусов в гонке, они появятся всё равно) F4 - Мгновенная перезарядка (вы можете использовать бонусы, не дождавшись перезарядки) F5 - Ультралёгкая машина (немного увеличивается макс. скорость, неимоверно увеличивается ускорение, но управлять тяжело) Настоятельно рекомендуется отключить эту функцию в конце гонки, и сбросить массу (NumPad0). F6 - Телепорт, в объяснении не нуждается (правда немного кривой он). Трейнер закрывается правым кликом мыши. Обсуждение моих трейнеров - http://forum.gamehacklab.ru/topic/1359-%D0%BE%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D1%82%D1%80%D0%B5%D0%BD%D0%B5%D1%80%D0%BE%D0%B2-%D0%BE%D1%82-coder/ P.S. требует .NET 4.0 NFSHPTrainer.zip
  9. Жду новые игры для того, чтобы их взломать=)

  10. Да шутка с CE стоящая
  11. Прошу прощения у всей администрации данного форума за оффтоп. boss, мне не приятно с Вами общаться, думаю этого достаточно.
  12. Есть некоторый прогресс,хотел найти значение скорости тачки, нашёл экранное значение скорости. Начал смотреть что в него пишет, была одна инстукция fld. Решил полазить по отладчику, и вуаля нашёл не скорость, а 3 значения (структура), смещение машины по оси X,Y,Z. Т.е. думаю стоит копать дальше, по отладчику найду и координаты, и скорость движения. Выглядит это так:
  13. Извините, но я вас не знаю и тем более вас нет у меня в скайпе. А игра Ridge Racer Unbounded (2012), как и искать координаты я знаю=)
  14. Поиск по 2 bytes, float, double не дал результатов. Искал и по увеличилось, уменьшилось и наоборот результатов нет.
  15. Здравствуйте! Вышла новая часть игры Ridge Racer. Ну для начала, я сделал бесконечную энергию, потом решил пошалить с координатами. Так вот, когда дошёл до координат, я увидел облом. Решил найти структуру координат по Z (ведь так проще всего). Ничто не предвещало проблем, но всё же произошла проблема, при долгом и тщательном отсеивании остаются два адреса, они меняются когда меняется высота (высота больше, значение больше). Но эти значения не настоящие (их изменение ничего не даёт, т.к. после изменения сразу возвращается прошлое значение). Искал и float и double, толку не дало. Может есть какие-нибудь рекомендации?
  16. Гугл выводит бред, типа - закиньте свои текстуры в такую-то папку. А как понятно, мне это явно не подходит. --- Так есть какие-нибудь варианты?
  17. Здравствуйте! Нашел внутриигровое значение скорости атаки героев в игре. Теперь я хотел бы заменить текст в игре - Скорость боя: Высокая на Скорость боя: [внутриигровое значение] Но вот найти значение поля Скорость боя никак не получается.. Как это возможно реализовать?
  18. Только я даже представления не имею как это на FASM переписать.
  19. Спасибо за подсказки, получилось сделать трейнер на C++. #include <windows.h> #include <conio.h> #include <dos.h> #include <tlhelp32.h> #include <stdio.h> LPVOID gm_addr1 = (void*) адрес; // memory address of the stamina value in the WarRock process LPVOID gm_addr2 = (void*) адрес; LPVOID gm_addr3 = (void*) адрес; LPVOID gm_addr4 = (void*) адрес; LPVOID gm_off1 = (void*) байт кода; LPVOID gm_off2 = (void*) байт кода; LPVOID gm_off3 = (void*) байт кода; LPVOID gm_off4 = (void*) байт кода; LPVOID gm_on1 = (void*) байт кода; LPVOID gm_on2 = (void*) байт кода; LPVOID gm_on3 = (void*) байт кода; LPVOID gm_on4 = (void*) байт кода; void screen() // output { system("cls"); // clear the screen printf("WarCraft 3 Map Hack \n"); printf("Press NumPad1 to enable MapHack \n"); printf("Press NumPad2 to disable MapHack \n"); printf("Created by Coder, connect with me ICQ: 222932 \n"); } int main(int argc, char* argv[]) { HANDLE hProcessSnap; // will store a snapshot of all processes HANDLE hProcess = NULL; // we will use this one for the WarRock process PROCESSENTRY32 pe32; // stores basic info of a process, using this one to read the ProcessID from hProcessSnap = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 ); // make process snapshot pe32.dwSize = sizeof( PROCESSENTRY32 ); // correct size Process32First(hProcessSnap, &pe32); // read info about the first process into pe32 do // loop to find the WarRock process { if(strcmp(pe32.szExeFile, "war3.exe") == 0) // if WarRock was found { hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID); // open it, assigning to the hProcess handle break; // break the loop } } while(Process32Next(hProcessSnap, &pe32)); // loop continued until Process32Next deliver NULL or its interrupted with the "break" above CloseHandle( hProcessSnap ); // close the handle (just fuckin do it) if(hProcess == NULL) // self explanatory tbh { printf("WarCraft is not running!"); getch(); // wait for a key press. otherwise the app will just close so fast when the process is not found, you wont know wtf happened. } else { screen(); // print the display char key = ' '; // make a key variable to store pressed keys while(key != VK_ESCAPE) // loop until user presses Escape { if(kbhit()) // if a key was pressed { key = getch(); // it is saved into "key" switch(key) // here the commands are handled depending on the key that was pressed { // case '1': ... break; case '2': ... break; and so on case '1': WriteProcessMemory(hProcess, gm_addr1, &gm_on1, 1, NULL); // read the stamina value from the memory into the "stamina" variable WriteProcessMemory(hProcess, gm_addr2, &gm_on2, 1, NULL); WriteProcessMemory(hProcess, gm_addr3, &gm_on3, 1, NULL); WriteProcessMemory(hProcess, gm_addr4, &gm_on4, 1, NULL); break; case '2': WriteProcessMemory(hProcess, gm_addr1, &gm_off1, 1, NULL); // read the stamina value from the memory into the "stamina" variable WriteProcessMemory(hProcess, gm_addr2, &gm_off2, 1, NULL); WriteProcessMemory(hProcess, gm_addr3, &gm_off3, 1, NULL); WriteProcessMemory(hProcess, gm_addr4, &gm_off4, 1, NULL); break; } screen(); // print the display after each key press } CloseHandle(hProcess); // close the handle } return 0; // THE END } }
  20. Потратив пол дня, на изучение рассказанных Вами функций, я смог написать программу без ошибок, но проблема та же не могу просто открыть процесс, пожалуйста просмотрите мой исходник, я перепробовал уже множество вариантов. format PE GUI 4.0 entry start include 'd:\Coding\fasm\include\win32a.inc' struct PROCESSENTRY32 dwSize dd ? cntUsage dd ? th32ProcessID dd ? th32DefaultHeapID dd ? th32ModuleID dd ? cntThreads dd ? th32ParentProcessID dd ? pcPriClassBase dd ? dwFlags dd ? szExeFile rd 260 ends section '.data' data readable writable file_name db 'war3.exe',0 handle_snap dd ? handle_proc dd ? error_message db 'Access denited!',0 caption db 'Fasm Trainer',0 Poke dd _Poke addr dd адрес godmode_on db байты godmode_off db байты pe32 PROCESSENTRY32 section '.text' code readable executable start: invoke CreateToolhelp32Snapshot, 0fh, 0 mov [handle_snap], eax invoke Process32First, eax, pe32 invoke GetModuleHandle,0 invoke DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,0 invoke ExitProcess,0 @next: nop invoke Process32Next, [handle_snap], pe32 test eax, eax jz @error invoke lstrcmp, pe32.szExeFile, file_name test eax, eax jnz @next @error: invoke MessageBox,HWND_DESKTOP,error_message,caption,MB_OK proc DialogProc hwnddlg,msg,wparam,lparam cmp [msg],WM_CLOSE je .wmclose cmp [msg],WM_COMMAND je .wmcommand cmp [msg],WM_LBUTTONDOWN je .move xor eax,eax jmp .finish .wmcommand: cmp [wparam],BN_CLICKED shl 16 + 1 je .poke cmp [wparam],BN_CLICKED shl 16 + 2 je .wmclose .poke: invoke Poke,[addr],godmode_on,4 jmp .finish .wmclose: invoke Poke,[addr],godmode_off,4 invoke EndDialog,[hwnddlg],0 .move: invoke SendMessage,[hwnddlg],WM_NCLBUTTONDOWN,2,0 .finish: ret endp proc _Poke,memadd,memval,bytes invoke OpenProcess, PROCESS_ALL_ACCESS, 0, [pe32.th32ProcessID] cmp eax,0 je .error invoke WriteProcessMemory,eax,[memadd],[memval],[bytes],0 cmp eax,0 je .error invoke CloseHandle, [handle_snap] ret .error: invoke MessageBox,HWND_DESKTOP,error_message,caption,MB_OK ret endp section '.idata' import data readable writeable library kernel,'kernel32.DLL',\ user,'user32.DLL' import kernel,\ GetModuleHandle,'GetModuleHandleA',\ ExitProcess,'ExitProcess',\ OpenProcess,'OpenProcess',\ WriteProcessMemory,'WriteProcessMemory',\ CreateToolhelp32Snapshot,'CreateToolhelp32Snapshot',\ Process32First,'Process32First',\ Process32Next,'Process32Next',\ lstrcmp,'lstrcmp',\ CloseHandle,'CloseHandle' import user,\ DialogBoxParam,'DialogBoxParamA',\ EndDialog,'EndDialog',\ MessageBox,'MessageBoxA',\ SendMessage,'SendMessageA' section '.rsrc' resource data readable directory RT_DIALOG,dialogs resource dialogs,37,LANG_ENGLISH+SUBLANG_DEFAULT,demonstration dialog demonstration,'Trainer by Coder',70,70,190,175,WS_POPUP dialogitem 'STATIC','Press OK for toggle godmode on.',-1,0,0,163,188,SS_LEFT + WS_VISIBLE+ SS_CENTER dialogitem 'BUTTON','OK',1,85,150,45,15,WS_VISIBLE dialogitem 'BUTTON','Exit',2,135,150,45,15,WS_VISIBLE enddialog
  21. Сделал вещь, процесс видит, но запись в код игры не происходит, в чём проблема? format PE GUI 4.0 include 'd:\Coding\fasm\include\win32ax.inc' struct PROCESSENTRY32 .dwSize dd ? .cntUsage dd ? .th32ProcessID dd ? .th32DefaultHeapID dd ? .th32ModuleID dd ? .cntThreads dd ? .th32ParentProcessID dd ? .pcPriClassBase dd ? .dwFlags dd ? .szExeFile rb 260 ends TH32CS_SNAPPROCESS = 0x2 ;------------------------------------------------ ;Declares ;------------------------------------------------ .data SnapHandle dd ? Poke dd _Poke ProcessEntry PROCESSENTRY32 szProcessName db "war3.exe", 0 addr dd адрес godmode_on db байты proc _Poke,memadd,memval,bytes invoke OpenProcess,PROCESS_ALL_ACCESS,0,[ProcessEntry..th32ProcessID] invoke WriteProcessMemory,eax,[memadd],[memval],[bytes],0 cmp eax,0 je Exit ret endp .code Main: ;------------------------------------------------ ;Create Snapshot of Processes ;------------------------------------------------ mov dword [ProcessEntry..dwSize], sizeof.PROCESSENTRY32 invoke CreateToolhelp32Snapshot, TH32CS_SNAPPROCESS, 0 cmp eax, 0 je Exit mov dword [SnapHandle], eax invoke Process32First, dword [SnapHandle], ProcessEntry ;------------------------------------------------ ;Loop Through All Processes ;------------------------------------------------ NextProcess: cmp eax, 0 je Exit invoke lstrcmpi, ProcessEntry..szExeFile, szProcessName cmp eax, 0 je Found invoke Process32Next, dword [SnapHandle], ProcessEntry jmp NextProcess ;------------------------------------------------ ;Show a messagebox if found ;------------------------------------------------ Found: invoke MessageBox, 0, "Patch Sucessful!", szProcessName, MB_ICONQUESTION invoke Poke,addr,godmode_on,4; ;jmp Exit ;------------------------------------------------ ;Exit the loader when done ;------------------------------------------------ Exit: invoke ExitProcess, 0 .end Main
  22. Сейчас попробую запилить. Вроде бы понял как работают эти функции. Но тогда возникает вопрос, а как я узнаю что функция остановилась на моём процессе? И собственно остановлюсь на своём процессе. Кое-что написал, но при компиляции ошибка на линии 58 ( invoke OpenProcess,PROCESS_ALL_ACCESS,0,[pe32.th32ProcessID] ) format PE GUI 4.0 entry start include 'd:\Coding\fasm\include\win32a.inc' section '.data' data readable writable error_message db 'Access denited!',0 caption db 'Fasm Trainer',0 pid dd 0 Poke dd _Poke windowcap db 'Warcraft III',0 addr dd адрес mh_on db байты вкл mh_off db байты выкл section '.text' code readable executable start: invoke GetModuleHandle,0 invoke DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,0 invoke ExitProcess,0 proc DialogProc hwnddlg,msg,wparam,lparam cmp [msg],WM_CLOSE je .wmclose cmp [msg],WM_COMMAND je .wmcommand cmp [msg],WM_LBUTTONDOWN je .move xor eax,eax jmp .finish .wmcommand: cmp [wparam],BN_CLICKED shl 16 + 1 je .poke cmp [wparam],BN_CLICKED shl 16 + 2 je .wmclose .poke: invoke Poke,[addr],mh_on,4 jmp .finish .wmclose: invoke Poke,[addr],mh_off,4 invoke EndDialog,[hwnddlg],0 .move: invoke SendMessage,[hwnddlg],WM_NCLBUTTONDOWN,2,0 .finish: ret endp proc _Poke,memadd,memval,bytes invoke CreateToolhelp32Snapshot,0fh,NULL mov edx, eax mov [pe32.dwSize],sizeof.PROCESSENTRY32 cmp eax,0 je .error invoke Process32First,edx,pe32 test eax,eax jz .error invoke Process32Next,edx,pe32 test eax,eax jz .error invoke lstrcmpi,pe32.szExeFile,'war3.exe' test eax,eax jz .error invoke OpenProcess,PROCESS_ALL_ACCESS,0,[pe32.th32ProcessID] cmp eax,0 je .error invoke WriteProcessMemory,eax,[memadd],[memval],[bytes],0 cmp eax,0 je .error ret .error: invoke MessageBox,HWND_DESKTOP,error_message,caption,MB_OK ret endp struct PROCESSENTRY32 dwSize dd MAX_PATH cntUsage dd NULL th32ProcessID dq NULL th32DefaultHeapID dq NULL th32ModuleID dd NULL cntThreads dd NULL th32ParentProcessID dd NULL pcPriClassBase dd NULL dwFlags dd NULL szExeFile db MAX_PATH dup NULL ends pe32 PROCESSENTRY32 section '.idata' import data readable writeable library kernel,'kernel32.DLL',\ user,'user32.DLL' import kernel,\ GetModuleHandle,'GetModuleHandleA',\ ExitProcess,'ExitProcess',\ OpenProcess,'OpenProcess',\ WriteProcessMemory,'WriteProcessMemory',\ CreateToolhelp32Snapshot,'CreateToolhelp32Snapshot',\ Process32First,'Process32First',\ Process32Next,'Process32Next ' import user,\ DialogBoxParam,'DialogBoxParamA',\ EndDialog,'EndDialog',\ MessageBox,'MessageBoxA',\ FindWindow,'FindWindowA',\ GetWindowThreadProcessId,'GetWindowThreadProcessId',\ SendMessage,'SendMessageA' section '.rsrc' resource data readable directory RT_DIALOG,dialogs resource dialogs,37,LANG_ENGLISH+SUBLANG_DEFAULT,demonstration dialog demonstration,'Trainer by Coder',70,70,190,175,WS_POPUP dialogitem 'STATIC','Press OK for toggle godmode on.',-1,0,0,163,188,SS_LEFT + WS_VISIBLE+ SS_CENTER dialogitem 'BUTTON','OK',1,85,150,45,15,WS_VISIBLE dialogitem 'BUTTON','Exit',2,135,150,45,15,WS_VISIBLE enddialog
  23. Реально подключиться к окну, когда игра в оконном режиме. Так можно как-нибудь иным способом подключиться к процессу?
×
×
  • Создать...

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

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