-
Постов
107 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Загрузки
Блоги
Весь контент Trix
-
[ Counter-Strike: Source ] Проверка видимости цели
Trix опубликовал тема в Вопросы по взлому FPS игр
Есть такой вопрос, как узнать видима ли цель или нет в 3д шутере(я пишу под CS source) уже написал автонаведение курсора на цель, осталась задача - узнать, находится ли цель в области видимости(не за укрытием, стенкой и тд) Буду благодарен за ответ) Нужен только алгоритм, как обычно это делают более опытные геймхакеры -
Не очень симпатичная репутация, однако) Ладно, есть модуль на c++ и на c# А у вас, я так понимаю, delphi?
-
Тоже неплохая тема, однако, на сколько я понял, проект забросили) В принципе, без разницы, главное, чтобы исправно работали вышеупомянутые задачи, ибо с wb я уже намучился, баги, да вылеты
-
Всем привет, меня интересует цена одного проекта, я бы даже сказал, модуля. Есть такая библиотека, как awesomium, некий аналог WebBrowser в c#, читал документацию, крутил, вертел, отчаялся... Хотелось бы прицениться, может ли кто-то написать модуль для программы с использованием сие библиотеки? тз: Класс, управляющий формой(конкретно окошечком браузера аверсомиум) из отдельного потока, асинхронно Публичные методы POST GET с возвращением данных (htm + текст страницы(после обработки js) + url-перенаправление) Возможность настроить прокси и user-agent, чистка логов, кукисов и тд Полная загрузка страниц(вернее ожидания полной загрузки, а лишь потом выполнение последующих действий) Всевозможная заглушка всяких alert'ов, onbeforeunload'еров На сколько такой модуль может оцениваться и есть ли кто, уже работавший с этим компонентом?
- 3 ответа
-
- 1
-
-
Занопить функцию, внутри своей программы C#
Trix опубликовал тема в Высокоуровневое программирование
Привет народ, столкнулся с проблемой в разработке простой программы под себя - управление webbroswer на C#. Проблема в следующем - wb создает мессаджбоксы и уведомления, как можно запретить ему это делать?) вот например такой скрипт на js Суть его такова - вывести окно "точно покинуть страницу?", как можно заставить wb игнорировать появление таких окон? Есть ли какие-то свойства или лучше сделать это через излюбленное здесь - замена функции на nop? Или можно перехватить сразу все вспл. окна? Хотел бы закончить проект, а нигде найти такой информации не удалось Что я за человек..... как только сформулировал проблему, так сразу решение появилось.... ПРОСТИТЕ Если кому-то пригодится(ну а вдруг) Надо сделать следующее - дописать функцию переводящую все действия на себя И обязательно повесить ее на обработчик событий webBrowser1_DocumentCompleted -
Ну, видишь, я отличаюсь интеллектом. В плане доходит оч. долго Первым делом обратил внимание на ассемблерную команду, а потом на байт-код, поэтому и сбился, но зато запомнится
-
Окей, нашлось решение, всем спасибо за участие, если кому-то остался актуален этот вопрос, то вот решение jmp - E8, а адрес вычисляется по следующей инструкции: Нужный адрес(в моем случае gta-vc.exe+AE8F0 - адрес инъекции, куда поместили байты - 5 (место на jmp(1байт) + адрес(4байта)) В принципе, пришел к выводу, что как команда call, так и jmp относительна)) Всем еще раз спасибо
-
Окей, Кенг, я примерно понял, поковыерялся, дошло что это действительно относительный адрес.. Правда, как его вычислить ух, это непонятно У меня есть следующие значения Смещение на функцию, Базовый адрес, Адрес инъекции, как мне с этим всем можно узнать последующие байты после call?
-
Думаю, тема не такая и сложная, однако, разобраться с ней сам я не смог, поэтому решил написать данный топик. Дело вот в чем, есть команда CALL gta-vc.exe + AE8F0 || call 004AE8F0 || E8 DD E8 0D 00 Взаимосвязь между командой и байтами я не вижу, как ни крути... Как понял E8 - равносильно команде call, тогда как упаковать мой адрес в эти байты? Вот мой кодец нашел базовый адрес модуля игры (если ошибаюсь, поправьте) Собственно, как записать адрес я затрудняюсь.... Подскажите пожалуйста, на сколько мне подсказали, то что я ищу: ptr_base + 0xAE8F0 + 5 //Как это можно записать в код? Действительно ли нужен отступ именно на 5? Как преобразовать это в байты?
-
окей, я дошел вот до такой конструкции, однако, все равно код терпит неудачу Так ли это делается?
-
да, хотел бы вызвать функцию из проекта ради теста) Переписал инъектируемые байты, вышло вот это Однако, игра все так же крашится, в чем я мог допустить ошибку?
-
так понимаю, у нас разные версии игры, что меня затруднило((( У меня затруднения с Find out what accesses this address: получается вот такой список функций, пробовал неоднократно Найти функцию, как у вас (которая сравнивает строку, как я понял) не удалось... Или она все же есть? Ибо в регионе памяти не удалось найти похожее сравнение В общем, а если есть сам адрес функции, могу ли я обратно узнать кто его вызывает? Найти адрес через ввод чита для меня осталось загадкой, буду благодарен за разъяснения, если можно. Но у меня получилось найти его вручную отмотав достаточно приличный кусок кода, так что будет интересно узнать, почему у автора есть функция, а у меня ее нет) И да, гуглил, гуглил, а найти номера всех машин не удалось даже на сайтах разработчиков модов. Нет ли у кого ссылки?) Спасибо за статью)
-
Можно сейчас немного по-подробнее ? Разве такое возможно? на сколько я понял, jmp выполняет прыжок к метке, то есть к какому-либо адресу Игра перезагрузилась, адреса поменялись... я вас немного не понял
-
У меня крашится;( Автор, почему именно такой адрес? У меня на его месте байты XOR [адрес], eax это точно тот адрес? Почему номер машины кладется в стек, а в функции вызывается из esi ?
-
кхх... Сомневаюсь, что ты поможешь, конечно... Вот такой вод, я заинъектил байты в игру и вызвал поток
-
Здравствуйте) Тренируюсь в написании скриптов, для примера взял gta vice city, ибо адреса функций уже даны(нашел на сайте с материалами для моддинга) Записал вот такой скрипт(думаю, как-то криво, но работает. Другого решения не нашел, если подскажете, буду оч рад) Вот скрипт для CE автоассемблера, работает, не жалуется) функция чит-вызова транспорта расположен по адресу 0x004AE8F0 А номер транспорта (000000A2) = 162(танк) помещается в регистр ESI В целом, у меня все сработало, перенес по битам в свой отдельный код, только вот ничего не вышло, игра вылетела, в чем заключается подвох и как можно оптимизировать код? PS программа инъектит код в игру исправно, пробовал простейший код, работает.
-
Кенг, со всем уважением) Чит в автоассемблере исправно работает, а при инъекции ошибки
-
Это хороший совет, благодарю) Если я правильно понял, то выполняется на шарпе это вот так(из описания msdn) int error = Marshal.GetLastWin32Error(); И тут непонятное мне явление - если так и оставить, то ошибка будет нуливая, если перед этим заставить консоль что-нибудь вывести - получится ошибка 5 "Доступ запрещен", почитал стековерфлоу, там ссылаются на ошибку компиляции под разные разрядности системы, честно, не очень-то и понял. Получается, что сапер другой разрядности или как? Был бы очень благодарен за объяснения, ибо понять что к чему в такой ситуации трудно, на всевозможных топиках и статьях все облачно и работает, а у меня что-то не очень) Для примера сделал более простую инъекцию в CE-Tutorial, все работает как часы)
-
Да, интересней самому) Нет, тут немного запутанней, есть идея написать ради интереса алгоритм, который заместо игрока будет выполнять одну простую тривиальную функцию из пары шагов(как например рыбалка в WOW, только проще)
-
Да, я что-то слышал про BlackMagic, правда не разобрался, гляну, спасибо)
-
Всем привет, заинтересован внедрением своего кода в чужой процесс, научился делать AOB-инъекцию, как например с помощью CE В целом, инъекция в CE работает, вот код Что он делает? - Вызывает окно "о программе" в стандартном виндовском приложении сапер (MineSweeper) Теперь этот кодец я бы хотел для примера внедрить в программу Написал программу(а точнее взял пример с сайта и корректировал под свой процесс, для изучения этого процесса Таким образом программа компилится и вылетает на 5ом исключении(последнее - "Cannot create and execute remote thread.") Хотелось бы узнать, в чем проблема, ведь среда не пишет конкретной ошибки в коде, кроме как специально созданной) Ассемблерный листинг команд записан правильно. Память с кодом действительно выделилась в программе - проверил лично) Флаги, права доступа указаны, что может быть еще не так? Тема до жути интересна, на данный момент высвободилось время для изучения, чему я и рад) Кто может протестировать и подсказать, в чем я ошибся ?
-
ООО, ностальгии пост, давно рубились, еще луки были только у элиты) Автор, если что-то получится, дашь знать?)
-
Увы, в c++ не силен, чем и грешен) Но все же, ваша задача скорее всего в том, чтобы перевести байты в тест, сделать это можно например в онлайн декодерах к примеру, а после посмотреть как это можно сделать на c++ в яндексе или гугле)
-
Что же по-вашему является мусором? Возможные варианты: 1) Байты необходимо перевести в символы, согласно кодировке 2) Адрес не верный