NWN Linux Dedicated Server Running Maintaining and Updating
While NeverWinter Nights itself is not open source, it was one of the few games written early on to be fully supported natively on Linux (as well as Windows and/or Mac OS).
Better yet, the Aurora Toolset lets you create server adventure modules that others can play.
One of my long-term ongoing opensource projects is The Brain Computer Interface Role-Playing Game (BCI RPG) at www.bcirpg.com.
In some of the early prototyping and developer/staff training phases, we used NeverWinter Nights to help us with the prototyping testing story development. We wanted something public domain, so we went with Shakespeare's "The Tempest", and recreated it. This module is available in our open source git repo under the same project.
When we're running this server, you can usually see it listed as a private (red color) server in the multiplayer server list as nwn.rpgr.org.
Notes on getting the Linux NWN Server up and Running
Upgrade latest NWN:EE server bundle from here:
https://forums.beamdog.com/discussion/67157/server-download-packages-and-docker-support
Login to NWN server.
su to root
back up /opt/nwn to nwn.bak.datestamp.tar.gz
tar -zcvf nwn.bak.20200102.tar.gz nwn
Then
Su to nwnuser account (or similar).
cd to /opt/nwn
wget https://nwnx.io/nwnee-dedicated-8193.5.zip
unzip nwnee-dedicated-8193.5.zip
[A]ll to replace to all files.
Then
cd bin/linux-x86/
./start-Prelude.sh
./start-Chapter1E.sh
./start-Chapter2E.sh
etc.
Player Name Refused by Self-hosted Server
Find the nwnplayer.ini file
Add under [Profile] section:
Player Name=yourplayernamehere
notice the space between player and name
Example Linux Nwserver Hosting Config Script
cat run-NWN-Infinite-Dungeons-mod-port-5558.sh
#!/bin/sh
./nwserver-linux -module "Neverwinter Nights - Infinite Dungeons" -servername RPGR-hawkenix1 -load 4 -maxclients 20 -minlevel 1 -maxlevel 40 -pauseandplay 1 -pvp 0 -servervault 1 -elc 0 -ilr 0 -oneparty 1 -difficulty 4 -autosaveinterval 5 -playerpassword mypassword -dmpassword mypassword -adminpassword mypassword -publicserver 1 -reloadwhenempty 1 -port 5558
Firewall rules:
lease make sure that the following ports are open:
Ports 5120 through 5300
Port 6500
Port 27900
Port 28900
In addition to opening the ports listed above, you may need to allow incoming connections on the port you are running your server on (5121 by default) and forward those connections to the computer running the server.
For our Project Ilmatar (Shakespeare's The Tempest) server, it specifically also needs port: 19600
Resources:
https://nwn.fandom.com/wiki/Dedicated_server
https://steamcommunity.com/app/704450/discussions/0/1697168437882085856/
https://forums.beamdog.com/discussion/67157/server-download-packages-and-docker-support (latest server version download)
http://nwncampaigns.com/forums/viewtopic.php?t=106