WASTED POTENTIAL STUDIOS

Nexus updates for your mod.

Let players find and install your Nexus releases through WPS Dune Launcher.

Launcher 2.1.1Modder Kit 1.7.1Author guide

Your Nexus release

Keep downloads on your own Nexus mod page. Players connect with their own accounts.

Your chosen variant

Give stable, beta and alternative presets their own replacement chains.

Your existing project

Add optional update details with the workbench or command line. Other mods retain their current import workflow.

Main Launcher mod list with yellow Update Available buttons and green Up to Date labels
WPS Dune Launcher 2.1.1. One check finds the available updates for participating installed mods.

Enable updates for your mod

  1. Start with a schema 2 project. Install WPS Dune Launcher separately; Use Launcher 1.2.19 or later for the current Nexus authorization flow.
  2. Choose an existing file on your Nexus mod page as the starting file for this variant. Its file ID stays as the anchor in your project, including future releases. This avoids needing to know a new upload’s ID before packaging it.
  3. Open Check & package in the Kit. Select your project, enter your Nexus mod page ID, existing file ID and a short channel label, then choose Enable Nexus updates. The Kit retains an outside-payload backup of mod.json.
  4. Keep the Nexus file version identical to the version in the selected mod’s mod.json. Package your project as a standard ZIP. On Nexus, mark each release as a newer version of the preceding file in that variant’s chain.

The channel label helps players identify the variant. The file replacement chain determines which download is selected. A conflicting or unavailable chain sends the player to your Nexus page for a choice.

Independent mods are supported

This updater works with WPS mods and independent authors’ mods in the Launcher’s supported ZIP layout. Your stable mod ID, author name and folder name can keep your own branding; a WPS prefix is not required.

  1. Provide a schema 2 mod.json inside the mod’s stable folder. Keep the same ID and folder name across releases, and use a numeric version that matches the Nexus file version.
  2. Keep your mod’s actual dependencies. The standalone WPS Dune Launcher is required for this update feature. WPS Dune Framework is needed only when your mod uses its services; enabling Nexus updates does not add a Framework dependency.
  3. In the Kit, choose Check & package → Enable Nexus updates. Enter your own Nexus mod page ID, an existing file ID for this variant, and a channel such as stable, beta or 2x. The Kit sets a Launcher minimum of 1.2.19 and checks the metadata.
  4. Package the mod as a ZIP with its manifest and payload together. For example, Mods/CL_Inventory/mod.json and Mods/CL_Inventory/Scripts/main.lua form one Lua mod. Use the Kit’s supported layout for native or PAK payloads.
  5. On Nexus, connect each new file to the preceding file in that variant’s replacement chain. Keep independent chains for alternative presets. Include the update metadata in every new archive.

The update details added to your existing manifest look like this:

"id": "CL_Inventory",
"author": "Copper Lantern Mods",
"requires": [{ "id": "wps-launcher", "minVersion": "1.2.19" }],
"nexus": {
  "gameDomain": "duneawakening",
  "modId": 123,
  "fileId": 456,
  "channel": "stable"
}

These are example fields to merge into your existing schema 2 manifest. Use your own numeric Nexus IDs and retain your other manifest fields and requirements. The file ID is a stable starting point for that variant’s update chain; it does not have to change in each future ZIP.

Bring existing users onto updates

If an older installed archive has no Nexus update metadata, players install your configured release once through the normal Launcher ZIP import. Later releases appear after the main Check for updates action. An unconfigured mod shows Not configured; the Launcher does not guess a Nexus page or variant from its name.

The Launcher updates only the selected mod from a bundled ZIP and verifies both its identity and version before replacing files. Its Nexus checks apply to enabled and disabled participating mods alike.

Keep a Launcher 1.2.15 minimum

A mod that also supports Launcher 1.2.15 can keep its update identity in nexus.json, next to mod.json. Keep a required wps-launcher minimum of 1.2.15 in the manifest. Launcher 1.2.15 imports the mod and ignores the separate update file; Launcher 2.1.1 reads it for updates. This does not add updater controls to older Launcher versions.

python kit/wps.py nexus "C:/Mods/MyProject" --sidecar --mod-id YOUR_MOD_ID --file-id YOUR_EXISTING_FILE_ID --channel stable

The separate file contains the four fields inside the Nexus object shown below, without an outer nexus property. Use one metadata location per mod. Lint and packaging validate both formats; the same Nexus replacement-chain and download-identity checks apply. The sidecar command keeps the manifest unchanged and requires its Launcher dependency to be set first. Remove this opt-in with the same command and --sidecar --remove.

Command-line setup

python kit/wps.py nexus "C:/Mods/MyProject" --mod-id YOUR_MOD_ID --file-id YOUR_EXISTING_FILE_ID --channel stable

python kit/wps.py lint "C:/Mods/MyProject"

python kit/wps.py package "C:/Mods/MyProject" --out "C:/Release/MyMod.zip"

Use your real numeric Nexus IDs in the first command. The setup command adds a required standalone Launcher minimum of 1.2.19 while retaining your other requirements. An incompatible maximum version must be revised first. To remove update support, use python kit/wps.py nexus "C:/Mods/MyProject" --remove.

A configured project contains the following optional block; the numbers below are illustrative:

"nexus": {

  "gameDomain": "duneawakening",

  "modId": 123,

  "fileId": 456,

  "channel": "stable"

}

What players experience

AccountUpdate flow
Nexus PremiumConnect Nexus once in Settings, then choose Check for updates in Your mods and click the yellow Update Available button beside the mod’s version. Update all checks and installs the available participating releases in order. WPS downloads, verifies and installs the release automatically.
Free Nexus accountClick Update Available and choose Slow download on Nexus. The browser downloads the ZIP to the folder selected in Settings; WPS verifies the exact Nexus file and installs it automatically. Update all repeats this authorization for each queued release. Windows app defaults need no setup.

Settings and update progress stay inside the same launcher window. Paths and Nexus connection settings are on Settings; short hover hints explain the controls.

The launcher checks the downloaded mod’s identity and version before installing it. In a bundled preset archive, it replaces only the selected mod. Supported saved settings, remembered selections and previous-version backups use the normal Launcher update workflow.

Nexus download credit

Updates obtain their download links from Nexus and transfer directly from Nexus’s file servers using the player’s authorization. WPS does not redistribute your file through a separate download service. Wabbajack’s integration documentation confirms that downloads through the official Nexus API contribute to Nexus download counts.

A player updating a mod they already downloaded is still the same unique downloader of that mod page. Nexus explains unique downloads here. The local integration test recorded a real Nexus transfer in the account’s download history. It did not observe an immediate change in the public aggregate total.

Test before sharing

Use a separate Launcher folder, keep your normal saves and mod selection intact, and verify both Premium and free-account flows for your supported package. This local build supports personal API keys for private testing. Public application registration is a separate Nexus requirement; no developer key belongs in a mod archive.

The Kit’s command and workbench change local project metadata only. They do not upload files, publish a release, or contact Nexus.