The basics

Making a server on BeamMP is very easy and is free!

Servers are an integral part to enabling the full BeamMP functionality; without the server, the client cannot communicate with other clients.
The server setup used for BeamMP consists of an exe file, a simple config setup (which contains the port, number of players, and vehicles per player), a simple log, and a resources folder (where mods are shared from the server to the clients so everyone can experience the same environment).

Note: the server only supports IPv4, if your modem is IPv6 only you will have to contact your ISP to host a public server.

Image of server folder (Contains 4 items total)
A look inside the server folder

 

 

 

 

 

 

Port forwarding

If you want players outside your local network to be able to join you are going to need to port forward. This topic has been covered many times with every game server, so we will not go into details here. Please refer to: this tutorial. The Port field should be the same one you entered in the config (Default is 30814), and you need to forward both TCP and UDP protocols.

 

Obtaining an authentication key

To do this head to the Keymaster, click on Keys on the left and then click on the blue 'here' text fill out the Server Name and Server IP fields. By default you have a limited number of keys. One key can be used on one server. This limitation is made to prevent people from making too many servers.

The server IP and name fields are only needed for you to recognize which server is what, it is not currently being used code wise. If you don't want to input an IP simply put 0.0.0.0

Once your Key is generated, copy and paste it into the AuthKey field. This should be kept private and is shown as "--------------" in the example. 

 

Installation

Windows

Getting started

Please ensure you have port-forwarded before attempting to host a server! Without you ports being forwarded, you cannot host a server to the public!

To get started download the server zip from beammp.com, and Extract the exe file into an empty folder. This is where your server will live. Open this folder, and double click on the BeamMP-Server.exe file, starting it. This will generate all the necessary files for you, once you see text you can close it and proceed to the next step.

Running the server

Once you are done configuring your server you can double-click  BeamMP-Server.exe to launch it. For quick access in the future you can easily create a desktop shortcut using [Right click] > Send to > Desktop (create shortcut).

To shut down your server simply close the console window it opened for you.

 

Linux

Using building (recommended)

Linux server can be officially built on both Debian 9 and Debian 10, other distributions might work but aren't officially supported. If you want to build it yourself you can do it by downloading the source on our Github a tutorial can be found here.

Using Wine (not recommended, only if building doesn't work)

If you want to run it in wine much of the process is the same, so this part will only focus on the differences. Firstly you are going to have to install Wine.

Wine Installation

First make sure all your packages are up to date with:

$ sudo apt update

$ sudo apt upgrade

The server only works with the development version of Wine, to get it do:

$ sudo apt install wine

These will take a few minutes to complete, but after they are done you are ready to launch the server.

Server Installation

Now that you have installed and set up wine you can download the server file. Extract it into a folder like on Winodws, then you can run it inside wine by doing:

$ wine BeamMP-Server.exe

This will then run the server for you and create all the required files and folders. You can then close the server once it says "Failed to authenticate with backend services". Now you can edit your config file (same as on Windows) and insert your AuthKey and other desired settings. 

If you get a wine error complaining about ntlm_auth, you can install the winbind package to get rid of it.

Then run the server again by doing the command above. To exit simply press Ctrl+C, or close the terminal window.

 

How to use the server config file

The config file (Server.cfg) can be opened using most text editors, Notepad is fine.

Once inside the config file you'll be greeted with a couple noteworthy lines you'll need to edit.

The first of which is the server name (Name), which is what your server will show up as in the server browser. The example is set to "BeamMP New Server".

Next you should generate an auth(authentication) key, to do this simply look above on this page, everything is explained.

The rest of the available parameters explained:

Name Description Default value
Debug Set to true to enable debug output in the console false
Private Set to true if you don't want to show up in the Server Browser true
Port The port your server will run on. Leave it as default unless you plan on hosting multiple servers from the same network 30814
Cars How many vehicles a player is allowed to have at the same time 1
MaxPlayers How many players your server can hold at a time 10
Map What the server map is /levels/gridmap/info.json
Name What your server is called. This shows up in the Server Browser BeamMP New Server
Desc What shows under the name when you click on the server BeamMP Default Description
use Which folder your mods are in. Best to leave it at default Resources
AuthKey The authentication key used by the server. It is used to identify your server and is mandatory empty

 

How to add mods to your server

Now for the harder part: Installing a custom map for your server.

If that did not work, you have to launch the map in singleplayer, and paste print(getMissionFilename()) into the lua console. The output is what your Map line should contain.

That's it! Your modded map should now be available to join!

All Vanilla Maps Names

Here are all the stock maps 

 

Customise the look of your server name

add one of those symbols before your text and it'll apply an effect to that text in the server list
 

^n - underline
^0 - black
^1 - blue
^2 - green
^3 - light blue
^4 - red
^5 - pink
^6 - orange
^7 - grey
^8 - dark grey
^9 - light purple
^a - light green
^b - light blue
^c - dark orange
^d - light pink
^e - yellow
^f - white
^l - Bold
^r - reset
^m - strikethrough
^o - italic