Akama Опубликовано 23 марта, 2010 Поделиться Опубликовано 23 марта, 2010 Проблема такая:Нахожу кол-во патронов в пистолете, изменяю, всё норм. Как только отладчик запускаю, игра без всякого краша просто закрывается.Что сделать чтоб такого небыло? Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 24 марта, 2010 Поделиться Опубликовано 24 марта, 2010 Галку "Пытаться обойти обнаружение отладчика" ставить пробовал? Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 24 марта, 2010 Поделиться Опубликовано 24 марта, 2010 Я думаю у тебя вообще проблем быть не должноиз плагинов установлены только StrongOD и CmdBarсами скрипты[sp=патроны не уменьшаются][ENABLE] aobscan(_faddress,83xxxxxxxxxxxx8bxxxxxxxxxx85xx74xx8bxxxx85xx8dxxxx74xx8bxxxx2bxx)_faddress: // 0052762B = JustCause2.exe+12762B nop nop nop nop nop nop nop[DISABLE] aobscan(_faddress,90908bxxxxxxxxxx85xx74xx8bxxxx85xx8dxxxx74xx8bxxxx2bxx)_faddress-5: add dword ptr [esi+000001e8],ff dealloc(_newmem)//Alt: db 83 86 E8 01 00 00 FF[/sp][sp=кол-во запасных патрон][ENABLE] aobscan(_faddress,8bxxxxxx03xxxxxxxx8bxxxxc2xxxxxxxxxxxxxxxxxxxxxxxxxxxx8bxxxxxxxx) alloc(_newmem,2048) label(_returnhere) label(_originalcode)_newmem: mov dword ptr [eax+ecx*4+78],3e7_originalcode: mov eax,[eax+ecx*4+78] add eax,[ebp-04] jmp _returnhere_faddress: // 00775036 = JustCause2.exe+375036 jmp _newmem nop nop_returnhere:[DISABLE] aobscan(_faddress,9090xxxx8bxxxxc2xxxxxxxxxxxxxxxxxxxxxxxxxxxx8bxxxxxxxx)_faddress-5: mov eax,[eax+ecx*4+78] add eax,[ebp-04] dealloc(_newmem)//Alt: db 8B 44 88 78 03 45 FC[/sp][sp=гранаты][ENABLE] aobscan(_faddress,83xxxxxxxxxxxxxx0fxxxxxxxxxx8dxxxxe8xxxxxxxx83xxxxxx75xxxxxxxxxx) alloc(_newmem,2048) label(_returnhere) label(_originalcode)_newmem: mov dword ptr [eax+ebx*4+000000d4],63_originalcode: cmp dword ptr [eax+ebx*4+000000d4],00 jmp _returnhere_faddress: // 00614EA2 = JustCause2_Game.exe+214EA2 jmp _newmem nop nop nop_returnhere:[DISABLE] aobscan(_faddress,9090900fxxxxxxxxxx8dxxxxe8xxxxxxxx83xxxxxx75xxxxxxxxxx)_faddress-5: cmp dword ptr [eax+ebx*4+000000d4],00 dealloc(_newmem)//Alt: db 83 BC 98 D4 00 00 00 00[/sp] Ссылка на комментарий Поделиться на другие сайты Поделиться
Akama Опубликовано 24 марта, 2010 Автор Поделиться Опубликовано 24 марта, 2010 Что делают плагины? Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 24 марта, 2010 Поделиться Опубликовано 24 марта, 2010 Если краткоStrongOD - прячет ольку от антидебагаCmdBar - командная строка. Ссылка на комментарий Поделиться на другие сайты Поделиться
Akama Опубликовано 24 марта, 2010 Автор Поделиться Опубликовано 24 марта, 2010 Ну правильно, StrongOD и прячет, надо найти этот плагинчик... Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 24 марта, 2010 Поделиться Опубликовано 24 марта, 2010 Ссылка (нажать на синюю стрелку для закачки) Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 Доломал я игру практически. 12 опций сделал.Что-то я не понял, где-то я ошибся, а где не пойму.Скрипт уровня розыска.[cod]НЕ СОВСЕМ ТА ИНСТРУКЦИЯ[/cod]по задумке, когда значение флага "1", то добавляет уровень розыска, а когда "2", то уменьшает. Но получается немного не так... назначили флагу значение "1" - увеличилось, и оно автоматом сменилось на "0", как и должно быть. Затем еще раз назначили значение "1" и... уровень розыска уменьшился, хотя должен был увеличиться. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 А я знаю почему так Для этих целей надо пользоваться инструкциями сопроцессора FPU... Так что надо скрипт немного подправить. Если не получится, то я помогу попозже. Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 не совсем ту инструкцию я выбрал. Она "на запись".Вот на доступ. Но тут тоже как-то через попу, если 3 флага. если 2 (1 и 0), то прекрасно работает.[cod][ENABLE] aobscan(_faddress,f3xxxxxxxx0fxxxxxxxxxxxxxxxx8bxx76xx33xx38xxxxxxxxxx74xxxxxxxxxx) alloc(_newmem,2048) label(_returnhere) label(_originalcode) label(_newmem2) label(_flag) registersymbol(_flag)_newmem: cmp byte ptr [_flag],1 jne _newmem2 cmp dword ptr [eax+30],0 jbe _originalcode sub dword ptr [eax+30],41A00000 mov byte ptr [_flag],0 jmp _originalcode_newmem2: cmp byte ptr [_flag],2 jne _originalcode cmp dword ptr [eax+30],42C80000 //100.0 jae _originalcode add dword ptr [ecx+30],41A00000 mov byte ptr [_flag],0 _originalcode: movss xmm0,[eax+30] jmp _returnhere_flag: dd 0_faddress: // 006B2965 = JustCause2.exe+2B2965 jmp _newmem_returnhere:[DISABLE] aobscan(_faddress,0fxxxxxxxxxxxxxxxx8bxx76xx33xx38xxxxxxxxxx74xxxxxxxxxx)_faddress-5: movss xmm0,[eax+30] dealloc(_newmem)//Alt: db F3 0F 10 40 30[/cod]уж смоги попозже, плз (нахал ), так бы я сюда не запостил.щас пока из 1 инструкции сделаю 5 опций - этот скрип огромен))) Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 Я написал по памяти, но могу ошибаться. Обычно, ошибки в логике написания инструкций FPU я сразу вижу и испрвляю при пошаговой отладке со справочником перед глазами, что и советую.[sp=Код][ENABLE] aobscan(_faddress,f3xxxxxxxx0fxxxxxxxxxxxxxxxx8bxx76xx33xx38xxxxxxxxxx74xxxxxxxxxx) alloc(_newmem,2048) label(_returnhere) label(_originalcode) label(_newmem2) label(_flag) registersymbol(_flag)_newmem: pushf push ecx mov ecx,[_flag] cmp al,1 cmp byte ptr [_flag],1 jne _newmem2 cmp dword ptr [eax+30],0 jbe _originalcode fld [eax+30] // отнимаем 20 fld float(20) fsubp ST,ST2 fstp [eax+30] mov byte ptr [_flag],0 jmp _originalcode_newmem2: cmp al,2 jne _originalcode cmp dword ptr [eax+30],42C80000 //100.0 jae _originalcode fld [ecx+30] fld float(20) faddp ST,ST2 fstp [ecx+30] mov byte ptr [_flag],0 _originalcode: pop ecx popf movss xmm0,[eax+30] jmp _returnhere_flag: dd 0_faddress: // 006B2965 = JustCause2.exe+2B2965 jmp _newmem_returnhere:[DISABLE] aobscan(_faddress,0fxxxxxxxxxxxxxxxx8bxx76xx33xx38xxxxxxxxxx74xxxxxxxxxx)_faddress-5: movss xmm0,[eax+30] dealloc(_newmem)//Alt: db F3 0F 10 40 30[/sp] Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 CE ругается на fld float(20)fsubp ST,ST2fld float(20)faddp ST,ST2даже в олле их не записать, чтобы db получить Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 Попробуй исправить на fld [_m]fsubp ST,ST(2)fld [_m]faddp ST,ST(2)Где метка _m содержит:_m:dd float(20)В OllyDbg не будут компилироваться float(20) - это естественно. Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 неа, и так не катит.прийдется сделать просто макс. лвл и минимальный лвл. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 Да, не очень сложен этот FPU. Вообще хорошо бы каждому разобраться с подобными инструкциями окончательно, чтобы как я делать меньше ошибок. Да и мне бы тоже не помешало,поэтому может быть тутор сегодня сделаю, но никому не обещаю. Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 зарелизил))http://multi-up.com/245702думаю это не окончательный вариант.. еще много всего можно сделать.P.S. чет так влом в последнее время с копипейстом в масмовский движек хекс кодов мучиться надоело.. то в CE, то в GTS сделаю))) Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 28 марта, 2010 Поделиться Опубликовано 28 марта, 2010 Трейнер получился красивым. Я давным давно склоняюсь к тому чтобы к трейнерам с автоассемблером был некоторый модуль, тогда сами трейнеры могли бы быть малых размеров и они бы работали при условии, что есть этот модуль. А его можно собрать из исходников CheatEngine.ps Я сделал мини-тутор по работе с FPU числами компилятора Borland C++. Заливаю... Надо ещё понять в какой раздел тему создать с этим тутором. Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 3 апреля, 2010 Поделиться Опубликовано 3 апреля, 2010 Что-то у меня с этим StrongOD игра как вылетала при отладке, так и вылетает... как его правильно настроить? Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 3 апреля, 2010 Поделиться Опубликовано 3 апреля, 2010 На дефолтных настройках все нормально. JC2 может вылететь при бряке, если только ты аттачился к процессу игры, а не запускал игру из под отладчика.Кстати, до установки бряка, лучше перейти в КПК по "F1", меньше гемора. Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 4 апреля, 2010 Поделиться Опубликовано 4 апреля, 2010 При аттаче вылетает, а из под отладчика не запускается. Процесс terminated, т.е. завершается Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 7 апреля, 2010 Поделиться Опубликовано 7 апреля, 2010 В сержантском тренере всё работает, только на бомбах подрываюсь и снайперы убивают. Ложная тревога) а вот +23 тренер непонятно с чего работал и вдруг перестал... Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 8 апреля, 2010 Поделиться Опубликовано 8 апреля, 2010 SERGANT а что тебе помешало сделать полное бессмертие, чтобы никто убить не мог? Ведь для этого достаточно изменить максимальное значение здоровья. Оно должно быть по соседству с адресом текущего здоровья (-4h или +10h). Только что проверял - всё работает. Даже из взорвавшейся машины можно спокойно выйти. Ставил 100 000 Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 8 апреля, 2010 Поделиться Опубликовано 8 апреля, 2010 Все адреса на которые я выходил давали лишь видимое бессмертие =/ Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 8 апреля, 2010 Поделиться Опубликовано 8 апреля, 2010 Что значит "видимое"? Смерть же наступает из-за того, что снайперы и бомбы зараз отнимают все жизни. Пишем в адрес максимального значения здоровья 100000 и получаем полное бессмертие - 100 тыщ здоровья тебе ни один взрыв не отнимет. Вот я с помощью этой таблицы бессмертие делал: http://forum.cheatengine.org/viewtopic.php?t=497165 (странная таблица, адреса не морозятся...) Ссылка на комментарий Поделиться на другие сайты Поделиться
Padonok Опубликовано 14 июля, 2010 Поделиться Опубликовано 14 июля, 2010 У кого получилось найти адрес жизни а то у меня не получается Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения