есть и правильные моменты, и некоторый пиздец если можно это так назвать.
1:
Тут тебе просто нужен мувмент фикс, потому что игра двигает тебя туда куда ты смотришь, при псайленте у тебя угол реальный в одном месте, а тот что видит пользователь - другой.
нужно считать мувмент учитывая и тот угол что получает игра, и тот угол который видит пользователь.
Взглянуть на +- правильный солюжн можно тут -
референс в сдк сурса -
2:
Зачем тебе GetAsyncKeyState если у тебя висит хук WndProc (
) который позволяет тебе более точные нажатия кнопок получать?
3:
Не советую использовать DrawIndexedPrimitive, он очень медленный по сравнению с изменением цвета модели (и материала) через "движок" игры.
4:
Таких чеков быть не должно, баг который ты встречаешь возникает возможно из-за недостатка проверок, либо же из-за какого-то кода который ты вызываешь.
Все делают как тут -
5:
Зачем делать такую проверку если можно просто нормализовать угол.
Опять-же сошлюсь на всем известный сурс -
6:
Это тоже немного жесть. Если ты хочешь считать Bounding ESP Box то воспользуйся более простым (но не менее рабочим) способом -
7:
Подобные вещи можно сделать static чтобы не считать одно и то-же каждый раз.
В целом - очень много кода для такого простого хака. Боюсь представить что случится если ты сядешь за RAGE. Есть над чем поработать, но за попытку написать всё самому однозначно можно поставить лайк.
Мельком глянул папку Hacks, остальные папки я не смотрел, опять-же, слишком много файлов и папок для относительно простенького хака.
Если я написал что-то не так - поправляйте, я уже слишком стар для этого дерьма.
В любом случае, если ты пришел за подсказками и помощью то ты её очень долго будешь ожидать. Спишись с топ девелоперами вроде того-же блика (других кто не чсв/готов помочь я наврятли смогу назвать) (соре если кого то обидел кста), там ты быстрее получишь помощь чем тут.