Setup a FiveM server
Preamble
In this tutorial, we will explain every step to successfully install and run a FiveM server.
Prerequisites
- Note down the IP address of the machine you’ll install the server on. You can use this link on the machine to find out your IP address.
- Download Visual C++ Redistributable 2019 or newer and install it.
- Download Git and install it.
- Download FiveM server files and click on LATEST RECOMMENDED
- Acquire a master key from fiveM
- Connect to your machine
Acquiring a Master Key from FiveM :
You can do these step from any computer or mobile device.
- Follow this link and complete the “Make sure your not a robot”
- Login or create a new account
- Then clic on register
- The Server Label is the title of your server, its the listed name in your key manager
- The server IP address box will contain your VPS IP address.
- You should specify that the server is self hosted, otherwise, your server key may get ban by FiveM. They doesn’t allow anyone else than Zap-Hosting as VPS provider.
- Clic on Generate
- Note down your key, you must (hover your mouse over it to make it appear).
Building our server files structure :
- Create a new folder (I placed mine on the desktop), for the sake of this tutorial, I named mine "FXServer".
- Inside this folder, create a new folder named "server".
- Unzip the server.zip in our new "server" folder.
Using GIT to download and update the server data files :
- Use the "Clone Existing Repository" in Git Gui that we installed previously to download the server data files
- Specify the source location and the target directory ()
Source location is : https://github.com/citizenfx/cfx-server-data.git
Target Directory must be in another folder than the server files, the folder must not exist - Once the process is completed the server data files should be in the specified folder.
Create the server.cfg file :
- In the server-data folder, create a new file, named config.cfg
- Edit this file and copy-paste this text in it :
# Only change the IP if you're using a server with multiple network interfaces, otherwise change the port only.
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"
# These resources will start by default.
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure fivem
ensure hardcap
ensure rconlog
ensure scoreboard
# This allows players to use scripthook-based plugins such as the legacy Lambda Menu.
# Set this to 1 to allow scripthook. Do note that this does _not_ guarantee players won't be able to use external plugins.
sv_scriptHookAllowed 0
# Uncomment this and set a password to enable RCON. Make sure to change the password - it should look like rcon_password "YOURPASSWORD"
#rcon_password ""
# A comma-separated list of tags for your server.
# For example:
# - sets tags "drifting, cars, racing"
# Or:
# - sets tags "roleplay, military, tanks"
sets tags "default"
# A valid locale identifier for your server's primary language.
# For example "en-US", "fr-CA", "nl-NL", "de-DE", "en-GB", "pt-BR"
sets locale "root-AQ"
# please DO replace root-AQ on the line ABOVE with a real language! :)
# Set an optional server info and connecting banner image url.
# Size doesn't matter, any banner sized image will be fine.
#sets banner_detail "https://url.to/image.png"
#sets banner_connecting "https://url.to/image.png"
# Set your server's hostname sv_hostname "FXServer, but unconfigured"
# Nested configs!
#exec server_internal.cfg
# Loading a server icon (96x96 PNG file)
#load_server_icon myLogo.png
# convars which can be used in scripts
set temp_convar "hey world!"
# Uncomment this line if you do not want your server to be listed in the server browser.
# Do not edit it if you *do* want your server listed.
#sv_master1 ""
# Add system admins
add_ace group.admin command allow # allow all commands
add_ace group.admin command.quit deny # but don't allow quit
add_principal identifier.fivem:1 group.admin # add the admin to the group
# Hide player endpoints in external log output.
sv_endpointprivacy true
# enable OneSync with default configuration (required for server-side state awareness)
onesync_enabled true
# Server player slot limit (must be between 1 and 32, unless using OneSync)
sv_maxclients 32
# Steam Web API key, if you want to use Steam authentication (https://steamcommunity.com/dev/apikey)
# -> replace "" with the key
set steam_webApiKey ""
# License key for your server (https://keymaster.fivem.net)
sv_licenseKey changeme
Create a batch file to automate the starting process :
- create a file named RUN.bat
- edit the file and write this in it, the save it :
cd /d C:\Users\[your user name here]\Desktop\FXServer
server\FXServer.exe +exec server-data\server.cfg