Skip to content

An offline CLI tool to analyze reachable Portals for Ingress Drone Mark I.

License

Notifications You must be signed in to change notification settings

lucka-me/ingress-drone-explorer-nodejs

Repository files navigation

Ingress Drone Explorer - Node.js

CI Lines of code

An offline CLI tool to analyze reachable Portals for Ingress Drone Mark I.

Implementations in different languages are listed and compared in Benchmark.

The CI workflow builds x64 and arm64 binary for macOS, Windows and Linux, the files are available as artifacts.

Build from Source

Requirements

  • Node 18 (Backporting should be possible and easy)

Build

$ npm init
$ npm run build
$ npm run package # Package an executable with pkg

Please notice the pkg will download necessary binary files to ~/.pkg-cache, it may be overriden by environment variable PKG_CACHE_PATH:

$ export PKG_CACHE_PATH=./.pkg-cache
$ npm run package

Exploration Guide

Prepare Files

All the files should be JSON.

  1. Portal list file(s), should be an array of:
    {
        "guid": "GUID of Portal",
        "title": "Title of Portal",
        "lngLat": {
            "lng": 90.0,    // Longitude
            "lat": 45.0     // Latitude
        }
    }
  2. Portal Key list file, should be an array of GUID (Not required but strongly recommended)

Maybe an IITC plugin like this helps.

Usage

$ ingress-drone-explorer <portal-list-file> -s <longitude,latitude> [options...]

Options

Explore with key list:

$ ... -k <path-to-key-list-file>

Output cells JSON for IITC Draw tools:

$ ... --output-drawn-items <path-to-output>

Help information:

$ ingress-drone-explorer -h

Benchmark

Sample Data

  • Area: Shenzhen downtown and Hong Kong
  • Portals: 34,041 Portals in 13,451 cells
  • Keys: 11 matched
  • Start Point: Shenzhen Bay Sports Center
  • Result: 30,462 Portals and 11,342 cells are reachable

Result

Average exploration time consumed of 100 executions on MacBook Air (M2).

Lines Commit Consumed
Node.js Current 1.295 s
C++ db5a976 0.583 s
Python 841b9f0 2.813 s
Swift 2c73a58 0.722 s

The results of other implementations may be outdated, please check their repositories for latest results.

About

An offline CLI tool to analyze reachable Portals for Ingress Drone Mark I.

Resources

License

Stars

Watchers

Forks

Releases

No releases published