Kvazimado Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 2boss, не может быть, чтобы на нашем форуме не было инфы по созданию скриптом и их примеров. Если сложно найти на этом форуме, а это не огромная база знаний, то может начать с самого простого - почитать мануалы Артмани и СЕ? Просто мне лично приходит в голову, что в конечном итоге все вопросы сводят к просьбе - напишите мне скрипт телепорта или box esp и я пошел отсюда.Так как на форуме, не представил вообще никаких результатов работы своей, да и другие пользователи что то не видят результатов ни каких. Поэтому убедительно прошу прочитать форум, тут на большинство ваших вопросов давно даны ответы. На тему телепорта тут и статьи есть, и видео, целых два, насколько я помню. И это, выберите всего одну задачу, которую хотите решить, и не беритесь за все "самое интересное", ибо как показывает практика, распыление внимания, уменьшает производительность и результативность. Ссылка на комментарий Поделиться на другие сайты Поделиться
keng Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 Boss, ну я ж серьёзно говорю - я дал тебе уже две отличных книжки для изучения, ты хотя бы дочитай их до конца, а потом уже конкретные вопросы задавай. Не бывает волшебства, благодаря которому кто-то вдруг начинает понимать что-то с нуля - всё приходит с изучением теории на практике, ну и опытом. Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 boss, ты не знаешь, что делать после нахождения координат? А как насчет того, чтобы провести аналогию со взломом любого другого значения? Например, патронов? Что ты делаешь после нахождения адреса патронов? Любой новичок знает, что после этого надо найти инструкцию, которая и изменяет количество патронов (или же считывает их количество). А уже далее, когда нужная инструкция найдена, делается инъекция кода и пишется скрипт. Если все, что я сейчас написал, тебе не понятно - тебе нужно начинать с самых-самых азов... Ну, или, хотя бы, пересмотреть ВСЕ уроки кенга от начала и до конца, не просто повторяя действия, а вникая, почему делаются именно эти действия. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 17 июля, 2012 Поделиться Опубликовано 17 июля, 2012 Я конечно ни разу не делал телепорт на СЕ и вообще не знаю лень наверное понять все это.Если ты нашел координаты игрока Х.Y.Z. насколько мне известно Z-Это вверх, Y-Влево в Вправо, а X-Перёд Назад.Ставишь брейкпоинт на точку X или на Y а может на Z и далее.......................... по форуму что как это делать.В общем геймхакеры подскажут что как, ты покажи скрипт полностью . Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 [esi+00000254](для игры crimsonland сделал сегодня все норм работает телепорт )эх блин опять пишу ) вот 3 иструкций (игра css)fstp dword ptr [esi+0000024C] Yfstp dword ptr [esi+00000250] Xfstp dword ptr [esi+00000254] Zскрипт взял выше[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,[esi+0000024C]cmp [_save],1jne short _restXmov [_save],0mov ecx,3lea edi,[_X]lea esi, [esi+0000024C]rep movsd_restX:cmp [_teleport],1jne short _originalcodeXmov [_teleport],0mov ecx,3lea esi, [esi+0000024C]lea esi,[_X]rep movsd_originalcodeX:popadmov ecx, [esi+0000024C]jmp _returnhereX//Y_newmemY:mov edx,[esi+00000250]pushadcmp [_save],1jne short _restYmov [_save],0mov ecx,3lea edi,[_Y]lea esi,[esi+00000250]rep movsd_restY:cmp [_teleport],1jne short _originalcodeYmov [_teleport],0mov ecx,3lea esi,[esi+00000250]lea esi,[_Y]rep movsd_originalcodeY:popadmov edx,[esi+00000250]jmp _returnhereY//Z_newmemZ:mov eax,[esi+00000254] pushadcmp [_save],1jne short _restZmov [_save],0mov ecx,3lea edi,[_Z]lea esi,rep movsd_restZ:cmp [_teleport],1jne short _originalcodeZmov [_teleport],0mov ecx,3lea edi, [esi+00000254]lea esi,[_Z]rep movsd_originalcodeZ:mov eax, [esi+00000254]popadjmp _returnhereZ_save:dd 0_teleport:dd 0_X:dd 0_Y:dd 0_Z:dd 0//Xjmp _newmemXnopnopnopnop_returnhereX://Yjmp _newmemYnopnopnopnop_returnhereY://Zjmp _newmemZnopnopnopnop_returnhereZ:[DISABLE]dealloc(newmem)"engine.dll"+1005EC:добавил по байту _save и _teleport оно сделало адрес ну все норм )) ну тут проблема когда пишу в _save 1 оно не сахроняет и так весит 1 что не так ? бряк ставил на те инструкции норм все работает Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 Значит эта инструкция не выполняется в данный момент. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 а что же делать ? Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 А я откуда знаю. Может она выполняется при движении, может в скрипте ошибка, может инструкция не та, может все_что_угодно.Отлаживайте. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 инструкция вроде норм а вот про скрипт не знаю та как взял его выше на первой странице ник того человека Ac1d Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 Пробуй не бездумно копипастить код, а вникнуть в него, и делать по аналогии. По аналогии - это значит, что применять схожие алгоритмы, а не копировать код целиком, как он есть. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ac1d Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 Сам скрипт мой не правильный. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 срипт проверил брепоинтером ошибок нету такой сриптинструкция правильная[ENABLE]alloc(newmem,2048)alloc(coords,14)label(back)label(end)label(skip)label(flag1)label(flag2)registersymbol(flag1)registersymbol(flag2)newmem:pushfdcmp [esi+00000250],0jz endcmp [flag1],1jne skipmov [flag1],0pushadmov ecx,3lea esi,[esi+00000250]lea edi,[coords]repe movsdpopadjmp endskip:cmp [coords],0jz endcmp [flag2],1jne endmov [flag2],0pushadmov ecx,3lea esi,[coords]lea edi,[esi+00000250]repe movsdpopadend:popfdfstp dword ptr [esi+00000250]jmp backnopflag1:db 0flag2:db 015EF350:jmp newmemnopback:[DISABLE]15EF350:fstp dword ptr [esi+00000250]dealloc(newmem)dealloc(coords)unregistersymbol(flag1)unregistersymbol(flag2)ну все равно когда пишу 1 так и висит один не сахроняет Ссылка на комментарий Поделиться на другие сайты Поделиться
M4K Опубликовано 8 августа, 2012 Поделиться Опубликовано 8 августа, 2012 X - влево/вправоY - ближе/дальше от экранаZ - вверх/вниз Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 9 августа, 2012 Поделиться Опубликовано 9 августа, 2012 X - влево/вправоY - ближе/дальше от экранаZ - вверх/внизэто я знаю ) ну не могу понять почему не работает может в css нельзя сделать телепорт ? хотя я с ботами играю думаю же они не против) Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 9 августа, 2012 Поделиться Опубликовано 9 августа, 2012 Я тебе уже говорил, тупо копипастив код не понимая НИЧЕГО, кроме команды 'mov', ты ничему не добьешься. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 9 августа, 2012 Поделиться Опубликовано 9 августа, 2012 boss, мне надоело читать чушь, которую ты пишешь.1) Ну нафига под скрипт выделяешь 2кб, не много ли?2) Нафига под координаты выделено 14 байт, когда float это 4 байта (4 * 3 = 12)3) Ты хоть можешь объяснить зачем ты делаешь pusfd4) Ленивее тебя на этом форуме я не видел никого5) Читай книжки6) Ну нафига ты так делаешь?pushadmov ecx,3lea esi,[esi+00000250]lea edi,[coords]repe movsdpopadЭто же просто LOL кладёшь нужные тебе регистры в стэк и читаешь какую-то фигню.P.S. перед как писать подобные вещи на форуме, спроси себя, а не глупо ли спрашивать-то, на что уже есть куча ответов. Ссылка на комментарий Поделиться на другие сайты Поделиться
JuGGerNaunT Опубликовано 18 августа, 2012 Поделиться Опубликовано 18 августа, 2012 Ну нафига под скрипт выделяешь 2кб, не много лиНе много. Не имеет никакого значения сколько памяти ты выделяешь, если она меньше 4Кб(ну или какой у кого размер страницы). Ссылка на комментарий Поделиться на другие сайты Поделиться
SnedS91 Опубликовано 18 августа, 2012 Поделиться Опубликовано 18 августа, 2012 2 кб и вправду очень расточительно..А насчет телепорта, мне способ keng'a очень понравился, все и просто и логично, применимо практически к любой игре, достаточно поймать ту функцию, которая работает с координатами..ну и все тут.. да и сама идея с флагами гениальна просто)) пробовал на игре aquaria, телепорт получился даже лучше, чем ожидал, помимо сохранения и восстановления координат, я сделал перемещение к координатам курсора, а вместе с зумхаком - это телепорт в любую часть карты! (моя таблица есть на форуме СЕ если кому то интересно)Так что советую просто разобраться в теме - это довольно увлекательный процесс.. Ссылка на комментарий Поделиться на другие сайты Поделиться
keng Опубликовано 19 августа, 2012 Поделиться Опубликовано 19 августа, 2012 №68, по поводу 2кб - он прав, ибо VirtualAlloc \ VirtualAllocEx резервирует память постранично, а у страницы памяти есть минимальный размер. Я при этом в любом случае люблю выделать память побайтно (но это во мне минимализм играет).А что до телепорта - алгоритм изначально не мой, но я к нему пришёл самостоятельно, плюс - он не идеальный, в плане кода его наверняка можно оптимизировать. Но штука универсальная, это да. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 19 августа, 2012 Поделиться Опубликовано 19 августа, 2012 >>Я при этом в любом случае люблю выделать память побайтно (но это во мне минимализм играет).Если минимализм играет, то можно обходится без выделения памяти - например, искать такие участки где достаточно что-то занопить или потереть ряд инструкций сократив их. Порой это весьма сложно, но можно.Страничный размер если я не ошибаюсь 4 кб на 32 разрядной Windows. На 64 разрядной вроде в два раза больше - 8 кб. Проверить можно экспериментально в той же CE посмотрев память после выделения. Так что сколько не пиши alloc(_label, меньше 4кб) будет 4 кб и погоды это не сделает. Только можно спровоцировать пользователя на ненужные вопросы. У кого вопросы - в Интернете полно информации по Архитектуре виртуальной памяти процесса. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 4 декабря, 2012 Поделиться Опубликовано 4 декабря, 2012 В общем телепорт работает криво, сохраняет и загружает в определенное расстояние.Если сохранить позицию и загружать за стеной или за домом персонаж телепортируется хрень знает куда.А так все работает.Кусок кода.Инструкции точные работает тока с героем и постоянно выполняется инструкция.newmem:cmp [s_enable],1je save_coordcmp [l_enable],1je load_coordjmp originalcodesave_coord:mov [s_enable],0push eaxmov eax,[edx+24] // X--- Positionmov [x_coord],eaxmov eax,[edx+28] // Z--- Positionmov [z_coord],eaxmov eax,[edx+2c] // Y--- Positionmov [y_coord],eaxpop eaxjmp originalcodeload_coord:mov [l_enable],0cmp [z_coord],0je originalcodepush eaxmov eax,[x_coord]mov [edx+24],eaxmov eax,[z_coord]mov [edx+28],eaxmov eax,[y_coord]mov [edx+2c],eaxpop eaxoriginalcode:fadd dword ptr [edx+28]fxch st(2)exit:jmp returnherex_coord:dd 0z_coord:dd 0y_coord:dd 0s_enable:dd 0l_enable:dd 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ARM4ND0 Опубликовано 4 декабря, 2012 Поделиться Опубликовано 4 декабря, 2012 Идентичен с моим скриптом телепорта, даже лейблы одинаковые)) Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 5 декабря, 2012 Поделиться Опубликовано 5 декабря, 2012 По поводу телепорта - все гораздо проще. Можно организовать телепорт во время показа карты - там координаты двухмерные, причем еще и показаны в правом верхнем углу. А игра уже сама подсунет подходящие трехмерные координаты при выходе с карты. Скрипт пока не покажу, пусть это будет небольшой разминкой.ЗЫ. Это относится к FarCry 3, если что. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 5 декабря, 2012 Поделиться Опубликовано 5 декабря, 2012 Телепорт делаю для игры Max Payne 1/Вот польностю скрипт.[ENABLE]alloc(newmem,2048) //2kb should be enoughlabel(returnhere)label(originalcode)label(exit)label(z_coord)label(x_coord)label(y_coord)label(save_coord)label(load_coord)label(s_enable)label(l_enable)registersymbol(s_enable)registersymbol(l_enable)"MaxPayne.exe"+4E0C4:jmp newmemreturnhere:newmem:cmp [s_enable],1je save_coordcmp [l_enable],1je load_coordjmp originalcodesave_coord:mov [s_enable],0push eaxmov eax,[edx+24] // X--- Positionmov [x_coord],eaxmov eax,[edx+28] // Z--- Positionmov [z_coord],eaxmov eax,[edx+2c] // Y--- Positionmov [y_coord],eaxpop eaxjmp originalcodeload_coord:mov [l_enable],0cmp [z_coord],0je originalcodepush eaxmov eax,[x_coord]mov [edx+24],eaxmov eax,[z_coord]mov [edx+28],eaxmov eax,[y_coord]mov [edx+2c],eaxpop eaxoriginalcode:fadd dword ptr [edx+28]fxch st(2)exit:jmp returnherex_coord:dd 0z_coord:dd 0y_coord:dd 0s_enable:dd 0l_enable:dd 0[DISABLE]"MaxPayne.exe"+4E0C4:fadd dword ptr [edx+28]fxch st(2)dealloc(newmem)unregistersymbol(s_enable)unregistersymbol(l_enable)//Alt: db D8 42 28 D9 CAИдентичен с моим скриптом телепорта, даже лейблы одинаковые))Пиши по существу, мои не мои, тут можно и лейбли и метки все поменять под себя если что, а я не менял, ты не один пишешь такой скрипт, пример взял отсюда. Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 5 декабря, 2012 Поделиться Опубликовано 5 декабря, 2012 В максе первом, если мне не изменяет память, по прохождении определенных участков игры срабатывают игровые триггеры, которые не сработаю, если через них перескочить телепортом.А точнее, положение игрока вычисляется исходя из отработавшего триггера. Собственно, поэтому телепорт криво и работает. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения