Пользователь
-
Автор темы
- #1
Гайд для новичков как сделать вх на питоне всего в 14 строк
вот код:
а теперь разберемся что к чему
если нет - устанавливаем (pip install pymem в консоль виндовс)
если нет - устанавливаем (pip install keyboard в консоль виндовс)
client.lpBaseOfDll - адрес модуля
0x4DA215C - адрес списка ентити, после каждого обновления игры меняется, актуальный
0x52EA5D0 - адрес менеджера, тоже меняется после каждого обновления игры, актуальный
для зеленого адрес будет glow_manager + glow_id * 0x38 + 0x8
для синего - glow_manager + glow_id * 0x38 + 0xC
прозрачность - glow_manager + glow_id * 0x38 + 0x10
все, вх готов, можно еще добавить проверку на тиммейта, ее нужно вставить после проверки entity == 0:
вот код:
Python:
import pymem
import keyboard
mem = pymem.Pymem("csgo.exe")
client = pymem.process.module_from_name(mem.process_handle, "client.dll")
while not keyboard.is_pressed("end"):
for i in range(32):
entity = mem.read_int(client.lpBaseOfDll + 0x4DA215C + 0x10 * i)
if entity == 0:
continue
glow_manager = mem.read_int(client.lpBaseOfDll + 0x52EA5D0)
glow_id = mem.read_int(entity + 0xA438)
mem.write_float(glow_manager + glow_id * 0x38 + 0x4, 255.0)
mem.write_float(glow_manager + glow_id * 0x38 + 0x10, 255.0)
mem.write_int(glow_manager + glow_id * 0x38 + 0x24, 1)
import pymem
- модуль для работы с памятью (запись, чтение и тд)если нет - устанавливаем (pip install pymem в консоль виндовс)
import keyboard
- нужно чтобы по нажатию на end чит можно было выключить (можно любую другую кнопку)если нет - устанавливаем (pip install keyboard в консоль виндовс)
mem = pymem.Pymem("csgo.exe")
- открываем процесс csgo для работы с нимclient = pymem.process.module_from_name(mem.process_handle, "client.dll")
- получаем адрес модуля client.dll где хранится вся информация об игрокахwhile not keyboard.is_pressed("end"):
- цикл для работы вх keyboard.is_keypressed("любая кнопка") для того чтобы можно было остановить по нажатию кнопкиfor i in range(32):
- цикл для перебора ентити, игроки хранятся в самом начале списка ентити так что можно цикл ограничить 10 игроками (если для мм)entity = mem.read_int(client.lpBaseOfDll + 0x4DA215C + 0x10 * i)
- получаем адрес ентити гдеclient.lpBaseOfDll - адрес модуля
0x4DA215C - адрес списка ентити, после каждого обновления игры меняется, актуальный
Пожалуйста, авторизуйтесь для просмотра ссылки.
(dwEntityList)if entity == 0: continue
- проверяем чтобы адрес не был нулевымglow_manager = mem.read_int(client.lpBaseOfDll + 0x52EA5D0)
- получаем менеджер подсветки0x52EA5D0 - адрес менеджера, тоже меняется после каждого обновления игры, актуальный
Пожалуйста, авторизуйтесь для просмотра ссылки.
(dwGlowObjectManager)glow_id = mem.read_int(entity + 0xA438)
- получаем индекс игрока в списке менеджера подсветкиmem.write_float(glow_manager + glow_id * 0x38 + 0x4, 255.0)
- записываем цвет подсветки в данном случае 255 для красного каналадля зеленого адрес будет glow_manager + glow_id * 0x38 + 0x8
для синего - glow_manager + glow_id * 0x38 + 0xC
прозрачность - glow_manager + glow_id * 0x38 + 0x10
mem.write_int(glow_manager + glow_id * 0x38 + 0x24, 1)
- сама магия, включаем подсветку!все, вх готов, можно еще добавить проверку на тиммейта, ее нужно вставить после проверки entity == 0:
Python:
localplayer = mem.read_int(client.lpBaseOfDll + 0xD892CC) # 0xD892CC тоже обнавляется после обновления игры(dwLocalPlayer)
if mem.read_int(localplayer + 0xF4) == mem.read_int(entity + 0xF4):
continue
Последнее редактирование: