|
You last visited: Today at 11:55
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.
02/02/2008, 18:52
|
#1
|
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
|
|
|
02/02/2008, 19:09
|
#2
|
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.
|
|
|
02/02/2008, 20:01
|
#3
|
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.
|
|
|
02/02/2008, 20:24
|
#4
|
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.
|
|
|
02/02/2008, 20:39
|
#5
|
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)
|
|
|
02/02/2008, 21:08
|
#6
|
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
|
|
|
02/03/2008, 20:34
|
#7
|
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.
|
|
|
|
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.
|
|