feat: implement various player hacks and refactor main loop for modularity
Some checks failed
Python Type Check and Lint / ci (push) Failing after 1s

This commit is contained in:
암냥 2026-05-30 18:45:42 +09:00
commit 1730b73d1f
9 changed files with 141 additions and 85 deletions

81
main.py
View file

@ -1,30 +1,73 @@
import sys
import pyMeow as pm
from libs.core import Pointer, ProcessManager, KeyboardManager
from modules.esp import Entity, init_colors as init_esp_colors
from modules.aimbot import do_aimbot
from lib.keyboard import KeyboardManager
from modules.esp import Entity, init_colors as init_esp_colors, process_entities
from modules.aimbot import AimBot
from modules.armor import ArmorHack
from modules.health import HealthHack
from modules.grenade import GrenadeHack
from modules.mtp57 import MTP57Hack
from modules.mk77 import MK77Hack
class Pointer:
local_player = 0x17E0A8
entity_list = 0x18AC04
player_count = 0x18AC0C
view_matrix = 0x17DFD0
proc = None
base = None
hacks = {
"aimbot": True,
"esp": True,
"armor": True,
"health": True,
"grenade": True,
"mtp57": True,
"mk77": True
}
def init():
ProcessManager.initialize()
try:
proc = pm.open_process("ac_client.exe")
base = pm.get_module(proc, "ac_client.exe")["base"]
print("Process and base initialized successfully.")
except Exception as e:
print(f"Error initializing process: {e}")
sys.exit(1)
print(f"proc : {proc}")
print(f"base : {base}")
KeyboardManager.setup()
print("Starting ESP + Aimbot (Hold Right Shift) overlay...")
pm.overlay_init(target="AssaultCube", fps=144, trackTarget=True)
init_esp_colors()
def main():
proc = ProcessManager.get_proc()
base = ProcessManager.get_base()
while pm.overlay_loop():
pm.begin_drawing()
pm.draw_fps(10, 10)
try:
player_count = pm.r_int(proc, base + Pointer.player_count)
local_player_addr = pm.r_int(proc, base + Pointer.local_player)
my_team = pm.r_int(proc, local_player_addr + 0x30C) # team offset
if hacks["armor"] == True:
ArmorHack.apply(proc, local_player_addr)
if hacks["health"] == True:
HealthHack.apply(proc, local_player_addr)
if hacks["grenade"] == True:
GrenadeHack.apply(proc, local_player_addr)
if hacks["mtp57"] == True:
MTP57Hack.apply(proc, local_player_addr)
if hacks["mk77"] == True:
MK77Hack.apply(proc, local_player_addr)
valid_entities = []
if player_count > 1:
@ -32,21 +75,11 @@ def main():
ent_buffer = pm.r_ints(proc, ent_list, player_count)[1:]
v_matrix = pm.r_floats(proc, base + Pointer.view_matrix, 16)
for addr in ent_buffer:
if addr == 0: continue
try:
ent = Entity(proc, addr)
valid_entities.append(ent)
if ent.wts(v_matrix):
ent.draw_box()
ent.draw_name()
ent.draw_health()
except:
continue
valid_entities = process_entities(proc, ent_buffer, v_matrix, hacks.get("esp"))
# 에임봇 실행
do_aimbot(proc, valid_entities, local_player_addr, my_team, KeyboardManager.is_left_shift_pressed())
if hacks["aimbot"] == True:
AimBot(proc, valid_entities, local_player_addr, my_team, KeyboardManager.is_left_shift_pressed())
except Exception as e:
pass