Saltar al contenido

Generador de server.cfg

Rellena un formulario y obtén un server.cfg limpio y comentado, listo para tu servidor FiveM, con OneSync, endpoints, tags, locale, resources y permisos ACE.

Esta herramienta y sus notas están en inglés por ahora.

Config y códigoConfig, DescargaLeer la documentación
Framework

Server identity

Slots, network & game

OneSync

Keys & branding

Extra sets variables

Security

Database

Turn on to add mysql_connection_string for oxmysql.

Voice (pma-voice)

Turn on to add pma-voice convars and make sure it is started.

Resources

Permissions (ACE)

Admins

Find identifiers in txAdmin (Players, then a player) or with GetPlayerIdentifiers(source). Paste just the value, the license: prefix is optional.

Custom rules

add_principal child parent makes the child inherit everything the parent has.

Set sv_licenseKey. Get a key at portal.cfx.re.

No admin identifier set. You will not have admin permissions.

server.cfg
# ==========================================================
#  server.cfg
#  Generated with fivemad.com/tools/server-cfg-generator
#  Docs: https://docs.fivem.net/docs/server-manual/setting-up-a-server/
# ==========================================================
#
#  txAdmin: start the server from txAdmin, not with +exec.
#  txAdmin reads the port from the endpoint lines below, so keep them.
#  Restarts, schedules and bans are handled in the txAdmin panel.

## Networking
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

## Server identity
sv_hostname "^5My Server ^7| Serious RP | Discord: example"
sets sv_projectName "My Server"
sets sv_projectDesc "Serious roleplay with custom jobs and an active staff team"
sets locale "en-US"
sets tags "default"

## Slots and game
sv_maxclients 48
set onesync on
set sv_enforceGameBuild 3258      # Bottom Dollar Bounties

## Security
sv_scriptHookAllowed 0
sv_pureLevel 1                 # blocks modified game files, allows audio and graphics mods
sv_endpointprivacy true

## Keys
set steam_webApiKey "none"   # https://steamcommunity.com/dev/apikey
sv_licenseKey "changeme"   # https://portal.cfx.re

## Resources (load order matters)
# Default cfx resources
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure basic-gamemode
ensure hardcap
ensure baseevents

## Permissions
add_ace group.admin command allow            # all commands
add_ace group.admin command.quit deny        # but not quit
# add_principal identifier.license:xxxxxxxx group.admin   # add yourself here

How to use it

  1. Pick your framework. It fills a working ensure order and the matching permission lines.
  2. Fill in the hostname, license key, slots and game build. Warnings on the right point out common mistakes.
  3. Add yourself as admin with your license or Discord identifier.
  4. Download server.cfg into your server-data folder (next to the resources folder).

Everything stays in your browser, including the license key and database password. The form is saved locally so you can come back to it.

Starting the server

With txAdmin, point the deployer or Settings, then FXServer, at this file. Without txAdmin, start FXServer from the server-data folder:

# Windows
C:\FXServer\server\FXServer.exe +exec server.cfg

# Linux
bash ~/FXServer/server/run.sh +exec server.cfg

Load order

Resources start in the order they are listed. Libraries such as oxmysql and ox_lib must come before the framework core, and the core (qb-core, qbx_core, es_extended) before any script that uses it. ensure [folder] starts everything inside a bracketed folder and you do not control the order inside it, so ensure dependencies explicitly before the folder.

OneSync and slots

  • set onesync on is what almost every modern resource expects. Without OneSync the cap is 32 players.
  • Up to 48 slots works with any key. Going higher needs an Element Club subscription on the Cfx.re account that owns the key.
  • sv_enforceGameBuild must be set before players join. Changing it makes clients download the matching game build on their next connect.

ACE permissions in short

# give a group a permission
add_ace group.admin command allow
# put a player (or group) inside a group
add_principal identifier.license:abc123 group.admin
# let one group inherit another
add_principal group.admin group.mod

Check a permission in Lua with IsPlayerAceAllowed(source, 'command.kick'). After editing ACE lines you can apply them live by pasting them into the server console.

Gotchas

  • Do not commit server.cfg to a public repo: it holds your license key and database password. Move secrets to a separate file and exec secrets.cfg.
  • Special characters in the database password must be URL-encoded in mysql_connection_string. The generator does that for you.
  • setr convars are replicated to clients, sets convars are shown publicly in the server list, plain set stays on the server.