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

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

И всё же проблема с ножами не раскрыта. Могу сейв файл свой скинуть, пройденный на 100%, там можете ножи протестировать.

Кстати, читхеппнс тож ножи не ломанул )))

[ub=http://www.filekeeper.org/download/shared/4_2.rar]Сейвы[/ub]

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

  • 2 недели спустя...

Вернулся к игре, и пытаюсь решить проблему с кинжалами.

Напрягает одно - всё кроме кинжалов имеет тип 4 байта и нормально изменяется, кинжалы же имеют тип 1 байт, и при изменении вылетает функция xor.

Вопрос:

Нахрена разрабы такой геморой сделали?

Может там и не то значение что написано? То есть 1 байтовые это флажки, а 4-х байтовое это колличество?

PS читхеппенс эту проблему так и не решил, у них функции где добавляется всё, кроме кинжалов.

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

Я тут деньги сломал и у меня технический вопрос возник - как промежуток сравнения задать?

Например если 30<[esi+10]<39447, то прыгать на originalcode

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

  • 2 недели спустя...

Появилась проблема чисто техническая, если кто из мегахакеров есть, то помогите.

[sp=Рисунок]6788475248064752c318dcff3eb1a914.png[/sp]

На 100% прошёл игру, а пистолет просто пропал. Сделайте скрипт плз кто-нить чтоб максимум патронов было 5...

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

Ладно, в саппорт написал, может помогут, если нет снова на обсуждение вопрос подыму. Пока забили...

[cod][ENABLE]

alloc(MyCode,2048)

label(Ammo)

label(ExitA)

label(BackA)

label(GM)

label(BackGM)

label(ExitGM)

label(ipl)

label(iGM)

label(iAmmo)

registersymbol(ipl)

registersymbol(iGM)

registersymbol(iAmmo)

//////////////////////////////////////////

MyCode:

Ammo:

cmp eax,0000001E

jge BackA

mov [ipl],ebp

cmp byte ptr [iAmmo],1

jne BackA

inc eax

BackA:

mov [ecx+10],eax

mov al,01

jmp ExitA

GM:

>>cmp byte ptr [ebp+37c],[ipl]

jne BackGM

cmp byte ptr [iGM],1

jne BackGM

mov eax,000000C8

BackGM:

mov [esi+58],eax

call 00948fa0

jmp ExitGM

//////////////////////////////////////////

AssassinsCreedIIGame.exe+ED818F:

jmp Ammo

ExitA:

AssassinsCreedIIGame.exe+11FE0F5:

jmp GM

nop

nop

nop

ExitGM:

//////////////////////////////////////////

ipl:

dd 0

iGM:

dd 1

iAmmo:

dd 1

///////////////////////////////////////////

[DISABLE]

AssassinsCreedIIGame.exe+ED818F:

mov [ecx+10],eax

mov al,01

AssassinsCreedIIGame.exe+11FE0F5:

mov [esi+58],eax

call 00948fa0

dealloc(MyCode)

unregistersymbol(ipl)

unregistersymbol(iGM)

unregistersymbol(iAmmo)[/cod]

Выделил строку знаком >>. там где ругается, мол не скомпилировать. Скажите плз, в чём дело может быть?

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

сравнение неверное. одним из операндов должен быть регистр процессора или число. Выход - сначала из одной ячейки памяти, которую нужно сравнить, загружаешь данные в регистр, и затем сравниваешь.

[cod]push eax

mov al,[ipl]

cmp byte ptr [ebp+37c],al

pop eax[/cod]

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

спс, помогло, но фильтр не тот, буду заново делать.

В саппорте молчат, блин, либо думать дальше, либо заново проходить, что мега геморно.

Ещё раз прошу, сделайте пожалуйста скрипт чтобы максимум патронов был 5...

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

В общем решил заново на 100% пройти, игра того стоит...

Кстати, сделал 2 чита - бесконечный боезапас (патроны, лекарства и тд) и бесконечные деньги. Бессмертие как оказалось вообще ни к чему, ибо есть бесконечные лекарства и хилиться можно в любой момент игры...

Остался вопрос как сделать чтобы известность не повышалась, то есть всегда быть инкогнито и можно будет тренер компилить...

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

Остался вопрос как сделать чтобы известность не повышалась, то есть всегда быть инкогнито и можно будет тренер компилить...

Я бы пошел другим путем. Искал бы флаг когда в толпе, а когда нет.

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

Я бы пошел другим путем. Искал бы флаг когда в толпе, а когда нет.

Идея неплохая, но когда Эцио в толпе, то он чёрно-белый, а играть таким постоянно как-то стрёмно. Но я попробую...

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

Остался вопрос как сделать чтобы известность не повышалась, то есть всегда быть инкогнито и можно будет тренер компилить...

Иначе говоря "сделать невидимость". Невидимость я уже делал в играх следующим вариантом и по методологии.

Каждый объект-противник-игрок имеет своё поле чувствительности (визуальное/"слуховое"/чувствительность на какие-то действия главного героя). Если в это поле по координатам попадает объект нашего игрока, то анализируются его(нашего игрока) действия с критичными. Если эти действия критичны, то выставляется уровень "тревоги" в объекте-противника. Если противник главного героя встречается с другим противником главного героя, то у обоих уравнивается порог тревоги... Все пороги тревоги приводятся к максимальному... и отправляются в некоторый адрес памяти, как визуализация тревоги.

А из этого предполагаемого процесса следует. Что

1) нужно найти адрес индикатора тревоги

2) поставить на него бряк на запись

3) найти инструкцию через которую все объекты-противники пишут в адрес тревоги значение тревоги

4) выйти вверх по коду до прыжка и изменить его так чтобы объект-врага "не нервничал".

Именно так. Если же мы заморозим адрес индикатора тревоги, то толку от этого не будет, всё равно объекты-противники будут нервничать.

Конечно, я не знаю как точно обстоят дела, но в некоторых играх именно так: например в Manhunt 2

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

  • 2 недели спустя...

Примерно так как ты и описал, над стражниками галочка появляется, которая вначале заполняется жёлтым цветом, если заполнилась жёлтым, то начинает заполняться красным: стражник меня заметил и начинает всматриваться в меня, даже подойти может. Когда и красная заполняется, то тогда все рядом стоящие стражники кидаются на меня.

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

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

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

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

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