MoritzHayden / drg-api

DRG API is a free API which returns Deep Rock Galactic information and resources.
https://drgapi.com
MIT License
18 stars 3 forks source link

feat: automate weekly refresh (#2) #3

Closed MoritzHayden closed 1 year ago

MoritzHayden commented 1 year ago

Summary

Create a new workflow job that runs on a weekly basis shortly after the refresh (every Thursday at 11:05am UTC (cron: 5 11 4). This job aggregates data from the official GSG endpoint (seeds, expiration) and a regularly updated Google Docs spreadsheet (dive metadata, stage data) into the DeepDives JSON schema before pushing it up to the repo. This is a completely automated solution assuming the Google Docs spreadsheet continues to be maintained (which, historically, it has been). In the future, @rolfosian's API endpoint could be leveraged (details), but for now it doesn't have all the needed info like codenames, and objective count (i.e. 150 Morkite) due to an issue with RE-UE4SS.

Type of Change

Please select all that apply:

Included Changes

rolfosian commented 1 year ago

Objective count is implied as the secondaries are static and the primaries are easily extrapolated from the length and complexity values ie:

    objmap = {
        ('Mining Expedition', '1', '1'): '200',
        ('Mining Expedition', '1', '2'): '225',
        ('Mining Expedition', '2', '2'): '250',
        ('Mining Expedition', '2', '3'): '325',
        ('Mining Expedition', '3', '3'): '400',
        ('Egg Hunt', '1'): '4',
        ('Egg Hunt', '2'): '6',
        ('Egg Hunt', '3'): '8',
        ('Point Extraction', '2'): '7',
        ('Point Extraction', '3'): '10',
        ('Industrial Sabotage', 'default'): '1',
        ('On-Site Refining', 'default'): '3',
        ('Escort Duty', '2'): '1',
        ('Escort Duty', '3'): '2',
        ('Elimination', '2'): '2',
        ('Elimination', '3'): '3',
        ('Salvage Operation', '2'): '2',
        ('Salvage Operation', '3'): '3',
    }
MoritzHayden commented 1 year ago

Thanks @rolfosian, I created #4 to add this to the refresh script. In your example, which numbers represent length vs complexity?

rolfosian commented 1 year ago

complexity is the leftmost number for mining expedition and the rest are just lengths as the complexity is not relevant to them