i need make s4 bot or trainer

02/18/2012 13:52 OO1N#1
pls help me i'm so nope :D
how i can make s4 bot or trainer
02/18/2012 14:15 Njahs#2
ask google
02/18/2012 15:28 Magic~*#3
Was soll das den?`??
Report!
02/18/2012 15:43 OO1N#4
Quote:
Originally Posted by Njahs View Post
ask google
hhhh
Google cant answer
and please english only
02/18/2012 15:58 Njahs#5
Quote:
Originally Posted by OO1N View Post
hhhh
Google cant answer
and please english only
It can...

See here:


U won't found any tutorials about "how to make a s4 trainer / bot (in Autoit)",
but you'll find many other tutorials about "how to make a Autoit trainer / bot".
02/19/2012 00:38 sasukegamer#6
Excuse me how to search memory address in the game for monsters and level using cheat engine?

I am really :confused:
02/20/2012 14:11 DJ_Freeze#7
Quote:
Originally Posted by sasukegamer View Post
Excuse me how to search memory address in the game for monsters and level using cheat engine?

I am really :confused:
Oh well..
Learn Cheat Engine completely.:P
Go search on youtube there is alot of tutorials..;)
02/20/2012 19:14 K1ramoX#8
If you need the source of a simple trainer:


Quote:
Originally Posted by Applecode View Post
Code:
#RequireAdmin
#NoTrayIcon

#include <NomadMemory.au3>

Global $count = 1

AdlibRegister("_Tooltip", 1000)
AdlibRegister("_S4Check", 100)
HotKeySet("{ESC}", "_Exit")

While True
	Sleep(50)
WEnd

Func _S4Check()
	If ProcessExists("S4Client.exe") <> 0 Then
		_Change()
	EndIf
EndFunc   ;==>_S4Check

Func _Change()
	AdlibUnRegister("_Tooltip")
	AdlibUnRegister("_S4Check")

	$ProcessID = ProcessExists("S4Client.exe")
	$MemoryHandle = _MemoryOpen($ProcessID)

	$MemoryWrite = _MemoryWrite(0x00000000, $MemoryHandle, "123456789", "long")
	;hier muss aber deine gefundene Adresse hin und dein Wert in den du ihn ändern willst.
	;bin jetzt mal von 4 bytes ausgegangen ;o

	If $MemoryWrite = 1 Then
		ToolTip("Done!", 0, 0)
		_MemoryClose($MemoryHandle)
		Exit
	Else
		MsgBox(0, "Error", "Error")
		_MemoryClose($MemoryHandle)
		Exit
	EndIf
EndFunc   ;==>_Change

Func _Tooltip()
	If $count = 1 Then
		ToolTip("Waiting for S4 League.", 0, 0)
		$count = $count + 1
	ElseIf $count = 2 Then
		ToolTip("Waiting for S4 League..", 0, 0)
		$count = $count + 1
	ElseIf $count = 3 Then
		ToolTip("Waiting for S4 League...", 0, 0)
		$count = 1
	EndIf
EndFunc   ;==>_Tooltip

Func _Exit()
	Exit
EndFunc   ;==>_Exit
02/20/2012 20:27 KDeluxe#9
Was soll den immer der Mist mit "Starte den Hack vor dem Spiel" oder "Warte auf ..."?

ProcessExists() gibt die Prozess ID zurück. Wenn es den Prozess nicht gibt wird logischerweise 0 zurückgegeben. Ist der Wert über 0 existiert der Prozess. Ist er 0 braucht man auch nicht weiterarbeiten.

Nomad ist kein Idiot gewesen, er wusste, wie man "Return" und "SetError" benutzt. Folglich wird bei einem Fehlversuch den Prozess zu öffnen ein Fehler zurück gegeben. Diesen kann man mit @error abfragen. Ist kein Fehler aufgetreten gibt die Funktion ein gültiges Handle zurück, das man problemlos weiterverwenden kann, ohne dass die Anwendung abstürzt.

Die Prozess ID muss man nicht unbedingt überprüfen, das Handle sollte man aber schon überprüfen. Dafür bietet sich entweder eine simple If-Abfrage an, oder die Funktion IsHandle(). Ersteres würde ich vorziehen.


Da ich nicht vorhabe den TE zu "helfen" und Applecode deutsch versteht habe ich auch in deutsch geschrieben.
02/20/2012 20:39 K1ramoX#10
Quote:
Originally Posted by KDeluxe View Post
Was soll den immer der Mist mit "Starte den Hack vor dem Spiel" oder "Warte auf ..."?

ProcessExists() gibt die Prozess ID zurück. Wenn es den Prozess nicht gibt wird logischerweise 0 zurückgegeben. Ist der Wert über 0 existiert der Prozess. Ist er 0 braucht man auch nicht weiterarbeiten.

Nomad ist kein Idiot gewesen, er wusste, wie man "Return" und "SetError" benutzt. Folglich wird bei einem Fehlversuch den Prozess zu öffnen ein Fehler zurück gegeben. Diesen kann man mit @error abfragen. Ist kein Fehler aufgetreten gibt die Funktion ein gültiges Handle zurück, das man problemlos weiterverwenden kann, ohne dass die Anwendung abstürzt.

Die Prozess ID muss man nicht unbedingt überprüfen, das Handle sollte man aber schon überprüfen. Dafür bietet sich entweder eine simple If-Abfrage an, oder die Funktion IsHandle(). Ersteres würde ich vorziehen.


Da ich nicht vorhabe den TE zu "helfen" und Applecode deutsch versteht habe ich auch in deutsch geschrieben.
Viele Spiele besitzen Hackshields, und deren Schwachpunkt ist nunmal beim Starten des Spiels (vorallem wenn wir hier von einem XTrap Spiel wie S4 League redet ;>). Und ich frage eigentlich immer über die ProcessID ab, ob denn ein Prozess existiert oder nicht, da es sich bei mir so eingebürgert hat, aber es ist mal interessant zu sehen wie sich das auch noch anders lösen lässt.

Grundsätzlich unterscheidet sich in diesem Falle dein Source nicht sonderlich von meinem, Unterschied ist nur dass du eine Gui verwendest, Pointer einsetzt und das ganze in einer Do Schleife löst statt einem AdlibRegister ;o