Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Guild Wars > GW Bots
You last visited: Today at 07:03

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

Advertisement



Überlebender-Bot

Discussion on Überlebender-Bot within the GW Bots forum part of the Guild Wars category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Überlebender-Bot

Morgen,
bin grad dabei einen Bot für die Fausthieb-Fete zu programmieren, bin jedoch auf der Bot-Programmier-Ebene n00b und hab deswegen ein paar Fragen, hoffe ihr könnt mir die beantworten, wird natürlich public gemacht, sobald der halbwegs steht
Die Waypoints stehn, Quest wird angenommen, div. Zusatzfunktionen sollten erst später folgen.
1. Frage wäre, wie ich die Fertigkeit 1 im Hintergrund durchgehend caste, wenn ich das mit ner While erledige werden die nachfolgenden Befehle logischerweise nicht mehr angenommen.
Vielen Dank
Btw: Benutze tt6, falls notwendig kann ich auch den derzeitigen Rohbau uppen.
w0lfszeit is offline  
Old 03/22/2010, 21:08   #2
 
Neon™'s Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 2,173
Received Thanks: 1,765
Code:
Func Fertigkeit1()
	;Hier Gwca-Befehl, Keysend etc einfügen
EndFunc

AdlibEnable("Fertigkeit1", 1000)

;Hier deinen Bot einfügen


AdlibDisable()
Neon™ is offline  
Thanks
1 User
Old 03/22/2010, 21:24   #3
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
wird dafür irgend ne spezielle .au3 Datei benötigt?
bei mir funzt der besagte Adlib Befehl ned (undeclared function -> is nicht auf "Fertigkeit1"), als Vorschläge werden "Adlib(Un/)Register" angezeigt.

Nebenbei nochwas:
Also ich lese über die GUI die x- und y-Koordinate von 4 Buttons ein, wenn ich die jetzt aber direkt raus nehmen will (Bsp: Inputname: I_Ax -> MouseClick("left", I_Ax, I_Ay) klickt er irgendwohin ... gibts da nen Standard-Fehler, oder muss ich das irgendwie definieren?

So, hab mich jetzt doch entschieden auf GWCA-Basis zu arbeiten.
Hab jetzt folgenden Code drinnen, der den Skill Nr 8 so lange casten soll bis die Energie dem Maximum entspricht, das wird nur durchgeführt wenn die aktuelle HP 0 ist, sprich der Char ist tot:
Quote:
Func DeathCheck()
$CBType = "int"
$HP = CmdCB($CA_GetMyMaxHP)
$EP = CmdCB($CA_GetMyMaxEnergy)

If $HP[1] == 0 Then
For $Energy = 0 To $EP[0] Step 1
Cmd($CA_UseSkill,8,-2)
Next
EndIf
EndFunc
Der funktioniert leider nicht, hab die Graphics.dll injeziert und die Funktion wird auch gecallt, hab die bei While 1 drinnen.
Ich denk mir mal ich hab einen Fehler bei der for-Schleife.
Wäre nett wenn mir jemand helfen könnte

Edit: Hat sich erledigt

Ich nenn den erst mal um zu "Fausthieb-Fete-Bot", da das Überleben derzeit noch nicht garantiert wird, und es fraglich ist, ob es überhaupt garantiert werden kann.
Die Injection.au3 beinhaltet die Injection von u-Core, die aktuelle GWCAConstants.au3 und eine FF.au3, die das Öffnen der Fenster ermöglicht.

Das ist mein erster Bot und wie man sehen kann schmeiß ich auch ziemlich mit verschiedenen Funktionen herum, also das kann sicher einfacher gelöst werden.
Ich bitte um Feedback, da es sicher konvertionellere Methoden gibt, als die meinen.

Hier der Code:
Code:
#include-once

#include "Inject.au3"

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


HotKeySet("{F1}", "Start")
;HotKeySet("{Pause}", "Pause") Derzeit noch nicht in Verwendung
HotKeySet("{End}", "Beenden")

Func Beenden()
	Exit
EndFunc

;Sleep(20000) Wartezeit für die Injection

$cGui = GUICreate("Fausthieb-Fete by w0lfszeit", 496, 503, 192, 124)
GUISetBkColor(0xFFFBF0)
$Funktionen = GUICtrlCreateGroup("Funktionen", 16, 200, 457, 116)
$C_Aufheben = GUICtrlCreateCheckbox("Aufheben", 32, 224, 97, 17)
$C_Identifizieren = GUICtrlCreateCheckbox("Identifizieren", 32, 248, 97, 17)
$C_Verkaufen = GUICtrlCreateCheckbox("Verkaufen", 32, 272, 97, 17)
$C_Rollen = GUICtrlCreateCheckbox("Schriftrollen benutzen", 32, 296, 153, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Einstellungen = GUICtrlCreateGroup("Einstellungen", 16, 328, 457, 100)
$R_Normal = GUICtrlCreateRadio("Normal Mode", 32, 352, 113, 17)
$R_Hard = GUICtrlCreateRadio("Hard Mode", 32, 376, 113, 17)
$L_maxT = GUICtrlCreateLabel("Maximale Tode:", 32, 400, 79, 17)
$I_maxT = GUICtrlCreateInput("20", 112, 400, 121, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Kontroll = GUICtrlCreateGroup("Kontroll-Buttons", 16, 440, 257, 49)
$B_Start = GUICtrlCreateButton("Start <F1>", 24, 456, 75, 25, $WS_GROUP)
$B_Pause = GUICtrlCreateButton("<Pause>", 104, 456, 75, 25, $WS_GROUP)
$B_Beenden = GUICtrlCreateButton("<Ende>", 184, 456, 75, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$epvp = GUICtrlCreateGroup("epvp", 288, 440, 185, 49)
$B_Profil = GUICtrlCreateButton("Profil", 296, 456, 75, 25, $WS_GROUP)
$B_Thread = GUICtrlCreateButton("Thread", 384, 456, 75, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Infobox = GUICtrlCreateGroup("InfoBox", 16, 8, 457, 177)
$L_HP = GUICtrlCreateLabel("HP:", 32, 40, 400, 17)
$L_E = GUICtrlCreateLabel("E:", 32, 64, 400, 17)
$L_Runs = GUICtrlCreateLabel("Runs:", 32, 88, 400, 17)
$L_EP = GUICtrlCreateLabel("EP:", 32, 112, 400, 17)
$L_Gold = GUICtrlCreateLabel("Gold:", 32, 136, 400, 17)
$L_Info = GUICtrlCreateLabel("Start drücken!", 32, 158, 400, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)

Global $Tode = 0, $Runs = 0, $Deaths = 0, $EXP = CmdCB($CA_GetExperience), $G = CmdCB($CA_GetGold),  $Energy
Global $GetIDKit = CmdCB($CA_GetIdKit),  $ID = CmdCB($CA_GetCurrentTarget)

While 1
	$CBType = "int"						; Hier werden div. Funktionen deklariert
	$HP = CmdCB($CA_GetMyMaxHP) 		; Lebenspunkte
	$E  = CmdCB($CA_GetMyMaxEnergy) 	; Energie
	$EP = CmdCB($CA_GetExperience)		; Erfahrungspunkte
	$Gold = CmdCB($CA_GetGold)			; Gold
	$MyID = CmdCB($CA_GetMyID)			; ID des Charakters
	$MapLoad = CmdCB($CA_GetMapLoading)	; Findet heraus ob der Char in ner Stadt/Außenposten is
	$GetMapID = CmdCB($CA_GetMapID)		; FIndet die ID der Map heraus
; Zeigt an wieviel Adrenalin auf den div. Skills ist
	$Adrenaline4 = CmdCB($CA_SkillAdrenaline,4)
	$Adrenaline5 = CmdCB($CA_SkillAdrenaline,5)
	$Adrenaline6 = CmdCB($CA_SkillAdrenaline,6)
; Zeigt an ob die Gruppe tot ist (verbesserungswürdig)
	$Tod1 = CmdCB($CA_GetIsDead,20)
	$Tod2 = CmdCB($CA_GetIsDead,23)
	$Tod3 = CmdCB($CA_GetIsDead,28)
	$Tod4 = CmdCB($CA_GetIsDead,24)
	$Tod5 = CmdCB($CA_GetIsDead,33)
	$Tod6 = CmdCB($CA_GetIsDead,57)
; Zeigt an ob der NPC tot ist.
	$TodW = CmdCB($CA_GetIsDead,32)
	$TodE = CmdCB($CA_GetIsDead,30)
	$TodM = CmdCB($CA_GetIsDead,58)
	$TodF = CmdCB($CA_GetIsDead,29)
; Gibt die Distanz zu Kilroy an
	$CBType = "float"
	$Distance2Kil = CmdCB($CA_GetMyDistanceToAgent,18)
	$CBType = "int"

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

		Case $B_Start
			Start()

		Case $B_Beenden
			Beenden()

		Case $B_Profil
			_FFOpenURL("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")
			_FFStart("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")

		Case $B_Thread
			_FFOpenURL("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")
			_FFStart("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")

		Case $R_Hard
			Cmd($CA_SwitchMode, 1)

		Case $R_Normal
			Cmd($CA_SwitchMode, 0)
	EndSwitch

	GUICtrlSetData($L_HP,"HP: " & $HP[1] & "/" & $HP[0])
	GUICtrlSetData($L_E,"E: " & $E[1] & "/" & $E[0])
	GUICtrlSetData($L_Runs,"Runs/KDs/Deaths: " & $Runs & "/" & $Tode & "/" & $Deaths)
	GUICtrlSetData($L_EP, "EP: " & $EP[0] & " - " & $EP[0] - $EXP[0])
	GUICtrlSetData($L_Gold, "Gold: " & $Gold[0] & " - " & $Gold[0]-$G[0])
WEnd

Func Start()
	If $GetMapID[0] == NOT 644 Then
		GUICtrlSetData($L_Info,"Bitte nach Gunnars Feste reisen.")
		While $GetMapID == NOT 644
			$MapLoad = CmdCB($CA_GetMapLoading)
			GUICtrlSetData($L_Info,"Bitte nach Gunnars Feste reisen.")
			Sleep(1000)
		WEnd
	EndIf
		GUICtrlSetData($L_Info,"Laufe zu Kilroy.")
		Cmd($CA_QuestAbandon, 856)
		Cmd($CA_GoNPC,18)

		While $Distance2Kil[0] > 150.0
				$CBType = "float"
				$Distance2Kil = CmdCB($CA_GetMyDistanceToAgent,18)
			Sleep(1000)
		WEnd
		GUICtrlSetData($L_Info,"Akzeptiere Quest.")
			Cmd($CA_Dialog,8607747)
			Cmd($CA_Dialog,8607745)
			Cmd($CA_GoNPC,18)
			Cmd($CA_Dialog,132)
			GUICtrlSetData($L_Info,"Reise ins Verlies.")
			Verlies()
EndFunc

Func Verlies()
	While $MapLoad == 2
		Sleep(1000)
	WEnd
		GUICtrlSetData($L_Info,"Im Verlies angekommen.")

		Gruppe1()
		Aufheben()
		Gruppe2()
		Aufheben()
		Ettin()
		Aufheben()
		Gruppe3()
		Aufheben()
		Wolf()
		Aufheben()
		Gruppe4()
		Aufheben()
		Gruppe5()
		Aufheben()
		Gruppe6()
		Aufheben()
		Maghma()
		Aufheben()
		Fronis()
		Aufheben()
EndFunc

Func Belohnung()
	If $GetMapID[0] == 644 Then
		GUICtrlSetData($L_Info,"Hole Belohnung ab.")
		Cmd($CA_GoNPC,18)
		Cmd($CA_Dialog,8607751)
		GUICtrlSetData($L_Info,"Run erledigt.")
		Cmd($CA_TravelGH)
		Cmd($CA_LeaveGH)
		$Runs = $Runs + 1
		Start()
	Else
		GUICtrlSetData($L_Info,"Reise nach Gunnars Feste.")
		TravelTo(644)
	EndIf
EndFunc



Func Verkaufen()
	Sortieren()
	If $C_Verkaufen == 1 Then
	GUICtrlSetData($L_Info,"Verkaufe.")
		Cmd($CA_GoNPC,26)
		Sleep(8000)
			For $Platz = 1 To CmdCB($CA_GetBagSize,$Bag_BackPack) Step 1
				Cmd($CA_SellItem,$Bag_BackPack,$Platz)
			Next

			For $Platz = 1 To CmdCB($CA_GetBagSize,$Bag_BeltPouch) Step 1
				Cmd($CA_SellItem,$Bag_BeltPouch,$Platz)
			Next
	EndIf
EndFunc

Func Identifizieren()
	Sortieren()
	If $C_Identifizieren == 1 Then
	GUICtrlSetData($L_Info,"Identifiziere.")
		If CmdCB($GetIdKit[0]) == 0 Then
			Cmd($CA_GoNPC,26)
			Cmd($CA_BuyIdKit)
		Else
			MoveItemByID($GetIdKit[0],$Bag_Bag2,10)
		EndIf
	EndIf
EndFunc

Func Aufheben()
	If $C_Aufheben == 1
		Cmd($CA_AcceptAllItems)
	EndIf
EndFunc

Func Sortieren()
	GUICtrlSetData($L_Info,"Sortiere.")
	MoveItemByID($Dye_Black,$Bag_Bag2,1)
	MoveItemByID($Dye_White,$Bag_Bag2,2)
EndFunc

Func Gruppe1()
	GUICtrlSetData($L_Info,"Attackiere 1. Gruppe.")
	MoveEx(-15500,-15500)
	Cmd($CA_Attack,20)
	While $Tod1 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe2()
	GUICtrlSetData($L_Info,"Attackiere 2. Gruppe.")
	Cmd($CA_Attack,23)
	While $Tod2 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe3()
	GUICtrlSetData($L_Info,"Attackiere 3. Gruppe.")
	Cmd($CA_Attack,28)
	While $Tod3 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe4()
	GUICtrlSetData($L_Info,"Attackiere 4. Gruppe.")
	Cmd($CA_Attack,24)
	While $Tod4 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe5()
	GUICtrlSetData($L_Info,"Attackiere 5. Gruppe.")
	Cmd($CA_Attack,33)
	While $Tod5 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe6()
	GUICtrlSetData($L_Info,"Attackiere 6. Gruppe.")
	Cmd($CA_Attack,36)
	While $Tod6 == 0
		Kampf()
	WEnd
EndFunc

Func Ettin()
	GUICtrlSetData($L_Info,"Attackiere Ettin.")
	Cmd($CA_Attack,30)
	While $TodE == 0
		Kampf()
	WEnd
EndFunc

Func Wolf()
	GUICtrlSetData($L_Info,"Attackiere Wolf.")
	Cmd($CA_Attack,32)
	While $TodW == 0
		Kampf()
	WEnd
EndFunc

Func Maghma()
	GUICtrlSetData($L_Info,"Attackiere Maghma.")
	Cmd($CA_Attack,58)
	While $TodM == 0
		Kampf()
	WEnd
EndFunc

Func Fronis()
	GUICtrlSetData($L_Info,"Attackiere Fronis.")
	Cmd($CA_Attack,29)
	While $TodF == 0
		Kampf()
	WEnd
EndFunc

Func Kampf()
		DeathCheck()
			Cmd($CA_UseSkill,1,-1)
			Cmd($CA_UseSkill,3,-1)
			If $R_Hard Then
				Cmd($CA_UseSkill,7,-1)
			EndIf
			If $Adrenaline4 == 4 Then
				Cmd($CA_UseSkill,4,-1)
			EndIf
			If $Adrenaline5 == 10 Then
				Cmd($CA_UseSkill,5,-1)
			EndIf
			If $Adrenaline6 == 7 Then
				Cmd($CA_UseSkill,6,-1)
			EndIf
	EndIf
EndFunc

Func DeathCheck()
	If $E[1] == 0 Then
		GUICtrlSetData($L_Info,"Knockdown, wiederbeleben.")
		For $Energy = 0 To $E[0] Step 1
			Cmd($CA_UseSkill,8)
		Next
	$Tode = $Tode + 1
	EndIf

	If $HP[0] == 0 Then
		GUICtrlSetData($L_Info,"Tot -.-")
		$Deaths = $Deaths + 1
		Start()
	EndIf
EndFunc
Edit: Außerdem ist derzeit James Bond unterwegs (wirft 007-Error aus)
w0lfszeit is offline  
Old 03/29/2010, 16:08   #4
 
Neon™'s Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 2,173
Received Thanks: 1,765
Quote:
Originally Posted by w0lfszeit View Post
Ich nenn den erst mal um zu "Fausthieb-Fete-Bot", da das Überleben derzeit noch nicht garantiert wird, und es fraglich ist, ob es überhaupt garantiert werden kann.
Die Injection.au3 beinhaltet die Injection von u-Core, die aktuelle GWCAConstants.au3 und eine FF.au3, die das Öffnen der Fenster ermöglicht.

Das ist mein erster Bot und wie man sehen kann schmeiß ich auch ziemlich mit verschiedenen Funktionen herum, also das kann sicher einfacher gelöst werden.
Ich bitte um Feedback, da es sicher konvertionellere Methoden gibt, als die meinen.

Hier der Code:
Code:
#include-once

#include "Inject.au3"

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


HotKeySet("{F1}", "Start")
;HotKeySet("{Pause}", "Pause") Derzeit noch nicht in Verwendung
HotKeySet("{End}", "Beenden")

Func Beenden()
	Exit
EndFunc

;Sleep(20000) Wartezeit für die Injection

$cGui = GUICreate("Fausthieb-Fete by w0lfszeit", 496, 503, 192, 124)
GUISetBkColor(0xFFFBF0)
$Funktionen = GUICtrlCreateGroup("Funktionen", 16, 200, 457, 116)
$C_Aufheben = GUICtrlCreateCheckbox("Aufheben", 32, 224, 97, 17)
$C_Identifizieren = GUICtrlCreateCheckbox("Identifizieren", 32, 248, 97, 17)
$C_Verkaufen = GUICtrlCreateCheckbox("Verkaufen", 32, 272, 97, 17)
$C_Rollen = GUICtrlCreateCheckbox("Schriftrollen benutzen", 32, 296, 153, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Einstellungen = GUICtrlCreateGroup("Einstellungen", 16, 328, 457, 100)
$R_Normal = GUICtrlCreateRadio("Normal Mode", 32, 352, 113, 17)
$R_Hard = GUICtrlCreateRadio("Hard Mode", 32, 376, 113, 17)
$L_maxT = GUICtrlCreateLabel("Maximale Tode:", 32, 400, 79, 17)
$I_maxT = GUICtrlCreateInput("20", 112, 400, 121, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Kontroll = GUICtrlCreateGroup("Kontroll-Buttons", 16, 440, 257, 49)
$B_Start = GUICtrlCreateButton("Start <F1>", 24, 456, 75, 25, $WS_GROUP)
$B_Pause = GUICtrlCreateButton("<Pause>", 104, 456, 75, 25, $WS_GROUP)
$B_Beenden = GUICtrlCreateButton("<Ende>", 184, 456, 75, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$epvp = GUICtrlCreateGroup("epvp", 288, 440, 185, 49)
$B_Profil = GUICtrlCreateButton("Profil", 296, 456, 75, 25, $WS_GROUP)
$B_Thread = GUICtrlCreateButton("Thread", 384, 456, 75, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Infobox = GUICtrlCreateGroup("InfoBox", 16, 8, 457, 177)
$L_HP = GUICtrlCreateLabel("HP:", 32, 40, 400, 17)
$L_E = GUICtrlCreateLabel("E:", 32, 64, 400, 17)
$L_Runs = GUICtrlCreateLabel("Runs:", 32, 88, 400, 17)
$L_EP = GUICtrlCreateLabel("EP:", 32, 112, 400, 17)
$L_Gold = GUICtrlCreateLabel("Gold:", 32, 136, 400, 17)
$L_Info = GUICtrlCreateLabel("Start drücken!", 32, 158, 400, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)

Global $Tode = 0, $Runs = 0, $Deaths = 0, $EXP = CmdCB($CA_GetExperience), $G = CmdCB($CA_GetGold),  $Energy
Global $GetIDKit = CmdCB($CA_GetIdKit),  $ID = CmdCB($CA_GetCurrentTarget)

While 1
	$CBType = "int"						; Hier werden div. Funktionen deklariert
	$HP = CmdCB($CA_GetMyMaxHP) 		; Lebenspunkte
	$E  = CmdCB($CA_GetMyMaxEnergy) 	; Energie
	$EP = CmdCB($CA_GetExperience)		; Erfahrungspunkte
	$Gold = CmdCB($CA_GetGold)			; Gold
	$MyID = CmdCB($CA_GetMyID)			; ID des Charakters
	$MapLoad = CmdCB($CA_GetMapLoading)	; Findet heraus ob der Char in ner Stadt/Außenposten is
	$GetMapID = CmdCB($CA_GetMapID)		; FIndet die ID der Map heraus
; Zeigt an wieviel Adrenalin auf den div. Skills ist
	$Adrenaline4 = CmdCB($CA_SkillAdrenaline,4)
	$Adrenaline5 = CmdCB($CA_SkillAdrenaline,5)
	$Adrenaline6 = CmdCB($CA_SkillAdrenaline,6)
; Zeigt an ob die Gruppe tot ist (verbesserungswürdig)
	$Tod1 = CmdCB($CA_GetIsDead,20)
	$Tod2 = CmdCB($CA_GetIsDead,23)
	$Tod3 = CmdCB($CA_GetIsDead,28)
	$Tod4 = CmdCB($CA_GetIsDead,24)
	$Tod5 = CmdCB($CA_GetIsDead,33)
	$Tod6 = CmdCB($CA_GetIsDead,57)
; Zeigt an ob der NPC tot ist.
	$TodW = CmdCB($CA_GetIsDead,32)
	$TodE = CmdCB($CA_GetIsDead,30)
	$TodM = CmdCB($CA_GetIsDead,58)
	$TodF = CmdCB($CA_GetIsDead,29)
; Gibt die Distanz zu Kilroy an
	$CBType = "float"
	$Distance2Kil = CmdCB($CA_GetMyDistanceToAgent,18)
	$CBType = "int"

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

		Case $B_Start
			Start()

		Case $B_Beenden
			Beenden()

		Case $B_Profil
			_FFOpenURL("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")
			_FFStart("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")

		Case $B_Thread
			_FFOpenURL("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")
			_FFStart("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")

		Case $R_Hard
			Cmd($CA_SwitchMode, 1)

		Case $R_Normal
			Cmd($CA_SwitchMode, 0)
	EndSwitch

	GUICtrlSetData($L_HP,"HP: " & $HP[1] & "/" & $HP[0])
	GUICtrlSetData($L_E,"E: " & $E[1] & "/" & $E[0])
	GUICtrlSetData($L_Runs,"Runs/KDs/Deaths: " & $Runs & "/" & $Tode & "/" & $Deaths)
	GUICtrlSetData($L_EP, "EP: " & $EP[0] & " - " & $EP[0] - $EXP[0])
	GUICtrlSetData($L_Gold, "Gold: " & $Gold[0] & " - " & $Gold[0]-$G[0])
WEnd

Func Start()
	If $GetMapID[0] == NOT 644 Then
		GUICtrlSetData($L_Info,"Bitte nach Gunnars Feste reisen.")
		While $GetMapID == NOT 644
			$MapLoad = CmdCB($CA_GetMapLoading)
			GUICtrlSetData($L_Info,"Bitte nach Gunnars Feste reisen.")
			Sleep(1000)
		WEnd
	EndIf
		GUICtrlSetData($L_Info,"Laufe zu Kilroy.")
		Cmd($CA_QuestAbandon, 856)
		Cmd($CA_GoNPC,18)

		While $Distance2Kil[0] > 150.0
				$CBType = "float"
				$Distance2Kil = CmdCB($CA_GetMyDistanceToAgent,18)
			Sleep(1000)
		WEnd
		GUICtrlSetData($L_Info,"Akzeptiere Quest.")
			Cmd($CA_Dialog,8607747)
			Cmd($CA_Dialog,8607745)
			Cmd($CA_GoNPC,18)
			Cmd($CA_Dialog,132)
			GUICtrlSetData($L_Info,"Reise ins Verlies.")
			Verlies()
EndFunc

Func Verlies()
	While $MapLoad == 2
		Sleep(1000)
	WEnd
		GUICtrlSetData($L_Info,"Im Verlies angekommen.")

		Gruppe1()
		Aufheben()
		Gruppe2()
		Aufheben()
		Ettin()
		Aufheben()
		Gruppe3()
		Aufheben()
		Wolf()
		Aufheben()
		Gruppe4()
		Aufheben()
		Gruppe5()
		Aufheben()
		Gruppe6()
		Aufheben()
		Maghma()
		Aufheben()
		Fronis()
		Aufheben()
EndFunc

Func Belohnung()
	If $GetMapID[0] == 644 Then
		GUICtrlSetData($L_Info,"Hole Belohnung ab.")
		Cmd($CA_GoNPC,18)
		Cmd($CA_Dialog,8607751)
		GUICtrlSetData($L_Info,"Run erledigt.")
		Cmd($CA_TravelGH)
		Cmd($CA_LeaveGH)
		$Runs = $Runs + 1
		Start()
	Else
		GUICtrlSetData($L_Info,"Reise nach Gunnars Feste.")
		TravelTo(644)
	EndIf
EndFunc



Func Verkaufen()
	Sortieren()
	If $C_Verkaufen == 1 Then
	GUICtrlSetData($L_Info,"Verkaufe.")
		Cmd($CA_GoNPC,26)
		Sleep(8000)
			For $Platz = 1 To CmdCB($CA_GetBagSize,$Bag_BackPack) Step 1
				Cmd($CA_SellItem,$Bag_BackPack,$Platz)
			Next

			For $Platz = 1 To CmdCB($CA_GetBagSize,$Bag_BeltPouch) Step 1
				Cmd($CA_SellItem,$Bag_BeltPouch,$Platz)
			Next
	EndIf
EndFunc

Func Identifizieren()
	Sortieren()
	If $C_Identifizieren == 1 Then
	GUICtrlSetData($L_Info,"Identifiziere.")
		If CmdCB($GetIdKit[0]) == 0 Then
			Cmd($CA_GoNPC,26)
			Cmd($CA_BuyIdKit)
		Else
			MoveItemByID($GetIdKit[0],$Bag_Bag2,10)
		EndIf
	EndIf
EndFunc

Func Aufheben()
	If $C_Aufheben == 1
		Cmd($CA_AcceptAllItems)
	EndIf
EndFunc

Func Sortieren()
	GUICtrlSetData($L_Info,"Sortiere.")
	MoveItemByID($Dye_Black,$Bag_Bag2,1)
	MoveItemByID($Dye_White,$Bag_Bag2,2)
EndFunc

Func Gruppe1()
	GUICtrlSetData($L_Info,"Attackiere 1. Gruppe.")
	MoveEx(-15500,-15500)
	Cmd($CA_Attack,20)
	While $Tod1 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe2()
	GUICtrlSetData($L_Info,"Attackiere 2. Gruppe.")
	Cmd($CA_Attack,23)
	While $Tod2 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe3()
	GUICtrlSetData($L_Info,"Attackiere 3. Gruppe.")
	Cmd($CA_Attack,28)
	While $Tod3 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe4()
	GUICtrlSetData($L_Info,"Attackiere 4. Gruppe.")
	Cmd($CA_Attack,24)
	While $Tod4 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe5()
	GUICtrlSetData($L_Info,"Attackiere 5. Gruppe.")
	Cmd($CA_Attack,33)
	While $Tod5 == 0
		Kampf()
	WEnd
EndFunc

Func Gruppe6()
	GUICtrlSetData($L_Info,"Attackiere 6. Gruppe.")
	Cmd($CA_Attack,36)
	While $Tod6 == 0
		Kampf()
	WEnd
EndFunc

Func Ettin()
	GUICtrlSetData($L_Info,"Attackiere Ettin.")
	Cmd($CA_Attack,30)
	While $TodE == 0
		Kampf()
	WEnd
EndFunc

Func Wolf()
	GUICtrlSetData($L_Info,"Attackiere Wolf.")
	Cmd($CA_Attack,32)
	While $TodW == 0
		Kampf()
	WEnd
EndFunc

Func Maghma()
	GUICtrlSetData($L_Info,"Attackiere Maghma.")
	Cmd($CA_Attack,58)
	While $TodM == 0
		Kampf()
	WEnd
EndFunc

Func Fronis()
	GUICtrlSetData($L_Info,"Attackiere Fronis.")
	Cmd($CA_Attack,29)
	While $TodF == 0
		Kampf()
	WEnd
EndFunc

Func Kampf()
		DeathCheck()
			Cmd($CA_UseSkill,1,-1)
			Cmd($CA_UseSkill,3,-1)
			If $R_Hard Then
				Cmd($CA_UseSkill,7,-1)
			EndIf
			If $Adrenaline4 == 4 Then
				Cmd($CA_UseSkill,4,-1)
			EndIf
			If $Adrenaline5 == 10 Then
				Cmd($CA_UseSkill,5,-1)
			EndIf
			If $Adrenaline6 == 7 Then
				Cmd($CA_UseSkill,6,-1)
			EndIf
	EndIf
EndFunc

Func DeathCheck()
	If $E[1] == 0 Then
		GUICtrlSetData($L_Info,"Knockdown, wiederbeleben.")
		For $Energy = 0 To $E[0] Step 1
			Cmd($CA_UseSkill,8)
		Next
	$Tode = $Tode + 1
	EndIf

	If $HP[0] == 0 Then
		GUICtrlSetData($L_Info,"Tot -.-")
		$Deaths = $Deaths + 1
		Start()
	EndIf
EndFunc
Edit: Außerdem ist derzeit James Bond unterwegs (wirft 007-Error aus)
Vierfachpost O.o

Für den Anfang gar nicht schlecht
Du könntest den Code allerdings auf die Hälfte reduzieren
Neon™ is offline  
Old 03/29/2010, 16:25   #5
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Ja ich warte ja immer auf ne Antwort, aber irgendwie ist keiner an nem kleinen Bot-Neuling intressiert
Ja kann ich mir vorstellen, kannst mir bitte paar Tipps geben, was ich verändern könnte, besonders beim Test ob er in dem Gebiet ist und das er da warten soll. das mit Kilroy hab ich nur notdürftig mit ner While gelöst, weiß ned ob das so ne gute Idee is, aber scheint zu klappen.
w0lfszeit is offline  
Old 03/29/2010, 16:50   #6
 
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
würde mir das gerne genauer reinziehen, nur fehlt mir
a) eben die zeit weil ich selber am hardcore scripten bin
b)da ich selber kein gw spiele weiß ich nichtmal wo das gebiet ist

aber beim überfliegen von deinem script ist mir schonmal aufgefallen das das nicht son c&p **** ist der sinnlos zusammenkopiert worden ist, daher thx dafür
kknb is offline  
Thanks
1 User
Old 03/29/2010, 17:00   #7
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Vielen Dank, macht nichts, hoffe das sich jemand findet.
Ich programmier da sicher schon 10h dran, geht eben als Anfänger ned so leicht.

Hab jetzt schon mal nen Fehler beim Verkaufen entdeckt.
w0lfszeit is offline  
Old 03/30/2010, 13:04   #8
 
elite*gold: 0
Join Date: Jan 2009
Posts: 40
Received Thanks: 11
Ich versuch mal den Anfang zu machen.

1.AdlibEnable/Disable gibt es (wie du ja schon gemerkt hast) seit version 3.X nicht mehr.

Benutz einfach AdlibRegister.

2. Benutz für den Deathchek lieber $CA_Getdead
Und für die HP in deinem Script sind die MAX HP eigentlich auch ünnötig, also lieber CmdCb($CA_GetHP,-2), aber wenn du sie unbedingt in der GUI haben willst ist es auch egal.

3. Die AgentIds, mit denen du feststellst ob die Gruppe tot ist, sind äußerst suboptimal.
Benutz stattdessen lieber $CA_GetNumberOfAliveEnemyAgents.

Für die ID zu Killroy kannst du GetnearestNPCbyCoords benutzen, dann hast du immer die aktuelle ID und kannst mit $CA_GONPC hinlaufen(Compute Distance hilft auch)

4. Bau doch am Start des Scripts selbst einen Mapcheck ein
Code:
CmdCb($CA_Getmapid)
If $cbVar[0] <>*** Then
Travelto ***
sleep(1000)
Endif
Dann muss der Nutzer nicht selber reisen.


Für den Rest hab ich grad keine Zeit, aber 1 noch.
$CA_AcceptallItems funktioniert nur für dieses Fenster das nach Missionen erscheint, fürs Dropps aufsammeln benutze am besten die GWCAConstants func: Pickupitems($number, $maxdistance)

Ps:Ein Thx macht sich immer gut

Greets
Thompsen is offline  
Thanks
1 User
Old 03/30/2010, 17:00   #9
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Code:
; Version: 0.5

#include-once

#include "Inject.au3"

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>

HotKeySet("{F1}", "Start")
;HotKeySet("{Pause}", "Pause") Derzeit noch nicht in Verwendung
HotKeySet("{End}", "Beenden")

Func Beenden()
	Exit
EndFunc

;Sleep(20000)

#Region GUI

$cGUI = GUICreate("Fausthieb-Fete by w0lfszeit", 201, 184, 192, 124)
$Tab = GUICtrlCreateTab(0, 0, 201, 177)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$InfoBox = GUICtrlCreateTabItem("InfoBox")
$B_Start = GUICtrlCreateButton("Start <F1>", 8, 144, 59, 25, $WS_GROUP)
$B_Pause = GUICtrlCreateButton("<Pause>", 72, 144, 59, 25, $WS_GROUP)
GUICtrlSetState(-1, $GUI_DISABLE)
$B_Ende = GUICtrlCreateButton("<Ende>", 136, 144, 59, 25, $WS_GROUP)
$L_HP = GUICtrlCreateLabel("HP:", 8, 32, 182, 17)
$L_E = GUICtrlCreateLabel("E:", 8, 48, 182, 17)
$L_Runs = GUICtrlCreateLabel("Runs:", 8, 64, 192, 17)
$L_EP = GUICtrlCreateLabel("EP:", 8, 80, 189, 17)
$L_Gold = GUICtrlCreateLabel("Gold:", 8, 96, 189, 17)
$L_Tat = GUICtrlCreateLabel("Tätigkeit:", 8, 112, 48, 17)
$L_Info = GUICtrlCreateLabel("Start drücken!", 56, 112, 143, 17)
$Funktionen = GUICtrlCreateTabItem("Funktionen")
GUICtrlSetState(-1,$GUI_SHOW)
$C_Aufheben = GUICtrlCreateCheckbox("Aufheben", 8, 32, 97, 17)
$C_Identifizieren = GUICtrlCreateCheckbox("Identifizieren", 8, 48, 97, 17)
$C_Verkaufen = GUICtrlCreateCheckbox("Verkaufen", 8, 64, 97, 17)
$C_Rollen = GUICtrlCreateCheckbox("Schriftrollen benutzen", 8, 88, 137, 17)
GUICtrlSetState(-1, $GUI_DISABLE)
$B_SaveF = GUICtrlCreateButton("Save", 8, 144, 43, 25, $WS_GROUP)
GUICtrlSetState(-1, $GUI_DISABLE)
$C_Truhe = GUICtrlCreateCheckbox("Truhe öffnen", 8, 104, 97, 17)
$Einstellungen = GUICtrlCreateTabItem("Einstellungen")
$R_Normal = GUICtrlCreateRadio("Normal Mode", 8, 40, 113, 17)
GUICtrlSetState(-1, $GUI_CHECKED)
$R_Hard = GUICtrlCreateRadio("Hard Mode", 8, 56, 113, 17)
$L_maxT = GUICtrlCreateLabel("Maximale Tode:", 8, 88, 79, 17)
$I_maxT = GUICtrlCreateInput("20", 88, 88, 33, 21)
GUICtrlSetState(-1, $GUI_DISABLE)
$B_SaveE = GUICtrlCreateButton("Save", 8, 144, 43, 25, $WS_GROUP)
GUICtrlSetState(-1, $GUI_DISABLE)
$B_Thread = GUICtrlCreateButton("Thread", 56, 144, 43, 25, $WS_GROUP)
$B_Profil = GUICtrlCreateButton("Profil", 104, 144, 43, 25, $WS_GROUP)
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
#EndRegion GUI
#Region Deklarationen
																; Hier werden div. statische Variablen definiert
Global $Tode = 0, $Runs = 0, $Deaths = 0						; Variablen-Deklarationen
Global $EXP = CmdCB($CA_GetExperience), $G = CmdCB($CA_GetGold)	; Funktionen-Deklarationen
Global $Kil[2]													; Array-Deklarationen

While 1
	$CBType = "int"							; Hier werden div. dynamische Variablen definiert
	$HP = CmdCB($CA_GetMyMaxHP) 			; Lebenspunkte
	$E  = CmdCB($CA_GetMyMaxEnergy) 		; Energie
	$EP = CmdCB($CA_GetExperience)			; Erfahrungspunkte
	$Gold = CmdCB($CA_GetGold)				; Gold
	$ID = CmdCB($CA_GetCurrentTarget)		; ID des anvisierten Spielers
	$MyID = CmdCB($CA_GetMyID)				; ID des Charakters
	$MapLoad = CmdCB($CA_GetMapLoading)		; Stadt = 0, Verlies = 1, Ladebildschirm = 2
	$GetMapID = CmdCB($CA_GetMapID)			; ID der Map
	$GetIDKit = CmdCB($CA_GetIdKit)			; ID des 1. Identifierungswerkzeuges (falls vorhanden)
	$LastDialog = CmdCB($CA_GetLastDialogID); ID des letzten Dialoges

; Zeigt an wieviel Adrenalin auf den div. Skills ist
	$Adrenaline4 = CmdCB($CA_SkillAdrenaline,4)
	$Adrenaline5 = CmdCB($CA_SkillAdrenaline,5)
	$Adrenaline6 = CmdCB($CA_SkillAdrenaline,6)

; Zeigt an ob die Gruppen tot sind
	$Tod = CmdCB($CA_GetNumberOfAliveEnemyAgents)

; Gibt die Größe des Inventars an
	$Rucksack = CmdCB($CA_GetBagSize,$Bag_BackPack)
	$GTasche = CmdCB($CA_GetBagSize,$Bag_BeltPouch)
	$Tasche1 = CmdCB($CA_GetBagSize,$Bag_Bag1)

; Gibt die Item-/Modell-ID an
	$Item = CmdCB($CA_GetItemId,20)

; Gibt die ID des jeweiligen NPCs an
	$KID = GetNearestNpcToCoords(17000.0,-5000.0)
	$SID = GetNearestNpcToCoords(17700.0,-7500.0)
	$1ID = GetNearestNpcToCoords(-15000.0,-15500.0)
	$2ID = GetNearestNpcToCoords(-12000.0,-16000.0)
	$EID = GetNearestNpcToCoords(-7500.0,-15000.0)
	$3ID = GetNearestNpcToCoords(-3500.0,-16000.0)
	$WID = GetNearestNpcToCoords(-2500.0,-14000.0)
	$4ID = GetNearestNpcToCoords(500.0,-14000.0)
	$5ID = GetNearestNpcToCoords(2000.0,-15000.0)
	$6ID = GetNearestNpcToCoords(6000.0,-15000.0)
	$MID = GetNearestNpcToCoords(7200.0,-15800.0)
	$FID = GetNearestNpcToCoords(7200.0,-15700.0)

; Gibt den nähesten Gegner an
	$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)

; Gibt die Distanzen zu div. NPCs an
	$CBType = "float"
	$Distance2KID = CmdCB($CA_GetMyDistanceToAgent,$KID)
	$Distance2SID = CmdCB($CA_GetMyDistanceToAgent,$SID)
	$Distance21ID = CmdCB($CA_GetMyDistanceToAgent,$1ID)
	$Distance22ID = CmdCB($CA_GetMyDistanceToAgent,$2ID)
	$Distance2EID = CmdCB($CA_GetMyDistanceToAgent,$EID)
	$Distance23ID = CmdCB($CA_GetMyDistanceToAgent,$3ID)
	$Distance2WID = CmdCB($CA_GetMyDistanceToAgent,$WID)
	$Distance24ID = CmdCB($CA_GetMyDistanceToAgent,$4ID)
	$Distance25ID = CmdCB($CA_GetMyDistanceToAgent,$5ID)
	$Distance26ID = CmdCB($CA_GetMyDistanceToAgent,$6ID)
	$Distance2MID = CmdCB($CA_GetMyDistanceToAgent,$MID)
	$Distance2FID = CmdCB($CA_GetMyDistanceToAgent,$FID)

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $B_Start
			Start()
		Case $B_Ende
			Beenden()
		Case $B_Profil
			_FFOpenURL("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")
			_FFStart("http://www.elitepvpers.com/forum/members/2257641-w0lfszeit.html")
		Case $B_Thread
			_FFOpenURL("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")
			_FFStart("http://www.elitepvpers.com/forum/gw-bot-discussions-questions/499990-berlebender-bot.html")
		Case $R_Hard
			Cmd($CA_SwitchMode, 1)
		Case $R_Normal
			Cmd($CA_SwitchMode, 0)
	EndSwitch

; Füllt die Infos auf
	GUICtrlSetData($L_HP,"HP: " & $HP[1] & "/" & $HP[0])
	GUICtrlSetData($L_E,"E: " & $E[1] & "/" & $E[0])
	GUICtrlSetData($L_Runs,"Runs/KDs/Deaths: " & $Runs & "/" & $Tode & "/" & $Deaths)
	GUICtrlSetData($L_EP, "EP: " & $EP[0] & " - " & $EP[0] - $EXP[0])
	GUICtrlSetData($L_Gold, "Gold: " & $Gold[0] & " - " & $Gold[0]-$G[0])
	GUICtrlSetData($L_Info, "Start drücken!" & $NearestE[0])
WEnd
#EndRegion Deklarationen

#Region Quest
; Soll nach Gunnars Feste reisen, Quest annehmen
Func Start()
	If $GetMapID[0] <> 644 Then
		GUICtrlSetData($L_Info,"Reise nach Gunnars Feste.")
		$CBType = "int"
		TravelTo(644)
		Sleep(1000)
		$KID = GetNearestNpcToCoords(17000.0,-5000.0)
		$SID = GetNearestNpcToCoords(17700.0,-7500.0)
	EndIf
	GUICtrlSetData($L_Info,"Laufe zu Kilroy.")
	Cmd($CA_QuestAbandon, 856)
	Cmd($CA_GoNPC,$KID)
	While $Distance2KID[0] > 150.0
		$CBType = "float"
		$Distance2KID = CmdCB($CA_GetMyDistanceToAgent,$KID)
		Sleep(1000)
	WEnd
	GUICtrlSetData($L_Info,"Akzeptiere Quest.")
	Cmd($CA_Dialog,8607747)
	Cmd($CA_Dialog,8607745)
	Sleep(500)
	Cmd($CA_GoNPC,$KID)
	Cmd($CA_Dialog,132)
	GUICtrlSetData($L_Info,"Reise ins Verlies.")
	Sleep(500)
	Verlies()
EndFunc

; Soll den Ablauf im Verlies bestimmen
Func Verlies()
	$CBType = "int"
	While $GetMapID[0] <> 704
		$GetMapID = CmdCB($CA_GetMapID)
	WEnd
	$MyID = CmdCB($CA_GetMyID)
	$1ID = GetNearestNpcToCoords(-15000.0,-15500.0)
	$2ID = GetNearestNpcToCoords(-12000.0,-16000.0)
	$EID = GetNearestNpcToCoords(-7500.0,-15000.0)
	$3ID = GetNearestNpcToCoords(-3500.0,-16000.0)
	$WID = GetNearestNpcToCoords(-2500.0,-14000.0)
	$4ID = GetNearestNpcToCoords(500.0,-14000.0)
	$5ID = GetNearestNpcToCoords(2000.0,-15000.0)
	$6ID = GetNearestNpcToCoords(6000.0,-15000.0)
	$MID = GetNearestNpcToCoords(7200.0,-15800.0)
	$FID = GetNearestNpcToCoords(7200.0,-15700.0)

		Gruppe1()
		Aufheben()
		Gruppe2()
		Aufheben()
		Ettin()
		Truhe()
		Aufheben()
		Gruppe3()
		Aufheben()
		Wolf()
		Aufheben()
		Gruppe4()
		Aufheben()
		Gruppe5()
		Aufheben()
		Gruppe6()
		Aufheben()
		Maghma()
		Aufheben()
		Fronis()
		Aufheben()
EndFunc

; Soll die Belohnung abholen
Func Belohnung()
	If $GetMapID[0] <> 644 Then
		GUICtrlSetData($L_Info,"Reise nach Gunnars Feste.")
		$CBType = "int"
		TravelTo(644)
		Sleep(1000)
		$KID = GetNearestNpcToCoords(17000.0,-5000.0)
		$SID = GetNearestNpcToCoords(17700.0,-7500.0)
	EndIf

	Cmd($CA_GoNPC,$KID)
	Sleep(500)
	Cmd($CA_Dialog,8607751)
	GUICtrlSetData($L_Info,"Run erledigt.")
	Cmd($CA_TravelGH)
	Cmd($CA_LeaveGH)
	$Runs = $Runs + 1
	If $Item[0] <> 0 Then
		Identifizieren()
		Verkaufen()
	EndIf
	Start()
EndFunc
#EndRegion Quest
#Region Funktionen
; Soll Verkaufen
Func Verkaufen()
	Sortieren()
	If GUICtrlRead($C_Verkaufen) = $GUI_CHECKED Then
		GUICtrlSetData($L_Info,"Laufe zu Myrun.")
		Cmd($CA_GoNPC,$SID)
		While $Distance2SID[0] > 150.0
			$CBType = "float"
			$Distance2SID = CmdCB($CA_GetMyDistanceToAgent,$SID)
			Sleep(1000)
		WEnd
			For $Platz = 1 To $Rucksack[0] Step 1
				GUICtrlSetData($L_Info,"Verkaufe: RS, Platz: " & $Platz)
				Cmd($CA_SellItem,$Bag_BackPack,$Platz)
				Sleep(500)
			Next
			For $Platz = 1 To $GTasche[0] Step 1
				GUICtrlSetData($L_Info,"Verkaufe: GT, Platz: " & $Platz)
				Cmd($CA_SellItem,$Bag_BeltPouch,$Platz)
				Sleep(500)
			Next
			For $Platz = 1 To 5 Step 1
				GUICtrlSetData($L_Info,"Verkaufe: Tasche1, Platz: " & $Platz)
				Cmd($CA_SellItem,$Bag_Bag1,$Platz)
				Sleep(500)
			Next
	EndIf
EndFunc

; Soll Identifizieren
Func Identifizieren()
	Sortieren()
	If GUICtrlRead($C_Identifizieren) = $GUI_CHECKED Then
		If CmdCB($GetIdKit[0]) == 0 Then
			GUICtrlSetData($L_Info,"Kaufe Identifizier-Kid.")
			Cmd($CA_GoNPC,26)
			Cmd($CA_BuyIdKit)
		Else
			MoveItemByID($GetIdKit[0],$Bag_Bag2,10)
		EndIf
			For $Platz = 1 To $Rucksack[0] Step +1
				GUICtrlSetData($L_Info,"Identifiziere: RS, Platz: " & $Platz)
				Cmd($CA_IdentifyItem,$Bag_BackPack,$Platz)
				Sleep(500)
			Next
			For $Platz = 1 To $GTasche[0] Step +1
				GUICtrlSetData($L_Info,"Identifiziere: GT, Platz: " & $Platz)
				Cmd($CA_IdentifyItem,$Bag_BeltPouch,$Platz)
				Sleep(500)
			Next
			For $Platz = 1 To 5 Step +1
				GUICtrlSetData($L_Info,"Identifiziere: Tasche1, Platz: " & $Platz)
				Cmd($CA_IdentifyItem,$Bag_Bag1,$Platz)
				Sleep(500)
			Next
	EndIf
EndFunc

; Soll Aufheben
Func Aufheben()
	If GUICtrlRead($C_Aufheben) = $GUI_CHECKED Then
		PickUpItems()
	EndIf
EndFunc

; Soll div. Items in den hinteren Bereich verschieben (unvollständig)
Func Sortieren()
	GUICtrlSetData($L_Info,"Sortiere.")
	MoveItemByID($Dye_Black,$Bag_Bag2,1)
	MoveItemByID($Dye_White,$Bag_Bag2,2)
EndFunc

; Soll die Truhe öffnen
Func Truhe()
	If GUICtrlRead($C_Truhe) = $GUI_CHECKED Then
		Cmd($CA_OpenChest)
	EndIf
EndFunc
#EndRegion Funktionen

#Region Gruppen
Func Gruppe1()
	GUICtrlSetData($L_Info,"Attackiere 1. Gruppe.")
	$1ID = GetNearestNpcToCoords(-15000.0,-15500.0)
	Cmd($CA_Attack,22)
	While $NearestE[0] <> 26
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Gruppe2()
	GUICtrlSetData($L_Info,"Attackiere 2. Gruppe.")
	Cmd($CA_Attack,$2ID)
	While $NearestE <> 28
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Gruppe3()
	GUICtrlSetData($L_Info,"Attackiere 3. Gruppe.")
	Cmd($CA_Attack,$3ID)
	While $NearestE[0] <> 36
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Gruppe4()
	GUICtrlSetData($L_Info,"Attackiere 4. Gruppe.")
	Cmd($CA_Attack,$4ID)
	While $NearestE[0] <> 56
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Gruppe5()
	GUICtrlSetData($L_Info,"Attackiere 5. Gruppe.")
	Cmd($CA_Attack,$5ID)
	While $NearestE[0] <> 66
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Gruppe6()
	GUICtrlSetData($L_Info,"Attackiere 6. Gruppe.")
	Cmd($CA_Attack,$6ID)
	While $NearestE[0] <> 38
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Ettin()
	GUICtrlSetData($L_Info,"Attackiere Ettin.")
	Cmd($CA_Attack,$EID)
	While $NearestE[0] <> 31
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Wolf()
	GUICtrlSetData($L_Info,"Attackiere Wolf.")
	Cmd($CA_Attack,$WID)
	While $NearestE[0] <> 40
		$NearestE = CmdCB($CA_GetNearestAliveEnemyToAgent,$MyID)
		Kampf()
	WEnd
EndFunc

Func Maghma()
	GUICtrlSetData($L_Info,"Attackiere Mahgma.")
	Cmd($CA_Attack,$MID)
	While $NearestE[0] <> 40
		Kampf()
	WEnd
EndFunc

Func Fronis()
	GUICtrlSetData($L_Info,"Attackiere Fronis.")
	Cmd($CA_Attack,$FID)
	While $Tod[0] <> 0
		$Tod = CmdCB($CA_GetNumberOfAliveEnemyAgents)
		Kampf()
	WEnd
EndFunc
#EndRegion Gruppen

#Region Kampf
Func DeathCheck()
	If $E[1] == 0 Then
		GUICtrlSetData($L_Info,"Knockdown, wiederbeleben.")
		While $E[1] < $E[0]
			Cmd($CA_UseSkill,8)
		WEnd
	$Tode = $Tode + 1
	EndIf

	If $HP[0] == 0 Then
		GUICtrlSetData($L_Info,"Tot -.-")
		$Deaths = $Deaths + 1
		Start()
	EndIf
EndFunc

Func Kampf()
	DeathCheck()
	Cmd($CA_UseSkill,1,-1)
	Cmd($CA_UseSkill,3,-1)
	If $R_Hard Then
		Cmd($CA_UseSkill,7,-1)
	EndIf
	If $Adrenaline4 == 4 Then
		Cmd($CA_UseSkill,4,-1)
	EndIf
	If $Adrenaline5 == 10 Then
		Cmd($CA_UseSkill,5,-1)
	EndIf
	If $Adrenaline6 == 7 Then
		Cmd($CA_UseSkill,6,-1)
	EndIf
EndFunc
#EndRegion Kampf
Stand: 22:29 Uhr, 01.04.10
w0lfszeit is offline  
Thanks
1 User
Old 04/01/2010, 12:31   #10
 
elite*gold: 0
Join Date: Jun 2009
Posts: 108
Received Thanks: 634
Wo bleibt denn der Bot? Ich würd den auch gerne mal ausprobieren.
Gabber Nation is offline  
Thanks
8 Users
Old 04/01/2010, 12:35   #11
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Jaja ich gib mein bestes, heute kann ich sowieso nicht weitertun, nur ein paar Kleinigkeiten so am Script vornehmen, da ja GWCA nicht funktioniert.
w0lfszeit is offline  
Old 04/01/2010, 12:37   #12
 
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
harboe hat das doch mit dem neusten update gefixt
kknb is offline  
Thanks
1 User
Old 04/01/2010, 13:21   #13



 
Frutex's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 18,585
Received Thanks: 3,863
Quote:
Originally Posted by kknb View Post
harboe hat das doch mit dem neusten update gefixt
Ich hab nur leider keine Lust named Pipes zu benutzen.
Das spackt bei mir immer noch rum.
Frutex is offline  
Old 04/01/2010, 22:28   #14
 
elite*gold: 0
Join Date: Mar 2010
Posts: 107
Received Thanks: 15
Kann mal wer meinen Bot ansehen auch Kann den jetzt nicht testen, vllt funktioniert er schon ^^ naja einfach mal sagen was überflüssig ist, was ich besser erledigen kann etc.
w0lfszeit is offline  
Old 04/01/2010, 23:26   #15
 
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
Quote:
Originally Posted by indisturbalcha View Post
Ich hab nur leider keine Lust named Pipes zu benutzen.
Das spackt bei mir immer noch rum.
da wirst du früher oder später aber nicht drum rum kommen.
kknb is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Überlebender - Bot
03/21/2010 - GW Bots - 26 Replies
Heyho, ich habe jetzt ziemlich lnage gesucht und in dem Forum nur einen alten "Überlebender" Bot gefunden der out of date ist gibts es zur zeit i-wie einen Bot für den Überlendentitel Mfg Luke



All times are GMT +2. The time now is 07:03.


Powered by vBulletin®
Copyright ©2000 - 2024, 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 ©2024 elitepvpers All Rights Reserved.