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

Far Cry 3.Deluxe Edition.v 1.04(God-One-Hit)


Рекомендуемые сообщения

Здравствуйте уважаемые кодеры. Прошу сделать или помочь сделать Таблицу на FarCry3 1.4(Deluxe Edition).

Покажу свои наработки с комментариями. Если что-то неверно поправьте. Если все неверно прошу переделать.

[ENABLE]

alloc(newmem,2048)

label(returnhere)

label(hack)

newmem:

fld dword ptr [ecx+10] //Вылезший код из Бряка на доступ жизней

ret //Автоматически с инжектился через Добавить код //Пробывал убирать не помогает

fld dword ptr [ecx+14] //Автоматически с инжектился через Добавить код

cmp byte ptr [ecx+4C],1 //сравниваю структуры игрока-врагов

je hack //прыжок при выполнении условия

jmp returnhere

hack:

mov [ecx+10](float)100 //возвращает 100 жизней

jmp returnhere

"FC3.dll"+905E05:

jmp newmem

nop

nop

returnhere:

Первый код вообще не хочет работать... Любое изменение из вне [ecx+10] крашит игру.

Пробовал через запись

[ENABLE]

//code from here to '[DISABLE]' will be used to enable the cheat

alloc(newmem,2048)

label(returnhere)

label(hack)

newmem:

movss [esi+10],xmm0 //Бряк на запись при изменении жизней

cmp byte ptr [esi+B8],4 //сравнение структуры игрока

je hack

jmp returnhere

hack:

movss [esi+10],xmm0 //Вот тут незнаю что делать если прописать обычный MOV не пашет Movss не работает с числами

jmp returnhere

"FC3.dll"+9061F3:

jmp newmem

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

"FC3.dll"+9061F3:

movss [esi+10],xmm0

//Alt: db F3 0F 11 46 10

Тут вообще все печально

hack:

movss [esi+10],xmm0

Эта инструкция вообще непойму как работает... При изменении xmm0не компилится. При имзменении movss на move значение обнуляется не смотря на jump.

Помогите пожалуйста.

Ссылка на комментарий
Поделиться на другие сайты

2-й код



newmem
cmp byte ptr [esi+B8],4 // сравниваем ID игрока
je hack //если правильно прыгаем в hack
movss [esi+10],xmm0 //оригинальная инструкция
jmp returnhere



hack:
movss [esi+10],xmm0//оригинальная инструкция
mov [esi+10],(float)750 // меняем значение (число просто пример)
jmp returnhere

а вообще там не было сравнения ID игроков как я помню.

http://forum.gamehac.../1830-far-cry-3

вот темка на сайте, посмотри и поправь свой скрипт

Ссылка на комментарий
Поделиться на другие сайты

2-й код



newmem
cmp byte ptr [esi+B8],4 // сравниваем ID игрока
je hack //если правильно прыгаем в hack
movss [esi+10],xmm0 //оригинальная инструкция
jmp returnhere



hack:
movss [esi+10],xmm0//оригинальная инструкция
mov [esi+10],#750 // меняем значение (число просто пример)
jmp returnhere

Простите создал 2 темы.. Прошу 1 удалить.

#750 так и надо писать? Я в синтаксисе асемблера не разобрался что значит # и почему отказывается работать с float хотя xmm этож float регистры. Да и еще. Тут такая фишка что xmm очень капризный если менять значение из вне, то он даже если сработало условие ставить глобально(то есть все будут бессмертными). mov [esi+10] значение обнуляется если засоввывать через mov

Если я чего-то недопонимаю объясните пожалуйста.

Статью прочитал, но там нету того что нужно именно мне... А именно One-Hit-kill... Хотя бы заготовка...

Ссылка на комментарий
Поделиться на другие сайты

Простите создал 2 темы.. Прошу 1 удалить.

#750 так и надо писать? Я в синтаксисе асемблера не разобрался что значит # и почему отказывается работать с float хотя xmm этож float регистры. Да и еще. Тут такая фишка что xmm очень капризный если менять значение из вне, то он даже если сработало условие ставить глобально(то есть все будут бессмертными). mov [esi+10] значение обнуляется если засоввывать через mov

Если я чего-то недопонимаю объясните пожалуйста.

Статью прочитал, но там нету того что нужно именно мне... А именно One-Hit-kill... Хотя бы заготовка...

жизни у тебя хранятся в float если не ошибаюсь, записывать надо mov [esi+10], (float) 750. Если значение dword (4 байта) тогда mov [esi+10], #750 . xmm вообще не менять. Скорее ты нашел не ту инструкцию, она должна выглядеть так comiss xmm0,[ecx+10] и только тогда будет работать бессмертие.

Ссылка на комментарий
Поделиться на другие сайты

жизни у тебя хранятся в float если не ошибаюсь, записывать надо mov [esi+10], (float) 750

Поясняю пробовал через mov значения меняются глобально(даже при выполнении условия).

есть же видеоурок у кодера

Я как раз из видео кодера пришел. Синтаксис 1 в 1. :-D

Ссылка на комментарий
Поделиться на другие сайты

Просто из кода видно, что ты используешь не ту инструкцию. Ссылку на тему дал, там скрипт для Far Cry 3, как пример пусть будут и сделай под себя.

Ссылка на комментарий
Поделиться на другие сайты

ну тебе же надо найти иструк что бы отвечало за жизни я думаю в фаре там одна инструк отвечает за тебя и врагов значит надо еще срипт писать что тебя не убивало

Ссылка на комментарий
Поделиться на другие сайты

жизни у тебя хранятся в float если не ошибаюсь, записывать надо mov [esi+10], (float) 750. Если значение dword (4 байта) тогда mov [esi+10], #750 . xmm вообще не менять. Скорее ты нашел не ту инструкцию, она должна выглядеть так comiss xmm0,[ecx+10] и только тогда будет работать бессмертие.

commis этож инструкция сравнения? Или я чего то не догоняю.... Была такая инструкция. Но я решил не трогать. Можете дать заготовку на God и One-hit-kill с любыми адресами... Я сам додумаю.

Просто шаблон дайте, мне так легче понять что откуда и куда :unsure:

Ссылка на комментарий
Поделиться на другие сайты

commis этож инструкция сравнения? Или я чего то не догоняю.... Была такая инструкция. Но я решил не трогать. Можете дать заготовку на God и One-hit-kill с любыми адресами... Я сам додумаю.

Просто шаблон дайте, мне так легче понять что откуда и куда :unsure:

[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem:
mov [ecx+10],(float)9999
originalcode:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5
exit:
jmp returnhere
"FC3_d3d11.dll"+6394A9:
jmp newmem
nop
returnhere:
[DISABLE]
dealloc(newmem)
"FC3_d3d11.dll"+6394A9:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5

За здоровье врага отвечает другая инструкция, так что OHK делай сам, если что на сайте много примеров, да и помогут если что.

Ссылка на комментарий
Поделиться на другие сайты

ну тебе же надо найти иструк что бы отвечало за жизни я думаю в фаре там одна инструк отвечает за тебя и врагов значит надо еще срипт писать что тебя не убивало

movss [esi+10]xmm0

подменял

mov[esi+10]100

Получалось так что у меня 0 жизней и у врагов(убивались с 1 удара). Все кроме быков....

[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem:
mov [ecx+10],(float)9999
originalcode:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5
exit:
jmp returnhere
"FC3_d3d11.dll"+6394A9:
jmp newmem
nop
returnhere:
[DISABLE]
dealloc(newmem)
"FC3_d3d11.dll"+6394A9:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5

За здоровье врага отвечает другая инструкция, так что OHK делай сам, если что на сайте много примеров, да и помогут если что.

При изменении [ecx+10] игра вылетает(если туда свои цифры закатать). Неправильный синтакс у меня был?

Ссылка на комментарий
Поделиться на другие сайты

Я как понял это на бессмертие, а как обнулить значения врагов? xmm вообще числа не любят... :mad:

Все видео Кенга и Кодера просмотрел...

Тут просто с xmm регистрами проблема... Они на условия не реагируют нифига...

Ссылка на комментарий
Поделиться на другие сайты

хм а если у врагов тоже эта инструк mov [ecx+10],(float)9999 тогда ты и их не убешь и себя ) так как у вас хп будет 9999

вот для этого надо скрипт что у тебя было хп 9999 а у них 0 )

Ссылка на комментарий
Поделиться на другие сайты

Например mass effect1 сломал очень быстро. А вот Far Cry3 мозг парит очень

хм а если у врагов тоже эта инструк mov [ecx+10],(float)9999 тогда ты и их не убешь и себя ) так как у вас хп будет 9999

При изменении [ecx+10] игра крашится, какое бы значение я туда не вносил...

Пробывал и так и этак. Крашится.... даже пробывал регистры подменять. При подмене краш, в этот регистр обращается каждую секунду по 1000 запросов может поэтому?

Ссылка на комментарий
Поделиться на другие сайты

В общем на ohk берешь ставишь бряк на чтение на свои жизни, на иструкцию ставишь Find out what adresses, стреляешь в врага, если адрес появляется, значит эта инструкция отвечает за жизни противника, дальше скрипт пишешь.

хм а если у врагов тоже эта инструк mov [ecx+10],(float)9999 тогда ты и их не убешь и себя ) так как у вас хп будет 9999

вот для этого надо скрипт что у тебя было хп 9999 а у них 0 )

ну это можно и проверить)

Ссылка на комментарий
Поделиться на другие сайты

Просто я провел аннологию в mass effect1 к примеру нет страшной фигни с регистрами xmm. Может проблема в них? Как с ними работать никто объяснял в видео. И команды там не стандартные...

В общем на ohk берешь ставишь бряк на чтение на свои жизни, на иструкцию ставишь Find out what adresses, стреляешь в врага, если адрес появляется, значит эта инструкция отвечает за жизни противника, дальше скрипт пишешь.

ну это можно и проверить)

Так я же через анализ структуры данных работал... То есть я врагов тоже структузировал. Смысл в том что не дает игра поменять от балды свое значение. Да вот еще если пишу напрямую сменить вылетает. А если через je то просто не работает.... Far Cry3 меня доканает....

Ссылка на комментарий
Поделиться на другие сайты

В общем на ohk берешь ставишь бряк на чтение на свои жизни, на иструкцию ставишь Find out what adresses, стреляешь в врага, если адрес появляется, значит эта инструкция отвечает за жизни противника, дальше скрипт пишешь.

ну это можно и проверить)

вряд ли он сделает ) качай готовый тренер и играй

Ссылка на комментарий
Поделиться на другие сайты

В том то и дело если ставить на чтение то чтение происходить постоянно... То есть 1 раз стрельнул а инструкция обратилась 100500 раз....

Как у кодера на видео не выходит он 1 раз пальнул 1 раз обратилась... Тут по 500 раз обращается...

вряд ли он сделает ) качай готовый тренер и играй

Нету на FarCry3 пиратский One-Hit-Kill. Ты думаешь я тему просто так поднял?

Ссылка на комментарий
Поделиться на другие сайты

В том то и дело если ставить на чтение то чтение происходить постоянно... То есть 1 раз стрельнул а инструкция обратилась 100500 раз....

Как у кодера на видео не выходит он 1 раз пальнул 1 раз обратилась... Тут по 500 раз обращается...

хм хз как в фаре в ксс тоже так раз пальнул и хп всех есть )

Ссылка на комментарий
Поделиться на другие сайты

В том то и дело если ставить на чтение то чтение происходить постоянно... То есть 1 раз стрельнул а инструкция обратилась 100500 раз....

Как у кодера на видео не выходит он 1 раз пальнул 1 раз обратилась... Тут по 500 раз обращается...

Ну не все же игры будут так же просто ломаться, как на примерах.

Ссылка на комментарий
Поделиться на другие сайты

Проверял трейнер от Lingon(делает для Uplay) на пиратке, что примечательно все работает кроме 1hit-kill.

Есть трейнер от Fling'a все есть кроме 1Hit-kill. Неужели все так сложно?

Буду рад если поможете разобраться с 1hit kill для Far Cry3 ибо аналогов нету...

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

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

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