Community Event / Creation TDGUI: lightweight GUI for TradeDangerous

Hi all! I just released my lightweight GUI for TradeDangerous that I've been working on. It's not a full GUI, it just shows the TradeDangerous output in a scrollable window, but it's easier to use than the command line (at least for me :D). It also has full auto-completion when typing system/station names and commodity items, and it can keep a log of your system jumps to a logfile (if enabled in the Settings tab). More information is in the readme.txt in the zip.

It's written in C#, so it's Windows-only and requires Microsoft .NET Framework 4.5.1. You just drop it into your TradeDangerous folder and go. Screenshot is below:

View attachment 16359

There are a few other things I want to add to the next version, including a tab to enter or update station data. You can download TDGUI from my site's download page here.

Happy Flying! :)
 
Last edited:
Hi all,

I just released the new 1.5 version of TDGUI. The release notes are below:


  • Added code to read the TradeDangerous database directly via SQLite 3.8.6 DLL now bundled with the EXE. This also allows TDGUI to read system, station, item, and price data directly from TradeDangerous.
  • Updated station drop-down tooltips to show the price data age for that station.
  • Added recent systems/stations popup menus for all system and station comboboxes.
  • Added tooltip for each 'Current' button showing the current system.
  • Implemented 'Auto-copy system names to clipboard for trade routes' feature (disabled by default; it is enabled via a checkbox on the settings page).
  • Added code to automatically write a newline between each hop's details for 'Trade Route' and 'Trade To' output to make it easier to read.
  • Added code to automatically write a space between the station distance number and the "ls" suffix in the 'Trade Route' and 'Trade To' output to make it easier to read. e.g., "(606ls/star, ..." becomes "(606 ls/star, ...".
  • Updated the 'Log System Jumps to Server' feature to send the jump distance in the 'Data' hash alongside the From_System and To_System parameters.
  • Now shows the distance between the 'From' and 'To' stations on the 'Nav' and 'Trade To' tabs.
  • Updated system jump logging to show the distance jumped.
  • Updated to use the new --direct switch in TradeDangerous for 'Trade To' when Hops == 1.
  • Added new 'Trade Info' button on the 'Trade To' tab that invokes [trade.py trade <from station> <to station>].
  • Implemented 'Automatically check for TDGUI updates' feature.
  • Added 'Avoid' option to 'Trade Route' and 'Trade To' tabs.

My favorite feature in the new version is the 'Auto-copy system names to clipboard for trade routes' option: if this setting is enabled TDGUI parses the output of the TradeDangerous 'Trade Route' and 'Trade To' commands and stores a jump list for the route. Then each time you jump to a new star system TDGUI automatically copies the next system in the route to the Windows clipboard so you can easily paste the system name into the in-game Galaxy Map (using CTRL-V) -- no more manually typing in your next jump destination in the Galaxy Map, you just hit CTRL-V and go. :cool:

New screenshot is below:

tdgui-1.5.png

As always, you can get the latest version of TDGUI from my download page.
 
This is fantastic, thank you! Would it be possible to add an option to the GUI to output results to the X52 Pro MDF? I know it can be done from the command line and it would be great if the GUI supported that as well (and includes the fix that allows the MFD button presses to register to cycle between steps)
 
Sure, I'll add a checkbox for that for the next version. I'll PM you a link to a prerelease build in the meantime. :)
 
Last edited:
According to the error message TDGUI.exe could not find System.Data.SQLite.dll. Did you extract the TDGUI zip file to your TradeDangerous folder? i.e., all these files must exist in the same directory:

Code:
Newtonsoft.Json.dll
System.Data.SQLite.dll
System.Net.Http.Formatting.dll
TDGUI.exe
 
Last edited:
I encountered the same issue as LeoKesler. I did extract all files into my TradeDangerous directory, and am running TDGUI.exe as Administrator. I checked permissions on all the DLLs to make sure nothing was being blocked. Here's a snippet of my TD directory:
View attachment 24422

BTW I am running this in Win 8.1 and .NET is fully up-to-date.
 
Last edited:
I have the UI for the X52 implemented and I've been doing some experimenting here with the --x52-pro switch with TradeDangerous, including running it under TDGUI with my X52 Pro joystick. If I am reading the TradeDangerous docs correctly the --x52-pro switch requires the --checklist switch as well, and so then TD outputs the current step in the checklist to the X52's MFD. However, none of the X52 MFD buttons or scroll wheels advance the checklist to the next step (???), so the only way to advance the checklist is to alt-tab back out of the game and press Enter on the console. (I have the same results if I run TradeDangerous without TDGUI.)

Assuming everything I am seeing with TradeDangerous is working as designed, then the tricky part is that in order to advance the checklist to the next step the user has to manually press Enter in the console window -- and under TDGUI there is no console window in which to press Enter.

The upshot of all this is that there is no simple way for the user to see the checklist in the TDGUI window nor press Enter to advance it. The ideal (and IMO, the correct) solution would be if TradeDangerous would advance the checklist when the user rolls the scroll wheel on the X52, but that simply doesn't work (for me, at least). If the pilot can't scroll through the checklist via the X52's scroll wheel it makes that feature pretty useless in-game. :( Is this a known TD issue?? Am I missing something?
 
Sorry for the late response, RL called :D yes that did the trick, your GUI now works. I'll play with it a bit, now checking the 'Settings' tab so that I can get it configured to operate properly with my set-up. Thanks!
 
Great! I updated the readme file with the details and uploaded the new TDGUI zip to my Web site. Thanks for the heads-up! :cool:
 
I wish I would have found this two days again. Just found the program a couple days ago and spent my last game session perfecting using the python scripts with the Gitbash. I'm currently at work so I cant download the program without getting fired lol.

Is there options for --insurance and --ls-max?

The first time I used TD it sent me to a station that was waaaay out there and took about 10 mins to get to it. Thanks!
 
Is there options for --insurance and --ls-max?

The first time I used TD it sent me to a station that was waaaay out there and took about 10 mins to get to it. Thanks!

It doesn't have those yet but I'll add them for the next TDGUI patch release. I'll add those two options and PM you a link to a beta version in an hour or two.
 
Great! I updated the readme file with the details and uploaded the new TDGUI zip to my Web site. Thanks for the heads-up! :cool:

yvw! You've made a nice app here, perfect companion to TD. kfsone was hoping someone would take his monster and tame it with a GUI and you've done it. Question: does TDGUI assume the ED log files to be located at C:\Program Files (x86)\Frontier\EDLaunch\Products\FORC-FDEV-D-1010\Logs? In my case (Win 8.1 install) they are located at C:\Users\Admin\AppData\Local\Frontier_Developments\Products\FORC-FDEV-D-1010\Logs. Verbose logging is set to 1 in AppConfig.xml, however TDGUI can't discover my current system - clicking on 'Current' produces "unknown" (see screen shot below).

View attachment 25222
I'm guessing TDGUI can't read my log files because it's thinking they're somewhere else (did you hard code the path by chance? :cool:). I'm guessing this because I have another program 'Elite-CoPilot' that needs to read the log files to know my current location, and the dev on that app has an in-app control that allows you to set the netlog path. Elite-CoPilot works fine for me (in fact it's the reason verbose logging was already set to 1 in my AppConfig.xml) so the fact that TDGUI can't decipher my location is making me wonder if it can find my log files. It isn't prompting me to update verbose logging if that helps.
 
Great! I updated the readme file with the details and uploaded the new TDGUI zip to my Web site. Thanks for the heads-up! :cool:

hey - never mind what I said! Not sure what changed, but your tool is now finding my current location just fine when I click 'Current' :S. Sorry for the confusion - Gremlins are probably playing tricks on me.
 
I believe what happened is that when you first ran TDGUI the latest Elite Dangerous logfile in the EDHOME\Logs directory did not have system information in it (Elite Dangerous rotates its debug log files continually), and so there was no current system information in that file to read. Then once you ran Elite Dangerous again and it wrote out the current system to the latest netLog file TDGUI then picked it up and kept track of it from then on.

To put it another way TDGUI currently only parses the latest netLog file in the logs directory -- it never looks at the older ones. I could improve that for new TDGUI installs by making it loop and parse older netLog files until it finds the current system. I'll look into adding that to the next TDGUI patch release.
 
Last edited:
Top Bottom