Community Event / Creation TradeDangerous GUI front end

I've added a bunch of supporting code in v1.04b to help prevent having to manually add the Python path if the user doesn't have it already. It seems that sometimes for older Python installers in the 3.x series they didn't always add the path for the current user.

Just FYI, I uninstalled Python and downloaded and installed the latest 64-bit version for Windows (3.4.3). The default is to omit adding the location of python.exe from the path. Not only that, but the option is invisible in the installer and you have to scroll down a list to find it, and change it.

Is there any reason to have lots of Systems (for autocomplete) that have no stations that anyone can think of?

Perhaps if people have missions to go find pirates/goods that have been spotted in systems without stations, and they want to NAV to there (via other places where they need to collect something)?
 
Last edited:
It took me a bit longer than I would have liked, but I just pushed v1.04d (which honestly should have been v1.04c, I screwed up on that one). I fixed tons of bugs and performance issues with data handling (current systems, system/stations from the db, and even the commodities box). This should massively improve the performance in general.

Let me know if there are any other bugs that I'm not seeing.

- - - - - Additional Content Posted / Auto Merge - - - - -

Just FYI, I uninstalled Python and downloaded and installed the latest 64-bit version for Windows (3.4.3). The default is to omit adding the location of python.exe from the path. Not only that, but the option is invisible in the installer and you have to scroll down a list to find it, and change it.



Perhaps if people have missions to go find pirates/goods that have been spotted in systems without stations, and they want to NAV to there (via other places where they need to collect something)?

I had considered that, and ultimately decided that the massive performance advantage (a factor of 10 or more) in the way I'm currently grabbing data from the database is worth the tiny trade off. Either way, if the user adds a station to a system that doesn't have one it will appear in the combobox after the update. I figure that's close enough to a half-way point on that trade off.

If anyone has a use case that merits adding orphan systems back in I will consider it.


(NOTE: I had to take down v1.04d due to a nasty regression that came out of nowhere. I'm fixing it right now, and I'll be putting up a proper release in a little bit so anyone who already downloaded it will need to re-download.)
 
Last edited:
Features request.

I use the --margin all the time with 'run'. Can it be added.
I also use 'local' a lot. Can you support that too please?

Bug report (1.0a, because 1.0c did not work for me)

I've noticed that if you set 'hops' to 1, it doesn't get passed on the trade.py command line, so the default is used, and we are shown 2 hops.
 
Local is already supported as an override on the Run, Station, and ShipVendor commands. This means you can switch it on and run it like a command, but when it's finished it will reset your LadenLY value back to whatever you had previously set. It's great for a quick check for surrounding stations. I use it all the time.

The hops thing is just a silly oversight on my part. I'll fix it for v1.04d; thanks for reminding me.

As for --margin, that's a great suggestion for a feature that I had forgotten all about, I'll add it for the re-release of v1.04d. Thanks!
 
Last edited:
I just pushed the re-release of v1.04d. Sorry for having to pull the initial one, it had tons of regressions due to a branching screw up.

This release should be a vast improvement in polish compared to the last few.

I should however point out that this release pretty much requires that you wipe your install of TDHelper and start fresh. The config file loading/saving code has changed drastically.
 
I deleted my Trade Helper folder and started again with v1.04d. However, I get an error that says Directory does not exist. I had this before on an earlier version but solved it by putting the correct path to the ED netlog files in the TDhelper.exe.config file, but I noticed that you have drastically changed the config file loading and saving code which probably explains why I can no longer find that file to amend!!

How can I fix this error?

For some reason, I can't post a picture of the error. It is titled Microsoft .NET Framework and says "Unhandled exception has occurred in your application. If you click continue, the application will ignore the error, etc..... Then the line "Directory does not exist"

The first few lines of the details are:-

************** Exception Text **************
System.Exception: Directory does not exist
at TDHelper.Form1.searchForLogDir(String path)
at TDHelper.Form1.validateNetLogPath()
at TDHelper.Form1.validateSettings()
at TDHelper.Form1.Form1_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

I hope that helps but if you need the rest, I can post it here.

Thanks
 

Attachments

  • Error.png
    Error.png
    23 KB · Views: 257
Another little bug, absolutely trivial. But it's not possible to say that you have only 1t of cargo space. I appreciate that the smallest cargo hold is 2t, but what if I already have something in it?
 
I deleted my Trade Helper folder and started again with v1.04d. However, I get an error that says Directory does not exist. I had this before on an earlier version but solved it by putting the correct path to the ED netlog files in the TDhelper.exe.config file, but I noticed that you have drastically changed the config file loading and saving code which probably explains why I can no longer find that file to amend!!

How can I fix this error?

For some reason, I can't post a picture of the error. It is titled Microsoft .NET Framework and says "Unhandled exception has occurred in your application. If you click continue, the application will ignore the error, etc..... Then the line "Directory does not exist"

The first few lines of the details are:-

************** Exception Text **************
System.Exception: Directory does not exist
at TDHelper.Form1.searchForLogDir(String path)
at TDHelper.Form1.validateNetLogPath()
at TDHelper.Form1.validateSettings()
at TDHelper.Form1.Form1_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

I hope that helps but if you need the rest, I can post it here.

Thanks

Thanks for taking the time to post a screenshot. It looks like it's trying to find your Elite: Dangerous network log folder, and it's hitting something that prevents it from asking you to pick the folder (since it can't find it). You can specify the path manually in the config file (config.xml) in the same folder as TDHelper, just add the full path to Elite: Dangerous' network logs in between the <NetLogPath></NetLogPath> tags. It should look something like this:

Code:
<config>
<Path>D:\Games\TradeDangerous</Path>
<PythonPath>C:\Python34\python.exe</PythonPath>
<NetLogPath>c:\Users\YOURUSERNAME\AppData\Local\Frontier_Developments\Products\FORC-FDEV-D-1003\Logs</NetLogPath>
... more settings and such below ...

I'll try to see what's causing the issue, and hopefully I'll fix it with v1.04e coming out this weekend sometime. Hope this helps.

- - - - - Additional Content Posted / Auto Merge - - - - -

Another little bug, absolutely trivial. But it's not possible to say that you have only 1t of cargo space. I appreciate that the smallest cargo hold is 2t, but what if I already have something in it?

That's what the "Cargo Limit" option is for. You can set it to an arbitrary number; so, if you're out doing missions and want to haul some rares you can subtract that amount of cargo space from the Run command's next route.
 
Last edited:
That's what the "Cargo Limit" option is for. You can set it to an arbitrary number; so, if you're out doing missions and want to haul some rares you can subtract that amount of cargo space from the Run command's next route.

I believe that the cargo limit is to tell TD to take no more than <cargo limit> of any single commodity. So for example on a run with a capacity of 208 and a limit of 100...

Code:
>trade.py run --cap=208 --lim=100 --ins=755000 --cr=2465212 --ly=13.54 --pad=L --hops=3 --jum=2 --avoid="persona" -vvv
AYMIFA/Hunziker Orbital -> FAWAOL/Sutter Hub (score: 803884.176000)
Start CR:  1,710,212
Hops    :          3
Jumps   :          6
Gain CR :    806,196
Gain/Hop:    268,732
Final CR:  2,516,408


  Load from AYMIFA/Hunziker Orbital (825ls/star, No/bm, Lrg/pad):
      100 x Beryllium                7,638cr vs    9,102cr, 8 hrs vs 35 hrs, total:    763,800cr
      100 x Gold                     8,890cr vs   10,286cr, 8 hrs vs 35 hrs, total:    889,000cr
        8 x Superconductors          6,186cr vs    7,509cr, 8 hrs vs 35 hrs, total:     49,488cr
  Jump AYMIFA -> SAGUENAY -> FAWAOL
  Unload at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) => Gain 296,584cr (1,425.88cr/ton) => 2,761,796cr
  Load from FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad):
      100 x Progenitor Cells         6,570cr vs    7,527cr, 35 hrs vs 36 days, total:    657,000cr
      100 x Consumer Technology      6,603cr vs    7,515cr, 35 hrs vs 36 days, total:    660,300cr
        8 x Performance Enhancers    6,804cr vs    7,523cr, 35 hrs vs 36 days, total:     54,432cr
  Jump FAWAOL -> S ERIDANI -> HIP 12716
  Unload at HIP 12716/Danforth Orbital (3.08Kls/star, Unk/bm, Lrg/pad) => Gain 192,652cr (926.212cr/ton) => 2,954,448cr
  Load from HIP 12716/Danforth Orbital (3.08Kls/star, Unk/bm, Lrg/pad):
      100 x Palladium               12,601cr vs   14,220cr, 36 days vs 35 hrs, total:  1,260,100cr
      100 x Gold                     8,825cr vs   10,286cr, 36 days vs 35 hrs, total:    882,500cr
        8 x Silver                   4,340cr vs    5,460cr, 36 days vs 35 hrs, total:     34,720cr
  Jump HIP 12716 -> S ERIDANI -> FAWAOL
  Unload at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) => Gain 316,960cr (1,523.85cr/ton) => 3,271,408cr
  ----------------------------------------------------------------------------
  Finish at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) gaining 806,196cr => est 3,271,408cr total

See how it's not subtracting the limit from 208, it still is filling the cargo to capacity. --limit is a way of telling TD to carry a range of items rather than setting a ceiling that it musn't break. In the above example, if I set a limit of 50, TD would find 4 commodities of 50t each and 1 commodity of 8t. (And would take a very long time about it!)

Code:
>trade.py run --cap=208 --lim=50 --ins=755000 --cr=2465212 --ly=13.54 --pad=L --hops=3 --jum=2 --avoid="persona" -vvv
LHS 5307/Mohmand Plant -> NLTT 41463/Manning City (score: 732481.691200)
Start CR:  1,710,212
Hops    :          3
Jumps   :          6
Gain CR :    739,206
Gain/Hop:    246,402
Final CR:  2,449,418


  Load from LHS 5307/Mohmand Plant (2.10Kls/star, Yes/bm, Lrg/pad):
       50 x Palladium               12,694cr vs   14,169cr, 9 days vs 25 hrs, total:    634,700cr
       50 x Superconductors          6,145cr vs    7,418cr, 9 days vs 25 hrs, total:    307,250cr
       50 x Gold                     8,767cr vs    9,878cr, 9 days vs 25 hrs, total:    438,350cr
       50 x Silver                   4,312cr vs    5,400cr, 9 days vs 25 hrs, total:    215,600cr
        8 x Tantalum                 3,497cr vs    4,481cr, 9 days vs 25 hrs, total:     27,976cr
  Jump LHS 5307 -> ED ASICH -> MEINJHALARA
  Unload at MEINJHALARA/Fremont Port (1.41Kls/star, No/bm, Lrg/pad) => Gain 255,222cr (1,227.03cr/ton) => 2,720,434cr
  Load from MEINJHALARA/Fremont Port (1.41Kls/star, No/bm, Lrg/pad):
       50 x Performance Enhancers    6,422cr vs    7,419cr, 25 hrs vs 9 days, total:    321,100cr
       50 x Resonating Separators    5,414cr vs    6,295cr, 25 hrs vs 9 days, total:    270,700cr
       50 x Consumer Technology      6,445cr vs    7,310cr, 25 hrs vs 9 days, total:    322,250cr
       50 x Progenitor Cells         6,576cr vs    7,310cr, 25 hrs vs 9 days, total:    328,800cr
        8 x Reactive Armour          1,833cr vs    2,365cr, 25 hrs vs 9 days, total:     14,664cr
  Jump MEINJHALARA -> ED ASICH -> LHS 5307
  Unload at LHS 5307/Mohmand Plant (2.10Kls/star, Yes/bm, Lrg/pad) => Gain 178,106cr (856.279cr/ton) => 2,898,540cr
  Load from LHS 5307/Mohmand Plant (2.10Kls/star, Yes/bm, Lrg/pad):
       50 x Gold                     8,767cr vs   10,314cr, 9 days vs 2 days, total:    438,350cr
       50 x Palladium               12,694cr vs   14,236cr, 9 days vs 2 days, total:    634,700cr
       50 x Beryllium                7,589cr vs    9,073cr, 9 days vs 2 days, total:    379,450cr
       50 x Superconductors          6,145cr vs    7,495cr, 9 days vs 2 days, total:    307,250cr
        8 x Indium                   5,379cr vs    6,595cr, 9 days vs 2 days, total:     43,032cr
  Jump LHS 5307 -> LP 100-56 -> NLTT 41463
  Unload at NLTT 41463/Manning City (3.65Kls/star, Yes/bm, Lrg/pad) => Gain 305,878cr (1,470.57cr/ton) => 3,204,418cr
  ----------------------------------------------------------------------------
  Finish at NLTT 41463/Manning City (3.65Kls/star, Yes/bm, Lrg/pad) gaining 739,206cr => est 3,204,418cr total

If I knew that although my ship's capacity was 208, but I wanted to reserve 100t for rares, I would use --capacity=108.

Therefore I'd like to be able to set capacity to 1, rather than an arbitrary 2 like now. trade.py supports --cap=1, so your GUI really ought to?
 
Last edited:
I believe that the cargo limit is to tell TD to take no more than <cargo limit> of any single commodity. So for example on a run with a capacity of 208 and a limit of 100...

Code:
>trade.py run --cap=208 --lim=100 --ins=755000 --cr=2465212 --ly=13.54 --pad=L --hops=3 --jum=2 --avoid="persona" -vvv
AYMIFA/Hunziker Orbital -> FAWAOL/Sutter Hub (score: 803884.176000)
Start CR:  1,710,212
Hops    :          3
Jumps   :          6
Gain CR :    806,196
Gain/Hop:    268,732
Final CR:  2,516,408


  Load from AYMIFA/Hunziker Orbital (825ls/star, No/bm, Lrg/pad):
      100 x Beryllium                7,638cr vs    9,102cr, 8 hrs vs 35 hrs, total:    763,800cr
      100 x Gold                     8,890cr vs   10,286cr, 8 hrs vs 35 hrs, total:    889,000cr
        8 x Superconductors          6,186cr vs    7,509cr, 8 hrs vs 35 hrs, total:     49,488cr
  Jump AYMIFA -> SAGUENAY -> FAWAOL
  Unload at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) => Gain 296,584cr (1,425.88cr/ton) => 2,761,796cr
  Load from FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad):
      100 x Progenitor Cells         6,570cr vs    7,527cr, 35 hrs vs 36 days, total:    657,000cr
      100 x Consumer Technology      6,603cr vs    7,515cr, 35 hrs vs 36 days, total:    660,300cr
        8 x Performance Enhancers    6,804cr vs    7,523cr, 35 hrs vs 36 days, total:     54,432cr
  Jump FAWAOL -> S ERIDANI -> HIP 12716
  Unload at HIP 12716/Danforth Orbital (3.08Kls/star, Unk/bm, Lrg/pad) => Gain 192,652cr (926.212cr/ton) => 2,954,448cr
  Load from HIP 12716/Danforth Orbital (3.08Kls/star, Unk/bm, Lrg/pad):
      100 x Palladium               12,601cr vs   14,220cr, 36 days vs 35 hrs, total:  1,260,100cr
      100 x Gold                     8,825cr vs   10,286cr, 36 days vs 35 hrs, total:    882,500cr
        8 x Silver                   4,340cr vs    5,460cr, 36 days vs 35 hrs, total:     34,720cr
  Jump HIP 12716 -> S ERIDANI -> FAWAOL
  Unload at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) => Gain 316,960cr (1,523.85cr/ton) => 3,271,408cr
  ----------------------------------------------------------------------------
  Finish at FAWAOL/Sutter Hub (1.05Kls/star, No/bm, Lrg/pad) gaining 806,196cr => est 3,271,408cr total

It's a way of telling TD to carry a range of items rather than setting a ceiling that it musn't break.

If I knew that although my ship's capacity was 208, but I wanted to reserve 100t for rares, I would use --capacity=108.

Therefore I'd like to be able to set capacity to 1, rather than an arbitrary 2 like now. trade.py supports --cap=1, so your GUI really ought to?

Ah.. I see what you're saying. I'll fix it this weekend, since I have to add --max-gain-per-ton support anyway.
 
Thanks. +1 rep if I hadn't already. :)

BTW I also noticed something weird with the Limit box (v1.0a). If I set it to 100, then 1000 gets passed to trade.py.
 
Thanks. +1 rep if I hadn't already. :)

BTW I also noticed something weird with the Limit box (v1.0a). If I set it to 100, then 1000 gets passed to trade.py.

That is pretty strange. I'm not seeing that behavior on the latest release (v1.04d). I did a ton of logic code cleanup since v1.04a, that probably has something to do with it. Before v1.04b, the minimum/maximum passed to trade.py was hardcoded; now it's based upon the minimum/maximum for the specific controls. Much more sane that way.
 
So.. I'm in the middle of branching my current master to start working on a better way of displaying TradeDangerous Run command output. I have an open question for anyone: would displaying results in a tree be better or worse than displaying them in a grid?

I haven't decided yet one way or the other. I'm kind of leaning toward tree-view being a slightly more readable option while on a route. In fact, I was thinking that it might be preferable to allow expanding/collapsing by station/hop name.

I'm interested to hear any opinions on it.
 
Last edited:
I've just downloaded v1.o4d_re. On first run, I'm prompted for the TD folder, then I get an error message

Code:
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.


************** Exception Text **************
System.Exception: Directory does not exist
   at TDHelper.Form1.searchForLogDir(String path)
   at TDHelper.Form1.validateNetLogPath()
   at TDHelper.Form1.validateSettings()
   at TDHelper.Form1.Form1_Load(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)




************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
TDHelper
    Assembly Version: 1.0.0.4
    Win32 Version: 1.0.0.4
    CodeBase: file:///D:/Users/root/Downloads/TDHelper_v1.04d_re/TDHelper.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34238 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Data
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml.Linq
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Microsoft.CSharp
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
----------------------------------------
System.Dynamic
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Dynamic/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll
----------------------------------------
Anonymously Hosted DynamicMethods Assembly
    Assembly Version: 0.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
----------------------------------------


************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.


For example:


<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>


When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
 
I've just downloaded v1.o4d_re. On first run, I'm prompted for the TD folder, then I get an error message

Code:
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.


************** Exception Text **************
System.Exception: Directory does not exist
   at TDHelper.Form1.searchForLogDir(String path)
   at TDHelper.Form1.validateNetLogPath()
   at TDHelper.Form1.validateSettings()
   at TDHelper.Form1.Form1_Load(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)




************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
TDHelper
    Assembly Version: 1.0.0.4
    Win32 Version: 1.0.0.4
    CodeBase: file:///D:/Users/root/Downloads/TDHelper_v1.04d_re/TDHelper.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34238 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Data
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml.Linq
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Microsoft.CSharp
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
----------------------------------------
System.Dynamic
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Dynamic/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll
----------------------------------------
Anonymously Hosted DynamicMethods Assembly
    Assembly Version: 0.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
----------------------------------------


************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.


For example:


<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>


When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

That's due to missing a valid path to the Elite: Dangerous netlogs. You can manually specify the path in the config, check a few posts up.

This error should be completely fixed in the upcoming release coming out in a day or so. I've made improvements to the path finding so it doesn't explode like that when it hits a blank directory or an empty path.

(Edit: You can also set the <DisableNetLogs> tag to 1 in the config. That will override the recent systems altogether.)
 
Last edited:
Thanks. Rapid response. :)

I've logged the above and a couple of proposals for enhancements at Bitbucket repository, but I note that I'm the first person to do this. Would you prefer issues/ideas to be logged there or here?

- - - - - Additional Content Posted / Auto Merge - - - - -

So.. I'm in the middle of branching my current master to start working on a better way of displaying TradeDangerous Run command output. I have an open question for anyone: would displaying results in a tree be better or worse than displaying them in a grid?

I haven't decided yet one way or the other. I'm kind of leaning toward tree-view being a slightly more readable option while on a route. In fact, I was thinking that it might be preferable to allow expanding/collapsing by station/hop name.

I'm interested to hear any opinions on it.

Can you mock some examples of options? Don't think I can visualise what you are proposing.
 
Thanks. Rapid response. :)

I've logged the above and a couple of proposals for enhancements at Bitbucket repository, but I note that I'm the first person to do this. Would you prefer issues/ideas to be logged there or here?

Either one is fine by me. I suppose the issue tracker is slightly better for initial reporting as it lets me track my workflow. Thanks for adding those.

If anyone has an issue that happens to have a known workaround I will post it to the issue tracker if I can.
 
Last edited:
Back
Top Bottom