Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Guild Wars > GW Bots
You last visited: Today at 17:50

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

Advertisement



GWCA Foren

Discussion on GWCA Foren within the GW Bots forum part of the Guild Wars category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2008
Posts: 34
Received Thanks: 0
Arrow GWCA Foren

Weiß wer ob noch irgentwelche GWCA foren vorhanden sind die funktionieren und hat wer den Sourcecode für nen funktionierendes GWCAConstants ( ohne syntax Error) und falls es grad kein laufendes Forum gibt kann mir wer nen paar Item Funcs schicken die funktionieren? Thx für antworten.
Hilthorien is offline  
Old 12/04/2009, 17:02   #2
 
elite*gold: 100
Join Date: Oct 2007
Posts: 738
Received Thanks: 485
ddl is offline  
Old 12/06/2009, 02:54   #3
 
elite*gold: 0
Join Date: Oct 2009
Posts: 557
Received Thanks: 160
Das ist soweit ich mich noch erinnere die Constants der Rev107 (bzw. der rev davor). Diese benutze ich persönlich immernoch - ist meiner Meinung nach die beste :P.


Code:
; # -+-+-+-+-+-+-+ #
;   GWCA Constants
;	  By Sune C
; # +-+-+-+-+-+-+- #

#include-once

; The SkillLog structure for use with the Skill Log feature
Global $tagSKILLLOGSTRUCT = "long AgentId;long MyId;long SkillId;float Activation;byte TeamId;ushort Allegiance;float Distance;long Ping"

; The constants
Global Enum $CA_GetCurrentTarget = 0x401, $CA_GetMyId, $CA_Casting, $CA_SkillRecharge, $CA_SkillAdrenaline, _
			$CA_StoreVar, $CA_SetLogAndHwnd, $CA_GetAgentAndTargetPtr, $CA_GetSkillbarSkillId, $CA_GetMyMaxHP, $CA_GetMyMaxEnergy, $CA_GetBuildNumber, _
			$CA_ChangeMaxZoom, $CA_GetLastDialogId, $CA_SetEngineHook, _
			$CA_Attack = 0x410, $CA_Move, $CA_UseSkill, _
			$CA_ChangeWeaponSet, $CA_ZoneMap, $CA_DropGold, $CA_GoNpc, $CA_GoPlayer, $CA_GoSignpost, $CA_UseAttackSkill, _
			$CA_EnterChallenge, $CA_OpenChest, $CA_SetEventSkillMode, $CA_UseSkillbarSkill, $CA_PickupItem, _
			$CA_UseSkillbarAttackSkill, $CA_Dialog, $CA_ChangeTarget, $CA_StatusBot, $CA_TargetNearestFoe, $CA_TargetNearestAlly, _
			$CA_TargetNearestItem, $CA_StatusDelay, $CA_TargetCalledTarget, $CA_UseHero1Skill, $CA_UseHero2Skill, $CA_UseHero3Skill, $CA_StatusMiss, _
			$CA_CancelAction, $CA_StatusTab, $CA_GetNamePtr, $CA_CommandHero1, $CA_CommandHero2, $CA_CommandHero3, $CA_CommandAll, $CA_ChangeDistrict, _
			$CA_Resign, $CA_ReturnToOutpost, _
			$CA_GetMapLoading = 0x440, $CA_GetMapId, $CA_GetPing, $CA_GetLoggedIn, $CA_GetDead, $CA_GetBalthFaction, $CA_GetKurzFaction, $CA_GetLuxonFaction, _
			$CA_GetTitleTreasure, $CA_GetTitleLucky, $CA_GetTitleUnlucky, $CA_GetTitleWisdom, _
			$CA_GetAgentExist = 0x450, $CA_GetProfessions, $CA_GetPlayerNumber, _
			$CA_GetHP, $CA_GetRotation, _
			$CA_GetSkill, $CA_GetCoords, $CA_GetWeaponSpeeds, $CA_GetSpiritRange, $CA_GetTeamId, $CA_GetCombatMode, _
			$CA_GetModelMode, $CA_GetHpPips, $CA_GetEffects, $CA_GetHex, $CA_GetModelAnimation, $CA_GetEnergy, $CA_GetAgentPtr, _
			$CA_GetType, $CA_GetLevel, $CA_GetNameProperties, $CA_GetMaxId, $CA_GetMyNearestAgent, _
			$CA_GetMyDistanceToAgent, $CA_GetNearestAgentToAgent, $CA_GetDistanceFromAgentToAgent, $CA_GetNearestAgentToAgentEx, _
			$CA_GetModelState, $CA_GetIsAttacking, $CA_GetIsKnockedDown, $CA_GetIsMoving, $CA_GetIsDead, $CA_GetIsCasting, _
			$CA_GetFirstAgentByPlayerNumber, $CA_GetAllegiance, $CA_GetNearestEnemyToAgentEx, $CA_GetIsAttackedMelee, $CA_GetNearestItemToAgentEx, _
			$CA_GetNearestAgentByPlayerNumber, $CA_GetSpeed, $CA_GetNearestEnemyToAgentByAllegiance, $CA_GetNearestAliveEnemyToAgent, _
			$CA_GetWeaponType, $CA_GetNearestSignpostToAgent, $CA_GetNearestNpcToAgentByAllegiance, $CA_GetNearestAgentToCoords, $CA_GetVars, _
			$CA_GetNearestNpcToCoords, $CA_GetLoginNumber, _
			$CA_GetGold = 0x510, $CA_GetBagSize, $CA_SetBag, $CA_GetItemId, _
			$CA_GetIdKit, $CA_IdentifyItem, $CA_IdentifyItemById, $CA_DepositGold, $CA_WithdrawGold, $CA_SellItem, $CA_SellItemById, _
			$CA_BuyIdKit, $CA_BuySuperiorIdKit, $CA_PrepareMoveItem, $CA_MoveItem, $CA_GetItemInfo, _
			$CA_UseItem, $CA_UseItemById, $CA_DropItem, $CA_DropItemById, _
			$CA_AcceptAllItems, $CA_GetItemLastModifier, _
			$CA_GetTitleSunspear = 0x550, $CA_GetTitleLightbringer, $CA_GetTitleVanguard, $CA_GetTitleNorn, $CA_GetTitleAsura, $CA_GetTitleDeldrimor, _
			$CA_GetTitleNorthMastery, $CA_GetTitleDrunkard, $CA_GetTitleSweet, $CA_GetTitleParty, $CA_GetTitleCommander, $CA_GetTitleLuxon, $CA_GetTitleKurzick, _
			$CA_AddHero = 0x580, $CA_KickHero, $CA_SwitchMode, $CA_AddNpc, $CA_KickNpc, $CA_TravelGH, $CA_LeaveGH


Global Enum $RARITY_WHITE = 0x3D, $RARITY_BLUE = 0x3F, $RARITY_PURPLE = 0x42, $RARITY_GOLD = 0x40, $RARITY_GREEN = 0x43

Global Enum $BAG_BACKPACK = 1, $BAG_BELTPOUCH, $BAG_BAG1, $BAG_BAG2, $BAG_EQUIPMENTPACK, $BAG_UNCLAIMEDITEMS = 7, $BAG_STORAGE1, $BAG_STORAGE2, _
			$BAG_STORAGE3, $BAG_STORAGE4, $BAG_STORAGE5, $BAG_STORAGE6, $BAG_STORAGE7, $BAG_STORAGE8, $BAG_STORAGEANNIVERSARY

Global Enum $HERO_NORGU = 1, $HERO_GOREN, $HERO_TAHLKORA, $HERO_MASTEROFWHISPERS, $HERO_ACOLYTEJIN, $HERO_KOSS, $HERO_DUNKORO, $HERO_ACOLYTESOUSUKE, $HERO_MELONNI, _
			$HERO_ZHEDSHADOWHOOF, $HERO_GENERALMORGAHN, $HERO_MARGRIDTHESLY, $HERO_OLIAS = 14, $HERO_RAZAH, $HERO_MOX, $HERO_JORA = 18, $HERO_PYREFIERCESHOT, _
			$HERO_LIVIA = 21, $HERO_KAHMU, $HERO_GWEN, $HERO_XANDRA, $HERO_VEKK, $HERO_OGDEN

; VARIABLES

Opt("WinTitleMatchMode", -1) ;Make sure that Guild Wars receives the messages (1 = match start, 2 = substring, 3 = exact)

Global $cbType = "int" ;What to read the callback values as
Global $cbVar[2] ;Array for callback wParam and lParam
Global $sGW = "Guild Wars -" ;Name of window
Global $cGUI = 0 ;Init GUI hwnd var
Global $bGWCA_INTERNAL = False ;Is set to True when inside a Cmd() or CmdCB() call

; FUNCTIONS

Func _IntToFloat($iInt)
	Local $tFloat, $tInt

	$tInt = DllStructCreate("int")
	$tFloat = DllStructCreate("float", DllStructGetPtr($tInt))
	DllStructSetData($tInt, 1, $iInt)
	Return DllStructGetData($tFloat, 1)
EndFunc

Func _FloatToInt($fFloat)
	Local $tFloat, $tInt

	$tFloat = DllStructCreate("float")
	$tInt = DllStructCreate("int", DllStructGetPtr($tFloat))
	DllStructSetData($tFloat, 1, $fFloat)
	Return DllStructGetData($tInt, 1)
EndFunc

Func WndCallback($hwnd, $msg, $wparam, $lparam)
	Switch($cbType)
		Case "float"
			$wparam = _IntToFloat($wparam)
			$lparam = _IntToFloat($lparam)
		Case "int"
			$wparam = Number($wparam)
			$lparam = Number($lparam)
		Case "hex" ;Do nothing
	EndSwitch

	$cbVar[0] = $wparam
	$cbVar[1] = $lparam
EndFunc

Func Cmd($uMsg, $wparam = 0, $lparam = 0)
	$bGWCA_INTERNAL = True
	$cbVar[0] = ""
	$cbVar[1] = ""
	DllCall("user32.dll", "lparam", "PostMessage", "hwnd", WinGetHandle($sGW), "int", $uMsg, "wparam", $wparam, "lparam", $lparam)
	$bGWCA_INTERNAL = False
EndFunc

Func CmdCB($uMsg, $wparam = 0)
	$bGWCA_INTERNAL = True
	$cbVar[0] = ""
	$cbVar[1] = ""
	DllCall("user32.dll", "lparam", "SendMessage", "hwnd", WinGetHandle($sGW), "int", $uMsg, "wparam", $wparam, "lparam", $cGUI)
	If $cbVar[0] = "" AND $cbVar[1] = "" Then SetError(-1)
	$bGWCA_INTERNAL = False
	Return $cbVar
EndFunc

Func CmdCBEx($uMsg, $wParam = 0, $msTimeout = 60)
	CmdCB($uMsg, $wParam)
	$tEscape = TimerInit()
	Do
		Sleep(0)
	Until TimerDiff($tEscape) > $msTimeout OR $cbVar[0] <> ""
EndFunc

Func MoveEx($x, $y, $random = 50)
	Cmd($CA_MOVE, _FloatToInt($x+Random(-$random,$random)), _FloatToInt($y+Random(-$random,$random)))
EndFunc

Func GetNearestAgentToCoords($x, $y)
	$oldCbType = $cbType

	$cbType = "int"
	Cmd($CA_GETNEARESTAGENTTOCOORDS, _FloatToInt($x), _FloatToInt($y))
	Sleep(50)
	CmdCB($CA_GETVARS)

	$cbType = $oldCbType

	Return $cbVar[1]
EndFunc

Func GetNearestNPCToCoords($x, $y)
	$oldCbType = $cbType

	$cbType = "int"
	Cmd($CA_GETNEARESTNPCTOCOORDS, _FloatToInt($x), _FloatToInt($y))
	Sleep(50)
	CmdCB($CA_GETVARS)

	$cbType = $oldCbType

	Return $cbVar[1]
EndFunc

Func TravelTo($iMapId)
	$tMap = TimerInit()
	Cmd($CA_ZONEMAP, $iMapId)
	Do
		Sleep(200)
		$aLoad = CmdCB($CA_GETMAPLOADING)
		If TimerDiff($tMap) > 20000 AND $aLoad[0] <> 2 Then Cmd($CA_ZONEMAP, $iMapId)
		$aTmpMap = CmdCB($CA_GETMAPID)
	Until $aLoad[0] = 0 AND $aTmpMap[0] = $iMapId
EndFunc

Func MoveItem($itemBag, $itemSlot, $newBag, $newSlot)
	Cmd($CA_PREPAREMOVEITEM, $itemBag, $itemSlot)
	Sleep(20)
	Cmd($CA_MOVEITEM, $newBag, $newSlot)
EndFunc

Func MoveItemById($itemId, $newBag, $newSlot)
	Cmd($CA_PREPAREMOVEITEM, $itemId)
	Sleep(20)
	Cmd($CA_MOVEITEM, $newBag, $newSlot)
EndFunc

Func PickupItems($iItems = -1, $fMaxDistance = 1012)
	Local $iItemsPicked = 0

	$oldCbType = $cbType

	$cbType = "int"

	$tDeadlock = TimerInit()
	Do
		$aItem = CmdCB($CA_GETNEARESTITEMTOAGENTEX, -2)
		If $aItem[0] = 0 OR _IntToFloat($aItem[1]) > $fMaxDistance OR TimerDiff($tDeadlock) > 30000 Then ExitLoop

		Cmd($CA_PICKUPITEM, $aItem[0])
		$tDeadlock = TimerInit()
		Do
			Sleep(500)
			CmdCB($CA_GETAGENTEXIST, $aItem[0])
			If TimerDiff($tDeadlock) > 5000 Then ContinueLoop 2
		Until $cbVar[0] = 0

		$iItemsPicked += 1
	Until $iItemsPicked = $iItems

	$cbType = $oldCbType
EndFunc

Func GetItemId($iBag, $iSlot)
	$oldCbType = $cbType

	$cbType = "int"

	CmdCB($CA_SetBag, $iBag)
	CmdCB($CA_GetItemId, $iSlot)

	$cbType = $oldCbType

	Return $cbVar
EndFunc

Func GetItemInfo($iBag, $iSlot)
	$oldCbType = $cbType

	$cbType = "int"

	CmdCB($CA_SetBag, $iBag)
	CmdCB($CA_GetItemInfo, $iSlot)

	$cbType = $oldCbType

	Return $cbVar
EndFunc

Func GetItemLastModifier($iBag, $iSlot)
	$oldCbType = $cbType

	$cbType = "int"

	CmdCB($CA_SetBag, $iBag)
	CmdCB($CA_GetItemLastModifier, $iSlot)

	$cbType = $oldCbType

	Return $cbVar
EndFunc

; END OF FILE
ItemFuncs ( hab ich jetzt schnell aus meinem Raptor bot rauskopiert - also noch nicht verallgemeinert, hoffe es hilft dir trotzdem :P):

identen - mit check gold (Backpack,Beltpouch,Bag1) :

Code:
$cbType = "int"
	If GUICtrlRead($checkIdentify) = 1 Then
		UpdateStatus("Identifying items")
		For $i = 1 To 20 Step 1
			CmdCB($CA_GETIDKIT)
			If $cbVar[0] = 0 Then
				Cmd($CA_WITHDRAWGOLD, 100)
				sleep(250)
				Cmd($CA_BUYIDKIT)
			EndIf

			$bIdentItem = True
			If GUICtrlRead($checkNoIdentGold) = 1 Then
				GetItemInfo($BAG_BACKPACK, $i)
				If $cbVar[0] = $RARITY_GOLD Then
					$bIdentItem = False
				EndIf
			EndIf

			If $bIdentItem Then Cmd($CA_IDENTIFYITEM, $BAG_BACKPACK, $i)

			Sleep(500)
		Next

		For $i = 1 To 5 Step 1
			CmdCB($CA_GETIDKIT)
			If $cbVar[0] = 0 Then
				Cmd($CA_WITHDRAWGOLD, 100)
				sleep(250)
				Cmd($CA_BUYIDKIT)
			EndIf

			$bIdentItem = True
			If GUICtrlRead($checkNoIdentGold) = 1 Then
				GetItemInfo($BAG_BELTPOUCH, $i)
				If $cbVar[0] = $RARITY_GOLD Then
					$bIdentItem = False
				EndIf
			EndIf

			If $bIdentItem Then Cmd($CA_IDENTIFYITEM, $BAG_BELTPOUCH, $i)

			Sleep(500)
		Next

		For $i = 1 To 10 Step 1
			CmdCB($CA_GETIDKIT)
			If $cbVar[0] = 0 Then
				Cmd($CA_WITHDRAWGOLD, 100)
				sleep(250)
				Cmd($CA_BUYIDKIT)
			EndIf

			$bIdentItem = True
			If GUICtrlRead($checkNoIdentGold) = 1 Then
				GetItemInfo($BAG_BAG1, $i)
				If $cbVar[0] = $RARITY_GOLD Then
					$bIdentItem = False
				EndIf
			EndIf

			If $bIdentItem Then Cmd($CA_IDENTIFYITEM, $BAG_BAG1, $i)

			Sleep(500)
		Next
	EndIf

goldene Items in Truhe stecken (muss vor dem sellen kommen):

Code:
If GUICtrlRead($checkStoreGold) = 1 Then
		UpdateStatus("Storage Golds")
		get_gitems()
		sleep(250)
		golds()
		sleep(500)	
	
        Endif
Code:
func chest_reg($ngitems)
   if $ngitems > 0 and $ngitems < 21 Then
      return 8
   elseif $ngitems > 20 and $ngitems < 41 Then
      return 9
   elseif $ngitems > 40 and $ngitems < 61 Then
      return 10
   elseif $ngitems > 60 and $ngitems < 81 Then
      return 11
   elseif $ngitems > 80 Then
      msgbox(0," Raptor Bot","Truhe voll! Wird beendet.")
      exit
   endif
endfunc

func golds()
   $ocbty=$cbtype
   
   $cbType="hex"
   

   for $slot=1 to 35 step 1
      If $slot < 21 Then
            $i_info=GetItemInfo(1,$slot)
            If $i_info[0] = $RARITY_GOLD Then
               $GItems += 1
               $c_reg=chest_reg($GItems)
               MoveItem(1,$slot, $c_reg, 0)
               Sleep(Random(150,200))
            EndIf
      EndIf
      if $slot > 20 And $slot < 26 Then
            $i_info=GetItemInfo(2,($slot-20))
            If $i_info[0] = $RARITY_GOLD Then
               $GItems += 1
               $c_reg=chest_reg($GItems)
               MoveItem(2,($slot-20), $c_reg, 0)
               Sleep(Random(150,200))
            EndIf
      EndIf
      if $slot > 25 and $slot < 36 then   
            $i_info=GetItemInfo(3,($slot-25))
            If $i_info[0] = $RARITY_GOLD Then
               $GItems += 1
               $c_reg=chest_reg($GItems)
               MoveItem(3,($slot-25), $c_reg, 0)
               Sleep(Random(150,200))
            EndIf
      EndIf
      Sleep(Random(20,30))
   Next
   $cbtype=$ocbty
endfunc


func get_gitems()
   $cbtype="int"
   $GItems=0
   for $reg=8 to 11 step 1
      for $slot=1 to 20 step 1
         $i_id=getitemid($reg,$slot)
         if $i_id[0] <> 0 then $GItems+=1
         Sleep(Random(20,30))
      Next
   Next
   return $GItems
EndFunc

verkaufen:

Code:
If GUICtrlRead($checkSell) = 1 Then
		UpdateStatus("Selling items")
	
	For $i = 1 To 20 

		 $i_id=getitemid($BAG_BACKPACK,$i)
         if $i_id[0] <> 0 then
            Cmd($CA_SELLITEMBYID,$i_id[0])
            Sleep(Random(400,500))
         EndIf
	Next

	For $i = 1 To 5 

		 $i_id=getitemid($BAG_BELTPOUCH,$i)
         if $i_id[0] <> 0 then
            Cmd($CA_SELLITEMBYID,$i_id[0])
            Sleep(Random(400,500))
         EndIf
	Next

	For $i = 1 To 10 

		 $i_id=getitemid($BAG_BAG1,$i)
         if $i_id[0] <> 0 then
            Cmd($CA_SELLITEMBYID,$i_id[0])
            Sleep(Random(400,500))
         EndIf
	Next
Jonas_93 is offline  
Reply


Similar Threads Similar Threads
GWCA Problem
04/20/2010 - GW Bots - 3 Replies
auch wenn es ein relativ leicht zu behebender fehler sein sollte bitte ich um konstruktive hilfe. nun zu meinem problem: wenn ich mit gwca einen befehl calle tut sich bei mir im guildwars fenster nichts... injectet habe ich, compiled = 0 errors nur wenn ich wirklich einen reinen befehl benutze bewegt sich der character
GWCA help?
02/20/2010 - GW Bots - 3 Replies
I'm trying to find place numbers for the maps etc. Like Rata Sum is 640... I need to know what I would set my ToPK value to. It's for this... Global $MAP_TOPK = ???
Nachhilfe bei GWCA
02/09/2010 - GW Bots - 2 Replies
Hey Leute :D , ich würde total gerne lernen wie man bots mit gwca schreibt ..ich kann bis jetzt nur meine x und y location herausfinden und gold in die truhe packen und checken wieviel gold in der truhe ist und wieviel ich dabei habe!... aber auch nur per tutorial von Xereon (Danke an Xereon! =)..) jetzt wollte ich fragen ob sich jemand der es einiger masen kann die gedult und die motivation hat mir gwca noob es ein bisschen besser bei zu bringen! ich freue mich über jede neue function die...
GWCA Frage(n)
02/02/2010 - GW Bots - 56 Replies
HI hab ne Frage bezüglich mehrere Guild Wars über GWCA zu steuern. Nämlich welches ist die "Variable" für die $client ? also was muss ich umschreiben wenn ein Bot für das Fenster "Guild Wars Name1" und ein Bot für "Guild Wars Name2" die Befehle gibt ?



All times are GMT +2. The time now is 17:50.


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.