diff --git a/README.md b/README.md index a4dcce4..fbd5e96 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,23 @@ -# Prerequisites +# Elite: Dangerous Long-range router + +## Features + +- Three different routing algorithms: + - **Breadth-first search:**, always finds the shortest route but is quite slow + - **A-Star:** has an adjustable tradeoff between speed and quality + - **Greedy search:** always picks the next reachable star that's closest to the destination, very fast but very poor quality routes +- Nice GUI! (made with PyQt5) +- Two themes! (Dark and Light) +- Uses data from (EDSM)[https://edsm.net/] for star data +- Only routes through scoopable systems, no more running out of fuel! (assuming you have a fuel scoop) +- Precomputing of BFS routing graphs for near-instant routing from your home system to any destination! +- Routing code written in Rust, so it's quite speedy! +- Export routes as HTML, JSON, CSV and SVG (WIP!) +- Automagically copy next jump destination into system clipboard (works by monitoring the player journal file) + +# Installation + +## Prerequisites - Python: - conda (miniconda/anaconda) @@ -9,7 +28,7 @@ - Visual Studio 2019 - nightly rust compiler (`x86_64-pc-windows-msvc`) -# Building an installer +## Building an installer (Assuming `conda` is in your `PATH`) @@ -17,7 +36,7 @@ 2. Run `tox` 3. Grab the installer from `installer/Output/` -# Installing +## Manual installation (Assuming `conda` is in your `PATH`) @@ -31,12 +50,24 @@ python build_gui.py pip install . ``` -then you can run `ed_lrr -h` from +then you can run `ed_lrr -h` from your command prompt to get help # To do +## Router + +- Caching wrapper for System + - Only fetch position once when building Spatial-Tree + - Fetch data on demand + ## GUI + - Implement estimate time to completion display for route computation and preprocessing +- Export route as: + - JSON + - HTML (WIP) + - CSV + - SVG ## Installer @@ -44,4 +75,8 @@ then you can run `ed_lrr -h` from ## Preprocessing -- Build index over `systemsWithCoordinates.json` instead of loading it into RAM (reuse `LineCache` from `router.rs`) \ No newline at end of file +- Build index over `systemsWithCoordinates.json` instead of loading it into RAM (reuse modified `LineCache` from `router.rs`) + +## Misc + +- Luigi based Task queue for distributed routing \ No newline at end of file