Skip to main content

A plugin for publishing moon extractions, and keeping track of moon scan data.

Project description

Moonstuff

pypi latest version python versions django versions license

Contents

Overview

Moonstuff is an AllianceAuth plugin focused on managing moons, from keeping track of moonscan data to making sure everyone knows when and where the next extraction will be.

Key Features

  • Automatically pulls upcoming extractions from ESI.
  • Automatically updates ore composition, just in case CCP decides to shuffle moon ore around.
  • Pulls mining ledger data for all extractions as they happen.
    • Mining Ledger Data is used to track whether or not extractions are jackpots.
    • [Coming Soon] A mining ledger explorer is planned.
  • Per-m3 values are displayed per ore, customized based on a customizable refine percent. (So if you don't have a T2-rigged Null Sec Tatara and perfect skills, you can see a more realistic value)
  • Search for R-value or ore type from moon list.
    • Moons will show all rarity values available for that moon, rather than just the top value.

Screenshots

Dashboard

Calendar View

Calendar View

Card View

Card View

Jackpot

Jackpot Moon Card Example

Moon Info

Moon Info Modal

(Moon info page is identical)

Moon List

Moon List

Search

Search by Rarity

Installation

1. Install App

Install the app into your allianceauth virtualenvironment via PIP.

$ pip install aa-moonstuff

2. Configure AA Settings

Configure your AA settings (local.py) as follows:

  • Add 'eveuniverse',and 'moonstuff', to INSTALLED_APPS
  • Add the following lines to the end of your settings file to ensure that the proper tasks are scheduled to run
# Moonstuff Module
EVEUNIVERSE_LOAD_TYPE_MATERIALS = True

CELERYBEAT_SCHEDULE['moonstuff_import_extraction_data'] = {
    'task': 'moonstuff.tasks.import_extraction_data',
    'schedule': crontab(minute='*/10'),
}
CELERYBEAT_SCHEDULE['moonstuff_run_ledger_update'] = {
    'task': 'moonstuff.tasks.update_ledger',
    'schedule': crontab(minute=0, hour='*'),
}
CELERYBEAT_SCHEDULE['moonstuff_run_refinery_update'] = {
    'task': 'moonstuff.tasks.update_refineries',
    'schedule': crontab(minute=0, hour=0),
}
CELERYBEAT_SCHEDULE['moonstuff_run_price_update'] = {
    'task': 'moonstuff.tasks.load_prices',
    'schedule': crontab(minute=0, hour=0),
}

Note: The last two tasks can be schdeuled at whatever time is best for you, though they need only be run once per day.

  • Optional: Add any settings listed in settings if you would like to change the default values.

3. Run Migrations

Run migrations and copy static files.

$ python manage.py migrate
$ python manage.py collectstatic

Restart your supervisor tasks.

4. Load Eveuniverse Data

Run the following command to pull the required eveuniverse data required for moonstuff.

$ python manage.py moonstuff_preload_data

Updating

To update your existing installation of Moonstuff first enable your virtual environment.

Then run the following commands from your allianceauth project directory (the one that contains manage.py).

$ pip install -U aa-moonstuff
$ python manage.py migrate
$ python manage.py collectstatic

Lastly, restart your supervisor tasks.

Note: Be sure to follow any version specific update instructions as well. These instructions can be found on the Tags page for this repository.

Settings

Setting Name Description Default
MOON_REFINE_PERCENT This setting defines the refine percent to use when calculating ore values.
(0.876 and 87.6 are both acceptable formats)
87.6
DEFAULT_EXTRACTION_VIEW This setting allows you to configure if you would like the calendar or card view to show by default when the dashboard loads.
(Options are "Calendar" or "Card")
"Calendar"

Permissions

Permission Name Admin Site Auth Site
Moonstuff.access_moonstuff None Can access the moonstuff module.
Moonstuff.access_moon_list None Can access the list of known moons.
Resource.add_resource None Can add access the add_scan page to add moon scan data.
TrackingCharacter.add_trackingcharacter None Can link a character to be used in tracking extractions.

Scopes

Though accepted best practice for auth is to ensure that one's ESI application has access to all scopes through the EVE Development portal, if you are not following this practice please make sure to include the following scopes in your ESI application.

Scope Purpose
esi-industry.read_corporation_mining.v1 This is required to pull corporation moon extraction data. (The in-game Station_Manager and Accountant roles are required)
esi-universe.read_structures.v1 Required to pull structure names.
esi-characters.read_notifications.v1 Required to pull character notifications used for updating resource data.

Credits

This plugin makes use of django-eveuniverse by @ErikKalkoken

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aa-moonstuff-2.0.4.tar.gz (40.8 kB view details)

Uploaded Source

Built Distribution

aa_moonstuff-2.0.4-py3-none-any.whl (51.0 kB view details)

Uploaded Python 3

File details

Details for the file aa-moonstuff-2.0.4.tar.gz.

File metadata

  • Download URL: aa-moonstuff-2.0.4.tar.gz
  • Upload date:
  • Size: 40.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for aa-moonstuff-2.0.4.tar.gz
Algorithm Hash digest
SHA256 8efa84729a9a8ca1332d98372ef194fe54390fc8642e56e8136e98eebf22aaa8
MD5 db9ee88237a8f6cace9188631a6ece76
BLAKE2b-256 d347eb9e382265444c1d3834af9a34ab872abecc7730fa38e5f52f0228f4fd94

See more details on using hashes here.

File details

Details for the file aa_moonstuff-2.0.4-py3-none-any.whl.

File metadata

  • Download URL: aa_moonstuff-2.0.4-py3-none-any.whl
  • Upload date:
  • Size: 51.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for aa_moonstuff-2.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 774dd051c666fb6164ae91b45954169974675df70409a682dc6a940bd989c09b
MD5 f41970ce62337947a0594d31ea48ee58
BLAKE2b-256 bf37db0dc6a0df597cdad39998ea63f98a647d86aa0852514c02dae61b37611e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page