Minecraft logo


Minecraft is a sandbox and adventure game that takes place in a randomly generated world which is 3 times bigger than the surface area of the earth.


Minecraft game screenshot


The Minecraft dedicated server can be run as a Windows service using FireDaemon Pro. This allows you to start and run the dedicated server automatically when Windows boots and before login. FireDaemon Pro also allows you to start multiple instances of the game server, monitoring them and automatically restarting those instances in the event they crash. FireDaemon Fusion can also be used to manage your Minecraft service, plus other Windows services via your web browser. Minecraft windows server is currently in alpha so this guide will focus on the more stable java version of Minecraft server.


Step 1: Download and Install Java

Java 8 is supported until 2030 so we recommended you use this version. Oracle changed their download policy for Java and to download it, you need to make a free Oracle account and login. There are 2 types of java you can install:

  1. Java Server (JRE): This has performance optimizations and you can download the latest Java 8 Windows x64 Server JRE from the java website at the bottom of the page. Extract the contents of the zip to your hard drive, for the purposes of this guide we will use "C:\jdk1.8.0_271". The folder name will be different if you're using a different Java version.
  2. Java SE: This has performance optimizations and you can download the latest Java 8 Windows x64 Jave SE from the java website at the bottom of the page. Extract the contents of the zip to your hard drive, if you use this version extract to "C:\jre1.8.0_271". The folder name will be different if you're using a different Java version.

Depending on which version of Java you installed and if it was the zip version then you also need to do one of these:


If you downloaded the Jave Server (JRE) zip, open a command prompt as administrator and type:

setx JAVA_HOME "C:\jdk1.8.0_271"

If you downloaded the Jave SE (JSE) zip, open a command prompt as administrator and type:

setx JRE_HOME "C:\jre1.8.0_271"
Note: The Java path in the above examples will change if you installed a different version of Java so correct as necessary.

Then restart Windows


Step 2: Download and Install the Minecraft Dedicated Game Server

  1. Download the Minecraft server files via the Minecraft website. Save to "C:\Minecraft"
  2. Open windows explorer and go to "C:\Minecraft", then run "server.jar" there to download some files.
  3. Open "server.properties" and edit to your liking.
  4. Open "eula.txt" and change "false" to "true" (without double quotes).


Step 3: Check How Much Free (Unused) Ram is in Your Computer

Open windows command prompt and type the following:

systeminfo |find "Available Physical Memory"

Take note of how much free ram is available because you'll need that in the next step.

Step 4: Set Up Minecraft as a FireDaemon Pro Service

Download and install FireDaemon Pro. Double click the FireDaemon Pro icon on your desktop, then click on the New (i.e. +) button in the toolbar (or type Ctrl + N) to create a new service. Enter the information into the fields as you see below. Adjust the path names to suit your installation. Note the required parameters.


Note: You must choose "C:\Minecraft" as the working path.

FireDaemon Pro Minecraft Dedicated Server Service Program Tab


The most important field on the tab is the Parameters. The Parameters define the initial setup of your server.


If your server has more than 10GB of free (unused) RAM, then use these parameters:

-Xmx10G -Xms10G -Xmn1280m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -Dfml.ignorePatchDiscrepancies=true -Dfml.ignoreInvalidMinecraftCertificates=true -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=20000 -XX:ParallelGCThreads=10


If your server only has 5GB of free (unused) RAM, then use these parameters:

-Xmx5G -Xms5G -Xmn640m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -Dfml.ignorePatchDiscrepancies=true -Dfml.ignoreInvalidMinecraftCertificates=true -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=10

If your server only has 1GB of free (unused) RAM, then use these parameters:

-Xmx1G -Xms1G -Xmn128m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -Dfml.ignorePatchDiscrepancies=true -Dfml.ignoreInvalidMinecraftCertificates=true -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=2000 -XX:ParallelGCThreads=10


Depending on how much free ram you have, the above commands need to be added in their entirety. They allow your Minecraft to run as an optimized service.


Next, click on the FireDaemon Pro Settings tab:


FireDaemon Pro Minecraft service settings


Enter appropriate values in the fields on the Settings tab as follows:

  • (Required) Job Type: You must set job type to "Global Job".
  • (Optional) Interact with Desktop: If this setting is enabled (default), the game server's output messages can be seen in the console window on Windows Session 0. To switch to Session 0, it may be necessary to install FireDaemon Zero and ZeroInput. Alternatively, this setting may be disabled, in which case the game server's messages will be hidden.
  • (Optional) Priority: To allocate more CPU time to the game server, select a higher scheduling priority in this field.
  • (Optional) CPU Bindings: To run the game server on a specific CPU, specify the appropriate CPU in this field.


Next, click in the Lifecycle tab. Set Shutdown By to Forceful Termination and check "Console Program".


FireDaemon Pro Minecraft lifecycle settings


Lastly, click the Save and Close (ie. the tick) button on the toolbar. If the service's Startup Type is set to Automatic or Automatic (Delayed-Start), it will start immediately.


Step 5: Verify that Minecraft is Running Correctly

The Minecraft game server's status can easily be checked on the main FireDaemon Pro Services List - look for a Running Status value and a numeric Process ID (PID) value.


FireDaemon Pro Services list


If the service's Interact with Desktop setting is enabled, the game status can also be verified by switching to Windows Session 0 to view the game's messages.


Minecraft dedicated server messages window


Note: Additional information about setting up a Minecraft server can be found here.