- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 507
- Реакции
- 13
Разбираем нутрянку Deadlock под интерал. Суть проблемы в следующем: Silent Aim завезти получилось через хук сетапа камеры в предикшене (проверено через брейкпоинт на питче). Скрытый аим пашет — просто подменяем pitch/yaw во время тика предикшена и возвращаем всё назад.
Но вот с Magic Bullet (стрельбой из-за укрытий через смещение ориджина) возник затык. Попытки просто записать в камеру (cam+0x38/3C/40) или в
во время предикшена ни к чему не привели — пули всё равно летят из дефолтной точки.
Есть подозрение, что смещение позиции камеры зашито где-то в саб-месседжах camera info внутри CUserCmd. Проблема в том, что найти чистый CreateMove для хука сейчас тот еще квест — судя по всему, логика уехала в цепочку диспетчеров
внутри
, а не
. Стек вызовов предикшена проходит через networkgameclientbase, но где именно инициализируется shoot origin из Protobuf-сообщения — вопрос открытый.
Собственно, что нужно понять:
Если кто-то уже копал проты в Deadlock или плотно сидел на реверсе Source 2 (CS2 стайл), накидайте идей по поводу векторов в CUserCmd. Зацикливаться на старых методах смысла нет, тут явно надо лезть в сетевой стек.
Но вот с Magic Bullet (стрельбой из-за укрытий через смещение ориджина) возник затык. Попытки просто записать в камеру (cam+0x38/3C/40) или в
Код:
m_vecAbsOrigin
Есть подозрение, что смещение позиции камеры зашито где-то в саб-месседжах camera info внутри CUserCmd. Проблема в том, что найти чистый CreateMove для хука сейчас тот еще квест — судя по всему, логика уехала в цепочку диспетчеров
Код:
CInputService
Код:
engine2.dll
Код:
client.dll
Собственно, что нужно понять:
- Какое конкретно поле в
(или вложенных структурах) отвечает за точку спавна пули?Код:
CBaseUserCmdPB - Как правильно собрать
дляКод:
TraceFilter? Сейчас трассировка через стены выдает fraction 1.0, а фильтр по оффсету +0x08 явно просит vtable или колбэк, который не получается корректно сконструировать.Код:TraceShape
Если кто-то уже копал проты в Deadlock или плотно сидел на реверсе Source 2 (CS2 стайл), накидайте идей по поводу векторов в CUserCmd. Зацикливаться на старых методах смысла нет, тут явно надо лезть в сетевой стек.