taultunleashed logoHarvestBot 311 : EverQuest 2 Premium Discussions - Page 5
newtopic  postreply
 [ 77 posts ]  Previous  1, 2, 3, 4, 5, 6  Next
blue large dot

HarvestBot 311 : EverQuest 2 Premium Discussions - Page 5

Posted: June 8th, 2005, 5:36 pm
 
thewatcher
thewatcher's Reps:
User avatar
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...


Reply with quote
Posted: June 8th, 2005, 11:03 pm
 
envison

Total Posts: 34
Joined: April 7th, 2005, 7:35 pm
envison's Reps: 0
User avatar
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.


Reply with quote
Posted: June 9th, 2005, 11:13 am
 
loraik
loraik's Reps:
User avatar
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


Reply with quote
Posted: June 9th, 2005, 12:05 pm
 
redman
redman's Reps:
User avatar
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


Reply with quote
Posted: June 9th, 2005, 12:13 pm
 
loraik
loraik's Reps:
User avatar
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?


Reply with quote
Posted: June 9th, 2005, 3:30 pm
 
cessdrax
cessdrax's Reps:
User avatar
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..


Reply with quote
Posted: June 10th, 2005, 7:46 am
 
wyvernx

Total Posts: 6718
Joined: May 1st, 2004, 4:00 am
wyvernx's Reps: 21
User avatar
administrator
premium
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!


Reply with quote
Posted: June 10th, 2005, 8:06 am
 
loraik
loraik's Reps:
User avatar
I found that out last night, had to turn off NAV totally.


Reply with quote
Posted: June 10th, 2005, 10:42 am
 
redman
redman's Reps:
User avatar
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


Reply with quote
Posted: June 15th, 2005, 8:06 am
 
psouza4
psouza4's Reps:
User avatar
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.


Reply with quote
Posted: June 15th, 2005, 6:08 pm
 
psouza4
psouza4's Reps:
User avatar
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.


Reply with quote
Posted: June 16th, 2005, 10:54 am
 
redman
redman's Reps:
User avatar
(!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


Reply with quote
Posted: June 16th, 2005, 2:11 pm
 
psouza4
psouza4's Reps:
User avatar
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


Reply with quote
Posted: June 17th, 2005, 7:48 am
 
thewatcher
thewatcher's Reps:
User avatar
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.


Reply with quote
Posted: June 17th, 2005, 10:22 am
 
psouza4
psouza4's Reps:
User avatar
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...


Reply with quote
Want Advertisements After The Last Post Removed? Create A Free Account!

blue large dot Who is online
Users browsing this forum: No registered users and 217 guests

Popular Sections
SWTOR Cheats
Guild Wars 2 Cheats
Guild Wars 2 Hacks
Guild Wars 2 Bots
Diablo 3 Cheats
Guild Wars 2 Mods

Popular Sections
WoW Cataclysm Cheats & Exploits
WoW Cataclysm Hacks & Bots
Star Wars The Old Republic Cheats
SWTOR Mods
Torchlight 2 Cheats
SWTOR Space Mission Bots
Site Nav and RSS
RSS Feed of EverQuest 2 Premium Discussions RSS Feed 
Sitemap of EverQuest 2 Premium Discussions Sitemap 
SitemapIndex SitemapIndex
RSS Feed RSS Feed
Channel list Channel list
left bottom corner Site and Contents Copyright 2001-2012 All Rights Reserved TaultUnleashed.com bottom corner
top left
top right
createaccount
Username:   Password:   Remember Me?