Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Guild Wars
You last visited: Today at 11:55

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Brauche Hilfe bei einer Errorcheck Funktion

Discussion on Brauche Hilfe bei einer Errorcheck Funktion within the Guild Wars forum part of the MMORPGs category.

Reply
 
Old   #1
 
Gabba2's Avatar
 
elite*gold: 0
Join Date: Jan 2008
Posts: 1,403
Received Thanks: 918
Brauche Hilfe bei einer Errorcheck Funktion

Hallo,

Ich wollte mal für einen Bot eine Funktion schreiben mit der er selbstständig erkennt wenn er einen Error hatte.
Das ganze sollte eigentlich nicht sonderlich schwer sein dachte ich mir einfach mit Texmod das Fenster um Charakter Auswahl und das Fenster auf dem normal der Eye of the North Schriftzug steht färben und dann an einer stelle halt eine Pixel Abfrage machen.

Aaaber: ich kenne mich nicht wirklich aus mit Programmieren im allgemeinen und mit AutoIT.
Und so machte das Script dann zwar was es sollte im Charakter Auswalh bereich drückte es Escape, kam so auf den Einlogscreen, logte sich ein halt so wies soll aber es macht jedesmal wenn es den Pixel gesucht hat die Reaktion wie wenn er den Pixel gefunden hat.

Also irgendwo hab ich nen total dummen Fehler drin dazu muss ich sagen, dass ich den großteils des Scripts nur abkopiert habe und ich teilweise deswegen kp von der Funktion êinzelner Sachen im Script habe z.B. beim Hex(PixelGetColor(498, 12),6) was hat da die 6 zu bedeuten

So hier dann mal die Scriptstelle und noch die TexMod Datei:



Code:
  
Global $password = InputBox("Password", "Please tipe your password in the box below!" , "Insert here!")

Func _errorcheck()
    	$errorcheck = Hex(PixelGetColor(498, 12),6)
	If $errorcheck = "0xFFCC00" Then
		Sleep(200)
		_errorcheck();
	ElseIf $errorcheck <> "0xFFCC00" Then
			$rndnumber = Random(200, 400)
			Sleep($rndnumber)
			Sleep(200)
		    $rndnumber = Random(4500, 5000)
		    Sleep($rndnumber)	
		    Send("{Escape}")
		    $rndnumber = Random(400, 500)
			Sleep($rndnumber)
		    Send("{Escape}")
			$rndnumber = Random(3400, 4500)
	       	Sleep($rndnumber)
		    MouseClick("left", Random(211, 461), Random(329, 338), 1, $mousespeed)
			$rndnumber = Random(400, 500)
		    Sleep($rndnumber)
			Send("{Backspace down}")
		    $rndnumber = Random(2700, 3500)
			Sleep($rndnumber)
	    	Send("{Backspace Up}")
		    $rndnumber = Random(400, 500)
	       	Sleep($rndnumber)
			Send($password, 1)
	      	$rndnumber = Random(500, 800)
      		Sleep($rndnumber)
	     	Send("{Enter}")
			$rndnumber = Random(1500, 2300)
      		Sleep($rndnumber)
	     	Send("{Enter}")
	    	$rndnumber = Random(15000, 17000)
	    	Sleep($rndnumber)
			Send("{ESC}")
			$rndnumber = Random(250, 300)
			Sleep($rndnumber)	
			Send("{ESC}")
			$rndnumber = Random(250, 300)
			Sleep($rndnumber)	
			Send("{ESC}")
			$rndnumber = Random(250, 300)
			Sleep($rndnumber)	
			Send("{ESC}")
			$rndnumber = Random(250, 300)
			Sleep($rndnumber)	
			Send("{ESC}")
			_errorcheck(); 
			$rndnumber = Random(1250, 1500)
			Sleep($rndnumber)				
			Send("g")
		Endif
ENdfunc
Gabba2 is offline  
Old 02/02/2008, 19:09   #2
 
MasteR GunneR's Avatar
 
elite*gold: 0
Join Date: Dec 2007
Posts: 387
Received Thanks: 188
Habs zwar jetzt nur kurz überfolgen, aber wenn du Hex(expression, 6) nimmst, dann steht die "6" für die Länge der Zahl (im Hexdezimalsystem), sprich das "0x", das du vorne hast wird weggeschnitten.
Lass das "0x" also einfach mal weg und schau obs funktioniert.
Aber das ganze kommt mir bekannt vor =)

So wie es jetzt da steht, macht er wenn der Pixel die in $errorcheck angegebene Farbe hat nichts und fängt vorne an, und wenn er nicht die Farbe hat, dann loggt er sich ein, seh ich das richtig?

Code:
Global $password = InputBox("Password", "Please tipe your password in the box below!" , "Insert here!")
Global $mousespeed = 2

Func _errorcheck()
    	$errorcheck = Hex(PixelGetColor(498, 12),6)
	If $errorcheck <> "FFCC00" Then
		Sleep(200)
	ElseIf $errorcheck = "FFCC00" Then
		$rndnumber = Random(200, 400)
		Sleep($rndnumber)
		Sleep(200)
		$rndnumber = Random(4500, 5000)
		Sleep($rndnumber)	
		Send("{Escape}")
		$rndnumber = Random(400, 500)
		Sleep($rndnumber)
		Send("{Escape}")
		$rndnumber = Random(3400, 4500)
	       	Sleep($rndnumber)
		MouseClick("left", Random(211, 461), Random(329, 338), 1, $mousespeed)
		$rndnumber = Random(400, 500)
		Sleep($rndnumber)
		Send("{Backspace down}")
		$rndnumber = Random(2700, 3500)
		Sleep($rndnumber)
	    	Send("{Backspace Up}")
		$rndnumber = Random(400, 500)
	       	Sleep($rndnumber)
		Send($password, 1)
	      	$rndnumber = Random(500, 800)
      		Sleep($rndnumber)
	     	Send("{Enter}")
		$rndnumber = Random(1500, 2300)
      		Sleep($rndnumber)
	     	Send("{Enter}")
	    	$rndnumber = Random(15000, 17000)
	    	Sleep($rndnumber)
	Endif
ENdfunc

While 1
	_errorcheck();
WEnd
Meinst du sowas? Wenn du n Error hast merkt er es und loggt sich wieder ein.
Muss du dann halt überall da reinsetzen wo du den Test haben willst.
MasteR GunneR is offline  
Thanks
1 User
Old 02/02/2008, 20:01   #3
 
Gabba2's Avatar
 
elite*gold: 0
Join Date: Jan 2008
Posts: 1,403
Received Thanks: 918
Ähm ja er macht die Folge des errorchecks immer also egal ob der Pixel da war oder nicht. ( ich rede hier von der von mir geposteten Version)
Deine probiere ich dann gleich mal aus und, dass es dir bekannt vorkommt ich sag ja größtenteils kopiert^^
Ich wollte das dann bei deinem HFFF Script zwischen die Quest und die Reward Func setzen ein mal pro Run langt denke ich.

Und was er machen sollte ist: Wenn man nen Error kriegt landet man ja aufm Charakter Auswahl Screen. Da soll er dann den durch TexMod veränderten Pixel finden, Escape drücken wenn der Pixel da war damit er in den Einlog Screen kommt da dann PW eingeben einloggen und von da an halt normal weiter laufen.
Gabba2 is offline  
Old 02/02/2008, 20:24   #4
 
MasteR GunneR's Avatar
 
elite*gold: 0
Join Date: Dec 2007
Posts: 387
Received Thanks: 188
Dann sollte das genau das sein was du suchst. Musst halt nur noch nach dem Einloggen die Fenster die du brauchst öffnen, das musst dir dann nochmal selber anschaun und einfügen.
MasteR GunneR is offline  
Old 02/02/2008, 20:39   #5
 
Gabba2's Avatar
 
elite*gold: 0
Join Date: Jan 2008
Posts: 1,403
Received Thanks: 918
Jo thx grade getestet funtzt genauso wies soll.
Den rest habe ich alles schon wollt halt nur nich zuviel von dem Script hier posten vielen Dank für die Hilfe.
Wie sähe es denn aus wenn man noch ne Funktion einbauen wollen würde die nach kp 2 Fehlversuchen oder so ne std. Pause macht und dann nochmal die Versuche startet?
Das währe dann bei längeren Verbindungsabbrüchen ja sinnvoll.
(i weiss, dass ich nerv aber i hab ums verrecken nix in der Hilfe Datei von AutoIT dazu gefunden)
Gabba2 is offline  
Old 02/02/2008, 21:08   #6
 
MasteR GunneR's Avatar
 
elite*gold: 0
Join Date: Dec 2007
Posts: 387
Received Thanks: 188
Müsste dann so aussehen, kannst ja mal testen:
Code:
Global $password = InputBox("Password", "Please tipe your password in the box below!" , "Insert here!")
Global $mousespeed = 2

Func _errorcheck()
$errorcheck = Hex(PixelGetColor(498, 12),6)
$counter = 0
$countercheck = 2
	If $errorcheck <> "FFCC00" And $counter <> $countercheck Then
		Sleep(200)
	ElseIf $errorcheck = "FFCC00" And $counter <> $countercheck Then
		$counter = $counter + 1
		$rndnumber = Random(200, 400)
		Sleep($rndnumber)
		Sleep(200)
		$rndnumber = Random(4500, 5000)
		Sleep($rndnumber)	
		Send("{Escape}")
		$rndnumber = Random(400, 500)
		Sleep($rndnumber)
		Send("{Escape}")
		$rndnumber = Random(3400, 4500)
	       	Sleep($rndnumber)
		MouseClick("left", Random(211, 461), Random(329, 338), 1, $mousespeed)
		$rndnumber = Random(400, 500)
		Sleep($rndnumber)
		Send("{Backspace down}")
		$rndnumber = Random(2700, 3500)
		Sleep($rndnumber)
	    	Send("{Backspace Up}")
		$rndnumber = Random(400, 500)
	       	Sleep($rndnumber)
		Send($password, 1)
	      	$rndnumber = Random(500, 800)
      		Sleep($rndnumber)
	     	Send("{Enter}")
		$rndnumber = Random(1500, 2300)
      		Sleep($rndnumber)
	     	Send("{Enter}")
	    	$rndnumber = Random(15000, 17000)
	    	Sleep($rndnumber)
		_errorcheck();
	ElseIf $counter = $countercheck Then	
 		$counter = $counter - 2
		Sleep(3600000)
		_errorcheck();
	Endif
ENdfunc

While 1
	_errorcheck();
WEnd
MasteR GunneR is offline  
Old 02/03/2008, 20:34   #7
 
Atheuz's Avatar
 
elite*gold: 81
Join Date: Jul 2005
Posts: 1,921
Received Thanks: 2,239
Man kann auch über AutoIT einfach über eine adresse auslesen ob ein Fehler angezeigt wird oder nicht. Bzw nach Strings suchen.
Atheuz is offline  
Reply


Similar Threads Similar Threads
Hilfe bei einer Quest (Spezial Funktion)
07/29/2010 - Metin2 Private Server - 8 Replies
Hallo zusammen :) und zwar möchste ich einer NPC eine bestimmte funktion geben ! Ist eig. ne simple funktion nur ich weiß nicht wie ich das machen soll xD Kommen wir mal jetzt zur der Funktion: Wenn man auf die NPC klickt soll ein kleines Fenster erscheinen. Dort soll z.B. GM stehen. Wenn man dann drauf klickt soll eine Passwortabfrage kommen (könnte z.B LagerPW sein oder so) ! Wäre so was möglich? Wenn ja wie kann man das machen ? Helfer bekommen reichlich Thx :D
[C++]Funktion einer Klasse in einer anderen Funktion der Klasse verwenden, aber wie?
07/25/2010 - C/C++ - 3 Replies
Mein Problem ist eigentlich recht simpel und die Lösung wahrscheinlich auch. Da ich bisher fast 0 mit Klassen am Hut hatte, wollte ich mich doch mit dem Thema anfreunden und hatte gleich angefangen: int test::Funktion2() { int temp; cin>>temp; return temp; }
Brauche Hilfe bei einer fehlerhaften sql datei
07/10/2010 - WoW Private Server - 3 Replies
Guten Abend elitepvpers. Ich habe ein Problem mit einem selbst erstellten quest. Es hanndelt sich hierbei um ein Sammelquest bei dem man einen Gegenstand aus einem Objekt nehmen muss. Jedoch ist in diesem Objekt trotzt Quest nichts drin. ICh hoffe ihr findet da den Fehler. (trinity 3.3.3a) INSERT INTO `quest_template` VALUES ('999990', '2', '0', '0', '40', '0', '40', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '999992', '999989',...
Brauche Hilfe bei einer Quest
05/16/2010 - Metin2 Private Server - 0 Replies
Hallo Com, ich habe einen Server, wo die Waffen die man aus dem Is bekommt verbuggt sind, sprich man kann keine Steine hinzufügen. Beim Gm umtauschen war bisjetzt die Möglichkeit, sind jedoch schon zuviele Spieler. Jetzt ist mir wieder die Idee gekommen, nen Npc hinzustellen der das umtauscht. Sowas hab ich auch bereits auf Real-World2 und AeroMT2 gesehen (soll keine Werbung sein). Leider kenn ich mich mit Questen nicht so gut aus, ich weiß nur das man das Prinzip von Baek-Go abschauen...
Brauche Hilfe bei erstellung einer UCE
01/02/2008 - General Coding - 1 Replies
Hallo, Ich habe ein Problem, bin dabei eine UCE zu machen, Nur ist da dieses ding.... UCE making tut | for those who wanna make a uce Mein tut xD Naja auf jedenfall steht unten: "Now lets see... nth else....needed to be changed... now u do ur 1st compiling.... not very hard.... just compilling the dbk32.sys not the whole thing....". (auf der Seite vom TuT fast ganz unten)



All times are GMT +1. The time now is 11:55.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.