Tutorial Fiesta Bot mit Autoit erstellen

04/04/2013 16:13 pachen123321#1
Hallo zusammen ^^

Ich werde hier mal ein Tutorial für Fiesta Online Bots erstellen.
Im ersten Teil werden wir die erforderlichen Programme installieren.
In den folgenden Teilen werden wir ihn dann um weitere Funktionen erweitern.
(Healbot,Sammelfunktion, Autoskill, 1Hit Öffnen ( Erz,Blumen,Kräuter,Holz,Kisten (hehehe Male 1Hit Kisten öffnen), Autokampf, ....)

1) Programme die wir brauchen:
a) Cheat Engine - [Only registered and activated users can see links. Click Here To Register...]
b) AutoIt – [Only registered and activated users can see links. Click Here To Register...]
c) Editor - [Only registered and activated users can see links. Click Here To Register...]

Diese 3 Programme einfach installieren und dann kanns auch schon losgehen :)

Als 1. installieren wir Cheat Engine

[Only registered and activated users can see links. Click Here To Register...]
Laufwerk und Verzeichnis auswählen und auf "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Menüeintrag auswählen und auf "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Willst du ein Desktop Icon anlegen?


[Only registered and activated users can see links. Click Here To Register...]
Wenn ihr das Game nicht wollt auf "Ich akzeptiere nicht" klicken!


[Only registered and activated users can see links. Click Here To Register...]
Nun noch auf "Install" klicken


[Only registered and activated users can see links. Click Here To Register...]
Einmal auf "Next".


[Only registered and activated users can see links. Click Here To Register...]
Ein letzter Klick und Cheat Engine ist installiert :)




2 ) AutoIt installieren

[Only registered and activated users can see links. Click Here To Register...]
Einfach auf "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Auf "I Agree" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Die Version auswählen und auf "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
"Edit the Script" wählen und "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Auswählen und "Next" klicken.


[Only registered and activated users can see links. Click Here To Register...]
Install Ordner eingeben und "Install" klicken.


[Only registered and activated users can see links. Click Here To Register...]
"Finish" klicken und Autoit ist installiert.



Nun die letzte Installation... der Editor!

[Only registered and activated users can see links. Click Here To Register...]
"Next" klicken


[Only registered and activated users can see links. Click Here To Register...]
Durchlesen und "I Agree" klicken


[Only registered and activated users can see links. Click Here To Register...]
"Finish" anklicken und fertig :)



Nachdem wir alles was wir brauchen installiert haben beginnen wir die Adressen unserer HP/SP in Fiesta zu ermitteln.


Wir starten Fiesta und loggen einen Char ein, danach starten wir CE und klicken
[Only registered and activated users can see links. Click Here To Register...]
auf das blinkende Computersymbol.


Danach suchen wir die Fiesta.bin, klicken diese an und wählen dann Open aus.
[Only registered and activated users can see links. Click Here To Register...]


Wir schauen danach dann mal wieviel HP unser Char bei Fiesta hat.
[Only registered and activated users can see links. Click Here To Register...]
OK, 52 HP.


Wir wechseln dann wieder zu CE und geben dann 52 bei der Suche ein
[Only registered and activated users can see links. Click Here To Register...]
und klicken auf First Scan.


[Only registered and activated users can see links. Click Here To Register...]
Und bekommen dann in etwa so eine Anzeige. Wir haben so 6123 Treffen, also eindeutig zu viele.


Wir wechseln nun wieder zu Fiesta und gehen zu Monstern und kämpfen ein wenig um unsere HP zu veringern. (Nicht heilen, wir brauchen einen kleineren Wert)
[Only registered and activated users can see links. Click Here To Register...]


Diesen Wert übertragen wir dann wieder in die CE und klicken dann auf Next Scan.
[Only registered and activated users can see links. Click Here To Register...]
So sieht die Sache schon besser aus. Nur noch 4 Adressen Übrig.
Die Adresse die wir hier brauchen ist die grüne.

Speicheradresse für unsere HP = 008DD748. (Er kann sich bei jedem Patch ändern)

Das ist der Wert den wir später für unseren Bot brauchen.

Um unsere SP zu ermitteln gehen wir ähnlich vor.
Wir loggen einen Char in Fiesta ein und starten Cheat Engine, klicken auf das blinkende Computersymbol und wählen die Fiesta.bin aus.

Wir schauen in Fiesta wieviel SP unser Char hat und tragen den Wert in Cheat Engine ein und klicken auf First Scan.
Dann wechseln wir wieder zu Fiesta und benutzen einen Skill, merken uns unsere momentan SP und tragen die in Cheat Engine ein.
Nun klicken wir Next Scan.
Nun sollten sicher die Möglichkeiten reduziert haben.
Wenn es zu viele Möglichkeiten gibt wiederholen wir den Vorgang ab dem Skill benutzen bis wir die Mögliche SP Adresse haben.



Im 2. Teil des Tutorials werden wir einen einfachen Healbot entwerfen.

Teil II

Nun geht es um den eigentlichen Bot.
Ihr könnt den Sourcecode hier bekommen:
[Only registered and activated users can see links. Click Here To Register...]


[Only registered and activated users can see links. Click Here To Register...]


1 – 6 Automatisch erstellt
8 Hotkey zum Starten des Bots
9 Hotkey zum Pausieren
10 Hotkey zum Beenden des Bots
12 Hier müsst ihr die Adresse eingeben die ihr mit CE ermittelt habt – SP
13 Hier müsst ihr die Adresse eingeben die ihr mit CE ermittelt habt – HP
15 Hier eingeben bei wieviel HP ein HP-Stein genommen werden soll
16 Hier eingeben mit welcher Taste ein HP-Stein genommen wird
18 Hier eingeben bei wieviel SP ein SP-Stein genommen werden soll
19 Hier eingeben mit welcher Taste ein SP-Stein genommen wird

21 Variable für die Mainschleife
22 Name um den passenenden Process zu ermitteln
23 Process öffnen

25 Mainschleife start
26 1 mS warten
27 zum Schleifenstart

29 Function Start beginnt hier
30 Schauen ob das Fiesta-Fenster im Vordergrund ist
31 Wenn nicht, dann in den Vordergrund holen
32 Warten bis Fiesta im Vordergrund ist

34 Schleifenstart
35 Speicher öffnen um mit der von CE ermitttelten Adresse die momentane HP zu ermitteln
36 HP-Wert lesen
37 Speicher schließen
38 Vergleichen ob die momentanen HP weniger sind als die Eingestellten
39 Falls ja, Taste für HP-Stein drücken
40 Wenn nicht, dann hier weiter

42 Speicher öffnen um mit der von CE ermitttelten Adresse die momentane SP zu ermitteln
43 SP-Wert lesen
44 Speicher schließen
45 Vergleichen ob die momentanen SP weniger sind als die eingestellten
46 Falls ja, Taste für SP-Stein drücken
47 Wenn nicht, dann hier weiter
48 Schleifenende ( zurück zur Zeile 34 )
49 Funktionsende

51 Function Pause beginnt hier
52 Schleife start
53 1 ms warten
54 Schleife Ende
54 Functionsende

57 Function Ende beginnt hier
58 Programm verlassen
59 Functionsende

Zeile 60 – 188 sind eigentlich in der nomadmemory.au3
damit man sich diese nicht extra besorgen muss, habe ich den code angehangen.

Die AU3 Datei kann durch Doppelklick geöffnet werden.
Wenn ihr diesen Code eingegeben habt könnt ihr den Code zu einer Exe machen.
Klickt auf Tools und dann auf Compile.
In dem nächsten Fenster sollte dann bei Output type EXE angewählt werden
Danach auf Compile Script klicken.
Wenn ihr keine Fehler gemacht habt erstellt euch Autoit nun eine startbare EXE.

Zum testen der Exe müsst ihr Fiesta starten, dann den Bot starten und F9 drücken
der Bot sollte dann automatisch Fiesta in den Vordergrund holen.
Geht nun mal zu den Monstern und lasst euch verprügeln :P
Wenn alles richtig gemacht wurde sollte bei dem von euch eingestellten Wert die HP-Stein Taste gedrückt werden

Um die Mana Funktion zu testen einfach Skills nutzen bis die SP unnter den eingestellten wert kommen und dann automatisch die Taste für SP-Steine gedrückt werden.


Im nächsten Teil werden wir dann noch eine Ini erzeugen in die die Werte eingetragen werden können. So müssen die Änderungen nur noch in der Ini erfolgen wenn Gamigo wieder Fiesta patcht.
Es kann also passieren das man nach jedem Patch die HP/SP Werte auslesen muss, was aber an sich Sekundensache ist ^^

wir lesen uns in Teil 3 des Bots,
dort werden wir dann unter anderem eine Sammelfunktion hinzufügen
04/05/2013 19:01 pachen123321#2
Healbot mit Sammelfunktion

Viel hat sich nicht geändert zu Teil II.

Folgendes ist dazu gekommen:

.
.
48 Sammeln () ; Items aufheben
.
.
.
62 Func Sammeln ()
63 Send ( "0" ) ; Hier die Taste für das Aufsammeln eingeben
64 EndFunc

Der Bot kann mit "ALT E" beendet werden.

Den passenenden Code könnt ihr hier bekommen:

[Only registered and activated users can see links. Click Here To Register...]

Was in den nächsten Teil kommt, muss ich mir noch überlegen
04/05/2013 22:36 Ben130397#3
schönes tutorial aber ich würde die leute selber scirpten lassen sonst leechen die kleinen kiddys noch xdd ich lass dir mal ein thanks da bevor das keiner macht ;)
04/05/2013 23:25 dragonhunter09#4
ob sie nun ein au3 script leechen und nutzen oder deinen bot als exe, macht keinen großen unterschied.
04/06/2013 13:34 pachen123321#5
ist doch spassig ^^ wenn dann auf allen servern bots auftauchen ^^

ich werde hier noch autokampf . male kistenoffnungsbot usw machen :)

gruss
04/06/2013 15:27 God™#6
Quote:
Originally Posted by pachen123321 View Post
ist doch spassig ^^ wenn dann auf allen servern bots auftauchen ^^

ich werde hier noch autokampf . male kistenoffnungsbot usw machen :)

gruss
Nope, genauso bescheiden wie Bugusing.
04/06/2013 16:09 dragonhunter09#7
Für alle die denken sie werden auf ewig weiter die kistenansicht buggen können muss ich euch leider entteuschen.


Hier mal n kleiner ausschnitt von meinem male hard, mal hoffen gamigo wird dies in ähnlicher form bald umsetzen.

Quote:
Originally Posted by BH_Cracker.ps
wer sich bischen auskennt weiss was dies bringt und wie ihr in zukunft das aussehen manipuliern wollt bei ein und der selben MobInx möcht ich gern sehn ;)


Edit: mit nicht all zu viel aufwand lässt sich dies für sämtliche andere Kisten wo es nach "zufall" geht abändern (wie zB.: Kristallschloss, PvPKQ, einige KQs, HardRaids ect.)
04/06/2013 16:17 pachen123321#8
bei dem öffnungsbot geht darum, die kisten im vorbeilaufen zu öffnen und per samelbot die sachen aufzuheben.
es ist doch bestimmt schon einigen aufgefallen, das manche im vorbeigehen die kisten öffnen ^^ wenn mann so einen bot der öffentlichlichkeit zugänglich macht verteilten sich die chancen auf einen drop wieder gleichmässig.
das manipulieren der grafiken macht man nun am besten in dem man im laufendem spiel die daten editiert. es finden nach dem die shn, .... geladen wurden keine prüfungen im speicher statt ^^

gruss
04/06/2013 16:26 MacomM#9
wie möchtest du es den realisieren eine kiste im vorbeilaufen zu öffnen ? du musst doch min. stehen bleiben um sie zu öffnen bzw. solange stehen bleiben bis der grüne den roten balken erreicht hat ... oder meinst du mit "im vorbeigehen" in einer relativ kurzen zeit öffnen ?
04/06/2013 17:15 pachen123321#10
relativ kurze zeit, also eine 1hit öffnung. da schafft man schon paar kisten mehr in der zeit
05/12/2013 01:50 Boostachu#11
wirst du dies hier weiterführen??
05/12/2013 04:11 Saytos#12
Quote:
Originally Posted by pachen123321 View Post
[Only registered and activated users can see links. Click Here To Register...]
Wow, 57 Zeilen. Du hast den Bot mega umständlich gechrieben.
Ich hab mir das mal angeschaut und auf 15 Zeilen Code umgeschrieben.
Selbe Funktionen und man muss nicht immer nach dem Patch die Werte ändern:
Code:
#include <Misc.au3>
$dll = DllOpen("user32.dll")
Do
   Sleep(1)
Until _IsPressed("78", $dll)
Do
$hpstein = PixelSearch(232, 38, 233, 53, 4328456, 5)
$manastein = PixelSearch(232, 70, 233, 401, 529474, 5)
If IsArray($hpstein) Then
   Send("q")
EndIf
If IsArray($manastein) Then
   Send("e")
EndIf
Until _IsPressed("79", $dll)
Man kann bei _IsPressed auch Variablen einfügen und vor dem start mit einer Inputbox abfragen, ich ziehe _IsPressed in der Regel dem HotkeySet Befehl vor. Die Pixel Abfragen sind für 1920x1080, sollte inwischen aber eh jeder haben, ansonten ließe sich das auch per @DesktopWidth/High schnell abfragen. Ich hoffe ich konnte dir etwas helfen.
05/12/2013 10:44 pachen123321#13
wenn du den code haben möchtest kannst du ja anfragen.
wenn du mit deinem nicht weiter kommst kannst du auch fragen, dann wird dir sicher hier geholfen


du kannst ja einfach hier weiter machen und alle an deinem wissen teilhaben lassen.
das war mal als einführung gedacht
:P

gruss
05/12/2013 10:45 Boostachu#14
wie sits aus,mit einem bot,der nur automatisch angreift,hp und sp stein drückt,kamera dreht,das gleiche macht? (autohit würde reichen)
05/12/2013 10:56 pachen123321#15
der von benny macht das doch, glaube ich :)