ReNight (also known as ReNightdive Wad Manager) is an open-source GUI application for managing local DOOM .wad mods for Nightdive’s DOOM + DOOM II (KEX 2024) port.
ReNight exists because the in-game path for loading “local mods” involves uploading them through the game UI. Many users do not want to upload files they did not create, and they want a strictly local workflow. The only purely local alternative is to manually drop WADs into the Nightdive local mod folder and then keep that folder maintained by hand. ReNight provides a standalone importer and manager that keeps that folder organized using either copies or symbolic links.
Latest release (recommended):
GitHub Releases (latest)
Quick download (v0.3):
- Windows: ReNight_windows_0.3.zip
- Linux: ReNight_linux_0.3.tar.gz
All releases:
GitHub Releases
- Download from: GitHub Releases (latest) (choose the Windows
.zip). - Extract the
.zipanywhere (for example, a folder on your Desktop). - Run
ReNight.exe.
-
Download from: GitHub Releases (latest) (choose the Linux
.tar.gz). -
Extract it:
tar -xzf ReNight_linux_<version>.tar.gz
-
Run it:
./ReNight
If your file manager blocks execution, set the executable bit:
chmod +x ReNightReNight manages WAD files inside the Nightdive local mod folder by importing from a “PWADs folder” (your own library folder).
You choose one import mode:
- Symlink mode: ReNight creates a symbolic link in the Nightdive folder that points to the original WAD inside your PWADs folder.
- Copy mode: ReNight copies the WAD into the Nightdive folder.
ReNight does not modify WAD contents. It only manages filesystem entries.
ReNight is optimized for a common “Doomer library” setup: a single PWAD root folder containing many WADs arranged in any subfolder structure (for example, megawads/, mapsets/, gameplay/, etc.). ReNight can import from almost any structure, but its quality-of-life features are designed around selecting a PWAD root once and then repeatedly importing from that library.
When ReNight needs to associate a file in the Nightdive folder back to a source file (for example, for copy-mode tracking), it uses stored metadata and/or filename+MD5 matching within the PWAD tree.
WAD / PWAD: For practical purposes here, a “WAD” is a .wad file you want to load as a local mod.
Symlink (symbolic link): A filesystem entry that looks like a normal file but redirects to another file. It saves disk space and keeps the Nightdive folder “mirroring” your library.
On Windows, creating symlinks can require Administrator rights or enabling Developer Mode (depending on system policy and environment). On Linux, symlinks generally work normally, but they can still be affected by filesystem permissions and mount options.
- Nightdive folder selection: Set the folder where the KEX port loads local mods. ReNight attempts to auto-detect it on first run (including common Steam/Proton layouts).
- PWADs folder selection: Set a root folder where you keep your WADs for browsing and for improved source matching.
- Import modes:
- Symlink mode: Create symlinks into the Nightdive folder (saves disk space; depends on symlink support/permissions).
- Copy mode: Copy WADs into the Nightdive folder (does not modify your originals).
- Safer copy collision handling: If importing in copy mode and a filename collision exists with different content, ReNight generates a unique destination name (
name-2.wad,name-3.wad, …) instead of overwriting unrelated files. - Improved mod list UI: Mods are displayed in a two-column table (filename + status tag). Multi-select delete is supported.
- More reliable mod classification:
(SL)for symlink entries.(CPY)for copied entries that can be associated back to a source file (via stored metadata and/or filename+MD5 matching within the PWAD tree).(ONL)for entries that exist only in the Nightdive folder (manual additions, imports from outside the PWAD tree, or missing/moved sources).
- Filesystem monitoring: Watches the Nightdive folder and the selected PWAD folder tree and refreshes the mod list automatically when content changes.
- Update checking: ReNight can compare its version against a small descriptor file and then open either the GitHub Releases page or a direct download link in the system browser.
- Per-user config and state: Configuration and mod metadata are stored in OS-appropriate per-user locations rather than beside the executable, with automatic migration from legacy side-by-side files on first run.
- The Nightdive KEX in-game UI is limited to single-WAD local mods. Multi-WAD setups still require custom launch methods outside ReNight.
- Formats not supported by KEX (for example
.pk3and typical “ZDoom mods”) are not made compatible by ReNight. - “Compressed containers” (for example WADs inside
.zip) are not supported by the KEX local mod loader and therefore are not supported by ReNight.
The folder is under your user profile in “Saved Games” (Nightdive Studios). The exact path can vary.
If you are unsure, launch the game and use: Mods → Play → Open Local Mod Folder to open the correct directory, then copy that path into ReNight.
On Linux under Steam/Proton, the Nightdive local mod directory is typically under compatdata. A common layout is:
~/.local/share/Steam/steamapps/compatdata/2280/pfx/drive_c/users/steamuser/Saved Games/Nightdive Studios/DOOM
If you are unsure, launch the game and use: Mods → Play → Open Local Mod Folder.
After launching, the main window provides options to select folders, import WADs, and view current mods in the Nightdive folder.
- Pick WAD: Select one or more WAD files to import.
- Pick Folder (Batch): Select a folder and import every
.wadin that directory. - Import: Creates either symlinks or copies according to your settings.
The list supports multi-selection delete. Deleting from ReNight removes entries from the Nightdive folder. In symlink mode, this removes the link only (not your original WAD). In copy mode, this removes the copied file only (not your original WAD).
ReNight is developed and packaged with Python 3.11 as the baseline. Running from source requires Python 3.11+.
The current entry point for running from source is:
renight_entry.py
-
Install Python 3.11.
-
Install Git (optional, but recommended).
-
Clone the repository:
git clone https://github.com/Retzilience/ReNight.git cd ReNight
-
Create and activate a virtual environment:
py -3.11 -m venv venv .\venv\Scripts\Activate.ps1
-
Install dependencies:
python -m pip install -U pip python -m pip install -r requirements.txt
-
Run:
python .\renight_entry.py
If PowerShell blocks activation scripts, you can run the venv Python directly without activation:
.\venv\Scripts\python.exe -m pip install -U pip
.\venv\Scripts\python.exe -m pip install -r requirements.txt
.\venv\Scripts\python.exe .\renight_entry.py-
Install Python 3.11, venv, pip, and Git using your distro tooling.
Debian/Ubuntu:
sudo apt update sudo apt install -y python3.11 python3.11-venv python3-pip git
Fedora:
sudo dnf install -y python3 python3-pip git
Arch:
sudo pacman -S --needed python python-pip git
-
Clone the repository:
git clone https://github.com/Retzilience/ReNight.git cd ReNight -
Create and activate a virtual environment:
python3.11 -m venv venv source venv/bin/activate -
Install dependencies and run:
python -m pip install -U pip python -m pip install -r requirements.txt python ./renight_entry.py
Distributed binaries are compiled with Nuitka (native binaries generated via a C/C++ toolchain).
The commands below assume you are running them from the repository root and that renight_entry.py is the entry point (as used in packaged builds).
- Python 3.11
pipandvenv- A working C/C++ toolchain
- Nuitka installed into your build environment
If you have requirements-build.txt, install it in the build venv:
python -m pip install -r requirements-build.txtThis is the build command used as of v0.3 (PowerShell). It assumes ReNight.ico exists in the working directory.
& "C:\Program Files\Python311\python.exe" -m nuitka `
--mode=onefile `
--windows-console-mode=disable `
--mingw64 `
--assume-yes-for-downloads `
--enable-plugin=pyside6 `
--include-qt-plugins=sensible `
--windows-icon-from-ico=ReNight.ico `
--output-filename=ReNight.exe `
renight_entry.pyToolchain notes (Windows):
--mingw64tells Nuitka to use MinGW64. With--assume-yes-for-downloads, Nuitka can download its preferred toolchain components when needed.- If your environment blocks developer features, symlink creation at runtime may require running the application elevated or enabling Windows Developer Mode.
python -m nuitka \
--mode=onefile \
--enable-plugin=pyside6 \
--include-qt-plugins=sensible \
--output-filename=ReNight \
renight_entry.pyToolchain notes (Linux):
- You need a compiler toolchain installed. Typical packages are
gcc,g++, andmake(often provided bybuild-essentialon Debian/Ubuntu). - Some distros require additional packaging utilities for binary patching. If Nuitka reports missing tools, install what it requests via your package manager.
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. For details, visit: http://creativecommons.org/licenses/by-nc-sa/4.0/
Made by retzilience.
Special thanks to RataUnderground for the app icon.



