rtm
-
Постов
19 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные rtm
-
-
Блин, наверное трудно осилить ахинею, которую я тут написал)
-
Не могу определиться с архитектурой чита. Функции - радар, перемещение персонажа в заданную точку. MVC паттерн.
Как определить классы?
Надумал два варианта.
1. Класс Монитор(Model):- входные данные - pid, View`шки, характеристики мониторинга.
- выходные - контейнер с структурами персонажей.
- внутри зашиты все нужные оффсеты.
- включает в себя класс по работе (композиция)
Класс Телепортер(View):- входные данные - некоторые начальные характеристики телепортирования, контейнер с структурами персонажей от Model.
- выходные - увидомление о телепортировании персонажа.
- перемещает персонажа на x, y, z.
- внитри зашиты все нужные оффсеты(теже, что и Model, что плохо).
- включает в себя класс по работе(теже, что и Model, что плохо).
Класс Отображение(View):- входные данные - некоторые начальные характеристики движения,
- контейнер с структурами персонажей от Model.
- выходные - отображение данных.
Класс Монитор только добывал данные из игрового процесса и передавал View`шкам.
Класс Телепортер, получав информацию от Model, выполнял перемещение.Но мне не понравилось, что оффсеты и класс по работе с памятью дублируются и хранятся в двух разных местах. Решил как то переделать.
2. Класс Игра:
- входные данные - pid.
- выходные - контейнер с структурами персонажей
- внитри зашиты все нужные оффсеты.
- включает в себя класс по работе (композиция)
Класс Монитор(Model):- входные данные - Класс Игра, View`шки, характеристики мониторинга.
- берет контейнер с персонажами у класса Игра и передает всем View`шкам.
Класс Телепортер(View):- входные данные - Класс Игра, характеристики движения,
- контейнер с структурами персонажей от Model.
- выходные - увидомление о телепортировании персонажа.
- посылает классу Игра "сигнал" о том, что надо переместить персонажа на x, y, z.
Класс Отображение(View):- входные данные - некоторые начальные характеристики движения,
- контейнер с структурами персонажей от Model.
- выходные - отображение данных.
То бишь у меня получился какой то God Object в виде класса Игра, который читал память игры, перемещал персонажа, хранил оффсеты и т.д. К тому же, так как надо было обеспечить потокобезопасность и ассинхронность операций, он получился громоздким, что тоже не особо нравится.
Классы Монитор и Телепортер просто управляют классом Игра. И что то мне это тоже не особо нравится.
Как бы вы выделили классы?
-
x64dbg за место ольки
-
Загрузить свой длл в адресное пространство, выделить память, скопировать туда чего нить запустить и выгрузить длл...
-
-
ИМХО, "современному" начинающему программисту хочется писать программы с графическим интерфейсом. Проще всего это делать на С#, особенно когда есть Visual Studio. А недавно вышедшей Visual Studio 2017 так вообще все круто стало.
А чтобы написать на С++ программу с интерфейсом надо юзать C++/CLI + VS, или использовать QT c их средой разработки qt creator, или юзать какой нить фреймворк типа wxWidgets.
Сам использую C++/CLI. Изврат, но мне нравится)
Если что - поправьте.
-
Тыц, но мб и не оно
-
В БС вроде фрост античитом стоит? За $40 писать обход? Ой все...
-
Да чего ты, оставь)
-
Сначала свои найди, поставь на них брекпоинт и посмотри, какие инструкции с ними работают., затем с какими еще адресами работают эти инструкции и скорее всего эти адреса будут связаны с координатами других НПС/мобов.
-
В итоге оказалось, что объекты хранятся не в массиве, а списком... Нашел указатели на начало и конец списка, можно пилить радар
-
И тут я понял, что каждый Object начинается начинается с одной и той же сигнатурой. Вопрос тот же)
-
Нужно найти начало массива с указателями на структуры объектов (мобов, нпс и т.д.). Нашел инструкцию, которая обрабатывает структуру с позициями этих объектов на карте, следовательно могу отловить адреса этих структур. Структура хранит координаты объекта на карте, видимость объекта и другую инфу для отображения модельки на экране.
Получается: [Mass+???]->[Object+???]->Position - это моя догадка. Движoк CryEnige 3.
А как потом их анализировать для нахождения Object`ы, в которые они вложены и сам Mass? Pointer scan не особо помогает. Если какой нить инструмент с подходящим функционалом? Или что посоветуете?)
-
А можно сделать видео с функциями СЕ типо Structure spider? У СЕ функционал большой и хочется им пользоваться)
-
Даешь разнообразие! Даешь взлом онлайновой клиентской игры пакетником!
Функция findpattern c++
in Низкоуровневое программирование
Опубликовано
Исходя из кода - не должен. А вот постоянное выделение и освобождение буфера - затратно. Лучше выделить кусок побольше и с ним работать. И еще б неплохо регион на PAGE_EXECUTE проверять.