server.cfg spiegato: ogni linea di server.cfg di FiveM, una per una

Cosa fa ogni linea di un server.cfg di FiveM: endpoints, sv_hostname, projectName, tags, locale, icon, sv_maxclients, license key, OneSync, ensure, ACE ed exec.

Hai aperto server.cfg e è una parete di righe che hai copiato da una ricetta. Questa guida passa in rassegna le righe che troverai nella maggior parte dei server, nell'ordine in cui di solito appaiono, con una breve spiegazione e un link dove c'è una guida più lunga.

Endpoints

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

Questi sono l'indirizzo e la porta su cui il server ascolta. 0.0.0.0 significa ogni interfaccia di rete, e 30120 è la porta predefinita. I giocatori si connettono su UDP e usano TCP per HTTP e il proxy di txAdmin, quindi apri entrambi nel tuo firewall. Con txAdmin, l'interfaccia e la porta sono solitamente gestite per te, e le impostazioni di txAdmin possono protestare se non corrispondono. Se i giocatori non riescono a unirsi dall'esterno, vedi port forwarding.

Nome e listing

cfg
sv_hostname "My Server"
sets sv_projectName "My Server"
sets sv_projectDesc "A friendly roleplay server"
sets tags "roleplay, esx, english"
sets locale "en-US"
load_server_icon myLogo.png
  • sv_hostname è il nome del server più vecchio.
  • sv_projectName e sv_projectDesc sono il nome e la descrizione nel listing del server. La forma sets li pubblica.
  • tags sono le parole chiave per cui le persone filtrano, e locale è la lingua.
  • load_server_icon carica un piccolo PNG dalla cartella del server.

I colori, i banner e la dimensione dell'icona sono trattati in icona, banner e tag del server.

Giocatori

cfg
sv_maxclients 48

Il numero di slot per i giocatori. Andare oltre 48 richiede OneSync e un livello di supporter su Cfx.re. I dettagli sono in OneSync e il limite di giocatori.

Chiavi

cfg
sv_licenseKey "cfxk_xxxxxxxxxxxxxxxxxxxx_xxxxx"
set steam_webApiKey "none"

sv_licenseKey è la chiave dal Portale Cfx.re, e il server non si avvierà senza una valida. Vedi errore della chiave di licenza del server. steam_webApiKey è necessario solo se vuoi identificatori Steam, e none è accettato quando non lo fai. Entrambe le righe sono segreti: non condividere il tuo server.cfg negli screenshot.

Database

cfg
set mysql_connection_string "mysql://user:password@localhost/dbname?charset=utf8mb4"

La stringa di connessione che oxmysql legge. Valori errati forniscono gli errori in errore di connessione oxmysql. Usa set, non setr o sets, in modo che la password rimanga sul server.

OneSync e game build

cfg
set onesync on
sv_enforceGameBuild 3258

onesync on attiva OneSync, che è lo standard per i server moderni ed è necessario per molti slot. sv_enforceGameBuild forza i client a usare un game build, e le macchine DLC, i vestiti e le mappe hanno bisogno di uno recente. I numeri di build e cosa sbloccan sono in sv_enforceGameBuild e DLC. Usa un numero di build supportato dai tuoi artifact, non solo quello in questo esempio.

Risorse: ensure

cfg
ensure oxmysql
ensure ox_lib
ensure es_extended
ensure [standalone]

Ogni ensure avvia una risorsa, o un'intera cartella bracket. L'ordine è importante: database, librerie e il framework per primo. Vedi ordine del server.cfg ensure. Se uno fallisce, couldn't start resource spiega il messaggio.

Permessi: add_ace e add_principal

cfg
add_ace group.admin command allow
add_principal identifier.fivem:1234567 group.admin

add_ace dà una permesso a un gruppo, qui ogni comando. add_principal mette un giocatore (per identificatore) in quel gruppo. Sostituisci l'identificatore con il tuo. La spiegazione completa, con la differenza tra ACE e i gruppi del tuo framework, è in ACE permissions.

Includere altri file: exec

cfg
exec permissions.cfg
exec resources.cfg

exec esegue un altro file cfg come se le sue righe fossero qui. Dividere le permessi o le risorse nei loro file mantiene server.cfg leggibile, e puoi mantenere i segreti in un file che non condividi mai.

Un esempio minimo

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_licenseKey "cfxk_..."
sv_hostname "My Server"
sets sv_projectName "My Server"
sets sv_projectDesc "A friendly roleplay server"
sets tags "roleplay"
sets locale "en-US"
load_server_icon myLogo.png
sv_maxclients 48
set onesync on
set mysql_connection_string "mysql://user:password@localhost/dbname?charset=utf8mb4"

ensure oxmysql
ensure ox_lib
ensure es_extended

Attenzione: un errore di digitazione in una riga non sempre ferma il server. Una convar con ortografia errata viene creata silenziosamente e non fa nulla. Quando un'impostazione sembra ignorata, verifica prima l'ortografia.

Checklist

Sintomo Soluzione
I giocatori non riescono a unirsi dall'esterno Apri TCP e UDP sulla porta, vedi port forwarding
Il server non si avvierà Controlla sv_licenseKey
Nome o tag non visualizzati Usa sets, riavvia e attendi che il listing si aggiorni
Oltre 48 slot rifiutati Abilita OneSync e controlla il tuo livello su Cfx.re
Errori del database Controlla mysql_connection_string
Contenuto DLC mancante Aumenta sv_enforceGameBuild
Non amministratore Correggi add_principal con il tuo identificatore

Risposte rapide

Dov'è server.cfg?

Nella cartella dei dati del tuo server, accanto alla cartella resources. Con txAdmin puoi anche aprirlo e modificarlo dalla pagina dell'Editor CFG nel pannello web.

Ho bisogno di riavviare dopo aver modificato server.cfg?

Sì. Il file viene letto quando il server si avvia. Riavvia il server per applicare i cambiamenti agli endpoints, ai convars e alle permessi. Le nuove righe ensure possono anche essere eseguite nella console live.

Qual è la differenza tra set, sets e setr?

set crea una convar che solo il server può leggere. sets la pubblica anche nel listing del server. setr la replica anche ai client, quindi non mettere mai un segreto in setr o sets.

Script senza questo problema

Shop CreatorCrea un negozio in meno di un minuto — proprietari, dipendenti, casseforti e rapine inclusi.Vedi script →Mic PhoneUn telefono pieghevole che si apre in un tablet e arriva sul telefono vero del giocatore.Vedi script →

Continua a leggere