import pymem
import pymem.process
import ctypes
import time
# Ваши оффсеты
OFFSET_RECOIL = 0x122E324 # Engine + 0x122E324 (PunchAngles)
OFFSET_WEAPON_ID = 0x108DD90 # hw.dll + 0x108DD90 (ID оружия)
OFFSET_FORCE_ATTACK = 0x131370 # Client + 0x131370
def main():
print("=== CS 1.6 No Recoil ===")
print("Rutube: https://rutube.ru/channel/43805541")
print("Telegram: hackeriks")
print()
try:
pm = pymem.Pymem("hl.exe")
print("[+] hl.exe найден")
except:
print("[-] CS 1.6 не запущена")
return
# Получаем базы модулей
engine = pymem.process.module_from_name(pm.process_handle, "hw.dll")
client = pymem.process.module_from_name(pm.process_handle, "client.dll")
engine_base = engine.lpBaseOfDll
client_base = client.lpBaseOfDll
recoil_addr = engine_base + OFFSET_RECOIL
weapon_id_addr = engine_base + OFFSET_WEAPON_ID
print(f"[+] Recoil (PunchAngles) адрес: {hex(recoil_addr)}")
print("[*] No Recoil активен. F1 - вкл/выкл")
print("[*] Просто стреляйте — отдачи не будет")
enabled = True
last_weapon = 0
while True:
# F1 для вкл/выкл
if ctypes.windll.user32.GetAsyncKeyState(0x70) & 1:
enabled = not enabled
print(f"No Recoil: {'ON' if enabled else 'OFF'}")
time.sleep(0.2)
if not enabled:
time.sleep(0.05)
continue
try:
# Запоминаем текущее оружие (опционально, можно убрать)
weapon_id = pm.read_int(weapon_id_addr)
# Проверяем, зажата ли левая кнопка мыши (стрельба)
if ctypes.windll.user32.GetAsyncKeyState(0x01) & 0x8000:
# Обнуляем отдачу (PunchAngles)
pm.write_float(recoil_addr, 0.0) # Pitch
pm.write_float(recoil_addr + 4, 0.0) # Yaw
# Если хотите убрать разброс (No Spread)
# pm.write_float(recoil_addr + 8, 0.0)
# Маленькая задержка, чтобы не перегружать процессор
time.sleep(0.001)
except Exception as e:
pass
time.sleep(0.005)
if __name__ == "__main__":
main()