|
 HarvestBot 311 : EverQuest 2 Premium Discussions - Page 5
|
|
Posted: June 8th, 2005, 5:36 pm
|
|
|
|
thewatcher
thewatcher's Reps:
|
I am currently messing with Jscript... building a library of classes for whatever my next project might be so I have not looked at the bot for quite a while as you can tell. BTW, Jscript just BLOWS away VBscript in my opinion, it's just so much easier to write code in. It's not perfect either of course but a huge improvement over VB.
I think my first project will be a path creator... you run around the path you want hitting your 'create waypoint' key at each waypoint, when you are done you copy the newly created ini file section into your harvest bot ini and you are done. Could take a little while since this is the first project that uses my new libraries...
|
|
|
|
|
Posted: June 8th, 2005, 11:03 pm
|
|
|
|
envison
Total Posts: 34
Joined: April 7th, 2005, 7:35 pm
envison's Reps: 0
|
Decided to setup 3.12 to test some things
Runs great love the no pause on the waypoints, makes it seem more lifelike.
However having a few issues,
#1 Sometimes the character enters battlemode with a monster it is targeting then strafes back and forth backing up. this will last 2-3 mins till he gets far enough away.
#2 Apon stopping the script it crashes EQ Client. Im hitting stop on Xunleashed Scripts UI, ill try using delete key maybe that will fix this.
|
|
|
|
|
Posted: June 9th, 2005, 11:13 am
|
|
|
|
loraik
loraik's Reps:
|
Setting up the .ini file for this now and had a few questions as a novice.
1.) You have an AvoidPlayers feature, is this because your toon under the control of this script is dancing around and doing all sorts of odd stuff?
2.) I assume when you timeout you auto camp or am I wrong?
3.) Hotbars, I am using a custom UI that has no Hotbar numbers, is there an easy way to determine what hotbar your using and when placing your buttons for harvesting are the "resource" numbering in the .ini file ref. the slots on the hotbar? If not how do you set your hotbar buttons so the script knows which one to push?
4.) The default zone, do you place the name of the zone your in (say The Feerrott) then setup the waypoints under the heading in the .ini file "The Feerrott"?
I think this covers the questions I had that I didn't see in the posts.
Loraik
|
|
|
|
|
Posted: June 9th, 2005, 12:05 pm
|
|
|
|
redman
redman's Reps:
|
loraik";p="66668 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): Setting up the .ini file for this now and had a few questions as a novice.
1.) You have an AvoidPlayers feature, is this because your toon under the control of this script is dancing around and doing all sorts of odd stuff?
This is about not harvesting on a resource where another player is already there. It's to avoid making someone angry at your bot... which leads to angry tells which you will ignore if afk, and petitions etc. Better to not do your thing RIGHT in front of other players. loraik";p="66668 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): 2.) I assume when you timeout you auto camp or am I wrong?
Not Sure. loraik";p="66668 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): 3.) Hotbars, I am using a custom UI that has no Hotbar numbers, is there an easy way to determine what hotbar your using and when placing your buttons for harvesting are the "resource" numbering in the .ini file ref. the slots on the hotbar? If not how do you set your hotbar buttons so the script knows which one to push?
Even if your UI doesnt show toolbar numbers they still do have numbers. It's going to send a SHIFT # where the # is the number you specify here. Put your keys on a bar and hold shift down and type 1,2,3,4... until you see your bar come up... that will tell you the number. (Presumes you havent remapped the shift # combos which by default are keyset switchers) loraik";p="66668 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): 4.) The default zone, do you place the name of the zone your in (say The Feerrott) then setup the waypoints under the heading in the .ini file "The Feerrott"?
The default zone was all about when that feature in the servicer was not working. Its kinda historical and not relevant now.
Yes to adding waypoints under the correct zone for where you are.
RedMan
|
|
|
|
|
Posted: June 9th, 2005, 12:13 pm
|
|
|
|
loraik
loraik's Reps:
|
Thanks for the info., on point one I guess I hadn't thought of that situation, I was thinking my toon would be bouncing around like a fool or something.
Is there a limit to the number of waypoints? For example if I want to harvest in The Feerrott there are tons of valleys and stuff I would need to map, st my search zones and return to point "A". Am I limited to a certain number?
|
|
|
|
|
Posted: June 9th, 2005, 3:30 pm
|
|
|
|
cessdrax
cessdrax's Reps:
|
Excellent script... Thanks for all your hard work on it.
I do have one issue with it, after about 3 or 4 harvestes, the everquest2.exe jumps up to 100% cpu utilization... Anyone seen that before, or have a fix?
Thanks...
<Edit>
Just read throught the other posts... sorry about posting this..
|
|
|
|
|
Posted: June 10th, 2005, 7:46 am
|
|
|
|
wyvernx
Total Posts: 6718
Joined: May 1st, 2004, 4:00 am
wyvernx's Reps: 21
|
Check to see if you have an antivirus program running. The way scripts are executed can cause yoru antivirus to scan the script 1000 times a second and it will cause lag. McAfee is the worst about it.
_________________
Use Search first, ask questions later!
|
|
|
|
|
Posted: June 10th, 2005, 8:06 am
|
|
|
|
loraik
loraik's Reps:
|
I found that out last night, had to turn off NAV totally.
|
|
|
|
|
Posted: June 10th, 2005, 10:42 am
|
|
|
|
redman
redman's Reps:
|
If you are seeing cpu at 100% try setting up a simple 2 location path. I found it was lagging hard with the non-pathed option but setting up a path fixed it.
RedMan
|
|
|
|
|
Posted: June 15th, 2005, 8:06 am
|
|
|
|
psouza4
psouza4's Reps:
|
Helpful hint I discovered that hasn't been posted yet:
EQ2 allows you to set your autorun key to the up and down arrows. Harvester bot doesn't like being set to {Up} for autorun though. Set it to numlock and now it works fine.
|
|
|
|
|
Posted: June 15th, 2005, 6:08 pm
|
|
|
|
psouza4
psouza4's Reps:
|
Fine piece of work here. Very commendable.
I've rewritten a lot of it... fine-tuning to my own needs as well as building extensions to it for stats and other purposes. Maybe take this list of changes as suggestions... or maybe not
- Added specific harvest counts, including total number of items counted, collection items, uncommon items, and rares
- Added display for current location and distance to current target
- Made abrupt stops before FindResource in NavigateXY to tighten down a waypoint list (it was running way out of range and zigzagging too much)
- Added left/right movement to node targeting section in case the node can only be seen if the camera angle is moved slightly (i.e. hills, or if the script traveled past the node, etc.)
- Added /log (twice) at the start of the script so the logfile the script uses is used correctly -- otherwise, it's very easy to have the wrong logfile in use which can prevent quit-on-tell detection from working properly
- Added secondary chat key 'R' (reply to tell's), which pauses the script the same as ENTER (configurable through .ini too)
I think that's all I did.. <ponder>
Also, unrelated to the code, you may want to consider updating the .ini for dens to say 'animal den', 'beast den', etc. with the change to den names about a month or so back.
Here's a screen shot:
You do not have the required permissions to view the files attached to this post.
|
|
|
|
|
Posted: June 16th, 2005, 10:54 am
|
|
|
|
redman
redman's Reps:
|
(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))): Made abrupt stops before FindResource in NavigateXY to tighten down a waypoint list (it was running way out of range and zigzagging too much)
Are you running it with the radar up or is your system generally laggy?
I know if I have the radar up, nav is loose with any of the scripts.
It would be great if TheWatcher could incorporate your stuff into the script, it looks very generally applicable.
RedMan
|
|
|
|
|
Posted: June 16th, 2005, 2:11 pm
|
|
|
|
psouza4
psouza4's Reps:
|
Nah, very fast system and not using radar while harvesting in general. I only have problems with it zig-zagging because it misses waypoints that I have set close together. For example, if they're spaced at a distance of about 5-10 clicks away from each other. I do this in areas that are otherwise impossible to navigate automatically (some areas of Feerrott, Rivervale, etc.).
Although I did rewrite the entire FindResource function to improve speed. Instead of updating the list of available resources for each node type you're searching for, I have it just do it once for the whole set of searches at each stop. I also eliminated the calls to FindNextNearestMob since they were logically unnecessary (if we found one closer, why would we ever go to one further away?) and actually fixed a bug in the process that was eliminating valid nodes 'close by' if they were behind you. The function could be made even more efficient if we wanted a raw list of all of the nodes and cycled through them, examining each node name versus our list of nodes we're interested in (single-pass) and reducing the number of distance calculations by half in the process, but I have only been making minor modifications in general and not looking to see if something like this is even possible yet.
Here is my version of FindResource:
(!empty($user->lang['CODE'])) ? $user->lang['CODE'] : ucwords(strtolower(str_replace('_', ' ', 'CODE'))): Function FindResource() Dim index, mobname, distance, mobx, moby, foundid Dim rx, ry, TmpSpawnID Dim nodefinder Dim lastdistance, thisdistance FindResource = False spawnid = -1 nodefinder = -1 lastdistance = 99999 thisdistance = 99999 If MaxWander > 5 Then oDebug.PrintStatus "Looking for resources (updating node data)...", 1 oSvcObj.UpdateData For index = 0 to 9 if resources(index,2) Then oDebug.PrintStatus "Looking for '" & resources(index,1) & "'...", 1
tmpspawnid = oSvcObj.FindNearestMob(resources(index,1)) If NodeIsValid(TmpSpawnID) Then rx = oSvcObj.mobx(TmpSpawnID) ry = oSvcObj.moby(TmpSpawnID)
thisdistance = Abs(DistanceTo(rx, ry))
oDebug.PrintStatus "Looking for '" & resources(index,1) & "'... found! Distance is " & round(thisdistance, 1) & ".", 5
If WithinRange(rx,ry,WayPointX,WayPointY,MaxWander) or WithinRange(rx,ry,currx,curry,15) Then oDebug.PrintStatus "(within range, distance is " & round(thisdistance, 1) & " versus max of " & MaxWander & ")", 5
thisdistance = Abs(DistanceTo(rx, ry)) if ClosestFirst then If (nodefinder < 0) or (thisdistance < lastdistance) Then nodefinder = TmpSpawnID lastdistance = Abs(DistanceTo(rx, ry)) distance = lastdistance resourceindex = index MobName = getmobname(oSvcObj, nodefinder) MobX = oSvcObj.mobx(nodefinder) MobY = oSvcObj.moby(nodefinder) End If Else nodefinder = TmpSpawnID distance = lastdistance resourceindex = index MobName = getmobname(oSvcObj, nodefinder) MobX = oSvcObj.mobx(nodefinder) MobY = oSvcObj.moby(nodefinder) Exit For End If Else oDebug.PrintStatus "(out of range, distance is " & round(thisdistance, 1) & " versus max of " & MaxWander & ")", 5 End If End If End If Next If nodefinder > -1 then MoveToX = MobX MoveToY = MobY SpawnID = nodefinder FindResource = True oDebug.Print "Moving to " & resources(ResourceIndex,1), 1 Else oDebug.Print "Resources gone, moving on...", 1 if EraseBadSpawns then BadSpawnCount = 0 end If HarvestedNodeCount = 0 end if End If End Function
|
|
|
|
|
Posted: June 17th, 2005, 7:48 am
|
|
|
|
thewatcher
thewatcher's Reps:
|
psouza4";p="67054 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): Fine piece of work here. Very commendable.
Thanks, that's nice to hear ). psouza4";p="67054 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): I've rewritten a lot of it... fine-tuning to my own needs as well as building extensions to it for stats and other purposes. Maybe take this list of changes as suggestions... or maybe not  You know I have asked repeatedly if anyone was interested in stats and got no reply so I didn't bother.. almost wrote it for myself then didn't get around to it. Strange huh? psouza4";p="67054 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): - Added specific harvest counts, including total number of items counted, collection items, uncommon items, and rares
- Added display for current location and distance to current target
- Made abrupt stops before FindResource in NavigateXY to tighten down a waypoint list (it was running way out of range and zigzagging too much)
- Added left/right movement to node targeting section in case the node can only be seen if the camera angle is moved slightly (i.e. hills, or if the script traveled past the node, etc.)
- Added /log (twice) at the start of the script so the logfile the script uses is used correctly -- otherwise, it's very easy to have the wrong logfile in use which can prevent quit-on-tell detection from working properly
- Added secondary chat key 'R' (reply to tell's), which pauses the script the same as ENTER (configurable through .ini too)
Sounds pretty cool, about what needed to be done. Would you care to continue with this project and maintain it from here forward? Sounds like you've pretty much wrapped up what needs to be done and I've pretty much moved on to Jscript and going back to VB after Jscript kinda sucks. ) If you haven't worked with Jscript yet you should check it out, it's SOOooo much better than VB in my opinion. psouza4";p="67054 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))): I think that's all I did.. <ponder>
Also, unrelated to the code, you may want to consider updating the .ini for dens to say 'animal den', 'beast den', etc. with the change to den names about a month or so back.
Yup, that needed to be done too, how about it? You want to take over? You sounds very capable and your time commitment should be very small.
|
|
|
|
|
Posted: June 17th, 2005, 10:22 am
|
|
|
|
psouza4
psouza4's Reps:
|
Sure, I don't mind -- doing it anyway for myself, so might as well update everyone. I will refer all stupid questions to you, though <cough>
Yah I've used VBScript and JScript. I actually rather shy away from both. I use a lot of C++ and some C# with a lot of freeware and shareware products out there. I also maintain a number of websites using PHP and MySQL... all in-house servers using my own equipment. I'm a coding nut and have been for years, so when I got my hands on this, I couldn't leave well enough alone <grin>
I'll release version as 4.00 then with my updates and perhaps start a new thread. Wee...
|
|
|
|
|
Who is online |
|
Users browsing this forum: No registered users and 79 guests |
|
|
|