Package: aa-moonmining
Moon MiningAn Alliance Auth app for tracking moon extractions and scouting new moons.ContentsFeaturesInstallationUser manualPermissionsSettingsManagement CommandsFAQHistoryChange LogFeaturesUpload survey scans and research your moon databaseMonitor active extractions from your refineriesPrice estimates for potential monthly income of moons and for extractionsMining ledger per extractionReports (e.g. potential total income of all owned moons)Tool for mass importing moon scans from external sourcesHintIf you like to see all extraction events in a calendar view please consider checking out the amazing appAllianceauth Opcalendar, which is fully integrated withMoon Mining.HighlightsResearch your moon databaseBuild your own moon database from survey inputs and find the best moons for you. The moon rarity class and value are automatically calculated from your survey input.See the exact ore makeup of this moon on the details page.Note that you can also see on this list which moons you already own. In addition an extraction button is visible, when an extraction is active for a particular moon.Manage extractionsAfter you added your corporation you can see which moons you own and see upcoming and past extractions:You can also review the extraction details, incl. which ore qualities you got.Mining ledgerSee what has been minded from an extraction in the mining ledger:ReportsCheck out the reporting section for detail reports on your operation, e.g. Breakdown by corporation and moon of your potential total gross moon income per months:NoteAll ore compositions and ISK values shown on these screenshots are fake.InstallationStep 1 - Check prerequisitesMoon Mining is a plugin for Alliance Auth. If you don't have Alliance Auth running already, please install it first before proceeding. (see the officialAA installation guidefor details)Moon Mining needs the appdjango-eveuniverseto function. Please make sure it is installed, before before continuing.Step 2 - Install appMake sure you are in the virtual environment (venv) of your Alliance Auth installation. Then install the newest release from PyPI:pipinstallaa-moonminingStep 3 - Configure Auth settingsConfigure your Auth settings (local.py) as follows:Add'moonmining'toINSTALLED_APPSAdd below lines to your settings file:CELERYBEAT_SCHEDULE['moonmining_run_regular_updates']={'task':'moonmining.tasks.run_regular_updates','schedule':crontab(minute='*/10'),}CELERYBEAT_SCHEDULE['moonmining_run_report_updates']={'task':'moonmining.tasks.run_report_updates','schedule':crontab(minute=30,hour='*/1'),}CELERYBEAT_SCHEDULE['moonmining_run_value_updates']={'task':'moonmining.tasks.run_calculated_properties_update','schedule':crontab(minute=30,hour=3)}Hint: The value updates are supposed to run once a day during off hours. Feel free to adjust the timing according to your timezone.Optional: Add additional settings if you want to change any defaults. SeeSettingsfor the full list.Step 4 - Finalize App installationRun migrations & copy static filespythonmanage.pymigrate
pythonmanage.pycollectstatic--noinputRestart your supervisor services for Auth.Step 5 - Load ores from ESIPlease run the following management command to load all ores from ESI. This has to be done once only.pythonmanage.pymoonmining_load_evePlease wait until the loading is complete before continuing.NoteYou can monitor the progress on by looking at how many tasks are running on the dashboard.Step 6 - Load prices from ESIIn order to get the current prices from ESI initially, please run the following command (assuming the name of your Auth installation ismyauth):pythonmanage.pymoonmining_calculate_allPlease wait until the loading is complete before continuing.HintYou can monitor the loading progress on the dashboard. As long as the Task Queue shows more than 0 tasks the process is most likely still ongoing.Step 7 - Update EVE Online API ApplicationUpdate the Eve Online API app used for authentication in your AA installation to include the following scopes:esi-industry.read_corporation_mining.v1esi-universe.read_structures.v1esi-characters.read_notifications.v1Step 8 - Setup permissionsFinally you want to setup permission to define which users / groups will have access to which parts of the app. Check outpermissionsfor details.Congratulations! You are now ready to use Moon Mining!User ManualPricingThe app uses average market prices as basis for all price calculations. Average market prices are same prices that you also see in the Eve client e.g. for the mining ledger or fitting costs. These can be slightly different from Jita prices, since they are represent an average across all of New Eden, not just Jita / The Forge.The calculation of ore prices can be done in two different ways.Default ore pricingThe default ore pricing uses the average market prices directly to calculate ore prices. This is the same approach that the Eve client uses in the mining ledger or when scheduling an extraction. So the main benefit of this approach that you will see the same prices in-game and in the app.Reprocess ore pricingThe disadvantage of this approach is that average market prices for ores are not always accurate. Ores are rarely sold directly on the market, instead most people of refining their ores and selling the refined materials instead. This is because they have they are much smaller in volume making them easier to transport. The total value of the refined materials is also often higher then the value of the ore.Therefore you can also chose to use refined ore pricing. This will give you more accurate prices, but the values will be very different from what you may be used to see in the Eve client. For this approach the app calculates the price for a unit of ore as the sum total of it's refined materials. For the materials again the average market price is used.Please see the settingsMOONMINING_USE_REPROCESS_PRICINGandMOONMINING_REPROCESSING_YIELDfor configuring the ore pricing approach.After you changed the settings for price calculation, you please restart your AA services so that the changes to your settings become effective. Next please run the following command to recalculate all prices:pythonmanage.pymoonmining_calculate_allNoteYou can see the current prices used for all ores in the app in the ore prices report.LabelsTo help with organizing your moons you can label them. For example you might have some of your moons rented out to a third party. Just add a label "Rented out to X" to those moons and the moons and related extractions will show that label allowing you to quickly recognize which are related to your renters.Labels are created on the admin site under Label and can then be assigned under Moon.PermissionsHere is an overview of all permissions:NameDescriptionmoonmining.basic_accessThis is access permission, users without this permission will be unable to access the plugin.moonmining.upload_moon_scanThis permission allows users to upload moon scan data.moonmining.extractions_accessUser can access extractions and view owned moons.moonmining.reports_accessUser can access reports.moonmining.view_all_moonsUser can view all moons in the database and see own moons.moonmining.add_refinery_ownerThis permission is allows users to add their tokens to be pulled from when checking for new extraction events.moonmining.view_moon_ledgersUsers with this permission can view the mining ledgers from past extractions from moons they have access to.SettingsHere is a list of available settings for this app. They can be configured by adding them to your AA settings file (local.py).Note that all settings are optional and the app will use the documented default settings if they are not used.NameDescriptionDefaultMOONMINING_ADMIN_NOTIFICATIONS_ENABLEDwhether admins will get notifications about important events like when someone adds a structure ownerTrueMOONMINING_COMPLETED_EXTRACTIONS_HOURS_UNTIL_STALENumber of hours an extractions that has passed its ready time is still shown on the upcoming extractions tab.12MOONMINING_REPROCESSING_YIELDReprocessing yield used for calculating all values0.85MOONMINING_USE_REPROCESS_PRICINGWhether to calculate prices from it's reprocessed materials or not. Will use direct ore prices when switched offFalseMOONMINING_VOLUME_PER_DAYMaximum ore volume per day used for calculating moon values.960400MOONMINING_DAYS_PER_MONTHAverage days per months used for calculating moon values.30.4MOONMINING_OVERWRITE_SURVEYS_WITH_ESTIMATESWhether uploaded survey are automatically overwritten by product estimates from extractions to keep the moon values currentFalseManagement CommandsThe following management commands are available to perform administrative tasks:Hint:Run any command with--helpto see all optionsNameDescriptionmoonmining_calculate_allCalculate all properties for moons and extractions.moonstuff_export_moonsExport all moons from aa-moonstuff v1 to a CSV file, which can later be used to import the moons into the Moon Mining appmoonmining_load_evePre-loads data required for this app from ESI to improve app performance.moonmining_import_moonsImport moons from a CSV file. Example:moon_id,ore_type_id,amount40161708,45506,0.19FAQExtractionsQ: Why does the tool not show values and ores for all my extractions?A: Unfortunately, the Eve Online API does only provide basic information for extractions. Additional information like the list of ores are retrieved by trying to match moon mining notifications to extractions. However, that process it not 100% reliable. For example the API returns the latest notifications only, so notifications for extractions that have been setup weeks ago might no longer be available.PricesQ: How are the prices and values of ores calculated?A: All ore prices areaverage prices(not Jita prices), which are the current average price of an item accross all of New Eden and the same that the in-game client is showing, e.g. for price estimates when scheduling an extraction.HistoryThis project started as a fork fromaa-moonstuffin 2019, but as diverged heavily since then through two major iterations. The first iteration was called Moon Planner and used internally. It had a very different data model build uponallianceauth-evesde. The current version is the second iteration and is build upondjango-eveuniverse. Nevertheless, we like to take the opportunity to thank @colcrunch for providing a great starting point with moonstuff.