Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 15:28

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

Advertisement



Metin2 Angelbot Tut

Discussion on Metin2 Angelbot Tut within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
amnesi's Avatar
 
elite*gold: 25
Join Date: Jun 2010
Posts: 1,076
Received Thanks: 290
Metin2 Angelbot Tut

Hallo alle zsm in diesem Tut werde ich euch zeigen wie man einen Angelbot für Metin2 Scriptet.


ACHTUNG ALLE KOORDINATEN DIE ICH EINGETRAGEN HABE SIND FÜR DIE KLEINSTE FENSTERAUFLÖSUNG!!!!!!!

Was brauchen wir?



-Gut wären Autoit Kenntnisse ;D

Erstmal müssen wir gucken was unser Angelbot überhaupt soll
Also :
-Köder suchen, und finden ;D (Am besten aus dem Inventar so kann man mehr Köder benutzen)
-Köder benutzen
-Angel einwerfen
-Auf Fischblase warten und darauf reagieren
-Angel rausziehen
-Und vllt. Noch ein paar Extras wie Autologin oder Fischkiller



Köder suchen/benutzen:

Also: Köder suchen hmmmm was sagt uns das?Wir brauchen eine Funktion mit der wir eine
Bestimmte Farbe eines Köders(In diesem Fall der Wurm) suchen können und zwar im Inventar!

mit
PHP Code:
pixelsearch 
können wir nach einer Farbe suchen also dann mal ran ans Werk ;D

als erstes müssen wir ein paar optionen setzen dammit er
die koordinaten relativ zum Fenster sucht:
PHP Code:
Opt("MouseCoordMode",2)
Opt("PixelCoordMode",2)
AutoItSetOption("WinTitleMatchMode"4
so jetzt die Pixelsearch Funktion:

wir deklarieren erstmal die Variable $Koeder_Farbe mit der Köderfarbe

PHP Code:
$Koeder_Farbe 0xAD7B6C "0xAD7B6C" ist die Köderfarbe 
Nun müssen wir den Suchradius von pixelsearch bestimmen
dazu scannen wir oben links und unten rechts mit dem au3Window info tool:




PHP Code:
$Pixelsearch pixelsearch635249785531 ,$Koeder_Farbe,10 )

;Die 
Pixelsearch funktion wird in der variable $Pixelsearch gespeichert
;die ersten 4 "Parameter" also die Werte die mit dem Komma getrennt  wurden sind die koordinaten

;(Die ersten 2 sind die werte die wir bekommen wenn wir das inventar oben links scannen 
;die 
nächsten 2 ;zahlen sind das Ergebnis wenn wir unten links scannen

;Danach ,nach welcher Farbe wir suche wollen in diesem fall unsere ;Variable  $Koeder_Farbe  die wir ja vorher deklariert haben
;zum schluss dann der Abweichwert ,also wie weit die farbe abweichendarf 

So nun brauchen wir eine "if" schleife also :




PHP Code:
func _BenutzKoeder()

If 
IsArray($Pixelsearch) = True Then
    Mousemove
($Pixelsearch[0], $Pixelsearch[1], 1)
    
sleep(10)
    
mouseclick"right" )
endif
endfunc 

Gut also Hier wird gefragt wenn $Pixelsearch eine Array ist also isArray Dann
hat die Variable $Pixelsearch 2 Werte einmal x ($Pixelsearch[0] und einmal y ($Pixelsearch[1])

Nun wollen wir die Maus dahin bewegen :
also Mousemove($Pixelsearch[0], $Pixelsearch[1], 1)
die 1 am ende bestimmt wie schnell die Maus sich bewegen soll
1 = Sehr schnell
Dann warten wir noch 10 Sekunden (Sleep(10))
und drücken dann rechtsklick(mouseclick("right"))
das ganze packen wir nochmal in eine Funktion mit dem Namen "_BenutzKoeder()"


So alles zusammengefasst:
PHP Code:
Opt("MouseCoordMode",2)
Opt("PixelCoordMode",2)
AutoItSetOption("WinTitleMatchMode"4)  

$Koeder_Farbe 0xAD7B6C

func _BenutzKoeder
()

$Pixelsearch pixelsearch635249785531 ,$Koeder_Farbe,10 

If 
IsArray($Pixelsearch) = True Then
    Mousemove
($Pixelsearch[0], $Pixelsearch[1], 1)
    
sleep(10)
    
mouseclick"right" )
endif
endfunc 
Angel einwerfen :

wir wollen die angel einwerfen ... am besten packen wir die Angelfertigkeit erstmal auf F4.



Nun zum Script

PHP Code:
Func _AngelEinwerfen()
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
EndFunc 
also es wird das Fenster "METIN2" aktiviert
dann wird zum aktiven fenster ein tastendruck gesendet
und zwar F4 welcher 500 Millisekunden gedrückt wird
Das ganze packen wir dann noch in die Funktion "_AngelEinwerfen()"
Nun kann unser bot schon den Köder aus dem Inventar suchen/benutzen
und die Angel einwerfen.

Das ganze fügen wir dann noch zum gesammt Script hinzu:

PHP Code:
Opt("MouseCoordMode",2)
Opt("PixelCoordMode",2)
AutoItSetOption("WinTitleMatchMode"4)  


$Koeder_Farbe 0xAD7B6C

func _BenutzKoeder
()

$Pixelsearch pixelsearch635249785531 ,$Koeder_Farbe,10 

If 
IsArray($Pixelsearch) = True Then
    Mousemove
($Pixelsearch[0], $Pixelsearch[1], 1)
    
sleep(10)
    
mouseclick"right" )
endif
endfunc  

Func _AngelEinwerfen
()
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
EndFunc 
Auf Fischblase warten und darauf reagieren :

So also, was wollen wir?
wir wollen das er die ganze Zeit Nach der Fischblase sucht
bis sie gefunden wird.

als erstes müssen wir die Farbe der Fischblase in einer Variable deklarieren:
(Die Farbe bekommt ihr wieder durch das au3windowtool raus, hier ist sie schon vorhanden:

PHP Code:
$FischBlase  0xFBF7FB 

also die ganze Zeit hmm was sagt uns das?
Genau!
wir brauchen eine while schleife
also :


PHP Code:
while ;Mach das und das solange 1 war ist d.hes wird unendlich oft wiederholt 
so, was soll den jetzt die ganze Zeit gemacht werden?
Es soll nach der Fischblase gesucht werden, also benutzen wir wieder Pixelsearch.
Die Koords kriegt ihr mit dem Au3windowtool raus:



Nun zur Funktion

PHP Code:
Pixelsearch25313528216$FischBlase10)
;Die 
ersten 4 Zahlen sind die Koordinaten(wird oben in dem Bild beschrieben)
;
Dann die Farbe, die wir ja schon vorher in einer Variable deklariert haben
;Und zum Schluss der Abweichwert(hier 10
gut nun wollen wir ja etwas machen wenn die Farbe gefunden wurde
das geht so:

PHP Code:
if not @error Then
    exitloop
endif 
Hier wieder eine If Abfrage also, Wenn kein Fehler(@Error ist eine von Autoit vordefinierte Variable,die soviel heist wie Fehler^^) Dann exitloop mit Exitloop wird die
Schleife sozusagen unterbrochen/beendet d.h. das Script geht weiter
und zum schluss noch die if abfrage sozusagen eingrenzen endif

So jetzt alles zsm (In einer Funktion) :



PHP Code:
Func _Blase()
$FischBlase  0xFBF7FB
While 1
    Pixelsearch
25313528216$FischBlase10)
        If 
Not @error Then
            ExitLoop
        
EndIf
    
WEnd
EndFunc 
So das fügen wir jetzt noch zu unserem fertigem Script hinzu:

PHP Code:
Opt("MouseCoordMode",2)
Opt("PixelCoordMode",2)
AutoItSetOption("WinTitleMatchMode"4)  


$Koeder_Farbe 0xAD7B6C
$FischBlase  
0xFBF7FB


func _BenutzKoeder
()

$Pixelsearch pixelsearch635249785531 ,$Koeder_Farbe,10 

If 
IsArray($Pixelsearch) = True Then
    Mousemove
($Pixelsearch[0], $Pixelsearch[1], 1)
    
sleep(10)
    
mouseclick"right" )
endif
endfunc  

Func _AngelEinwerfen
()
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
EndFunc

Func _Blase
()
While 
1
    Pixelsearch
25313528216$FischBlase10)
        If 
Not @error Then
            ExitLoop
        
EndIf
    
WEnd
EndFunc 

Angel rausziehen


So, also was wollen wir?
wir wollen das er die Angel nach einer bestimmten zeit des wartens rauszieht
das geht im Grunde ganz einfach .
ich finde es aber besser wenn er eine "zufällige" Zeit wartet das heist
z.b. zwischen 2000 und 2500 Millisekunden warten.


Das geht mit dem Befehl random:

PHP Code:
;als erstes speichern wir den Befehl random in einer Variableund zwar so
$random_variable 
random(2000,2500,1)
;
Jetzt wird in der Variable eine Zahl zwischen 2000 und 2500 gespeichert
;dank der 1 am ende werden nur ganze Zahlen gespeichert 
Der Rest ist eigentlich ganz einfach:

PHP Code:
sleep($random_variable)
;
es wird 2000-2500 Millisekunden gewartet
winactivate
"METIN2" )
;
Metin2 wird aktiviert
Send
("{F4 DOWN}")
Sleep(500)
Send("{F4 UP}")
;
Es wird F4 500 Millisekunden gedrückt gehalten 

So jetzt alles zusammen in einer Funktion:

PHP Code:
Func _Rausziehen()
    
$random_Variable Random(2000,2500,1)
    
Sleep($random_variable)
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
Endfunc 

Nun das Fertige Script :
Ich habe alle Funktionen nochmal in eine Mainfunktion gepackt damit diese leichter zu starten ist
Außerdem wurden noch einige Sleeps eingebaut, da der bot sonst ZU schnell ist


PHP Code:
Opt("MouseCoordMode",2)
Opt("PixelCoordMode",2)
AutoItSetOption("WinTitleMatchMode"4)  


$Koeder_Farbe 0xAD7B6C
$FischBlase  
0xFBF7FB

while 1

_Main
()

wend

func _Main
()
_BenutzKoeder()    
sleep(200)
_AngelEinwerfen()
_Blase()
_Rausziehen()
sleep(3000)
endfunc


func _BenutzKoeder
()

$Pixelsearch pixelsearch635249785531 ,$Koeder_Farbe,10 

If 
IsArray($Pixelsearch) = True Then
    Mousemove
($Pixelsearch[0], $Pixelsearch[1], 1)
    
sleep(10)
    
mouseclick"right" )
endif
endfunc  

Func _AngelEinwerfen
()
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
EndFunc

Func _Blase
()
While 
1
    Pixelsearch
25313528216$FischBlase10)
        If 
Not @error Then
            ExitLoop
        
EndIf
    
WEnd
EndFunc

Func _Rausziehen
()
    
$random_Variable Random(2000,2500,1)
    
Sleep($random_variable)
    
winactivate"METIN2" )
    
Send("{F4 DOWN}")
    
Sleep(500)
    
Send("{F4 UP}")
Endfunc 

So das wars hoffe ich hab euch geholfen ;D
amnesi is offline  
Thanks
15 Users
Old 10/15/2010, 17:32   #2
 
h0fi00's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 74
Received Thanks: 19
Sieht nice aus!
Also von mir gibts en Thx, obwohl ich das schon kann^^
h0fi00 is offline  
Old 11/07/2010, 18:53   #3
 
-TaddeL-'s Avatar
 
elite*gold: 26
Join Date: Oct 2010
Posts: 482
Received Thanks: 166
Hübsches TuT sowas hatte ich gebraucht
Bin in Sachen Autoit noch nicht so gut bewandert
-TaddeL- is offline  
Old 01/03/2011, 18:57   #4
 
elite*gold: 0
Join Date: Feb 2010
Posts: 7
Received Thanks: 0
also bei mir klappt alles mit schreiben ( = hab da keine probleme
obwohl ich erst angefangen hab mit autoit scripts zu schreiben (also ka)
kommt bei mir wenn ich den script starten will
" C:\Users\HFT\Desktop\Metin2 angelbot.au3 (12) : ==> "Func" statement has no matching "EndFunc".:
kingandider3 is offline  
Old 01/04/2011, 12:59   #5
 
puzzlr's Avatar
 
elite*gold: 29
Join Date: Nov 2010
Posts: 502
Received Thanks: 127
Quote:
Originally Posted by kingandider3 View Post
also bei mir klappt alles mit schreiben ( = hab da keine probleme
obwohl ich erst angefangen hab mit autoit scripts zu schreiben (also ka)
kommt bei mir wenn ich den script starten will
" C:\Users\HFT\Desktop\Metin2 angelbot.au3 (12) : ==> "Func" statement has no matching "EndFunc".:
^das heißt, dass du eine Function definiert hast, der Deklaration aber kein Ende gesetzt hast. wenn du eine function definieren willst, sieht das so aus :

PHP Code:
Func _beispiel
EndFunc 
bei deinem error hast du das EndFunc vergessen
puzzlr is offline  
Old 01/04/2011, 19:45   #6
 
elite*gold: 0
Join Date: Feb 2010
Posts: 7
Received Thanks: 0
ah ja danke ( =
kingandider3 is offline  
Old 01/04/2011, 19:48   #7
 
elite*gold: 0
Join Date: Feb 2010
Posts: 7
Received Thanks: 0
was benützt ihr sonst so für programme zum bots scripten /hacks
visual basic?
kingandider3 is offline  
Old 03/17/2011, 14:33   #8
 
amnesi's Avatar
 
elite*gold: 25
Join Date: Jun 2010
Posts: 1,076
Received Thanks: 290
Ne AutoIt
amnesi is offline  
Old 03/18/2011, 19:34   #9
 
spion9613's Avatar
 
elite*gold: 0
Join Date: May 2010
Posts: 534
Received Thanks: 342
Hab einmal ein tut gesehn.Nicht aber genau der gleiche.Deshalb ein thx für die Mühe
spion9613 is offline  
Old 07/19/2011, 04:10   #10
 
elite*gold: 0
Join Date: May 2009
Posts: 4
Received Thanks: 0
hab das auch mall ausgetestet aber beim starten kommt bei mir ein fehler ( ==> Variable used without being declared.:
If IsArray($Pixelsearch) = True Then
If IsArray(^ ERROR
>Exit code: 1 Time: 0.222
) kann mir vllt wer weiter helfen
DarkSanshaa is offline  
Old 07/19/2011, 11:54   #11
 
elite*gold: 0
Join Date: Mar 2011
Posts: 8,645
Received Thanks: 3,454
Quote:
Originally Posted by DarkSanshaa View Post
hab das auch mall ausgetestet aber beim starten kommt bei mir ein fehler ( ==> Variable used without being declared.:
If IsArray($Pixelsearch) = True Then
If IsArray(^ ERROR
>Exit code: 1 Time: 0.222
) kann mir vllt wer weiter helfen
Array.au3 included?
Freddy​ is offline  
Old 01/29/2012, 19:28   #12
 
elite*gold: 0
Join Date: May 2011
Posts: 22
Received Thanks: 1
WTF
wellek1996 is offline  
Old 01/31/2012, 17:54   #13
 
elite*gold: 179
Join Date: May 2010
Posts: 355
Received Thanks: 42
Is that for UK Metin 2 too ?
Everything™ is offline  
Reply


Similar Threads Similar Threads
[GUIDE] Expertenmodus im neuen Angelbot (/neuer Angelbot längere Zeit) by Banjo1
02/09/2010 - Metin2 Guides & Templates - 36 Replies
Hey Leute ich veröffentlich hier mal meinen ersten Guide. Banjo1 hatte im Release seinen neuen Angelbots gesagt jemand könnte einen Guide zum Expertmodus schreiben. Joa hoffe es gefällt euch. Also für den Expertenmodus im Angelbot von banjo1 braucht ihr das AutoIt Pack, das ihr auf der folgenden Seite downloaden könnt. AutoIt v3 - Downloads Jetzt noch installieren und es kann losgehen. Ihr startet den Angelbot und geht beim Startbildschirm auf Expertmodus. Jetzt ist oben im Bot ein...



All times are GMT +2. The time now is 15:28.


Powered by vBulletin®
Copyright ©2000 - 2024, 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 ©2024 elitepvpers All Rights Reserved.