EQWatcher Evolution > The Basics > Navigation Module


The navigation module handles all of the sounds and speech associated with... well.. navigation of course.

There is now lots to play with in the navigation module, including zone time calculation, calculating your current speed and heading, finding a destination /loc (can give you the direction relative to your current heading or just your current /loc, and an ETA based on your current speed), and saving/retrieving named waypoint locations such as "bank" or "butcherblock zone" or "dvinn spawn". 

Waypoints are all stored in separate files for each zone, and they are not case sensitive.  There is no current default list of waypoint locations, so go ahead and suggest some to be included.  If defaults are introduced, they will be stored in a new directory, so it won't overwrite anyone's waypoints they have stored already.

All of the navigation module's calculations are based on the X and Y coordinates given when you hit /loc.  Z is not used, since that just makes my head hurt even thinking about it.  Anything after the whole numbers in the /locs are ignored (i.e. when it says -1234.56 only the -1234 is used).  With all this in mind, your run speed according to EQWatcher will not be constant, and may not be as accurate as it could be.  The best way to observe your speed is to run straight for at least a few seconds -- the less time between the two /locs, the less accurate the speed calculation will be.

Some of the navigation commands are based on a single /loc, and some are based on your last two /locs.  Single /loc commands are the ones that do not require calculating your heading or speed.  These are the "waypoint" and "bearing" commands.  The double /loc commands are commands that DO require calculating your heading or speed, such as giving an estimated time of arrival to a destination based on your speed (given in seconds), or giving a direction to a waypoint based on your current heading (destination at 12 o'clock, or destination at 1 degrees to the right, etc).  These commands include "speed", "heading", "moving", and "ETA".  There are also commands that are not based on /locs at all, including "find", "zone time", "average zone time" and the preference commands.

Now to explain each of the commands.


speed: This command determines your speed in meters per second (this is assuming that loc's are given in meters), and spits it back at you using Text-to-Speech.  The calculation is based on your last two /locs, and assumes that you traveled in a straight line across (X,Y) between those two points.

heading: This command determines your current heading.  The calculation is based on your last two /locs, much the same way as speed is calculated.  Your heading can be given in directions (north, northeast, east, etc), or in degrees (0 degrees is north, 90 degrees east, etc), based on your preference.

bearing: (Note: Although heading and bearing mean pretty much the same thing, they have different uses here.) This command determines the heading you should travel at to reach a destination /loc.  The calculation is based on your last /loc and the destination /loc.  The destination can be set by giving the X,Y coordinates as parameters (bearing 1000,-1000 for example.  Since Beta 7R2 there is allowance for a space between the comma and the second coordinate).  If no destination is given, it will use the last destination used by any navigational destination-type command (find, moving, etc). 

moving: This command determines how you should turn relative to your current heading, to reach a destination /loc.  The calculation is based on your last two /locs, and the destination /loc.  The destination can be set by giving the X,Y coordinates as parameters along with the word "to" (moving to 1000,-1000 for example.  Since Beta 7R2 there is allowance for a space between the comma and the second coordinate).  If no destination is given, it will use the last destination used by any navigational destination-type command (find, bearing, etc). 

ETA: This command determines how long it should take you to reach your destination.  The calculation is based on your last two /locs, and the destintion /loc.  No destination /loc may be given with this command, it will ONLY give ETA based on the last destination used by any navigational destination-type command (find, bearing, etc).  Please note that heading is not figured into this calculation, so you could be heading entirely the wrong direction and it would still say you will get there soon.

waypoint [Name]: This command sets a waypoint at your current location (using your last /loc).  You must supply a name for the waypoint (examples: waypoint bank, waypoint djarn spawn, waypoint trakanon, waypoint vex thal zone).  The waypoint is stored in a file for your current zone.  If a waypoint with the name you supplied already exists, it is updated with your current location.

find [Waypoint]: This command finds a waypoint and sets your current destination (if the waypoint exists).  You must supply the waypoint name (examples: find bank, find butcherblock zone, find sol b zone, find wiz spires).

zone time: This command tells how long it took you to zone last time you zoned, to the nearest tenth of a second. 

average zone time: This command tells how long it takes you to zone on average, to the nearest whole second.


Preferences:


heading [degrees/directions]:  If the heading command is supplied with either "degrees" or "directions" (i.e. heading degrees)

relational [clocks/degrees]:  Relational headings can be given in either "clocks" or "degrees" (i.e. relational clocks).

say zone time [on/off]:  This will set EQWatcher to say your zone time automatically upon zoning.  This is ON by default.  To turn it off, use say zone time off instead.


Anecdotal example/tutorial type of thing:


Imagine this situation.  You are in Cobalt Scar, heading to Sirens Grotto zone.  You know the location of the tunnel to zone (1159,1570).  You are at the dragon circle after being ported in, and you want to know which direction to go to make it to your destination fastest, rather than following the wall.

Lucky for you, you use EQWatcher Evolution!  You check your current location.  You're not exactly near the destination loc.  You aren't moving yet, but you lost your mind and completely forgot which direction the tunnel is.  You type "/note bearing 1159,1570".  EQWatcher uses your current location and the destination location to tell you which direction to move.  Your heading setting is set to "directions", so EQWatcher tells you the destination is northwest.

You begin moving northwest.  Along the way, you want to know if you're heading straight at the tunnel, or if you're heading too far left or right.  You check your loc once, and then again as you're moving straight, about a second later.  You type "/note moving".  Your relational setting is set to "clocks", so EQWatcher tells you the destination is at 11 O'clock.  You know how a clock looks and that 12 O'clock is straight ahead, so you turn ever-so slightly left.

Now you want to know how much longer it will be before you arrive at the tunnel.  You check your loc once, and then again as you're moving straight, about a second later.  You type "/note ETA" (which you recognize as the abbreviation for Estimated Time of Arrival).  EQWatcher tells you "7 seconds" and then you realize your invisibility wore off ages ago and you're about to die from the sirens.

Just kidding, you had your invis after all.  Now that you're at the tunnel you don't want to ever remember this loc again, so you decide to figure out this waypoint mumbo jumbo.  You check your loc once.  You type "/note waypoint tunnel".  You smile as EQWatcher Evolution says "waypoint added."  Just to test it out, you type "/note find tunnel", and EQWatcher says "waypoint found at 1159 by 1570".  Excellent.  Now when you need to find it, you no longer need to remember the loc, just remember "tunnel", and use the find command!