Forums » Suggestions

Storable Nav Routes

Dec 06, 2007 Killdog Deathwad link
I have searched the forum but it appears this has not been suggested before. Probably for good reason but here goes anyway...

I would dearly like to see a few features added to the nav screen to aid navigation.

These are:

1) A button, positioned similarly to the existing "undo last click" one, that would automatically save a nav route that you have plotted. This would allow you to set a route, save it and then re-plot it again at the touch of a single button.

2) I'd also like to see the ability to automatically plot the reverse route.

Why would you need these features? Well, I'm glad you asked...

As a hypothetical example, say that you are attempting to build faction standings or have just found a killer trade route and you have set a course from Edras to Ukari, including several in-system waypoints to go around storms in Odia and Latos. You are probably going to want to travel this route many, many times, not only in the "forward" direction (ie. Edras to Ukari) but also in the "reverse" direction (Ukari to Edras). However, doing this manually could take something like 15 or more mouse clicks per trip, per direction. Setting up just two round trips could easily exceed 60 mouse clicks, even if you don't make any mistakes, and it's likely that you will want to make this trip dozens of times. Being able to save the route (with an option to automatically include the reverse route) would save a huge number of mouse clicks and time.

The interface I had in mind would be a button that said something like "Save current route" with a check-box next to it labelled as "Plot reverse route". If the reverse route is checked, the nav-comp automatically plots the reverse course. If the save button is then hit, it will save both the forward and reverse route. If the reverse box is not checked (or is unchecked again), the reverse route is not plotted and the save button would only save the forward route. Of course, there will also need to be another button that will allow you to "recall" or "load" a saved route.

The only problem with this that I can see is, what happens if you "load" a route when you are nowhere near the start point of the route. There are two possibilities in my view...

a) it does not allow you to recall the route (sub-optimal in IMHO)
b) It automatically precedes the route with a direct route from your current location to the start point of the route (similar to what happens now if you have a route set and you die and respawn at a different location). This is probably the best solution.

If this suggestion proves to be popular and is implemented, perhaps we could even go further and provide for the saving and recalling of multiple routes accessible via a combo box list where saved routes can be selected by a user-assigned name (assigned at the time of saving). However, for now, I'd be satisfied with the ability to just save one route at a time.

Would anyone else find this suggestion useful?

Cheers,
KD
Dec 06, 2007 mr_spuck link
hey! the reverse nav route button was my first ever ui mod! but I lost it when my filesystem ate itself.. it wasn't that complex though

you know about /navroute?

a list with navroutes in the dialog would be cool ..I'd imagine the list. below it an entry field which is prefilled with the current location and destination and the save button next to it.
Dec 06, 2007 Killdog Deathwad link
you know about /navroute?

Nope. Is that a command line method of setting navpoints?
If so, it should be a very easy matter to setup the suggestions I have outlined above. In fact, you could just about do it in a plug in...I think.
Dec 06, 2007 Eonis Jannar link
/navroute is a neat command which not many people seem to know about, oddly enough.

Syntax:

/navroute add [system] [sector] - adds the given navpoint to your navroute
/navroute save 'filename' - saves the navroute to a file named filename.navroute
/navroute load 'filename' - loads the navroute from a file named filename.navroute and plots it in your nav computer

If you're into Lua, the NavRoute table (if it still exists, it's been a while since I've looked at the table list) has the Lua functions those commands call, and you can have fun with those plugin-wise; it'd be relatively trivial to write a navroute reversal plugin, or a list of saved navroutes, or a UI mod to save the currently plotted navroute. The last one less so because UI mods get sorta messy atm, but nonetheless.
Dec 06, 2007 slime73 link
Really simple Navroute-reversing Lua Plugin
Put the unzipped folder into your Plugins folder, and type "/ReverseNav" ingame.
Dec 06, 2007 Eonis Jannar link
My point exactly. Thanks slime.
Dec 07, 2007 Hedgehogs4Me link
/me thinks of the possibility of making a plugin that allows you to set a route that goes between 2 places 20 times with only a command. Hmm... well, I probably couldn't do it =D
Dec 07, 2007 Eonis Jannar link
declare('Foobar')

Foobar.lowerbound = 1
Foobar.upperbound = 7680

function Foobar.foobar (a, b)
for i=1,20 do
NavRoute.addbyid(a)
NavRoute.addbyid(b)
end
end

function Foobar.foobarCommand(data, args)
if (not args or not args[1] or not args[2]) then print('Usage: /foobar sectorid1 sectorid2')
else
sec1 = tonumber(args[1])
sec2 = tonumber(args[2])
if (not sec1 or not sec2) then print('Usage: /foobar sectorid1 sectorid2')
else if (sec1 <= Foobar.lowerbound or sec1 >= Foobar.upperbound or sec2 <= Foobar.lowerbound or sec2 >= Foobar.upperbound) then print('Usage: /foobar sectorid1 sectorid2')
else Foobar.foobar(sec1, sec2) end
end
end

RegisterUserCommand('foobar', Foobar.foobarCommand)

I wrote that in like 10 minutes in the Reply box, so it might not work, but it looks like it should.
Dec 07, 2007 slime73 link
declare('NavThing', {})

function NavThing.plot(sectorstr1, sectorstr2, num)
 num = tonumber(num)
 for i=1, num do
  NavRoute.add(sectorstr1)
  NavRoute.add(sectorstr2)
 end
end

function NavThing.cmd(_,data)
 if not data then return end
 if #data < 3 then return end
 NavThing.plot(unpack(data))
end

RegisterUserCommand("NavThing", NavThing.cmd)

--(UNTESTED) That should work too. example: /navthing "Sedina A-1" "Sedina B-1" 15
--Note the sectors have to be in quotes
--Unlike Eonis', you don't have to know the sector ids of the sectors you want for this one to work.
Dec 08, 2007 Hedgehogs4Me link
Ooo, slime, I'm totally using that, I'll try Eonis's if yours doesn't work. Ty both of you
1 thing though, is the # after the two sector names (like "15" in /navthing "Sedina A-1" "Sedina B-1" 15) the number of round trips there and back, or the number of half-round trips (just there or just back)?
Dec 08, 2007 slime73 link
Round trips. :)
Dec 08, 2007 Eonis Jannar link
Bah, I couldn't remember the code for transforming sector names into ids. :(
Mar 18, 2008 SilentWave link
Why not just keep preset nav routes in-game, rather than savable to a text file? You would use waypoints to guide the saved paths.

For example, you're in Sedina and you want to go to GR via Helios. You set the route, mapping Helios as Waypoint 1 and GR as the Waypoint 2, then you head out. But when you reach Latos, you get ganked by a pirate and end up back in your home station in Deneb. Your nav route is then automatically set to take you to Helios via the shortest distance, and then to GR, even though this means you're going through GR to get to Helios first.

This method seems ideal.

Also, you could save entire routes like the Deneb Run using this method.