Что нового

[Процессы] Как написать трейнер

MaxImba

Новичок
Сообщения
4
Репутация
0
Как написать трейнер:
1) Тело есть !
2) Надо , что бы при нажатии на буттон менялись значения (4byte , array of bytes)
3) Допустим пример на пауке увеличение очков , желательно исход(код)
Заранее благодарствую!
 

Foli

Знающий
Сообщения
39
Репутация
5
Код:
#include <NomadMemory.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $GameName = "Паук" ;имя окна процеса\игры
Global $GamePid = 0   ;чаще всего равно 0 
Global $Base_mem = 0x00400000 ;адрес куда будим вписывать значение
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Трейнер", 150, 166, 240, 124)
$Button1 = GUICtrlCreateButton("Вкл.", 20, 80, 100, 33, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
GameOpenMemory()
Func GameOpenMemory() ;открываем паметь игры 
   $GamePid = WinGetProcess($GameName, "")
   _MemoryOpen($MemGame)
   $MemGame = _MemoryOpen($GamePid)
EndFunc

Func pishem() ;функция записи в адрес, своего значение
_MemoryWrite($Base_mem, $MemGame, 5, 'float')
 EndFunc


While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
   Case $GUI_EVENT_CLOSE
   
   Exit
    case $Button1
	  pishem()
   EndSwitch
WEnd

будут вопросы пиши
 

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Foli
Лишние инклуды
Код:
#include <NomadMemory.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $GameName = "Паук" ;имя окна процеса\игры
Global $GamePid = 0   ;чаще всего равно 0 
Global $Base_mem = 0x00400000 ;адрес куда будим вписывать значение
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Трейнер", 150, 166, 240, 124)
$Button1 = GUICtrlCreateButton("Вкл.", 20, 80, 100, 33, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
GameOpenMemory()
Func GameOpenMemory() ;открываем паметь игры 
   $GamePid = WinGetProcess($GameName, "")
   _MemoryOpen($MemGame)
   $MemGame = _MemoryOpen($GamePid)
EndFunc

Func pishem() ;функция записи в адрес, своего значение
_MemoryWrite($Base_mem, $MemGame, 5, 'float')
 EndFunc


While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
   Case $GUI_EVENT_CLOSE
   
   Exit
    case $Button1
      pishem()
   EndSwitch
WEnd
 

Foli

Знающий
Сообщения
39
Репутация
5
да дабл при копирование получился
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Паук от Win7 версии 6.1
Код:
#include <nomadmemory.au3>

$proces_name="SpiderSolitaire.exe"
$base_adres=0x923090
$ofset1=0x8C
$ofset2=0x10
$data=99

$PID=ProcessExists($proces_name)
$memory = _MemoryOpen($PID)
$poit1=_MemoryRead($base_adres, $memory)
$poit2=_MemoryRead($poit1+$ofset1, $memory)
_MemoryWrite($poit2+$ofset2,$memory,$data)
 
Автор
M

MaxImba

Новичок
Сообщения
4
Репутация
0
А можно подробнее , что такое офсеты??
И дата , это на что меняется значение???
 

shift72

Новичок
Сообщения
86
Репутация
2
Прошу прощения что поднимаю тему снова. Но: столкнулся с проблемой. В примерах указано изменение значения адреса. (Адрес уже известен). Но как быть если игра использует DMA (Dynamic Memory Allocation (динамическое распределение памяти)) Как быть с указателями? Можно хотя бы рабочий пример на Autoit?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Читать некоторые со-о-овсем разучились. Прочитай сообщение выше твоего.
 
Верх