Server Setup (Windows, Local Host)

This guide is written specifically for running a local server on Windows with Java 17+. For general information and other platforms, see Server Setup.

  • Latest Revision: December 2023 version 2.4.0

This guide focuses on setting up a local server on the same machine as the client running Windows OS. Prism is used as the server software, running Java 17+. A single machine running both client and server is the simplest option as it doesn't have to deal with port forwarding or network issues, but it also can't be used for multiplayer without extra steps.

Server Setup

Extract Server Files

The server should now be functional, but there's still some things to set up. These next steps are universal regardless of platform or launcher, so head back to Server Setup. It's vital to choose and install a backup mod, because unlike SP the server pack does not ship with one included.

For the purpose of this guide we will be utilizing our hosted repositories as well as the Prism launcher. The download links on Server Setup are compatible with each other, but remember that the _Server.zip is for Java8, and _Server_Java_17_20.zip is for Java 17+. If you follow this guide and fail to connect, your launcher may have downloaded the latest client pack instead of a server pack. See Installing and Migrating if unsure how to install Prism Launcher.

Extract Server Files Image
Right click on the server files ZIP archive and choose "Extract All..."
Extraction Destination Image

Choose a name for the server folder and hit extract. Whether or not you uncheck the "Show extracted files when complete" checkbox is up to you.Note: It is highly recommended to save the server files somewhere that is NOT on OneDrive (so, not the desktop but something like C:\GTNH or similar).

Agree to EULA

File Content
Open the eula.txt file and change "false" to "true"

By setting the text of the EULA.txt file to true you are agreeing to the following EULA.

You can edit the startserver-java9.bat file if you want to change the memory usage from the default 6G (six gigabytes) - change both cases of "6G" to whatever memory amount you want. GT:NH will not run with less than 4G, and 6G should be a fine default until later.

Run the Server

Starting the server at this point is very straight forward. Simply double click:
startserver-java9.bat
Note: If you are using the Java 8 version it will be startserver.bat
Firewall Prompt
If you get the following prompt while the server is starting you can hit Allow Access. It is recommended making sure you're only allowing access on Private Networks (this doesn't impact if you want to open your modem/router for friends to join but is just best practice).

Note: It may take quite some time for the server to startup.

If at this point you get an error like "Error: Could not find or load main class @java9args.txt" and it immediately exits, your default Java version is probably Java 8. You can either change the default system Java, or edit startserver9.bat and replace java with the full path to the correct Java in quotes, something like "C:\Program Files\Java\jdk-17.0.6\bin\java.exe" - if you can't find it, Prism or MultiMC may be able to find the list of installed Javas (edit a client instance, select Settings, click Auto-Detect).

Console Window Image
When your server is ready you will typically see what is boxed in by red at the bottom. At this point your server is running and you can connect to it!
In order to stop the server simply type "stop" and press Enter:
stop
The server will scroll some information by and then the window will close when it shuts down entirely.


edit 

Danger!

Never close the command window instead of using stop. Doing so can corrupt your world making it unplayable.

Next Steps