Neverwinter Nights: Enhanced Edition Updated May 11, 2026

Running a NWN:EE Dedicated Server on Linux

How to run a NWN:EE dedicated server on Linux — 32-bit library requirements, download and setup steps, and a systemd service example.

NWN:EELinux32-bitsystemdSetup

Important: 32-Bit Binary

The NWN:EE Linux server binary (bin/linux-x86/nwserver) is a 32-bit executable. On a modern 64-bit Linux system you must install 32-bit compatibility libraries before the binary will run.

Install 32-Bit Libraries (Ubuntu/Debian)

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libstdc++6:i386 libgcc-s1:i386 lib32gcc-s1

On some distributions the package names differ slightly. If the binary fails with No such file or directory despite the file existing, or reports a missing shared library, run:

ldd bin/linux-x86/nwserver

This lists all required libraries and marks any that are missing.

Download and Extract

Download the Linux server ZIP from:

https://nwn.beamdog.net/downloads/

Extract the archive:

mkdir -p /opt/nwnserver
cd /opt/nwnserver
unzip nwserver-linux.zip
chmod +x bin/linux-x86/nwserver

User Directory

On Linux, the server reads and writes configuration and content to:

~/.local/share/Neverwinter Nights/

Create the required subdirectories:

mkdir -p ~/.local/share/Neverwinter\ Nights/{modules,hak,tlk,override}

Place your .mod file in the modules/ subdirectory before starting the server.

Starting the Server

/opt/nwnserver/bin/linux-x86/nwserver \
  -module "MyModule" \
  -servername "My Linux Server" \
  -publicserver 1 \
  -port 5121

systemd Service

To run the server as a managed service that restarts on failure:

[Unit]
Description=Neverwinter Nights: Enhanced Edition Dedicated Server
After=network.target

[Service]
Type=simple
User=nwnserver
WorkingDirectory=/opt/nwnserver
ExecStart=/opt/nwnserver/bin/linux-x86/nwserver \
    -module "MyModule" \
    -servername "My Server" \
    -publicserver 1 \
    -port 5121 \
    -adminpassword "changeme"
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target

Save to /etc/systemd/system/nwnserver.service, then:

systemctl daemon-reload
systemctl enable nwnserver
systemctl start nwnserver

Keeping the Server Updated

Beamdog releases server updates as new ZIPs at the same URL. To update:

  1. Stop the server: systemctl stop nwnserver
  2. Download the new ZIP from nwn.beamdog.net/downloads/.
  3. Extract and overwrite the existing files in /opt/nwnserver/.
  4. Start the server: systemctl start nwnserver

Do not delete your user data directory (~/.local/share/Neverwinter Nights/) when updating — it contains your configuration, modules, and save files.