Для тех кто просто любит жить
И так , после долгого срока я конечно бы не стал писать , что либо на питоне , как изложил в этой теме , но раз тема о питоне , то почему бы не продолжить .
Буду отталкиваться от самой популярной темы - Wallhack , да после того как именно ты вникнешь во все , что я тут распишу в надежде кому-то помочь , ты сумеешь написать , что то аналогичное WH .
Ну начнем с простого , сначала скачайте Python .
Python
Качайте последнюю версию , на данный момент это 3.10.2
Установка Python в клиенте :
- Открываем .exe файл ;
- Жмем галку на пункт Add Python 3.10 to PATH ;
- Далее просто Install Now ;
После установки вам надо установить модули pymem и requests, устанавливаем :
- Открываем CMD( keys : [Win + R] , и пишем ‘cmd’ ) ;
- Вписываем
pip install pymem
;
- Вписываем
pip install requests
;
Спойлер
Теперь если у вас все прекрасно установилось , переходим к следующему пункту .
Создание файла и писание кода :
- Создайте файл , допустим Wallhack.py , расширение должно быть именно .py ;
Чтобы импортировать модули в свой код для дальнейшей работы с ними , в коде нужно написать сразу через import
модули , с которыми вы работаете , пример в коде :
import pymem
import pymem.process
import requests
В Python нет не скобочек , не точек с запятой , так что о том , что вы , что-то там пропустили бояться не стоит .
Далее можно объявить подключение пользователя к игре , будет выглядеть как то так :
print ('Запуск чита..') # При подключении принтиться ;
#-----------------------
pm = pymem.Pymem("csgo.exe")
client = pymem.process.module_from_name(pm.process_handle, "client.dll").lpBaseOfDll
Далее для ленивых и не любящих копаться в сигнатурах , предлагаю написать еще авто-обновление :
offsets = 'https://raw.githubusercontent.com/frk1/hazedumper/master/csgo.json' # hazedumper offsets git
response = requests.get(offsets).json() #call
#-----------------------------------------------------------------------------
dwGlowObjectManager = int(response["signatures"]["dwGlowObjectManager"])
dwEntityList = int(response["signatures"]["dwEntityList"])
#-----------------------------------------------------------------------------
m_iTeamNum = int(response["netvars"]["m_iTeamNum"])
m_iGlowIndex = int(response["netvars"]["m_iGlowIndex"])
#-----------------------------------------------------------------------------
print ('Включение Wallhack...')
ВСЕ ! Настало время обращаться к самой функции и объявлять её :
def wh(): #Announce
while True:
glow_manager = pm.read_int(client + dwGlowObjectManager)
for i in range(1, 32): # 1-32 Entity зарезервированы
entity = pm.read_int(client + dwEntityList + i * 0x10)
#--------------------------------------------------------------------------------------------
if entity:
entity_team_id = pm.read_int(entity + m_iTeamNum)
entity_glow = pm.read_int(entity + m_iGlowIndex)
if entity_team_id == 2: # Террористы
pm.write_float(glow_manager + entity_glow * 0x38 + 0x4, float(1))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x8, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0xC, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x10, float(1))
pm.write_int(glow_manager + entity_glow * 0x38 + 0x24, 1) # glow
elif entity_team_id == 3: # КТ
pm.write_float(glow_manager + entity_glow * 0x38 + 0x4, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x8, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0xC, float(1))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x10, float(1))
pm.write_int(glow_manager + entity_glow * 0x38 + 0x24, 1) # glow
Полный код :
import pymem
import pymem.process
#----------------------------------------------------- Connect PrintTOInterface;
print ('Запуск чита..') # При подключении принтиться ;
#----------------------------------------------------- Connect Client ;
pm = pymem.Pymem("csgo.exe")
client = pymem.process.module_from_name(pm.process_handle, "client.dll").lpBaseOfDll
#----------------------------------------------------- Offsets & Globals ;
offsets = 'https://raw.githubusercontent.com/frk1/hazedumper/master/csgo.json' # hazedumper offsets git
response = requests.get(offsets).json() #call
#----------------------------------------------------------------------------- ;
dwGlowObjectManager = int(response["signatures"]["dwGlowObjectManager"])
dwEntityList = int(response["signatures"]["dwEntityList"])
#----------------------------------------------------------------------------- ;
m_iTeamNum = int(response["netvars"]["m_iTeamNum"])
m_iGlowIndex = int(response["netvars"]["m_iGlowIndex"])
#----------------------------------------------------------------------------- ;
print ('Включение Wallhack...') # Enable WH PrintTOInterface ;
#---------------------------------------------------------------------------------------------------------------------- ;
def wh(): #Announce
while True:
glow_manager = pm.read_int(client + dwGlowObjectManager) # glow
for i in range(1, 32): # 1-32 Entity
entity = pm.read_int(client + dwEntityList + i * 0x10)
#--------------------------------------------------------------------------------------------
if entity:
entity_team_id = pm.read_int(entity + m_iTeamNum)
entity_glow = pm.read_int(entity + m_iGlowIndex)
#---------------------------------------------------------------------------------------------------------------------- Team T ;
if entity_team_id == 2: # Террористы
pm.write_float(glow_manager + entity_glow * 0x38 + 0x4, float(1))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x8, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0xC, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x10, float(1))
pm.write_int(glow_manager + entity_glow * 0x38 + 0x24, 1) # glow
#---------------------------------------------------------------------------------------------------------------------- Team CT ;
elif entity_team_id == 3: # КТ
pm.write_float(glow_manager + entity_glow * 0x38 + 0x4, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x8, float(0))
pm.write_float(glow_manager + entity_glow * 0x38 + 0xC, float(1))
pm.write_float(glow_manager + entity_glow * 0x38 + 0x10, float(1))
pm.write_int(glow_manager + entity_glow * 0x38 + 0x24, 1) # glow
На этом все , прикреплю исходный файл здесь на ЯД , всем удачи в своих начинаниях