Setting up a server

From Minetest Wiki
Revision as of 23:30, 13 April 2017 by MrIbby (talk | contribs)
Jump to navigation Jump to search
Languages Language: English • Deutsch • français • italiano • 日本語 • русский

Running the Server

Graphical Client

If you want to host a server to play on with friends, then the simplest way to start it is to use the Minetest client. Note that you are hosting the server on your computer, and the server will shutdown if you leave the game.

  • Go to the server tab
  • Make sure a world is selected
  • Enter your username and password
  • Click start

Linux

  1. Open a terminal.
  2. Type in YOUR/MINETEST/DIRECTORY/bin/minetestserver or just drop the minetestserver executable (located in /Minetest/bin/) into the terminal (PLEASE READ THE NOTES BELOW!)
    • If you want to specify a specific game ID, the game ID choices are located in /Minetest/games/. Add in --gameid thegameid to the end of the command.
    • If you get the error “Multiple worlds are available.”, the world choices are located in /Minetest/worlds/. Add in --worldname theWorld to the end of the command.
  3. If your server crashes, then look at the debug.txt in /Minetest/bin/
  4. Make sure you make your server safe from damage.

For easy use you can create an file named minetestserver.sh, add the lines below and put it in your /Minetest/bin/ folder. To run the server, just run the file in a terminal.

#!/bin/bash -x

./minetestserver --gameid minetest --worldname world

Windows

  1. Open command prompt by going in the Minetest installation folder, then in the “bin” folder, hold Shift, do a right click on a empty file (not on minetest.exe), click “Open command window here”.
  2. Type this: minetest.exe --server.
    • If you get the error “Multiple worlds are available.”, use minetest.exe --server --worldname world_name instead, where world_name is the name of the world.
  3. If your server crashes, then look at the debug.txt in /Minetest/bin/
  4. Make sure you make your server safe from damage.

If you don't like to start the crashed server, simply start the server out of a batch file which contains the following code:

@echo off
:crash
minetest.exe --server --worldname world_name
goto crash

Allowing external players to connect

Players outside of your network won't be able to join the server unless you port forward.

  1. Choose a port to run the server on. The default of 30000 is recommended
  2. Find out your internal IP of the computer you are running the server on
    • Linux: open a terminal and type ifconfig and hit enter. Look for "inet adr" near "wlan0" or "eth0".
    • Windows
      • Open command prompt: Start → Run …, enter cmd.exe and hit enter.
      • Type ipconfig and hit enter.
      • Look for IPv4 Address.
    • macOS: Open the command prompt and enter netstat -nr.
  3. Login to your router, and port forward UDP on your chosen port to the internal IP you found
  4. Alter any firewalls you may have to allow traffic to the port you choose
  5. Make your server listed in the server list by setting the following settings in minetest.conf
    • server_announce = true - makes Minetest tell the server list about the server.
    • server_name - set the value of this to your server's name.
    • server_description - set the value of this to a longer description describing your server.
    • server_address - if you have a domain name for your server, then set this to the domain name.
    • server_url - if you have a website for your server, then set this to the website URL.
    • motd - a message that is sent to the player when they join. Use this to welcome them.
    • You should restart the server to make sure any changed settings changed

Protect server

The default MTG does not protect from accidental damage (ie: fire) or griefers (malicious players).

  • Install a protection mod, such as areas
  • Disable fire by adding `enable_fire = false` to minetest.conf
  • Disable TNT by adding `enable_tnt = false` to minetest.conf
  • Enable rollback to find out who placed a node, and allow all of a player's nodes to be reverted: `enable_rollback = true` in minetest.conf

See also