Automatischer Billardbot - Hilfe bitte. :D

09/24/2012 18:15 Ridgeback♥#1
Hallo :)

Ich habe mir gedacht, dass ich jetzt versuchen möchte, einen halbautomatischen Billardbot zu erstellen, doch da ich ein totaler neuling bin, bräuchte ich eure Hilfe ...

Ich habe mir Gedanken gemacht, wie das ganze laufen sollte .. Unzwar:

Ich werde ein ''Fenster'' (dank Koda) erstellen, indem immer die ''Weiße'' Kugel als Kugel 1 gesucht wird durch Imagesearch. Kugel 2 wird dann Kugel 1-13 sein, die dann auch durch Imagesearch gesucht werden. Der dritte ''Zielpunkt'' soll bestimmt werden, dadurch, dass man z.B. mit der Maus zu dem Punkt geht, z.B. auf ''0'' der zehnertastatur drückt und dann in dem ''Hauptfenster'' auf ''Zielpunkt'', damit die Koordinaten gespeichert werden. So, fast fertig, jetzt soll durch einen Klick auf den Button ''Los geht's!'' der Weg, bzw. der perfekte Anspielwinkel berechnet werden und die Maus sofort zu dieser Koordinate befördert werden.

Ich habe Probleme:
1) Ich weiß nicht, wie man Imagesearch richtig einbaut, denn bei mir liegen die Dateien, die man angeblich dafür braucht, einfach in dem Ordner rum und werden nicht, wie z.B. bei der Musik automatisch ordentlich darein getan
2) Ich weiß nicht, wie man das macht, dass beim Druck auf ''0'' der zehnertastatur die Koordinate der Maus gespeichert wird.
3) Ich weiß nicht, wie man Sinus Kosinus und Tangens in AutoIT verwendet.
4) Ich weiß nicht, wie man das hinbekommt, dass die Maus dann automatisch zum ''Anspielwinkel'' switcht (Kann ich mir aber vielleicht denken, dass durch Sinus|Kosinus|Tangens eine koordinate ausgespuckt wird und dann einfach Mousemove (XXXX))

natürlich weiß ich, dass ihr mir das alles nicht machen könnt, natürlich will ich das auch gar nicht! Es wäre nur schön vielleicht gut erklärende Seiten zu bekommen, oder vielleicht eine private Erklärung oder derartiges.

Ich danke euch schonmal im Vorraus :)

Greetzy Ridgeback♥
09/24/2012 19:56 omer36#2
als "totaler neuling" gleich sowas zu versuchen ist nicht sehr schlau oder?

nja, im anhang ist ne datei vom user 0racle.
([Only registered and activated users can see links. Click Here To Register...])

ist zwar n beispiel für c++, aber kein wirklicher c&p code.
wird eig gut erklärt, was mann machen muss..

vllt. hilfts ja...

1.
imagesearch.au3 und .dll im selben verzeichnis wie dein script kopieren
dann sollte es eig. klappen... (imagesearch klappt bei mir nur selten, manchma muss ich das scirpt vorher kompilieren)

dann halt z. b. so nach deinem bild suchen...
PHP Code:
;wenn 64bit
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
;

#include <imagesearch.au3>


$x1=0
$y1
=0

$result 
_ImageSearch("bild.png",1,$x1,$y1,0)
if 
$result=1 Then
    MsgBox
("","Info","Bild gefunden!","2")
    
Sleep(200)
    
MouseMove($x1,$y1)
Else
    
MsgBox("","Fehler","Bild nicht gefunden!","2")
EndIf 

2.
kannst hotkeyset oder _ispressed benutzen...
einfach in der hilfe nachschauen, stehen genug beispiele drin..

PHP Code:
#include <Misc.au3>

Local $pos

While 1
    
If _IsPressed(60Then
        $pos 
MouseGetPos()
        
MsgBox("","posi""x: " $pos[0] & @CR "y: " $pos[1])
    EndIf
WEnd 
3.

sin()
cos()
tan()

einfach im editor markieren und f1 drücken, das bischen durchlesen und unten dir die beispiele anschauen..

4.

in der pfd kannst du sehen, wie du den verlauf des balls berechnen kannst ect.
dadurch sollte es dir gelingen, dass er automatisch zielt ect...


hf & gl
09/24/2012 20:06 Achat#3
Vllt hilft dir ja das:

PHP Code:
_ImgClick(@ScriptDir '\beispiel.png')

Func _ImgClick($sIMGPath$fClick True$iClicks 1)
    
$iReturn _ImageSearch($sIMGPath1$x1$y120)
    If 
$iReturn And $fClick Then
        MouseClick
('left'$x1$y1$iClicks)
    EndIf
    Return 
$iReturn
EndFunc   
;==>_ImgClick 
MfG

PS: Ist nicht sehr ratsam, sowas gleich am Anfang zu machen.
09/25/2012 19:59 Ridgeback♥#4
_ImgClick? Was ist das denn für eine Funktion?

Ja, ich weiß, dass es nicht sehr ratsam ist, aber so etwas gibt es noch nicht und ich würde es gerne besitzen, von daher bleibt mir ja nichts anderes übrig als selbst rumpfuschen :D
09/25/2012 20:12 H@CT0R#5
Quote:
Originally Posted by Ridgeback♥ View Post
_ImgClick? Was ist das denn für eine Funktion?

Ja, ich weiß, dass es nicht sehr ratsam ist, aber so etwas gibt es noch nicht und ich würde es gerne besitzen, von daher bleibt mir ja nichts anderes übrig als selbst rumpfuschen :D
:facepalm:

Quote:
_ImgClick(@ScriptDir & '\beispiel.png')

Func _ImgClick($sIMGPath, $fClick = True, $iClicks = 1)
$iReturn = _ImageSearch($sIMGPath, 1, $x1, $y1, 20)
If $iReturn = 1 And $fClick Then
MouseClick('left', $x1, $y1, $iClicks)
EndIf
Return $iReturn
EndFunc ;==>_ImgClick
die funktion wird da erstellt...-.-
ganz ehrlich? wenn du selbst das nciht erkennst, solltest du dich erstmal durch einige anfägner tutorials arbeiten...