So you have a real passion for Minecraft, and you want to make your own private server for just you and your friends but you haven’t got a clue where to look or what to do in order to get one setup and running. That’s where we have you covered.
You have two real choices, you either go with a third party host and get some big company to host your server for you, saving the costs of a machine while also saving your home internet’s bandwidth or you can host it on your own PC, skipping the monthly fees of an external host. Both have their advantages and disadvantages, but for this guide today we are looking specifically at hosting using your own PC, or a spare laptop you have laying around.
So the first thing you need to do, is decide what type of server you want to host. Are you going for that oh-so-good vanilla experience or are you after that modded experience? Either way, the process is identical, all that difffers is where you actually get said software.
If you choose to go the vanilla way, you can get the server files directly from the Mojang website if you are planning on your server running the most up to date version of Minecraft: 1.16.3 Server Download. Alternatively, if you want to go for an older version you can always head on over to MCVersions.net and grab any version you want. This is a fantastic community-run site that archives older, unmodified server and client versions for free.
If you are going modded and are playing a modpack, there is a good chance that your pack already has a preconfigured server file somewhere. Let’s take Direwolf20’s 1.12.2 pack as an example, (it’s about my favourite pack of all time) it is really simple to go onto Curseforge and do a quick search. If you have clicked on the link, you will already see that the server version is directly below the client version. Piece of cake really.
So What Now?
Well that’s where we get into the fun stuff. Here is where it gets about as technical as you can really get if you don’t want the use of plugins on your server. From here, the paths diverge that bit further, so for the time being we will focus purely on the bog-standard vanilla server. With 1.16.3, the only file you get given is a server.jar file. Put that into a folder that you are designating for your server and run it, prompting it to start generating files inside that folder.
Now that you have let server.jar do its job, you need to go into eula.txt, make sure you read the eula in its entirety (link on the file itself) and then change ‘false’ to ‘true’ at the bottom of the file and hit save. Now, run server.jar again and it will actually create the server, and launch it.
Upon running server.jar and letting it do its thing for the second time, you will also get given a nice little server GUI, if a little basic. That said, absolutely nothing has been configured yet, so let’s do that.
The best way to get going with a server, at least on Windows, is by using a batch file (.bat) so right click inside the folder, make a new text file and call it something like start.bat and type in the following:
@ECHO OFF java -Xms1024M -Xmx2048M -jar_server.jar --nogui pause
Now you have the most basic server setup, by adding the --nogui appendix you are getting rid of the server GUI which actually nets you a whole bunch of free performance, as the GUI itself is poorly coded and you aren't exactly losing many features, as you still get a command line interface (CLI) to use and monitor with.
From here you are pretty much done, but if you feel your server lagging then just crank up the memory you are allocating by changing the -Xms and -Xmx paramaters to bigger numbers, the example above is using 1GB as a minimum allocation and 2GB as a maximum allocation.
That’s Great But… I Wanna Play
Alright, alright, calm down. I’m getting there. In order to actually connect to the server, you need to have some little details first, namely the IP address of the host and the port number. As you can see in the CLI above, the default port number assigned is :25565 but there is no mention of the IP address. That’s where this handy site called whatismyipaddress.com comes into play.
Now to actually connect to your server, go to direct connect or add it as a server with the following address: ip:port or if you want a more accurate example, 126.96.36.199:25565
Typing that in can be a bit annoying though, having to give that out to your friends all the time is a right pain. That’s where another free little service comes into play. FreeDNS is anothy nifty site that can help make your life easier, by letting you create a server address that is easier to remember. You need to make an account unfortunately, but that’s a sacrifice I’m willing to make.
Once you have made an account, head on over to the registry and select whatever prefix you want, in my case I use the uk.to prefix because I’m in the UK, but there are hundreds of options to choose from. Once you have chosen a prefix, fill out the form that comes up. Essentially, leave everything as is, as it automatically grabs your public IP address for you.
Now you should be set! Send that address out to your friends and you will all be able to play Minecraft seemlessly, so long as you leave your PC on the whole time. My advice, use a spare laptop you can leave on – the server is actually very light on resources – otherwise if you are like me and host off of your own PC and go to shutdown, all your friends *might* get a little annoyed when you do go off. Other than that, take a look into using an external host, a guide for this will be on the way soon.