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

SergBrNord

Пользователи+
  • Постов

    155
  • Зарегистрирован

  • Посещение

  • Победитель дней

    12

Весь контент SergBrNord

  1. Ух ты! Я и подумать не мог, что можно использовать регистры в качестве фильтров ) Собственно, твой скрипт работал на всё, кроме брони, поэтому я немного его модифицировал: И такой вопрос - данные скрипты, не пишут броню, если её 0. А вот как так сделать, чтобы при получении урона, если брони 0 писалось значение в 98? Вот такой вариант у меня не работает: P.S. До внедрения кода на команду выше, чтобы заменяло только "mov edx, [ebp+08"] и "mov [ecx],eax", я тоже вряд ли бы додумался)
  2. Нет, это не оно. Объяснил в ПС. Покопался и нашел смещения, хранящие значения патронов для оружия: Попробую похимичить со значениями, но как показало себя вмешательство с бронёй - игра очень нервно реагирует на изменение содержимого ECX.
  3. Гарик, ты развил прям-таки бурную деятельность. Но есть один мааааа-хонький нюанс - ты сделал таблицу для "Классики", а движки SE1 и SE3 работают по-разному. Я проверил твою идею о том, что реальное значение хранится как вещественный тип. Действительно, при выборке в поиск всех типов значений находится и float, но на движке SE3 оно как раз-таки экранное. Интересно. Я даже как-то не подумал о таком варианте, хоть он вроде бы даже и логичен. Поставлю остановов на запись - может чего и выловлю. Хотя в последнем варианте я всё-же записывал после того, как урон наносился. Странно.
  4. По мотивам беседы с Гартком в ПМ, пытаюсь совладать с броней и получился такой казус - если пытаться писать скрипт под броню отдельно от здоровья, то получается, что он морозит и здоровье противников тоже... Как я понял, это связано с особенностью пересчёта здоровья и брони игрока. Собственно, у меня сейчас такой вариант скрипта: В данном случае запись идёт уже после получения урона, что отображается в игре другом значение нежели 98. А существует вообще в данном случае вариант записать значение брони так, чтобы получаемый урон на него не влиял?
  5. Действительно, глупая ошибка; от постоянной возни с C# у меня как-то в голове перепуталось, что ассемблерный код не является функциями и выполняется последовательно (а возился я с asm года этак с 4 назад). Т.к. игра на SeriousEngine3, тут возможна следующая подлянка - за игроком по уровням будет быстро-быстро носится неубиваемая зверюшка и сильно мешаться (это происходило в пиратских SS3) Спасибо, почитаю. Собственно, мне интересно, как работают все вышеуказанные примеры, так что я их обязательно попробую! Кстати, те первые две инструкции (которые в окне прерывания на доступ) работают с количеством убитых монстров и набранных очков; чит-режимом. P.S. Собственно, как задумывался скрипт - в SS HD: TSE есть очки; очки даются как за убийство монстров, так и за сбор предметов на уровне (патронов, аптечек). Соответственно, необходимо установить параметр здоровья в такую максимальную величину, чтобы можно было всегда собирать предметы. Так что меня ещё ждёт броня и оружие. Заодно попробую сделать телепорт по мотивам уроков Xipho и неуязвимость от зон смерти (шипов & etc.)
  6. Здравствуйте! Я обучаюсь по видеокурсу Xipho и малость застрял на фильтрах "свой/чужой". Делал всё по ГОСТу - нашёл инструкцию, покопался в структурах игрока и противника, написал скрипт, который не работает, как мне кажется, из-за неверного определения местонахожения структуры игрока Помогите разобраться, где я ошибся. Насколько я понял, идёт сравнение значений, в начале структуры(?), указатель на который находится в ECX, и значения в EAX; если не совпадает - идёт запись нового значения в начало структуры. Скрины с редактором памяти и окном прерывания на доступ. Позже я при помощи врагов нашёл ещё парочку адресов, которые работали с этой инструкцией и посмотрел, что там находится. Окно разбора структур. Игрок; враг_1; враг_2; враг_3 соответственно. По смещению А0 там находилось неизменяемое значение - у игрока оно всегда было равно 2. Соответственно, я написал следующий скрипт, который не работает:
×
×
  • Создать...

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

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