SER[G]ANT Опубликовано 25 августа, 2011 Поделиться Опубликовано 25 августа, 2011 Вот такое дело у меня. Нашёл три инструкции. 1 Стою на мосту, заморозил адрес из инстр. при падении меня подкидывает вверх(разбиться могу из-за заморозки плохой) я думаю, что это Z, я нашёл её лазая по лестнице.2 Вторая возвращает меня на место, когда я делаю шаг либо влево либо вправо. Я думаю это X3 Когда я присидаю меня чуть чуть подкидывает вверх, (это точно не Z, потому что стоя/сидя меня бы подкидывало в небо) наверное это Y.Если я всё нашёл правильно, то помогите мне сделать отдельно скрипт сохраняющий координату и восстанавливающий?Z :mov [esi+0000029C],ecxX :mov [ebx],eaxY :mov [ebx+08],edxМного раз искал координаты и всегда иструкции для X Y Z отличались либо регистрами, либо смещением, а у тебя все три - совершенно разные. По комментарию похоже, что вторая инструкция - правильная. узнай значение ebx и смотри в структуре значения рядом и, скорее всего, найдешь Y и Z.Если и так не получится, то пробуй найти значении любой из координаты в структуре игрока. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 25 августа, 2011 Поделиться Опубликовано 25 августа, 2011 Так. Перенашёл инстр. с координатамиX :mov ecx,[edi+0000031C]Y :mov edx,[edi+00000320]Z :mov eax,[edi+00000324]Переписал скрипт и ничего[ENABLE] alloc(_newmemX,1024) alloc(_newmemY,1024) alloc(_newmemZ,1024) label(_returnhereX) label(_returnhereY) label(_returnhereZ) label(_originalcodeX) label(_originalcodeY) label(_originalcodeZ) label(_restX) label(_restY) label(_restZ) label(_X) label(_Y) label(_Z) label(_save) label(_teleport) registersymbol(_save) registersymbol(_teleport)//X_newmemX:mov ecx,[edi+0000031C]pushadcmp [_save],1jne short _restXmov [_save],0mov ecx,3lea edi,[_X]lea esi,[edi+0000031C]rep movsd_restX:cmp [_teleport],1jne short _originalcodeXmov [_teleport],0mov ecx,3lea esi,[edi+0000031C]lea esi,[_X]rep movsd_originalcodeX: popadmov ecx,[edi+0000031C] jmp _returnhereX//Y_newmemY:mov edx,[edi+00000320]pushadcmp [_save],1jne short _restYmov [_save],0mov ecx,3lea edi,[_Y]lea esi,[edi+00000320]rep movsd_restY:cmp [_teleport],1jne short _originalcodeYmov [_teleport],0mov ecx,3lea esi,[edi+00000320]lea esi,[_Y]rep movsd_originalcodeY:popadmov edx,[edi+00000320]jmp _returnhereY//Z_newmemZ:mov eax,[edi+00000324]pushadcmp [_save],1jne short _restZmov [_save],0mov ecx,3lea edi,[_Z]lea esi,[edi+00000324]rep movsd_restZ:cmp [_teleport],1jne short _originalcodeZmov [_teleport],0mov ecx,3lea edi,[edi+00000324]lea esi,[_Z]rep movsd_originalcodeZ:mov eax,[edi+00000324]popadjmp _returnhereZ_save: dd 0 _teleport: dd 0_X: dd 0_Y: dd 0_Z: dd 0 //X jmp _newmemX nop nop nop nop_returnhereX://Y jmp _newmemY nop nop nop nop_returnhereY://Z jmp _newmemZ nop nop nop nop_returnhereZ:[DISABLE]dealloc(newmem)"hl2.exe"+153C:push 60push 0040D228//Alt: db 6A 60 68 28 D2 40 00 Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 25 августа, 2011 Поделиться Опубликовано 25 августа, 2011 Izmalkoff, 1) значения координат разве не находятся в памяти процесса рядом друг с другом?structureCoordinates:dd 00000000 // адрес Xdd 00000000// адрес Ydd 00000000// адрес ZЕсли адреса находятся рядом, то из самой часто обращаемой инструкции из трёхX :mov [ebx],eaxY :mov [ebx+08],edxZ :mov [esi+0000029C],ecxможно и нужно получить только один. Этот адрес будет указателем на структуру адресов координат. И его нужно сохранять в отдельный твой указатель. Допустим из первой инструкции можно получить указатель на координаты.Короче мой вариант, если использовать только АА-скрипты (кстати не очень удобно, из-за активирующего скрипта, который надо активировать вручную).Z :mov [esi+0000029C],ecxX :mov [ebx],eaxY :mov [ebx+08],edxНадо реализовать поточное выполнение:1) запоминание координат2) запись запомненных координат3) инициализацияУдобне было бы сделать на Lua, но подозреваю это будет для тебя сложнее.Скрипт1 - Запоминание координат (выполнится в любом случае при активации или деактивации)CREATETHREAD(memThreadSave)[ENABLE][DISABLE]Скрипт2 - Восстановление координат (выполнится в любом случае при активации или деактивации)CREATETHREAD(memThreadRestore)[ENABLE][DISABLE]Скрипт3 - Инициализация[ENABLE] alloc(newmem,1024) alloc(memThreadSave,1024) alloc(memThreadRestore,1024) registersymbol(memThreadSave) registersymbol(memThreadRestore) label(SaveStructureCoordinates) label(returnhereX)memThreadSave: mov ecx, 3 mov esi,[SaveStructureCoordinates] lea edi,[SaveStructureCoordinates+4] rep movsd ret memThreadRestore: mov ecx, 3 lea esi,[SaveStructureCoordinates+4] mov edi,[SaveStructureCoordinates] rep movsd ret newmem: mov [ebx],eax mov [SaveStructureCoordinates],ebx // если нужно, то вписать оригинальный код jmp returnhereXSaveStructureCoordinates: dd 0 // указатель на структуру координат в игре dd 0 // Запомненнное значение X dd 0 // Запомненнное значение Y dd 0 // Запомненнное значение Z //X jmp newmem nop nop nop nopreturnhereX:[DISABLE]Сначала пишем и запускаем 3-скрипт.Затем пишем два остальных.Ставим горячие клавиши на скриптыВ игре при запуске трейнера, нужно вручную активировать 3-скрипт, тогда будут работать первый и второй. Автоматизировать это можно в связке с Lua. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 25 августа, 2011 Поделиться Опубликовано 25 августа, 2011 Да находятся, можно к адресу допустим с Х прибавить +4h и вот тебе координаты Y или Z Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 26 августа, 2011 Поделиться Опубликовано 26 августа, 2011 напиши название и версию игры Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 26 августа, 2011 Поделиться Опубликовано 26 августа, 2011 Css, патч не помню. Лан (с ботами короче) Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 26 августа, 2011 Поделиться Опубликовано 26 августа, 2011 А вот чуток от темы. Мне надо по нажатии хоткея в трейнере постоянно устанавливать значение 100 и не морозить его. Можно ли так делать на АА, а то указатели нудно искать? И ещё вопрос. Есть координата Z, я хочу сделать так, чтобы я всегда находился на высоте, написал скрипт и вот как происходит, я то подлетаю, то падаю то подлетаю. То есть заморозка действует не железо-бетонно, как сделать так, чтобы утановив значение 150 оно вообще не менялось? Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Помогите со скриптом, записывает, востанавливает, но я появляюсь в глюках под землёй(писал в Z).[ENABLE]alloc(newmem,2048) //2kb should be enoughalloc(coordinates,12)label(back)label(end)label(skip)label(save)label(restore)registersymbol(save)registersymbol(restore)newmem: //this is allocated memory, you have read,write,execute accesspushfdcmp [esi+00000090],0jz endcmp [save],1jne skipmov [save],0pushadmov ecx,2lea eax,[esi+00000090]lea edi,[coordinates]repe movsdpopadjmp endskip: cmp [coordinates],0 jz end cmp,[restore],1 jne end mov [restore],0 pushad mov ecx,2 lea eax,[coordinates] lea edi,[esi+00000090] repe movsdpopadend:popfdmovss xmm2,[esi+00000090]jmp backnopsave:db 0restore:db 0"vital.dll"+38A1A:jmp newmemnopnopnopback:[DISABLE]dealloc(newmem)dealloc(coordinates)unregistersymbol(save)unregistersymbol(restore)"vital.dll"+38A1A:movss xmm2,[esi+00000090]//Alt: db F3 0F 10 86 8C 00 00 00 Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Может инструкцию не правильно выбрал ? У меня такое было. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Я пробовал и fld, такая же тема Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Ребят помогите Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Я не могу,потому что по другому пишу. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Ну приведи хотя бы свой скрипт Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 28 декабря, 2011 Поделиться Опубликовано 28 декабря, 2011 Спасибо, сам разобрался Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 29 декабря, 2011 Поделиться Опубликовано 29 декабря, 2011 но я появляюсь в глюках под землёй(писал в Z).У меня нет игры под рукой, но осмелюсь предположить, что стоило писать в Y. Но не факт. Надо исследовать. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 29 декабря, 2011 Поделиться Опубликовано 29 декабря, 2011 Не, я справился. Игра блин виновата. Написал Три скрипта для всех координат чтоб при телепорте игрок появлялся именно в точке где записались координаты, если один скрипт, то игрока двигает от места сохранения. Xenus 2 ёпт. Ссылка на комментарий Поделиться на другие сайты Поделиться
keng Опубликовано 29 декабря, 2011 Поделиться Опубликовано 29 декабря, 2011 Я подумал, что этот пост будет полезно увидеть ещё кому-нибудь:По сути, как это выглядит:Х: 00 00 00 00Y: 11 11 11 11Z: 22 22 22 22Три координаты, по 4 байта каждая, итого - 12 байт. Хранятся по адресу, скажем, 0х100:0х100: 00 00 00 00 11 11 11 11 22 22 22 22Что делает скрипт? Создаёт пустое пространство размером 12 байт:0x200: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??Копирует в него по очереди каждую координату:0x200: 00 00 00 00 ?? ?? ?? ?? ?? ?? ?? ??0x200: 00 00 00 00 11 11 11 11 ?? ?? ?? ??0x200: 00 00 00 00 11 11 11 11 22 22 22 22Затем, при загрузке, копирует из 0x200 в 0x100, тем самым заменяя текущее значение сохранённым. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 всем привет вот нашел я координаты x,y,z вот только не могу понять как написать скрипт как у кенга в видео уроке помогите Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 всем привет вот нашел я координаты x,y,z вот только не могу понять как написать скрипт как у кенга в видео уроке помогитеЗдравствуй, босс!Для начала посмотри его видео урок внимательнее, скопируй его скрипт и вставь, потом отредактируй под себя. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 вот нашел я координаты x,y,z вот только не могу понять как написать скрипт как у кенга в видео уроке помогитеА что именно ты не можешь понять после нахождения координат? Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 Здравствуй, босс!Для начала посмотри его видео урок внимательнее, скопируй его скрипт и вставь, потом отредактируй под себя. Привет та смотрел не понял и делал все так и игра такая же не получилосьА что именно ты не можешь понять после нахождения координат? ну вот все от скрипта не могу понять что куда надо делать Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 Потому что, он не знает команды ассемблера. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 ну вот все от скрипта не могу понять что куда надо делатьНе, Приятель, это совсем не серьёзно С таким описанием проблемы, ответ к сожалению может быть только коротким. Ищи информацию по созданию скриптов и примеры. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 Не, Приятель, это совсем не серьёзно С таким описанием проблемы, ответ к сожалению может быть только коротким. Ищи информацию по созданию скриптов и примеры. можешь скинуть ссылку де такую информацию найти ? (ток не говорите набери в гугле просто дайте конкретную ссылку ) Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 можешь скинуть ссылку де такую информацию найти ? (ток не говорите набери в гугле просто дайте конкретную ссылку )А что сложного написать в гугле ?))))PS: Ссылка Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения