Pixelbot Problem

  • hallo,

    ich habe mich nun einigezeit mit AutoIt beschäftigt und hatte vor einen pixelbot zu schreiben.
    so nun mein problem ist das es zu einem error kommt beim ausführen undzwar dem hier

    Code
    Line 5
    
    
    MouseClick ("left", $pos[0], $pos[1])
    MouseClick ("left", $pos^ ERROR
    
    
    Error: Subscript used with non-Array variable
    was muss ich ändern damit es funktioniert?

    also wenn mir jemand sagen könnte was ich machen bzw am script ändern muss wäre ich sehr dankbar.

    das script

  • Also wie es aussieht ist die Variable kein Array mehr,
    was dazu führt ist mir gerade nicht klar, aber was du gegen das Crashen machen könntest, so dass es bei einem mal nicht Funktioniert aber beim nächsten mal vielleicht schon ohne das es gleich Crasht.

    Da AutoIT die Funktionen Try & Catch nicht unterstützt, kannst du eine If Abfrage benutzen, die tuhts auch.

    Also der Fragt erst mal ab ob $pos ein Array ist und wenn Ja dann speichert er erstmal die Daten in die Variablen "$x" und "$y" so dass auch kein Problem auftreten kann wenn das Array gelöscht wurde.
    Und wenn du dann mit dem Task-Manager dein Programm beendest geht es auch aus.
    Da der Task-Manager Dem Programm die Nachricht "-3" auch bekannt als "$GUI_EVENT_CLOSE" sendet. Es sei denn du beendest direkt den Prozess.

    gez :: *electriZer*

  • erstmal danke für deine hilfe jetzt kommt keine fehlermeldung mehr...
    nur bewegt sich die maus nicht
    kann es iwie sein das der game guard die maus bewegung blockt oder den Pixelsearch?


    lg

  • Das ist hier aber nicht der Fall(aber es könnte trotzdem sein das der GG irgend etwas blockiert)

    Also deine $pos ist kein Array weil er nämlich den Pixel nicht findet, und wenn er den Pixel nicht findet wird auch kein Array zurückgegeben und somit wird bei der "isArray()" abfrage "false" bzw ein Fehler zurück gegeben und Die If Abfrage ist dann Negativ.
    Und das heißt dann, dass die Maus nicht bewegt wird.

    Also überprüfe deine gesuchte Farbe, ist das von einem Mob?
    Wenn ja dann solltest du überprüfen wie du den Pixel aufgenommen hast, denn da FlyFF ein 3D Game ist, wird auch alles möglichst realistisch dargestellt. Und das heißt, dass es Schattierungen gibt und auch hellere Stellen, also ist dein PixelSearch nur erfolgreich wenn das Objekt genau in der Position steht, wie in der als du den RGB Wert des Pixels rausgesucht hast.

    Nehme am Besten die Füße, da diese wegen dem Objekt Schatten von FlyFF am Dunkelsten sind und somit fast immer gleich sind.
    Aber es sollte auch nix schwarzes sein sondern auch etwas von der Farbe des Objektes enthalten damit Pixel Search nichts falsches findet.

    [COLOR="DarkOrange"]gez :: *electriZer*[/COLOR]

  • jo die gesuchte farbe ist von einem mob
    um genau zu sein vonn einen aibatt um zu testen ob das funktioniert, weil die ja kommplett so blau sind^^
    es passiert auch nichts wenn ich so nah wie möglich an ein aibatt ranzoome...

  • Wie hast du denn überhaupt den Farbwert herausgefunden?
    Starte das Spiel und dann das AutoIT Info Tool und dann guck ob sich de Farbwerte verändern.

    Oder noch besser, geh bei uns in den AutoIT PServer Bereich und dort ob du die Texturen findest (die Originalen).
    Dann hole von diesen die Farbwerte.

  • also den farbwert hab ich von einem screen mit der AutoIt window info rausbekommen...
    wenn ich damit auf das spiel fenster geh steht da nur was von D3D-fenster und keine farbe undso...
    kann es auch daran liegen das man mit dem pixelsearch keine farben in einem D3D-fenster finden kann?

  • Nein,Nein,
    das "D3D-Fenster" das ist das 3D-Element des Spiels.
    Das Info Tool konzentriert sich dabei darauf, anstatt auf den Pixel.

    Hier musst jetzt Selber ein Tool Programmieren.
    Hab jetzt ein kleines Beispiel als Basis :

    >>[Source] PixGet v1.0<<

  • also ich habs mal mit deinen "PixGet v1.0" geguckt der zeigt auch keine farben an nur 0x000000...
    ich hab auch bissl im inet gesucht und in einem forum hat einer geschrieben das man solche pixelbots nur in spielen ohne solche sicherheitssysteme benutzten kann wie den gameguard...
    also wird wahrscheinlich nichts :TT TT:

  • das stimmt...
    gab ja früher den automaton der auch eig alles konnte nur is der jetzt gefixxt...
    der lief soweit ich weiß mit packets

    aba was mich jetzt wundert ist es gibt ja das fTool mit einem collector bot, da bewegt sich die maus ja auch auf dem fenster zu den "knöpfen"...
    braucht man da dann vllt diese funktions.dll da das sich die maus bewegt?

  • naja bis ich aber soweit bin mit dlls zu arbeiten hätt ich meinen char selbst auf hero gelvlt :grin:

    aber hätt mal eine neue frage
    undzwar ist es möglich mit autoit packets zu senden?
    und kann das von den gms schnell entdeckt werden?

  • Packets = Pakete?
    Also du willst mit AutoIT ein Paket senden, über DHL?
    Ne,
    ich glaube du meinst so etwas was ein PServer macht.
    Ich hab ja das APSP gemacht, und ich hab auch schon so eine Art Fake Neuz erstellt, die dann die nötigen Paekets an iwelche Server sendet.
    Dazu brauchst du erst mal die Packet Strukturen und eine UDF dazu wie du alles verschlüsselst. Das bekommst du auf dem APSP SVN (keine Ahnung ob der noch steht)
    Das ist kein Kinderspiel,
    du müsstest für die Offiziellen Server nochmal den GameGuard imitieren.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!