Navigation Menu

Skip to content

int-Frank/EDEPathFinder

Repository files navigation

Elite Dangerous Engineer Path Finder

This app finds the shortest path through all relevant engineers when upgrading a list of modules. I wrote this because with each new ship loadout, I found was bouncing back and forth across the bubble upgrading each module. I figured there probably exists a shortest path that would take me through all of them that would save me some time.

Download

Check the latest release or download it here.

Use

  1. Choose the modules you want to upgrade. For each module:
    1. select a grade. If you only want the experimental, set the grade to 1.
    2. set a priority. Modules with a higher priority will be upgraded first. Try not to overuse though. This was really only designed to pick out one or two critical components to upgrade first, like the FSD and Power Plant. For the underlying routine to work it needs to be able to move things around.
  2. Select all the engineers you have unlocked.
  3. Select the system you want to start in. You can add additional systems by editing EDEPaths.json.
  4. Run!

Example

Background

This is a classic travelling salesman problem. I have used a dynamic programming approach, which should give the exact solution. However, the time it takes to find a solution grows exponentially with the number of systems. This should not be noticeable with regular use, but for example if you select every module and every engineer in the bubble, it will take a few minutes to find a solution.

Straight line distance between engineer systems is used. Building a path of every system you need to jump to in between is not really neccessary and beyond the scope of what this app sets out to do.

For the case where there are multiple choices of engineer when upgrading a particular module (Felicity Farseer and Elvira Martuuk for the FSD for example), both paths are constructed and the shorter of the two is chosen.

Feedback

Feel free to submit any feedback! If you want to submit an issue, use one of the following tags:

  • Bug - crashes, anything that seems broken, output that seems incorrect or does not make sense.
    • Example: Selecting bubble engineers still takes me to Colonia.
  • Enhancement - features and ideas you would like to see.
    • Example: I want the ability to add my own start and end system.

Credits

ImGui: A great immediate GUI library.

Premake: For simplifying project file creation

Glad: OpenGL loader

SDL2: Development library for graphics and peripherals

Armin Zare Zadeh for his c++ solution to the TSP problem

About

A small app to find the shortest paths between engineers in Elite Dangerous

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages