Исходник Гайд Самый простой AirBreak на С++.

ImmortalDev

Участник
Автор темы
90
50
Всем привет!
Хотелось бы вам показать дурацкий, но один из самых простых способов реализации AirBreak.
Работает он нормально, правда управлять и, собственно летать - неудобно.
Используются исключительно адреса памяти и оффсеты, никаких API для разработки.
Работает он так - по сути, это обычный телепорт, только более плавный, с возможностью собственно полета и перемещение по трём осям, X Y Z. Управляется это все стрелочками на клавиатуре.
Исходник + DLL: AirBreak
Внимание! В коде есть говнокод, а само решение - костыль. Просто хочу поделиться с вами этим костылем.
 
  • Нравится
Реакции: iAmerican

iAmerican

Известный
Друг
615
257
GetAsyncKeyState забудь про это вообще. Ставь хук на WndProc и там отслеживай действия.
 
  • Нравится
Реакции: ImmortalDev

Carrentine

Потрачен
570
460
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
GetAsyncKeyState забудь про это вообще. Ставь хук на WndProc и там отслеживай действия.
Мм, VM_KEYDOWN начнет хуярить только через секунду после нажатия, а WM_KEYUP после отпускания)
45465


Держи формулу нормального аирбрейка.
 

SR_team

like pancake
BH Team
4,707
6,347
VM_KEYDOWN начнет хуярить только через секунду после нажатия
Дикий? Это рипит идет, сам VM_KEYDOWN прилетает в момент нажатия кнопки и вплоть до VM_KEYUP кнопка считается нажатой
 

Carrentine

Потрачен
570
460
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Дикий? Это рипит идет, сам VM_KEYDOWN прилетает в момент нажатия кнопки и вплоть до VM_KEYUP кнопка считается нажатой
Там как нажал клавишу, один раз пришло событие, и толкьо через секунду повторять начинает.
 

iAmerican

Известный
Друг
615
257
ты нажмешь W, секунду подождешь и полетишь ток
чел , ты хукаешь походу что то не то, либо неправильно


C++:
g_origWndProc = (WNDPROC)SetWindowLong(fArray.windowHWND, GWL_WNDPROC, (LONG)WndProcHook);
 

Carrentine

Потрачен
570
460
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
чел , ты хукаешь походу что то не то, либо неправильно


C++:
g_origWndProc = (WNDPROC)SetWindowLong(fArray.windowHWND, GWL_WNDPROC, (LONG)WndProcHook);
оно же не сразу повторять начинает
 

Carrentine

Потрачен
570
460
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Видео посмотри , я зажимаю клавишу и оно циклится моментально. До того момента пока я не отпущу клавишу.
Щас только что хукнул, 500 мс и после начинает флудить уже.
 

iAmerican

Известный
Друг
615
257
бля, ты хоть читай, что я пишу
Кароче вот про что он говорил , после зажатия клавиши проходит около пол секунды в хуке WndProc.
C++:
[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] Hook
 

SR_team

like pancake
BH Team
4,707
6,347
Кароче вот про что он говорил , после зажатия клавиши проходит около пол секунды в хуке WndProc.
C++:
[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] GetAsynsKeyState

[17:41:05] Hook

[17:41:05] GetAsynsKeyState

[17:41:05] Hook
Сука, вот нахуй я пишу это сообщение, его ведь вы тоже не станите читать.
Еще раз!

Вот касательно задержки примерно в секунду
Это рипит идет

И вот касательно обработки клавиши
VM_KEYDOWN прилетает в момент нажатия кнопки и вплоть до VM_KEYUP кнопка считается нажатой


Даже блять в твоем логе видно, что VM_KEYDOWN прилетает раньше, чем срабатывает GetAsynsKeyState
 
  • Нравится
Реакции: Z3roKwq