Deep Rock Galactic lua scripts for use with RE-UE4SS lua API to fetch current mission and deep dive data for flask
- To run DRG headless, use command line arg
-nullrhi
when running the game. - Tested working with a Windows 10 virtual machine using
-nullrhi
(Requires OpenGL or dx11 for the UE4SS GUI if you want to use it). - Make sure to skip intro videos and also use
-nosplash
command line arg if desired. - Be sure to disable Steam cloud save synchronization.
- Unzip UE4SS into steamapps\common\Deep Rock Galactic\FSD\Binaries\Win64 - this is also the CWD of the scripts run by the UE4SS hook.
- This lua script will collect all of the missions generated by DRG up until the date set by the target_date variable. Its corresponding python script for automated
mods.txt
and easy user input for setting the target date is BulkMissions_Run.py. This python script goes inDeep Rock Galactic\FSD\Binaries\Win64\
. The python interpreter is required to be run with administrator privileges with this script.
-
Deep Rock Galactic\FSD.exe
ANDDeep Rock Galactic\FSD\Binaries\Win64\FSD-Win64-Shipping.exe
AND ALSOSteam.exe
ARE ALL required to be run with administrator privileges in order for this script to be able to modify the system clock and run without errors! -
This lua script and its corresponding python script will fetch 365 days worth of daily deals. Adjust the total_days variable in the lua script if you want more or less.
-
If running the clock changing scripts in a VM, make sure to turn off guest/host timesync, IE: https://www.virtualbox.org/manual/ch09.html#disabletimesync
VBoxManage setextradata VM-name "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
-
The
.*_Run.py
python scripts will handle toggling the system automatic time sync settings on and off. Run the scripts usingScrapers_Run.cmd
-
This lua script will fetch the current Deep Dive data and exit the game in short order
-
Using a Win10 Virtual Machine, running on startup via shortcut to Run_DeepDives.bat (not the setup script but the script it generates) in startup folder, requires automatic logon of Windows user and Steam launching at startup also.
- This setup script will take care of the setup of python venv.
- Clone the repo or copy the flask directory to your debian or ubuntu machine
cd
into theflask
directory and runpython3 setup.py
, then follow the prompts to set up the venv and systemd service + optional nginx reverse proxy.
- It will install the service/venv to the /home/
service_user
/service_name
folder specified by user input. Make Sure to note down the cfg.json it generates to copy to the scraper_cfg.json for the windows vm or simply input your own manually. It includes a prompt for setting up an nginx reverse proxy plus logic for if you pick a domain name and want to use certbot for it also. - Could do with some polishing but does the job well enough for now, cfg.json stuff is a bit wonky; probably better to handle those entirely manually.
- Pick a VM Software (Virtualbox, VMWare, Qemu, etc) and install a Windows 10 machine. Give it at least 4 cores or it will run very poorly, and 4-8GB of ram.
- Pick your poison of which version of Windows, I recommend LTSC 21H2, it's more forgiving on disabling updates and stuff and is just generally more lightweight than the other distros.
- Make sure to turn off guest/host timesync if your chosen vm software has it; IE: https://www.virtualbox.org/manual/ch09.html#disabletimesync
VBoxManage setextradata VM-name "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
This is critical - Have your cfg.json ready from the flask server setup.
- Run This batch script on your new Windows VM and follow the prompts.
- The batch script will handle enabling the automatic logon of the windows user account, disables UAC, as well as prompts for Windows GUI performance options plus sets the system clock timezone to UTC and the correct date format for the lua scripts. It will also download and install python + its requests and psutil modules before installing steam and setting all relevant executables to be run with elevated privileges via the registry, as well as disabling automatic Windows updates.
- Make sure Steam auto logon is enabled, install Deep Rock Galactic, and set the launch options
-nullrhi
and-nosplash
as well as skip intro videos - Install the mesa-dist-win msvc release for enabling OpenGL on Qemu etc. Or, if running Virtualbox, you don't need this, you can just install the Virtualbox Guest Additions with 3d acceleration enabled and change this to dx11. *only needed if you want to run the ue4ss console gui
- Copy the
cfg.json
generated from the flask server setup asscraper_cfg.json
, the.*_Run.py
scripts, thedrgmissions_scraper_utils.py
library, anddrgmissions_validator.py
script to theDeep Rock Galactic\FSD\Binaries\Win64
folder - Finally unzip UE4SS into the
steamapps\common\Deep Rock Galactic\FSD\Binaries\Win64
and merge the mods folders. - Run the desired scrapers via Scrapers_Run.cmd
- Public Enemy Number One: Check and Update Deep Dive scraper weekly to accomodate currently unknown configurations (havent seen any unknowns in months), contingencies for if Steam misbehaves
Scripts for registry entries for automatic login and cron entry for starting vm weekly for DeepDives_Run.py- Fix canvas mission icon jaggies in js
- Move static site to github pages, set up github actions for deployment of metadata and edit
.*_Run
scripts accordingly Figure out a solution to reduce required delay between iterations for accurate data to be collected by the 30 minute incrementer- Figure out how to manipulate wine(?) system clock with hook on linux
Clean up and convert Complexity/Length finalization to table lookup seriously look at it its so disgusting DO SOMETHINGParallelize png rendering and arraying functions and change png route args to codenames instead of indexing once possible
This is a third-party project and it is not affiliated, endorsed, or sponsored by Ghost Ship Games. The use of Deep Rock Galactic's in-game assets in this project is solely for illustrative purposes and does not imply any ownership or association with the game or its developers. All copyrights and trademarks belong to their respective owners. For official information about Deep Rock Galactic, please visit the official Ghost Ship Games website.