Git Product home page Git Product logo

shortcircuit's Introduction

Short Circuit

IMPORTANT

This repository is not maintained anymore. Please visit https://github.com/secondfry/shortcircuit for a more up to date version.

Description

Short Circuit (previously known as Pathfinder) is a desktop application which is able to find the shortest path between solar systems (including wormholes) using data retrieved from Eve SDE and 3rd party wormhole mapping tools. The application is able to run on all systems where Python and PySide vesion 1.2.4 are supported.

Features:

  1. Ability to add wormhole connections from Tripwire
  2. CREST authentication for reading the player location and setting the destination in-game
  3. Avoidance list
  4. Wormhole restrictions for: size, life, mass, last updated
  5. Instructions specify the signature and type of the wormhole (makes navigation easier)
  6. One-line output which can be copy-pasted for those lazy fleet members

Usage

$ pip install -r requirements.txt
$ cd src
$ python main.py

Some users reported having troubles when installing PySide on Linux/Mac. Try using your built-in package manager. Example for debian-based systems:

$ sudo apt-get install python-pyside

For Arch Linux users: Short Circuit is available on AUR (Credits to Sanxion):

yaourt -S shortcircuit

Releases

Binaries (executables) can be downloaded from here

About CREST

Using CREST is optional, but it provides features like getting current player location or setting in-game destination automatically.

Short Circuit uses almost the same CREST model as PyFa. You can find more about it here. Implicit mode only allows for a 20 minutes session, after that you have to relog. If you don't want to use the "implicit" mode, you can create your own keys at this location. This will permit you to stay logged in for a longer period of time. Application form should look something like this. Of course you can give it a different name and description, but you have to type in the correct callback URL http://127.0.0.1:7444 and select the correct scopes (characterLocationRead and characterNavigationWrite).

Eve-Scout

TripwireConfig

If you enable Eve-Scout option then wormhole connections to/from Thera updated by Eve-Scout will be retrieved, also. However, if you use the public Tripwire server, which is https://tripwire.eve-apps.com/, then there's no need to enable this option because Eve-Scout is updating Thera connections on the public Tripwire server automatically.

This is only useful if you or your corp/alliance have their own Tripwire server.

Security prioritization

Security prioritization mechanism is defined by four values which represent a weight, or an effort:

  • HS - the amount of effort it takes to jump a gate to high-sec
  • LS - the amount of effort it takes to jump a gate to low-sec
  • NS - the amount of effort it takes to jump a gate to null-sec
  • WH - the amount of effort it takes to jump a wormhole to any system

Values may range from 1 to 100 and if all values are equal (ex. all equal to 1), then this function is practically disabled.

SecPrio

In the above scenario the user specified that the effort is the same for taking gates to high-sec or low-sec and there's no need to prioritize one above the other. Compared to this, it's ten times more difficult to take gates to null-sec and three times more difficult to take any wormholes compared to high-sec/low-sec gates.

For example, this may be useful when trying to avoid null-sec systems if possible, unless it shortens the path considerably, and when wormholes aren't bookmarked.

Screenshot

Screenshot

Video

Short Circuit video

How it works

Short Circuit reconstructs its own version of the Eve solar map from the 'mapSolarSystemJumps' table of the Static Data Export database. After that, the solar map can be extended by retrieving connections from popular 3rd party wormhole mapping tools. The JSON response from Tripwire is processed and the connections are added to the existing solar map. Graph algorithms will compute the shortest path taking certain things into account like avoidance list and wormhole size restrictions.

Sample JSON response from Tripwire (converted to YAML for easy reading). This type of response is processed and added to the application's own solar system representation:

id: "5642035"
signatureID: "GGC"
system: ""
systemID: "31000857"
connection: "Hutian"
connectionID: "30002217"
sig2ID: "JTC"
type: "B274"
nth: null
sig2Type: "K162"
nth2: null
lifeLength: "24"
life: "Stable"
mass: "Stable"
...

EvE Online CREST API Challenge

Pathfinder (now renamed to Short Circuit) won the EvE Online CREST API Challenge 2016!

https://community.eveonline.com/news/dev-blogs/winners-of-the-eve-online-api-challenge/

Pathfinder on the o7 Show

Future development

  1. Add support for more 3rd party wormhole mapping tools
  2. Combine data from multiple sources (multiple Tripwire accounts, etc.)
  3. Suggestions?

Contacts

For any questions please contact Valtyr Farshield. Contract me some Quafe. Thank you :)

shortcircuit's People

Contributors

farshield avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shortcircuit's Issues

Tripwire Integration appears broken

Hi there. I am a hardcore user of shortcircuit and recently it has stopped being able to logon to Tripwire and getting my personal WH list. The eve scout stuff appears to be working fine. Any ideas if this will be fixed in the future?

TYVM

HDD

Closes automatically

Hi,

having issue on windows where app closes automatically after about 10 seconds, no errors no nothing.

eve-scout data broken

As of the May 6 update to Tripwire, the native integration of EVE-Scout's Thera data is being temporarily disabled while the dev fixes some things. The private EvE-Scout mask and the website API are unaffected.

Feature Request: FC help autolink

It would be super awesome if the output of the "FC, please help!" box was the in-game linked systems already... not sure if that's possible but it would be awesome. That way an FC could litterally copy paste it into the chat window and everyone would be able to right click each system and add the respective waypoints.

Allow use of Tripwire GATE type wormholes

Tripwire allows adding wormholes of type "GATE" which have no expiry (helpfull when adding JB networks). ShortCircuit does not use this type of connections when calculating for a route.

Jump clone support

Implement new feature for computing the shortest path between pilot's jump clones and specified destination.

CREST get/set destination not working properly

Users have reported that CREST doesn't work properly while trying to retrieve player location and set in-game destination, while logging in with a character still works. However, some users reported it works sometimes, which is strange. Further investigation needed.

Installation failed on Linux Mint

just trying 'pip install'

Requirement already satisfied (use --upgrade to upgrade): requests>=2.5.1 in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 1))
Downloading/unpacking PySide==1.2.4 (from -r requirements.txt (line 2))
  Downloading PySide-1.2.4.tar.gz (9.3MB): 9.3MB downloaded
  Running setup.py (path:/tmp/pip_build_root/PySide/setup.py) egg_info for package PySide
    Removing /tmp/pip_build_root/PySide/pyside_package
    package init file 'pyside_package/PySide/__init__.py' not found (or not a regular file)
    package init file 'pyside_package/pysideuic/__init__.py' not found (or not a regular file)
    warning: no previously-included files matching '**' found under directory 'sources/pyside-examples/examples/hyperui'
    warning: no previously-included files matching '**' found under directory 'sources/pyside-examples/mobility'
    warning: no previously-included files matching '**' found under directory 'sources/shiboken/.git'
    warning: no previously-included files matching '**' found under directory 'sources/pyside/.git'
    warning: no previously-included files matching '**' found under directory 'sources/pyside-tools/.git'
    warning: no previously-included files matching '**' found under directory 'sources/pyside-examples/.git'
    warning: no files found matching '**' under directory 'pyside_package/PySide'
    warning: no files found matching '**' under directory 'pyside_package/PySide/docs'
    warning: no files found matching '**' under directory 'pyside_package/PySide/plugins'
    warning: no files found matching '**' under directory 'pyside_package/PySide/imports'
    warning: no files found matching '**' under directory 'pyside_package/PySide/translations'
    warning: no files found matching '**' under directory 'pyside_package/PySide/include'
    warning: no files found matching '**' under directory 'pyside_package/PySide/typesystems'
    warning: no files found matching '**' under directory 'pyside_package/PySide/examples'
    warning: no files found matching '**' under directory 'pyside_package/pysideuic'
    warning: no files found matching '**' under directory 'pyside_package/pysideuic/Compiler'
    warning: no files found matching '**' under directory 'pyside_package/pysideuic/port_v2'
    warning: no files found matching '**' under directory 'pyside_package/pysideuic/port_v3'
    warning: no files found matching '**' under directory 'pyside_package/pysideuic/widget-plugins'
Installing collected packages: PySide
  Running setup.py install for PySide
    Removing /tmp/pip_build_root/PySide/pyside_package
    Python architecture is 64bit
    qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
    Failed to query the Qt version with qmake /usr/bin/qmake
    Complete output from command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/PySide/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-O4qI16-record/install-record.txt --single-version-externally-managed --compile:
    Removing /tmp/pip_build_root/PySide/pyside_package
running install
running build
Python architecture is 64bit
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
Failed to query the Qt version with qmake /usr/bin/qmake
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/PySide/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-O4qI16-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/PySide
Storing debug log for failure in /home/kusayu/.pip/pip.log

uname -a                                                                                                       
Linux desctop 3.19.0-32-generic #37~14.04.1-Ubuntu SMP Thu Oct 22 09:41:40 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Signature information

Add signature information to the table in case there are wormhole connections, or specify if there is a gate connection.

Corps Don't Use it but members do.

I'm in a situation where I am probably the only person in my corp and probably alliance that uses tripwire but because I am not a corp director I cant access the additional admin features.

I would there to be an option for players like to be able to claim control over admin for the purpose of management and then "IF" a corp director eventually comes along and wants to take control give him a Claim Control button that would override mine, that way I can fully control it and if my corp ever decided to get into it in a more important way they can easily take over.

Invalid Scope

I get this when trying to login with EVE. I have all scopes selected and have a valid applications with the correct details in the client.

error | "invalid_scope"
error_description | "The requested scopes either don't exist, or are not valid for this client"

Not syncing to tripwire server

Since may update, shorcircuit is no longer syncing to the tripwire server. All responses from tripwire are status 403. Assume this is an issue on tripwire side.

Version 0.1.4 still reports as being 0.1.3

Hey there,

Just updated to version 0.1.4 and the version check still thinks that it is 0.1.3 - just thought I'd let you know.

Cheers.

-- pezz (Sanxion, Signal Cartel)

CRON is reporting issues

Getting tons of the failures and messages:

Notice: Undefined index: ship_kills in /var/www/tripwire/system_activity.cron.php on line 31
PHP Notice:  Undefined index: pod_kills in /var/www/tripwire/system_activity.cron.php on line 32

Notice: Undefined index: pod_kills in /var/www/tripwire/system_activity.cron.php on line 32
PHP Notice:  Undefined index: npc_kills in /var/www/tripwire/system_activity.cron.php on line 33

Notice: Undefined index: npc_kills in /var/www/tripwire/system_activity.cron.php on line 33
PHP Notice:  Undefined index: ship_kills in /var/www/tripwire/system_activity.cron.php on line 31

Notice: Undefined index: ship_kills in /var/www/tripwire/system_activity.cron.php on line 31
PHP Notice:  Undefined index: pod_kills in /var/www/tripwire/system_activity.cron.php on line 32

UI Scale

Hi there,

Just started using your software, however I've encountered a slight issue when using it on my laptop which has a resolution of 1366x768.

https://i.imgur.com/C65zyNt.png

A good portion of the bottom is cut off, and there's no way to resize the window vertically.

Is there any chance to include an option to minimise the logo? It's pretty big, and that would get a decent amount of real estate back. Even reducing the size of it would help.

Cheers.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.