Para Stygier Bot

02/24/2009 14:35 Enders#16
ja das is aucch nen problem von mir.
ka was das ist.
aber erst mal mache ich das way out fertig
sry hoKKKler:D
das mit der check area wusste ich ja gar nicht:)
das is natürlich super:)


thx für die neue hilfe
02/24/2009 14:35 NBA#17
Den hat holker doch schon gepostet!

Das geht 1 a (auf jeden bei mir :D)

naja bin danmal bei freunden (checkliste: Linux [X], Weihrauch[X], Weihwasser[X] ;) )
02/24/2009 15:19 Enders#18
soooo hier wär auch der gute deathcheck:
Code:
Func Deathcheck()
	$PID = WinGetProcess("Guild Wars")
	$hprocess = _MemoryOpen($PID)
	$ReadMemDeath = _MemoryRead(0xa056d4, $hprocess)
	If $ReadMemDeath = 1 Then
		ControlClick("Guild Wars", "", "", "left", 1, 378, 325)
		Sleep(6000)
		WayOut()
	EndIf
	EndFunc
02/24/2009 15:34 NBA#19
OK, machen wir eine Einigung:
Wir arbeiten solange weiter, bis nur der eine Punkt da fehlt.
Dann machen wir das mit geballtem hirn ;)

Naja, ich werd weiter versuchen GW auf linux richtig zum laufen zu kriegen (aber beim desktop, d.h. linux erstmal richtig installieren :) )

Edit: Hab grad das GUI gefunden (bei Freunden, da ich bei denen angefangen habe den bot zu schreiben...) lade es vllt. mal hoch
02/24/2009 20:39 NBA#20
mir ist grad die evtl. offset loesung eingefallen:
Wenn sich die memorypos sich verschieben checken wir die an einem punkt und je nach mempos die richtige moveto

Code:
If $Memposx = bla and $memposy = bli then
...
elseif
...
elseif...
endif
02/24/2009 21:26 Enders#21
hey das is ma was gutes wäe cool wenn du das ma hoch laden könntedst das schau mir das mal an das wäre ja fast die lösung

jtz brauchen wa dann nur noch den perf. lauf weg zur ersten gruppe hintzer den adepten:confused:

edit: und wir müssen dann noch chekken wie sich die werte verändern das dürfte ja , so wie ich gw kenne , recht regelmäßgi sein also zwar nicht imma inna selben reihenfolge abba paar möglichkeiten die sich immer abwechseln
02/24/2009 22:13 NBA#22
bin grad dabei, lad morgen was hoch (wenn ich nicht grade schifahrn bin :) )

hab grad schnell nen tool zusammengebastelt mit der man die aktuelle pos bekommt:

Code:
#cs ----------------------------------------------------------------------------
	
	AutoIt Version: 3.2.12.1
	Author:         myName
	
	Script Function:
	Template AutoIt script.
	
#ce ----------------------------------------------------------------------------
#include "nomadmemory.au3"
; Script Start - Add your code below here

$PID = _MemoryOpen(WinGetProcess("Guild Wars"))

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("PosReader", 287, 111, 193, 125)
$Button1 = GUICtrlCreateButton("Read!", 88, 32, 75, 25, 0)
$input1 = GUICtrlCreateInput("X", 10, 10)
$input2 = GUICtrlCreateInput("Y", 10, 60)
$Button2 = GUICtrlCreateButton("Pause", 88, 82, 75, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


While 1


	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			Do
				$nMsg = GUIGetMsg()
				$readx = _MemoryRead(0xd28c54, $PID) ;halt die Pos-Addr (via wadim)
				$ready = _MemoryRead(0xd28c58, $PID)
				GUICtrlSetData($input1, 'PosX:' & $readx)
				GUICtrlSetData($input2, 'PosY:' & $ready)
				$nMsg = GUIGetMsg()
			Until $nMsg = $Button2

		Case $Button2
			Do
				$nMsg = GUIGetMsg()
				Sleep(5)
				$nMsg = GUIGetMsg()
			Until $nMsg = $Button1


	EndSwitch
WEnd
Das coole ist das es komplett !ohne! hotkeys gänge :) viele bots könnten so leichter zu bedienen sein (ein mit
Case $start
Do
...
Until $nMsg = $beenden or $rounds = $inputrounds
)

Naja egal das kommt später rein..hotkeys wirste dir ja noch selbst dazubasteln können :)
02/25/2009 10:22 Enders#23
neeee das schaffe ich doch nicht:D

thx für das teil werds mir heut nachmittag ma ansehen:D
muss gleich wieda unterrricht_:D
02/25/2009 11:29 NBA#24
Vllt mach ich einfach eins das alle addr. aus der ini ausliest...deathcheck kann man damit auch wunderbar machen :)

Geh halt nach bayern, die muessten ez ferien haben :) (und Bier :D )

edit: yeah YhnB is lvl 100 :D
02/25/2009 15:50 Enders#25
den deathcheack per mem hab ich doch schon gepostet glaub die mem für death bleibt imma gleich

und die tt6 liest schonn alle mems aus;)
02/26/2009 12:02 NBA#26
Ok, hab grad geschaut, die karte scheint sich wirklich ein wenig zu drehen...aber nur ein ganz klein bisschen...irgentwelche vorschläge?

edit: Probs grad mit nem controlsend könnte evtl. funzen

e²: Es scheint die Lösung zu sein:
Code:
	MoveTo(1, 8644, -7853)
	MoveTo(1, 8486, -7996)
	MoveTo(1, 8431, -8045)
	MoveTo(1, 8431, -8045)
	MoveTo(1, 8431, -8045)
	MoveTo(1, 8431, -8045)
	ControlSend("Guild Wars", "", "", "{1}")
	Sleep(50)
	ControlSend("Guild Wars", "", "", "{2}")
	MoveTo(1, 7940, -8551)
	MoveTo(1, 7617, -8796)
	MoveTo(1, 7336, -8963)
	MoveTo(1, 7156, -9048)
	MoveTo(1, 7113, -9079)
	MoveTo(3, 7122, -9081)
;	MoveTo(3, 7117, -9081)
	StopMoveTo()
	;sleep(100)
	ControlSend("Guild Wars","","","{w down}")
	sleep(75)
	ControlSend("Guild Wars","","","{w up}")
Das ist jetzt für P/E, im nm. Bei HM die sleep(100) aktivieren :)
02/26/2009 16:19 NBA#27
.kxf datei oben :) :

[Only registered and activated users can see links. Click Here To Register...] (rechtsklick und auf speichen unter ;) )
02/26/2009 16:34 Enders#28
unser held:D
dein move to is wenn ichs richtig sehe nach annehemn der quest ab den wieder rn laufen right?
02/26/2009 16:36 Enders#29
*doppelpost*
02/26/2009 16:37 Enders#30
Quote:
MoveTo(1, 8431, -8045)
MoveTo(1, 8431, -8045)
MoveTo(1, 8431, -8045)
MoveTo(1, 8431, -8045)
ähm jaaaaa also wie wärs mit LÖSCHEN?:D

so hab ichs bei meinen move toos au imma gemacht damit mann an bestimmten stellen imma weiß wo mann gerade steht? ne?:
D