Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Guild Wars > GW Bots
You last visited: Today at 12:19

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Tutorial] Memory Handeling in Guild Wars {Au3}

Discussion on [Tutorial] Memory Handeling in Guild Wars {Au3} within the GW Bots forum part of the Guild Wars category.

Reply
 
Old 01/08/2010, 16:49   #46
 
elite*gold: 0
Join Date: Apr 2008
Posts: 362
Received Thanks: 353
Quote:
Originally Posted by mcshell19 View Post
Hello.
Since im not fluent in german, i would like to know if there is a guide like this in english, or if somebody could explain me in lite version, how to change it, becouse of the today update.
Ty
Today's update was all about GWCA not mems.

Ok, mems changed, too, like in every update, but that's not the point, i guess.
Garry goes Sheep is offline  
Old 01/08/2010, 18:07   #47
 
elite*gold: 0
Join Date: Jan 2010
Posts: 11
Received Thanks: 0
So whats the situation then?
Can GWCA still be used,will it be updated, or is the end of botting.?
mcshell19 is offline  
Old 01/08/2010, 18:47   #48
 
elite*gold: 0
Join Date: Apr 2008
Posts: 362
Received Thanks: 353
Go to the Bot Section of this board. there you will find a "dll injector"
Garry goes Sheep is offline  
Old 01/08/2010, 20:18   #49


 
buFFy!'s Avatar
 
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
buFFy! is offline  
Old 01/08/2010, 21:22   #50
 
elite*gold: 0
Join Date: Apr 2008
Posts: 362
Received Thanks: 353
Quote:
Originally Posted by u-coRe View Post
Pfff...können sich doch wenigstens selbst durchs Forum klicken:P
Garry goes Sheep is offline  
Old 01/09/2010, 22:47   #51
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Werbung ist immer gut!
PenGuin :O is offline  
Old 02/05/2010, 19:06   #52
 
elite*gold: 0
Join Date: Sep 2009
Posts: 51
Received Thanks: 8
hallo, ich hab des problem, dass bei mir immer eine errormeldung das skript beendet

Hier des Skript:
PHP Code:
#cs ----------------------------------------------------------------------------

 
AutoIt Version3.3.0.0
 Author
:        Saladino

 Script 
Function:
    
Template AutoIt script.

#ce ----------------------------------------------------------------------------

Script Start Add your code below here

#include <NoMadMemory.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1"633447192124)
$Button1 GUICtrlCreateButton("Punkte auf wert setzen"40032019349$WS_GROUP)
$Button2 GUICtrlCreateButton("Zeit auf wert setzen"18432018749$WS_GROUP)
$Input1 GUICtrlCreateInput("Input1"2487223321)
$Input2 GUICtrlCreateInput("Input2"24810423321)
$Label1 GUICtrlCreateLabel("Punkte"1127213217)
$Label2 GUICtrlCreateLabel("Zeit"11210413217)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
        Case 
$Button1
            Write1
()
        Case 
$Button2
            Write2
()
    EndSwitch
WEnd

$PID 
WinGetProcess("Solitär")
$hprocess _MemoryOpen($PID)

$read1 GUICtrlRead $Input1 )
$read2 GUICtrlRead $Input2 )

Func Write1()
_MemoryWrite(0x000AB0B8$hprocess$read1)
EndFunc 
Und hier die meldung:
C:\...\Neu AutoIt v3 Script.au3 (48) : ==> Variable used without being declared.:
_MemoryWrite(0x000AB0B8, $hprocess, $read1)
_MemoryWrite(0x000AB0B8, ^ ERROR

kann mir da wer helfen?
eXcalibur93 is offline  
Old 02/05/2010, 23:49   #53
 
NBA's Avatar
 
elite*gold: 0
Join Date: Apr 2008
Posts: 1,874
Received Thanks: 213
Das ist ueberaus seltsam. Leider habe ich zZ. kein Windows System zur Verfuegung, weshalb ich dir nicht helfen kann.
Der Code sieht jedoch legetim aus, das verwundert mich ein bisschen.
Es scheint an $read1 oder $hprocess zu liegen, wobei ich mir nicht sicher bin.
NBA is offline  
Old 02/06/2010, 08:47   #54
 
elite*gold: 100
Join Date: Oct 2007
Posts: 738
Received Thanks: 485
Probiers mal mit nem
Code:
Dim
vor
Code:
$hprocess = _MemoryOpen($PID)
und
Code:
$read1 = GUICtrlRead ( $Input1 )
ddl is offline  
Thanks
1 User
Old 02/06/2010, 11:16   #55


 
buFFy!'s Avatar
 
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
Du verwendest Local definitierte Variablen aus dem Globalen Scope im Localen Scope einer Funktion. Deshalb kann der Interpreter nicht auf hProcess und read1 zugreifen. wie ddl sagte kannst du das mit Dim (falls die Variable noch nicht globalisiert ist, ist sie es jetzt ) oder mit Global (WHATVER, GLOBAL THAT ****! ) beheben.
buFFy! is offline  
Thanks
2 Users
Old 02/06/2010, 13:38   #56
 
NBA's Avatar
 
elite*gold: 0
Join Date: Apr 2008
Posts: 1,874
Received Thanks: 213
*Kopf auf dem Tisch hau*

Darauf haette ich auch kommen muessen...
Als was wird ne "normale" ($bLub = "blablabla") variable von autoit angesehen?
NBA is offline  
Old 02/06/2010, 23:25   #57


 
buFFy!'s Avatar
 
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
Quote:
Originally Posted by NBA View Post
*Kopf auf dem Tisch hau*

Darauf haette ich auch kommen muessen...
Als was wird ne "normale" ($bLub = "blablabla") variable von autoit angesehen?
Kommt ganz drauf an wo sie steht.

Als aller erstes mal, ich kann das Script vom TE ohne Error trotz übereinstimmung der au3 Version tadellos ausführen, nachdem ich bei Case Button2 die undefinierte Funktion Write2() entfernt habe.

Führ mal das aus:
Code:
$x = "Global"

Func declareVar()
	$y = "Local"
EndFunc

MsgBox(0x40, "", $x & @CRLF & $y)
Auf x (Global) kann zugegriffen werden, auf y (Lokal) nicht.

Code:
$x = "Global"

Func declareVar()
	$y = "Local"
	MsgBox(0x40, "x & y", $x & @CRLF & $y)
EndFunc

declareVar()
Auf beide Variablen kann zugegriffen werden, da x sowieso Global ist und nur lokal auf y zugegriffen wird.

Code:
$x = "Global"

Func declareVar()
	Global $y = "Globalized Local"
EndFunc

declareVar()

MsgBox(0x40, "Unsaubere Ausnahme", $x & @CRLF & $y)
Ist möglich, aber hierbei bekomme ich mit v3.3 zwei Errors. Der Code lässt sich trotzdem ausführen und die MsgBox wird angezeigt.. aber wie geschrieben.. unsauberer gehts nicht.

Noch fragen?

greetz, coRe
buFFy! is offline  
Thanks
2 Users
Old 02/08/2010, 19:30   #58
 
elite*gold: 0
Join Date: Sep 2009
Posts: 51
Received Thanks: 8
Also ich denk ich hab des verstanden, Global und Local kenn ich ja , aber das error os immernoch da..

PHP Code:
#cs ----------------------------------------------------------------------------

 
AutoIt Version3.3.0.0
 Author
:        Saladino

 Script 
Function:
    
Template AutoIt script.

#ce ----------------------------------------------------------------------------

Script Start Add your code below here

#include <NoMadMemory.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1"633447192124)
$Button1 GUICtrlCreateButton("Punkte auf wert setzen"40032019349$WS_GROUP)
$Button2 GUICtrlCreateButton("Zeit auf wert setzen"18432018749$WS_GROUP)
$Input1 GUICtrlCreateInput("Input1"2487223321)
$Input2 GUICtrlCreateInput("Input2"24810423321)
$Label1 GUICtrlCreateLabel("Punkte"1127213217)
$Label2 GUICtrlCreateLabel("Zeit"11210413217)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
    
Case $GUI_EVENT_CLOSE
            
Exit
        Case 
$Button1
            Write1
()
    EndSwitch
WEnd

$PID 
WinGetProcess("Solitär")
Dim $hprocess _MemoryOpen($PID)

Dim $read1 GUICtrlRead $Input1 )

Func Write1()
_MemoryWrite(0x000AB0B8$hprocess$read1)
EndFunc 

Code:
C:\Dokumente und Einstellungen\...\Neu AutoIt v3 Script.au3 (47) : ==> Variable used without being declared.:
_MemoryWrite(0x000AB0B8, $hprocess, $read1)
_MemoryWrite(0x000AB0B8, ^ ERROR
->19:25:03 AutoIT3.exe ended.rc:1
+>19:25:04 AutoIt3Wrapper Finished
>Exit code: 1    Time: 8.826
ich weis nicht was ich falsch mach -.-, ich versuch des jetzt mal mit einer anderen AutoIt Version, des neue beta z.B.

Also wenn ich da irgendeinen fehler gemacht hab könnt ihr mich gern korrigieren, hab au mal in der autoithilfe nachgelesen, werd aber einfach nicht schlau daraus..


Edit:
also wenn ich das alles in die funktion reinpacke gehts xD
PHP Code:
Func Write1()
    
$PID WinGetProcess("Solitär")
    
Dim $hprocess _MemoryOpen($PID)
    
Dim $read1 GUICtrlRead $Input1 )
    
_MemoryWrite(0x000AB0B8$hprocess$read1)
EndFunc 
Also muss es ja daran liegen, dass es diese variablen von NoMadMemory.au3 nicht in der function erkennt oder?
eXcalibur93 is offline  
Old 09/20/2010, 10:53   #59
 
Caedmon's Avatar
 
elite*gold: 0
Join Date: May 2010
Posts: 4
Received Thanks: 0
Moin! Als erstes möchte ich mich hier für alle Tutorials bzw bei ihren Erstellern bedanken. Ich hab mich den gesamten gestrigen Tag mit der AutoIt-Hilfe und, da das für Anfänger wie mich z.T. noch unverständlicher Cowderwelsh ist, mit den hier im Forum zu findenden Tuts auseinandergesetzt.

Ursprünglich wollte ich auch erst wesentlich später die Community hier mit meinen Fragen belasten, nämlich erst wenn ich zumindest kleinere Erfolgserlebnisse zu verzeichnen hab und dann u.U. nur noch hier und da nen Schubs in die richtige Richtung benötige, aber dann bin ich eben über diesen Thread gestolpert. Ich hab nun das Gefühl, dass ich meinen Absichten von vornherein eine andere Richtung geben sollte.

Bevor ich nun mit sufu-ftw's, gidf's und 's zugeschustert werde, möchte ich klarstellen, dass ich keineswegs fertige Scripte erbetteln möchte, zu keinem Zeitpunkt. Genauso wenig möchte ich mich der Freude berauben, etwas selbst herauszufinden. Natürlich liegt ein Hauptgenuss des Bottens in der Wirkung, die es auf mein Spielerlebnis hat, frei nach dem Elitepvpers-Motto: play less, get more. Einen solchen Bot jedoch selbst von der Pike auf zu kreieren, mit möglichst wenig fremder Hilfe, ist ein nicht minder großer Genuss.

Zum Eingemachten: Ich befinde mich in einem Außenposten und möchte, dass der Bot meinen Char anweist einen bestimmten Ausgang zu benutzen. In diesem Außenposten befinden sich jedoch mehrere Spawnpunkte, von wo aus der Bot den Ausgang finden können muss (die Re-Zone Methode kenn ich, darum geht es mir nicht)

Meine ursprüngliche Idee war erstmal alle Spawnpunkte zu ermitteln, dann den nächststehenden Verbündeten an jedem Punkt auszuwählen und anhand der Länge des Namens über einen Befehl wie:

Code:
$farbe1 = PixelGetColor (267, 677) ;Erkennung von Verbündeter 1
$farbe2 = PixelGetColor (270, 675) ;Erkennung von Verbündeter 2
dem Bot die Möglichkeit zu geben zu erkennen wo er sich befindet und welchen Weg er laufen muss um den Ausgang zu erreichen. Mal abgesehen von der Tatsache, dass ich ihn nicht mal dazu bringen konnte, je nach Startpunkt nur eine bestimmte Zeit geradaus zu laufen, hielt ich die Idee für angebracht. Vermutlich lag das Ausbleiben von Erfolg auch nicht an der Idee, sondern an der Umsetzung

Nun scheint mir aber die Nutzung des Memory's ein bessere Herangehensweise zu sein. Die Ermittlung der Adresse für das Laufen ging ohne jegliche Hindernisse, genauso einfach die Änderung des Wertes, 1: laufen 0: nicht laufen. Mir kam die Idee, dass Verbündete auch eine statische Adresse haben könnten und so begab ich mich auf die Suche. Es stellte sich heraus, dass Verbündete zwar nicht eine statische Adresse haben, wohl aber die Zielanzeige und alles, was die Zielanzeige erfasst, einen statischen Wert hat. In diesem spezifischen Außenposten ist der Ausgang immer in Reichtweite, egal wo ich spawne. Mein Frage also lautet: kann ich dem Bot anweisen, bei Betreten des Außenpostens, über die statische Adresse "Zielanzeige" und den statischen, wohl gemerkt 9-stelligen Wert "Ausgang" diesen zu verwenden und falls ja, wie stelle ich das am besten an?

Wenn sich die Frikadelle von euren Ohren gelöst hat, wäre ich dankbar für ein paar Hinweise.

MFG

Caedmon
Caedmon is offline  
Old 09/20/2010, 11:58   #60
 
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
schöner text, die ansätze sind soweit ja schon ok, und anscheinend hast du dich auch damit beschäftigt speicheradressen zu finden. im endeffekt denkst du da ein wenig zu umständlich. such dir einfach die adressen für für deine jeweilige position. auf gut deutsch die x und y koordinaten. wenn du die adressen hast kannst du einfach deinen standpunkt ermitteln und darauf reagieren. wenn du in der bot sektion ein paar seiten nach hinten blätterst wirst du sicher ein paar open source bots finden die diese methode anwenden.

werte schreiben würde ich nicht machen, bin mir nicht sicher inwiefern anet das erkennt. zum laufen würde ich dir die tt6 engine empfehlen, die ist ziemlich anfänger freundlich und wenn man sich den code anschaut kann man sogar noch was dabei lernen.
kknb is offline  
Thanks
2 Users
Reply


Similar Threads Similar Threads
Does guild wars scan memory?
07/08/2009 - GW Bots - 1 Replies
Does guild wars use anything like warden to detect cheats?



All times are GMT +1. The time now is 12:20.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.