Farmbot - For 64 Bit OS

02/19/2010 08:54 LoneGunman#136
Jetzt lasst mal diese Kinderkacke hier und hebt das Niveau mal wieder ein wenig.

Back2Topic:
Schmuselord, dein Script (bzw. das originale Script vom Autor) gefällt mir und es ist vor allem anpassungsfähiger.
Hab gelesen, dass mit AutoIt sogar OCR (Texterkennung) möglich ist. Wusstest du das? Hast du das schonmal versucht?
02/19/2010 12:01 schmuselord1#137
ja. hab ich von gehört. wollte ich auch ausprobieren. mach ich heute mal :)

edit: ich hab mal alle buchstaben und zahlen eingescannt. ich werds mal probieren.. zuerst versuch ich für jeden buchstaben mal die pixel zu summieren. vielleicht kann ich ja so was erreichen.
02/19/2010 18:00 Night Dragon#138
Kentucky I don't see how that is spam.

And guys, we need to stop attacking each other right now or this thread will be closed.
02/19/2010 19:07 LoneGunman#139
Schmuselord und alle anderen hier - wie kann man folgendes Problem umgehen?!

- Bot visiert einen Mob an, der volle HP hat und greift an
- man verliert bei diesem einen Kampf soviel HP, dass man mittem im Kampf heilen muss
- "Heilung" erfodert, dass man sich selbst anvisiert
- Bot greift nicht den letzten gegner wieder an, da dieser keine vollen HP mehr hat

Also entweder man kann nur nach jedem Kampf heilen oder man greift auch Mobs mit weniger als 100% HP an (führt zu KillSteal).

Irgendeine Lösung?
02/19/2010 19:13 schmuselord1#140
Quote:
Originally Posted by LoneGunman View Post
Schmuselord und alle anderen hier - wie kann man folgendes Problem umgehen?!

- Bot visiert einen Mob an, der volle HP hat und greift an
- man verliert bei diesem einen Kampf soviel HP, dass man mittem im Kampf heilen muss
- "Heilung" erfodert, dass man sich selbst anvisiert
- Bot greift nicht den letzten gegner wieder an, da dieser keine vollen HP mehr hat

Also entweder man kann nur nach jedem Kampf heilen oder man greift auch Mobs mit weniger als 100% HP an (führt zu KillSteal).

Irgendeine Lösung?
ja. ich hatte das gleiche problem!
ich habs so geregelt: die main-function wurde von mir kopiert und nochmal (mit einem anderen namen - pkon) eingefügt in den quelltext.

und nun folgendes: für rapdheal hab ich eine funktion geschrieben.
in dieser funktion klickt sich der held 1 mal an und zaubert 2 mal rapidheal hintereinander auf sich. wenn das getan ist, geht er in die pkon (kopierte main-function) rein und tötet alle mobs bis er nichts mehr findet. sobald er nichts mehr findet, geht er wieder in die main-function rein und es geht weiter :)
02/19/2010 19:34 Gertos#141
Du kannst z.B. die Kammera nach ganz oben (Draufsicht) un ganz nah an den Character stellen. Dann hast du eine große Chance genau den gleichen Mob wieder zu finden.
02/19/2010 19:35 LoneGunman#142
Der "Berserker-Modus" vom Schmuselmonster klingt interessant ^^
02/19/2010 19:56 schmuselord1#143
^^

gibts eigentlich nen mathematischen weg die pixel anzugleichen, wenn man zb auf ner anderen auflösung spielen will? ist naemlich scheiße, wenn man alles für jede auflösung machen müsste :/
02/20/2010 21:44 zhavo#144
Hello! i finally was able to run the script. Can anyone make me a scrips for R6 BS ?? plz help.
02/20/2010 21:46 LoneGunman#145
Quote:
Originally Posted by schmuselord1 View Post
^^

gibts eigentlich nen mathematischen weg die pixel anzugleichen, wenn man zb auf ner anderen auflösung spielen will? ist naemlich scheiße, wenn man alles für jede auflösung machen müsste :/
Hab es versucht, da ich nur mit 1440x900 als höchsten Spielen kann - musste jeden Pixel einzeln suchen.

Aber mal was anderes für dich - lad dir mal folgende Datei runter und teste mal (OCR mit AutoIt) - eventuell kannst du ja daraus was ganz nettes basteln.

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

Ach ja, die Bilddatei muss im gleichen Ordner liegen und das Programm als Admin ausführen.
02/20/2010 22:11 Tuor#146
Quote:
Originally Posted by schmuselord1 View Post
^^

gibts eigentlich nen mathematischen weg die pixel anzugleichen, wenn man zb auf ner anderen auflösung spielen will? ist naemlich scheiße, wenn man alles für jede auflösung machen müsste :/


es würde funktinieren, zb am ende der lebensleiste vom mob, also der letzte pixel bevor er tot is liegt immer 536 pixel vom rechten Rand entfernt, das heißt das bei 1024 x 768 der letzte pixel dann bei 1024-536 = 488 pixel liegt, bei 1600 x 900 (bei mir vollbild) liegt er dann bei 1600-536 = 1064 usw.


also ich weiß nicht was der bot alles mit pixel auslesen macht aber die eigenen hp/mp leisten und die hp vom mob könnte man damit bei jeder beliebigen auflösung auslesen lassen.

Ich habs noch nicht ausprobiert, aber hab mit screens im paint verglichen und da hat des eig immer passt ;)
02/20/2010 22:41 schmuselord1#147
danke für das OCR script. werde es mal ausprobieren.

und @ tuor: ja, bei zb character health und gegnerisches mobhealth geht das. aber die skilleiste zb ist willkürlich eingerückt :/

aber danke für die hilfe. hat mir auf jeden fall eine weitere perspektive geliefert
02/21/2010 00:10 LoneGunman#148
Quote:
Originally Posted by schmuselord1 View Post
ja. ich hatte das gleiche problem!
ich habs so geregelt: die main-function wurde von mir kopiert und nochmal (mit einem anderen namen - pkon) eingefügt in den quelltext.

und nun folgendes: für rapdheal hab ich eine funktion geschrieben.
in dieser funktion klickt sich der held 1 mal an und zaubert 2 mal rapidheal hintereinander auf sich. wenn das getan ist, geht er in die pkon (kopierte main-function) rein und tötet alle mobs bis er nichts mehr findet. sobald er nichts mehr findet, geht er wieder in die main-function rein und es geht weiter :)
War grad mit dem Hund Gassi und da fiel mir noch eine Lösung ein :)

Also außerhalb des Kampfes ist ja alles klar ... man visiert sich selbst an, wirkt Heilung und tabbed dann zum nächsten Gegner.

Falls man aber im Kampf ist, macht man folgendes...
Code:
Func Heilung_im_Kampf()
  Send("{3}") ; Kraft-Chip auf den Mob
  visert_sich_selbst_an_und_wirkt_heilung ;normaler Ablauf der Heilung wie außerhalb des Kampfes
  While Mob_hat_keine_vollen_HP und Mob_hat_Kraft-Chip_auf_sich
    Send("{TAB}")
    readcolor() ; Farben auslesen von Mob_volle_HP und Mob_ist_gechipped
    Sleep( 250 )
  Wend
EndFunc
Das ganze sollte innerhalb der 10 Sekunden Wirkzeit des Kraftchips eigentlich abgeschlossen sein und man muss nicht alle Mobs killen, bis der Bot wieder "normal" läuft.

Einziges Problem wäre hier wieder, dass man zufällig einen Mob erwischt, wo gerade ein Kraft-Chip wirkt, der keine vollen HP hat und doch ein anderer Spieler auf ihn eindrischt. Aber diese Wahrscheinlichkeit sollte verschwindent gering sein.
Und wenn das mit der Texterkennung klappt, kann man das auch noch mit einbauen, dass man auch solange tabbed, bis der anvisierte Mob ...

1. keine vollen HP hat
2. auf den Mob ein Chip wirkt
3. der Mob das gleiche Level hat, wie der Mob vor der Heilung
4. der Mob den gleichen Namen hat, wie vor der Heilung

War nur so eine Idee, aber ich denke, das könnte gut klappen.

MfG
LoneGunman
02/21/2010 01:49 schmuselord1#149
aber was machste, wenn der mob stirbt, während du dich heilst? zb durch dein pet.

deswegen switch ich bei mir einfach zwischen pkoff (main funktion) und pkon (kopie von main, mit killsteal :P)
02/21/2010 08:28 LoneGunman#150
Dann sucht er ja vergeblich - aber da das Ganze sowiesso nur 10 Sekunden dauern dürfte (wegen der Wirkungsdauer der KraftChips), kann man der Function auch sagen, dass sie nach 10 Sekunden zum "normalen" Bot übergehen soll.

Achja, hat das mit dem Script geklappt?