Digitalroot.ModUploader
1.0.14
See the version list below for details.
dotnet tool install --global Digitalroot.ModUploader --version 1.0.14
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local Digitalroot.ModUploader --version 1.0.14
#tool dotnet:?package=Digitalroot.ModUploader&version=1.0.14
nuke :add-package Digitalroot.ModUploader --version 1.0.14
Digitalroot Mod Uploader
Introduction
This is a command-line tool that can be used to upload mod files to an existing mod on Thunderstore, ModVault and Nexus Mods.
Note: Thunderstore support will be in a future release.
Installation
You can either download the binary for your platform from the Releases section on the right, or install it using the dotnet
CLI:
dotnet tool install -g Digitalroot.ModUploader
# then run with
drmu
Configuration and Usage
While you can pass all values at the command line. Please use environment variables for the sensitive information.
You have been warned!
Environment Variables
- NEXUSMOD_API_KEY
- NEXUSMOD_COOKIE_NEXUSID
- NEXUSMOD_COOKIE_SID_DEVELOP
All Commands support the -?, -h, --help
options to show help and usage information
Commands:
Digitalroot.ModUploader.exe -h
Description:
Uploads mods to Thunderstore, ModVault, or NexusMods
Usage:
Digitalroot.ModUploader.exe [command] [options]
Options:
--version Show version information
-?, -h, --help Show help and usage information
Commands:
modvault, mv modvault.xyz commands.
nexusmods, nx nexusmods.com commands.
thunderstore, ts thunderstore.io commands.
Digitalroot.ModUploader.exe nx -h
Description:
nexusmods.com commands.
Usage:
Digitalroot.ModUploader.exe nexusmods [command] [options]
Options:
-?, -h, --help Show help and usage information
Commands:
check Check that an API Key and Cookie are valid.
upload <mod-id> <archive-file> Upload a file of 20.0GB or less to nexusmods.com
Digitalroot.ModUploader.exe check -h
Description:
Check that an API Key and Cookie are valid.
Usage:
Digitalroot.ModUploader.exe nexusmods check [options]
Options:
-k, --key <key> Api Key, ENV: NEXUSMOD_API_KEY
-cnxid, --cookie_nexusid <cookie value> Session Cookie, ENV: NEXUSMOD_COOKIE_NEXUSID
-csid, --cookie_sid_develop <cookie value> Session Cookie, ENV: NEXUSMOD_COOKIE_SID_DEVELOP
-?, -h, --help Show help and usage information
Digitalroot.ModUploader.exe upload -h
Description:
Upload a file of 20.0GB or less to nexusmods.com
Usage:
Digitalroot.ModUploader.exe nexusmods upload [<mod-id> <archive-file>] [options]
Arguments:
<mod-id> Nexus mod id.
<archive-file> File to upload.
Options:
-f, --file-name <file-name> (REQUIRED) Name for the file on Nexus Mods
-v, --version <version> (REQUIRED) Version for your uploaded file.
-t, --category <Archived|Main|Misc|Old|Optional|Updates> (REQUIRED) Mod file category [default: Main]
-d, --description <description> description
-g, --game <game> Game mod is for. [default: valheim]
-dmfu, --disable-main-file-update Skips replacing an existing file in the 'Main' category with the new one. [default: False]
-ddwm, --disable-download-with-manager Removes the 'Download With Manager' button. [default: False]
-dvu, --disable-version-update Skips updating mod's main version to match this file's version. [default: False]
-dmv, --disable-main-vortex Skips setting file as the main Vortex file. [default: False]
-drpu, --disable-requirements-pop-up Skips informing downloaders of this mod's requirements before they attempt to download this file [default: False]
-k, --key <key> Api Key, ENV: NEXUSMOD_API_KEY
-cnxid, --cookie_nexusid <cookie value> Session Cookie, ENV: NEXUSMOD_COOKIE_NEXUSID
-csid, --cookie_sid_develop <cookie value> Session Cookie, ENV: NEXUSMOD_COOKIE_SID_DEVELOP
-?, -h, --help Show help and usage information
Examples
nexusmods check -k "MyVeryLongNexusApiKey" -cnxid "%7B%22mechanism--MyVeryLongNexusSessionCookieValue--%22%7D" -csid "%7B%22mechanism--MyVeryLongNexusSessionCookieSessIdValue--%22%7D"
nexusmods upload 1303 Digitalroot.Valheim.JVL.BT.Fix.v1.0.6.zip -v 1.0.6 -f TestFile -t Main -ddwm -dmv -d "My Test File"
Note: Strings can also be wrapped in quotes. The following command is the same as the example above it.
nexusmods upload 1303 "Digitalroot.Valheim.JVL.BT.Fix.v1.0.6.zip" -v "1.0.6" -f "TestFile" -t Main -ddwm -dmv -d "My Test File"
FAQ
Nexus Mods
Q1: Where do I find out more info about the Nexus Mods' Public API?
Q2: Does Nexus Mods' API Rate Limit?
Yes, see. Nexus Mods Public API
Q3: Where do I get my Nexus Mods' API key?
Q4: Where do I get my Nexus Mods' Session Cookies?
From your browser. This site covers how to do it in most browers. The cookies you are looking for are called
nexusid
andsid_develop
. They starts with%7B%22mechanism
. This is the html encoded value for{"mechanism
. If your browser displays a cookie value starting with{"mechanism
then you will need to html encode the value before using this tool.
<br /> <p align="center"> <b>Digitalroot can be found in the Valhalla Legends Discord</b><br /><br /> <a href="https://discord.gg/SsMW3rm67u" target="_blank"><img src="https://digitalroot.net/img/vl/vl_logo_125x154.png"></a> </p>
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
This package has no dependencies.
Initial Release, works for NexusMods only.