Is there any way to add Wayfarer's Marks to the CoF dervish bot? Thanks in advance
Haven't tested this but try adding:
If $ModelID == 37765 Then Return True ;37765 = Wayfarer Mark
in the CanPickUp function where you see the rest of these:
If $ModelID == 929 Then Return True ; 929 = Dust
If $ModelID == 24353 Then Return True ; Diessa
If $ModelID == 24354 Then Return True ; Rin
If $ModelID == 22751 Then Return True ; Lockpick
If $ModelID == 22191 Then Return True ; Clover
I'll test when I get home later tonight but that should work for you.
1) Since i have a Legionnaire Summoning Crystal, i'd like the bot to use it to pop the legionnaire. any idea of how to do it ? its ID from GWToolbox is 37810.
2) I'm doing my chest title as well, but the MQ bot sell all the lockpicks i loot. Is it possible to exclude lockpicks from selling or to exclude one bag of the list of items to sell ?
ok i just commented this line and it works, it skill the 4th bag :
Thanks for all the bots all work great! However on the EOTN VQ Bot for deldrimore it runs freezie lare after it does one run it does not successfully zone to the guild hall to refresh the quest so it cannot re enter the dungeon. Anyone have any idea how to fix this?
Also does anyone have a bot for cartographer? Or a text mod to make the title easier?
1) Since i have a Legionnaire Summoning Crystal, i'd like the bot to use it to pop the legionnaire. any idea of how to do it ? its ID from GWToolbox is 37810.
2) I'm doing my chest title as well, but the MQ bot sell all the lockpicks i loot. Is it possible to exclude lockpicks from selling or to exclude one bag of the list of items to sell ?
ok i just commented this line and it works, it skill the 4th bag :
Global Const $ITEM_ID_LEGIONNAIRE_STONE = 37810
Func UseLegionStone()
Local $aBag
Local $aItem
Sleep(200)
For $i = 1 To 4
$aBag = GetBag($i)
For $j = 1 To DllStructGetData($aBag, "Slots")
$aItem = GetItemBySlot($aBag, $j)
If DllStructGetData($aItem, "ModelID") == $ITEM_ID_LEGIONNAIRE_STONE Then
UseItem($aItem)
Return True
EndIf
Next
Next
EndFunc
There you go, a function to use the legion stone
For the bot to stop selling the lockpicks here is a hint what you can do:
In the sell function there is most likely a function like "cansell" or "allowedtosell" or something similar.
Where it moves of the current "bag" and looks up if its allowed to sell the "current" item. just add
a check like the one in the "UseLegionStone" Function if the "current item" is a "lockpick" // the modelid is same
WOW you are awesome mhaendler !
thank you very much, i updated the VQ function with this and it worked perfectly:
Code:
Func VQ()
CurrentAction("Waiting to really complete load")
rndslp(10000)
CurrentAction("Poping Legionnaire thanks to mhaendler !!")
UseLegionStone()
as i understand the function: to scan all the items one by one in the 4 bags until you find the idem with the code 37810 (previously define with a constant). Once you find it you use it with the fonction UseItem.
that's really good. simple but very effective.
For the lockpicks, i just excluded the 4th bag from the selling function. that wait i can keep idems on by characters and i'm sure they wont be sold.
My next step was to find a way to open chests and pick up loots during the runs. So i spent a bit of time this moring trying to find a solution to open chests during VQ and i found a way to do it.
i'm not a coder so my solution might be kinda trashy to some of you, but i didn't wanted to use whatever pepole post but i wanted to contribute
Here is my solution :
i picked up this code from the chest bot and made it complient with the luxon bot ($DeadOnTheRun = 0 vs Not $WeAreDead for exemple) :
Code:
Func DoChest()
If $DeadOnTheRun = 0 then CurrentAction("Going To open This chest")
If $DeadOnTheRun = 0 then GoSignpost(-1)
local $TimeCheck = TimerInit()
If $DeadOnTheRun = 0 then $chest = GetCurrentTarget()
If $DeadOnTheRun = 0 then $oldCoordsX = DllStructGetData($chest, "X")
If $DeadOnTheRun = 0 then $oldCoordsY = DllStructGetData($chest, "Y")
If $DeadOnTheRun = 0 then
Do
rndslp(500)
Until CheckArea($oldCoordsX, $oldCoordsY) Or TimerDiff($TimeCheck) > 90000 Or $DeadOnTheRun = 1
EndIf
If $DeadOnTheRun = 0 then rndslp(1000)
If $DeadOnTheRun = 0 then OpenChest()
If $DeadOnTheRun = 0 then rndslp(1000)
If $DeadOnTheRun = 0 then TargetNearestItem()
If $DeadOnTheRun = 0 then rndslp(500)
If $DeadOnTheRun = 0 then $item = GetCurrentTarget()
If $DeadOnTheRun = 0 then
Do
If $DeadOnTheRun = 0 then rndslp(500)
If $DeadOnTheRun = 0 then PickUpItem($item)
Until DllStructGetData($item, 'AgentID') = 0 Or TimerDiff($TimeCheck) > 90000 or $DeadOnTheRun = 1
EndIf
EndFunc ;==>DoChest
Func LookForChest()
If $DeadOnTheRun = 0 then TargetNearestItem()
If $DeadOnTheRun = 0 then rndslp(500)
If DllStructGetData(GetCurrentTarget(), 'Type') = 512 and $DeadOnTheRun = 0 Then
If $DeadOnTheRun = 0 then DoChest()
If $DeadOnTheRun = 0 then rndslp(500)
EndIf
EndFunc
the i added the fonction LookForChest() before moving to each aggro :
Code:
If $DeadOnTheRun = 0 Then $enemy = "Yeti"
[COLOR="red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-17348, -9895, $enemy)
If $DeadOnTheRun = 0 Then $enemy = "Oni and Wallows"
[COLOR="red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-14702, -6671, $enemy)
If $DeadOnTheRun = 0 Then $enemy = "Oni and Wallows"
[COLOR="Red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-11080, -6126, $enemy, 2000)
This might not be very efficient nor accurate, but it works : the bot oppened a chest after killing Yetis !!!
If someone has a better idea or a better way to do this i'm available to test it !
WOW you are awesome mhaendler !
thank you very much, i updated the VQ function with this and it worked perfectly:
Code:
Func VQ()
CurrentAction("Waiting to really complete load")
rndslp(10000)
CurrentAction("Poping Legionnaire thanks to mhaendler !!")
UseLegionStone()
as i understand the function: to scan all the items one by one in the 4 bags until you find the idem with the code 37810 (previously define with a constant). Once you find it you use it with the fonction UseItem.
that's really good. simple but very effective.
For the lockpicks, i just excluded the 4th bag from the selling function. that wait i can keep idems on by characters and i'm sure they wont be sold.
My next step was to find a way to open chests and pick up loots during the runs. So i spent a bit of time this moring trying to find a solution to open chests during VQ and i found a way to do it.
i'm not a coder so my solution might be kinda trashy to some of you, but i didn't wanted to use whatever pepole post but i wanted to contribute
Here is my solution :
i picked up this code from the chest bot and made it complient with the luxon bot ($DeadOnTheRun = 0 vs Not $WeAreDead for exemple) :
Code:
Func DoChest()
If $DeadOnTheRun = 0 then CurrentAction("Going To open This chest")
If $DeadOnTheRun = 0 then GoSignpost(-1)
local $TimeCheck = TimerInit()
If $DeadOnTheRun = 0 then $chest = GetCurrentTarget()
If $DeadOnTheRun = 0 then $oldCoordsX = DllStructGetData($chest, "X")
If $DeadOnTheRun = 0 then $oldCoordsY = DllStructGetData($chest, "Y")
If $DeadOnTheRun = 0 then
Do
rndslp(500)
Until CheckArea($oldCoordsX, $oldCoordsY) Or TimerDiff($TimeCheck) > 90000 Or $DeadOnTheRun = 1
EndIf
If $DeadOnTheRun = 0 then rndslp(1000)
If $DeadOnTheRun = 0 then OpenChest()
If $DeadOnTheRun = 0 then rndslp(1000)
If $DeadOnTheRun = 0 then TargetNearestItem()
If $DeadOnTheRun = 0 then rndslp(500)
If $DeadOnTheRun = 0 then $item = GetCurrentTarget()
If $DeadOnTheRun = 0 then
Do
If $DeadOnTheRun = 0 then rndslp(500)
If $DeadOnTheRun = 0 then PickUpItem($item)
Until DllStructGetData($item, 'AgentID') = 0 Or TimerDiff($TimeCheck) > 90000 or $DeadOnTheRun = 1
EndIf
EndFunc ;==>DoChest
Func LookForChest()
If $DeadOnTheRun = 0 then TargetNearestItem()
If $DeadOnTheRun = 0 then rndslp(500)
If DllStructGetData(GetCurrentTarget(), 'Type') = 512 and $DeadOnTheRun = 0 Then
If $DeadOnTheRun = 0 then DoChest()
If $DeadOnTheRun = 0 then rndslp(500)
EndIf
EndFunc
the i added the fonction LookForChest() before moving to each aggro :
Code:
If $DeadOnTheRun = 0 Then $enemy = "Yeti"
[COLOR="red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-17348, -9895, $enemy)
If $DeadOnTheRun = 0 Then $enemy = "Oni and Wallows"
[COLOR="red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-14702, -6671, $enemy)
If $DeadOnTheRun = 0 Then $enemy = "Oni and Wallows"
[COLOR="Red"]If $DeadOnTheRun = 0 Then LookForChest()[/COLOR]
If $DeadOnTheRun = 0 Then AggroMoveToEx(-11080, -6126, $enemy, 2000)
This might not be very efficient nor accurate, but it works : the bot oppened a chest after killing Yetis !!!
If someone has a better idea or a better way to do this i'm available to test it !
Np you're welcome!
I have a suggestion for your "Chest looking"
In the "CommongFunction.au3" File is a Function called "Fight" this "Fight"-Function is called in your "AggroMoveToEx" and is used to fight the enemies and loot the stuff, which is dropped.
Code:
Func Fight($x, $s = "enemies")
Local $lastId = 99999, $coordinate[2],$timer
CurrentAction("Fighting " & $s & " !")
Do
$Me = GetAgentByID(-2)
$energy = GetEnergy()
$skillbar = GetSkillbar()
$useSkill = -1
For $i = 0 To 7
$recharged = DllStructGetData($skillbar, 'Recharge' & ($i + 1))
$strikes = DllStructGetData($skillbar, 'AdrenalineA' & ($i + 1))
If $recharged = 0 AND $intSkillEnergy[$i] <= $energy Then
$useSkill = $i + 1
ExitLoop
EndIf
Next
$target = GetNearestEnemyToAgent(-2)
$distance = ComputeDistance(DllStructGetData($target, 'X'),DllStructGetData($target, 'Y'),DllStructGetData(GetAgentByID(-2), 'X'),DllStructGetData(GetAgentByID(-2), 'Y'))
If $useSkill <> -1 AND $target <> 0 AND $distance < $x Then
If DllStructGetData($target, 'Id') <> $lastId Then
ChangeTarget($target)
RndSleep(150)
CallTarget($target)
RndSleep(150)
Attack($target)
$lastId = DllStructGetData($target, 'Id')
$coordinate[0] = DllStructGetData($target, 'X')
$coordinate[1] = DllStructGetData($target, 'Y')
$timer = TimerInit()
Do
Move($coordinate[0],$coordinate[1])
rndsleep(500)
$Me = GetAgentByID(-2)
$distance = ComputeDistance($coordinate[0],$coordinate[1],DllStructGetData($Me, 'X'),DllStructGetData($Me, 'Y'))
Until $distance < 1100 or TimerDiff($timer) > 10000
EndIf
RndSleep(150)
$timer = TimerInit()
Do
$target = GetNearestEnemyToAgent(-2)
$distance = ComputeDistance(DllStructGetData($target, 'X'),DllStructGetData($target, 'Y'),DllStructGetData(GetAgentByID(-2), 'X'),DllStructGetData(GetAgentByID(-2), 'Y'))
If $distance < 1250 Then
UseSkill($useSkill, $target)
RndSleep(500)
EndIf
Attack($target)
$Me = GetAgentByID(-2)
$target = GetAgentByID(DllStructGetData($target, 'Id'))
$coordinate[0] = DllStructGetData($target, 'X')
$coordinate[1] = DllStructGetData($target, 'Y')
$distance = ComputeDistance($coordinate[0],$coordinate[1],DllStructGetData($Me, 'X'),DllStructGetData($Me, 'Y'))
Until DllStructGetData(GetSkillbar(), 'Recharge' & $useSkill) >0 or DllStructGetData($target, 'HP') < 0.005 Or $distance > $x Or TimerDiff($timer) > 5000
EndIf
$target = GetNearestEnemyToAgent(-2)
$distance = ComputeDistance(DllStructGetData($target, 'X'),DllStructGetData($target, 'Y'),DllStructGetData(GetAgentByID(-2), 'X'),DllStructGetData(GetAgentByID(-2), 'Y'))
Until DllStructGetData($target, 'ID') = 0 OR $distance > $x
If CountSlots() = 0 then
CurrentAction("Inventory full")
Else
CurrentAction("Picking up items")
PickupItems(-1, $x)
LookForChest() ;//ADD THIS LINE HERE
EndIf
EndFunc
You can modify this function to look for chests after the bot picked up the loot (see the 3rd line from the bottom), that way you dont have to edit multiple lines of code and your bot looks for a chest after every fight he did
[Selling] GW1 50/50 HoM + GWAMM + unlinked ~ available until 20.02.2017 ~ 12/28/2016 - Guild Wars Trading - 48 Replies I'm selling amazing account!
Because no1 is buying and I'm trying to sell it for long time, account will be withdrawn from the market 20.02.2017. I will stop selling it after that time.
withdrawn from the market
http://s32.postimg.org/vt0fmhhsl/Ho_M.jpg
http://s32.postimg.org/3za15anh1/main.jpg
Important Notes
- serious buyers only
► Free Avatars Event | Facebook Event | Momo Designs [ July 2 – July 4 ] 07/02/2016 - Freebies - 1 Replies http://www.elitepvpers.com/forum/customavatars/ava tar6844591_19.gif
http://i.epvpimg.com/sxVGh.png
Order you Free Avatar Design now . From 2/7/2016 to 4/7/2016
● like & share our official page on facebook
● post your design details on the wall of event
● your design will be ready in few min
Facebook Page : Here
Event : Here
[Selling] WTS: GW2+GW1 HOM 39/50 GW1 R12 07/09/2015 - Guild Wars 2 Trading - 1 Replies Guild wars acc r12
Im going to sell my Ha r12 Rank guild wars account. Its linked to an GW2 (I will sell both) Account.
I already changed Email-Adress so you will get all the informations u need and you just need to change the E-mail password. (Serial, Email Account Password, Email, GW account password).
Account got fac proph nightfall and eotn + bonus mission pack .
HOM 39/40
I prefer middelman for the deal!
Only will sell to trusted user!