In-Development TradeDangerous: power-user trade optimizer

wolverine2710

Tutorial & Guide Writer
Something I can't explain with the nav command.

First a trivia found out by Harbinger in the crowd sourcing thread:
Every star system in Galactic Pill of SB2 can be reached with a ship capable of
a 11.325 LY jump range..

Playing around with the TD nav command. Flying from eranin to sanguaralaru.
Jump range: 11.325.
Code:
wolverine@WOLVERINE-PC /c/Data/Games/Elite Dangerous/TD_git_repository (master)
$ trade.py --detail nav --ly-per 11.325 eranin sanguaralaru
From ERANIN to SAN GUARALARU with 11.325ly per jump limit.
Action | System                         | Jump Ly | Total Ly
------------------------------------------------------------
Depart | ERANIN                         |    0.00 |     0.00
Via    | LHS 3006                       |    7.51 |     7.51
Via    | G 239-25                       |    6.00 |    13.51
Via    | ROSS 1057                      |   11.22 |    24.72
Via    | LHS 3297                       |    6.80 |    31.53
Via    | LP 9-231                       |    7.06 |    38.58
Via    | WREGOE WV-E D11-104            |    8.65 |    47.23
Via    | PI-1 URSAE MINORIS             |   10.81 |    58.04
Via    | NLTT 44050                     |    6.62 |    64.66
Via    | WREDGUIA FZ-M B48-3            |    8.93 |    73.58
Via    | 59 DRACONIS                    |   10.70 |    84.28
Via    | LALANDE 37923                  |    8.32 |    92.60
Via    | WREDGUIA XH-Q B46-1            |   10.41 |   103.02
Via    | NLTT 50716                     |    7.79 |   110.81
Via    | MORMO                          |    8.46 |   119.27
Via    | WREDGUIA VM-Q B46-2            |    8.75 |   128.03
Via    | HR 8423                        |   10.48 |   138.50
Via    | HIP 106882                     |   10.31 |   148.81
Via    | HIP 110773                     |    7.44 |   156.25
Arrive | SAN GUARALARU                  |    6.05 |   162.30

Started increasing the jump range. ly--er 27.49 gives
Code:
wolverine@WOLVERINE-PC /c/Data/Games/Elite Dangerous/TD_git_repository (master)
$ trade.py --detail nav --ly-per 27.49 eranin sanguaralaru
From ERANIN to SAN GUARALARU with 27.49ly per jump limit.
Action | System                         | Jump Ly | Total Ly
------------------------------------------------------------
Depart | ERANIN                         |    0.00 |     0.00
Via    | MANAMAYA                       |   27.44 |    27.44
Via    | NLTT 46629                     |   24.96 |    52.41
Via    | WREDGUIA XH-Q B46-1            |   22.55 |    74.95
Via    | WREDGUIA AT-O B47-0            |   18.22 |    93.17
Arrive | SAN GUARALARU                  |   27.48 |   120.65

Decided to set ly-per to 27.48 - which is the longest jump in the previous example. This interestingly enough gives a DIFFERENT route.
Code:
wolverine@WOLVERINE-PC /c/Data/Games/Elite Dangerous/TD_git_repository (master)
$ trade.py --detail nav --ly-per 27.48 eranin sanguaralaru
From ERANIN to SAN GUARALARU with 27.48ly per jump limit.
Action | System                         | Jump Ly | Total Ly
------------------------------------------------------------
Depart | ERANIN                         |    0.00 |     0.00
Via    | MANAMAYA                       |   27.44 |    27.44
Via    | NLTT 46629                     |   24.96 |    52.41
Via    | WREDGUIA XH-Q B46-1            |   22.55 |    74.95
Via    | WREDGUIA YD-I C23-12           |   25.57 |   100.52
Arrive | SAN GUARALARU                  |   21.37 |   121.89

Shortest path in LY so far 120.65. This seems to indicate (to me) that with a ly--per of say 121 I should be able to make the trip in one go. So I selected ly--per 130, to be on the safe side
Code:
wolverine@WOLVERINE-PC /c/Data/Games/Elite Dangerous/TD_git_repository (master)
$ trade.py --detail nav --ly-per 130 eranin sanguaralaru
From ERANIN to SAN GUARALARU with 130.0ly per jump limit.
Action | System                         | Jump Ly | Total Ly
------------------------------------------------------------
Depart | ERANIN                         |    0.00 |     0.00
Via    | LP 98-132                      |    5.23 |     5.23
Via    | PERENDI                        |   27.08 |    32.31
Via    | 59 DRACONIS                    |   27.75 |    60.06
Via    | LALANDE 37923                  |    8.32 |    68.38
Via    | WREDGUIA AT-O B47-0            |   24.45 |    92.83
Arrive | SAN GUARALARU                  |   27.48 |   120.31
This again gives a different route AND the shorstest so far, namely 120.31. BUT I had expected to being able to jump directly from Eranin to SAN GUARALARU.

Has anyone an explanation for what I'm doing wrong OR is there perhaps an issue with the nav command.

Edit: Is perhaps fuel taken into account.
 
Last edited:
2 New systems found by RedWizzard:
Code:
'Matask',-70.25,51.03125,-47.46875,'RedWizzard','2014-10-21 05:24:29'
'WREDGUIA IF-L b49-3',-88.375,35.40625,-4,'RedWizzard','2014-10-21 12:43:18'
Added to the merge queue. Also capitalization rationalized to FD standard.
 
Has anyone an explanation for what I'm doing wrong OR is there perhaps an issue with the nav command.

TD builds a static link list between systems on startup. The max ly per jump for this calculations is defined by the best ship (currently this is the Lakon Type 6 with 29.37 ly).

The current upper limit for --ly-per is therefor 29.37, no matter what you spezify in the command line.

You could of course add a new ship with a better range:
Code:
'Whole Beta2',228,2600,52345.0,130,130,180,235
Code:
$ ./trade.py -v nav --ship wholebeta2 eranin sanguar
From ERANIN to SAN GUARALARU with 130.0ly per jump limit.
Action | System                         | Jump Ly | Total Ly
------------------------------------------------------------
Depart | ERANIN                         |    0.00 |     0.00
Arrive | SAN GUARALARU                  |  117.79 |   117.79
 
Last edited:

Harbinger

Volunteer Moderator
I came across another one:

A new system I happened upon, it doesn't display in the navigation tab.

Wregoe MK-Q b46-1 (-30.65625, 58.28125, -22.03125).

Distances:
  • Sol: 69.44
  • Wolf 497: 48.848
  • Huokang: 29.531
  • Demeter: 42.313
  • Clotti: 60.556
  • Fu Haiting: 53.955
  • San Guaralaru: 102.69
  • Haras: 98.417
  • Arabha: 91.253

TradeDangerous System.csv addition:
Code:
'Wregoe MK-Q b46-1',-30.65625,58.28125,-22.03125,'Beta2-Inferred','2014-10-21 20:03:35'
 
TD builds a static link list between systems on startup. The max ly per jump for this calculations is defined by the best ship (currently this is the Lakon Type 6 with 29.37 ly).

The current upper limit for --ly-per is therefor 29.37, no matter what you spezify in the command line.

Hm, looks a bit problematic to me on the long run now that ship modules can be swapped out.

Not only do better engines get a larger distance, but using lower weight modules in the other slots also increases the range.

Sure there is also a max you can achieve by that but it's not easy to determine.
 
I've been working on a side project for TD. It is not as good as flask but for the simplier approach, I've set up a tester site for TD Web.

The idea behind this was with Overwolf now able to support overlays in ED. I have been writing a module for overwolf that will allow TD to run on an overlay. It basically will run a website locally and wrap it with overwolf.

This wasn't meant for full fledged interaction, like adding prices without tabbing. But you can still run commands from the site and get output. The backend is still the same program, python. This is just a way to talk to it locally on a pc.

I think that if we have different flavors of front ends, it will bring more in to appreciate the software. You can have the high end flask, the low end standard command line web, or the cmd window on desktop.


Here is the site http://76.189.82.1:8080/form.php

This is only a concept design at this point.

Looks good!
 
Has anyone an explanation for what I'm doing wrong OR is there perhaps an issue with the nav command.

It's probably a simple rounding vs truncation issue. When it says "27.48" it's probably "27.48001" or something.

The other possibility is that we're using "<" rather than "<=" somewhere, so when you say "27.48" it's only using routes less than 27.48, e.g. 27.4799999999.

Either way, please file an issue for it on the bitbucket site.

https://bitbucket.org/kfsone/tradedangerous/issues?status=new&status=open
 
Hm, looks a bit problematic to me on the long run now that ship modules can be swapped out.

Not only do better engines get a larger distance, but using lower weight modules in the other slots also increases the range.

Sure there is also a max you can achieve by that but it's not easy to determine.

TradeDB::buildLinks takes an argument to tell it the maximum distance it should sweat over possible star-to-star jumps, and the way we determine that value is data-driven.

You're always going to need an upper constraint for jumps, and the ship stuff is there to make it easier when possible, for all other cases there is "--ly".
 

ShadowGar

Banned
I had a few hours tonight to work on the TD app for Overwolf and made a video to show it working.


Now, understand that this is still a concept and the gui is ugly in game. (Anyone into html design?) But at least I show in this video that it does work and does not compromise the game frames.

I also launch a video towards the end to show also that you can browse the net while using TD, all in game without tabbing.

So far this app is only for while running on a trade. Its not really for entering prices and such. This will help you from having to tab out on each stop to determine the next stop. Its baby steps, but someone with way more knowledge in coding than me can take my existing code and make something awesome.


Maybe make custom VR consoles for ships?

Video is sort of longer than I wanted but I didn't want to cut anything. I wanted to show there was no funny business.

https://www.youtube.com/watch?v=HqO9InVq60Q

check out around 6 minutes to see video in TD.

And I have no idea why there is no sound. The original had sound before uploading.

If you want to contribute, https://bitbucket.org/ShadowGar/trade-dangerous-overwolf/overview
 
Last edited:
anyone know why trade.py nav --ly 7.5 eranin 239-25 gives a different route to the one from the weblink
trade.py nav eranin to 239-25 ?
command line different route,
ERANIN ( 0.00)
I BOOTIS ( 5.48)
AULIN ( 3.53)
RAKAPILA ( 6.55)
LP 271-25 ( 5.11)
ROSS 52 ( 6.88)
OT SERPENTIS ( 5.88)
LHS 411 ( 7.04)
MIQUICH ( 6.48)
G 181-6 ( 6.22)
TILIAN ( 4.58)
LHS 3262 ( 6.78)
DN DRACONIS ( 5.79)
LALANDE 29917 ( 5.40)
G 239-25 ( 5.71)
is it something to do with refueling if so how do i make command line give same results?

i only use TD as a route planner
 
Sorry to join the conversation so late, Frontier's forum registration is currently broken so it took me a minute.

First off the demo link:

https://www.youtube.com/watch?v=WW3dX0xyhS0

I've been working on a WebUI for TradeDangerous on a fork of the project, and I've got something that's worth looking at now. The design is such that you could self host on the same machine ED is running on, on a website, or on a local server. My group is using a shared instance, all of us with iPads, phones or laptops as a second device.

@ShadowGar, I'm not married to the Flask container, I do UI/UX and don't care about who's giving/taking JSON from the browser :) If the PHP component can start streaming that, maybe it makes sense to merge our two forks.

My demo vid has no narration, but gives a pretty good idea of the flow I'm going for. I'll update it with a more detailed one once other features are more complete.
 
anyone know why trade.py nav --ly 7.5 eranin 239-25 gives a different route to the one from the weblink
trade.py nav eranin to 239-25 ?
command line different route,
ERANIN ( 0.00)
I BOOTIS ( 5.48)
AULIN ( 3.53)
RAKAPILA ( 6.55)
LP 271-25 ( 5.11)
ROSS 52 ( 6.88)
OT SERPENTIS ( 5.88)
LHS 411 ( 7.04)
MIQUICH ( 6.48)
G 181-6 ( 6.22)
TILIAN ( 4.58)
LHS 3262 ( 6.78)
DN DRACONIS ( 5.79)
LALANDE 29917 ( 5.40)
G 239-25 ( 5.71)
is it something to do with refueling if so how do i make command line give same results?

i only use TD as a route planner

It seems there is a bug in my route calculation: I see no reason taking the route through BD+47 2112 -> Bolg -> LP 271-25. My planner assumes fuel is needed at both BD+47 2112 and Bolg, and going through Rakapila seems to be the better choice. Btw, my project has a command line routing tool as well (using the same code), but at this time it is apparently worse than the one in TD.
 
Last edited:
anyone know why trade.py nav --ly 7.5 eranin 239-25 gives a different route to the one from the weblink
trade.py nav eranin to 239-25 ?
command line different route,
ERANIN ( 0.00)
I BOOTIS ( 5.48)
AULIN ( 3.53)
RAKAPILA ( 6.55)
LP 271-25 ( 5.11)
ROSS 52 ( 6.88)
OT SERPENTIS ( 5.88)
LHS 411 ( 7.04)
MIQUICH ( 6.48)
G 181-6 ( 6.22)
TILIAN ( 4.58)
LHS 3262 ( 6.78)
DN DRACONIS ( 5.79)
LALANDE 29917 ( 5.40)
G 239-25 ( 5.71)
is it something to do with refueling if so how do i make command line give same results?

i only use TD as a route planner

I believe in the end both routes were incorrect: mine due to an incorrect condition (that resulted in taking the route through BD+47 2112 and Bolg instead of Rakapila), and the one from TradeDangerous because it did not have/use fuel data, therefore on the leg Rakapila→LP 271-25→Ross 52→OT Serpentis→LHS 411 you could run out of fuel in a stationless system.

I fixed the site, and the command line too. Output from the latter is:

Code:
route from Eranin to G 239-25:
 →5.48Ly i Bootis
 →3.53Ly Aulin
 →6.55Ly Rakapila (refuel)
 →5.11Ly LP 271-25
 →6.88Ly Ross 52
 →4.38Ly CE Bootis (refuel)
 →6.12Ly OT Serpentis
 →7.04Ly LHS 411
 →6.48Ly Miquich (refuel)
 →5.91Ly Zeta Herculis
 →6.13Ly Tilian
 →6.78Ly LHS 3262 (refuel)
 →5.79Ly DN Draconis
 →5.40Ly Lalande 29917
 →5.71Ly G 239-25

It is still not perfect, from Miquich to Tilian one should go through G 181-6 (as reported by TD) instead of Zeta Herculis. I need figure this out wrt/ fuel calculation tomorrow.
 
Back
Top Bottom