OneSync e Sincronizzazione

INFO

OneSync è il sistema di sincronizzazione di FiveM. Decide quali entità ogni client vede, come vengono instradate e quanto spesso vengono aggiornate. È fondamentale per server con molti giocatori.

ObiettivoDettagli
Cosa imparerai• Cos’è OneSync e i suoi modi (on/off/legacy)
• Convars principali di OneSync
• Entity budget e limiti
• Quando usare on vs legacy
Prerequisiti• Server.cfg configurato (nota 03)

Modi di OneSync

ValoreDescrizioneQuando usarlo
offNessuna state awareness, P2P standardMai su server moderni
onFull state awareness, entity routingStandard consigliato
legacyCompatibilità: tutti i player visti da tuttiSolo se compatibilità con vecchi script lo impone
onesync on

WARNING

onesync legacy è sconsigliato: peggiora le performance e causa glitch grafici. Usa on a meno che uno script obsoleto lo richieda esplicitamente.


Convars OneSync

Sincronizzazione entità

ConvarDefaultDescrizione
onesync_enableInfinitytrueSistema Infinity per sincronizzare molte entità
onesync_populationtrueGestisce lo spawn della popolazione (NPC)
onesync_forceMigrationtrueMigra le entità quando l’owner cambia
onesync_distanceCullingtrueRimuove entità oltre la distanza dalla sync
onesync_distanceCullVehiclesfalseCome sopra ma per i veicoli
onesync on
set onesync_population true
set onesync_distanceCulling true

Sicurezza di rete

ConvarDefaultDescrizione
sv_entityLockdowninactivestrict = i client non creano entità
sv_filterRequestControl0Blocca REQUEST_CONTROL abusati
sv_enableNetworkedSoundstrueConsente il routing di suoni (usato dagli exploit)

TIP

Per un server RP attivo considera:

set sv_entityLockdown strict
set sv_filterRequestControl 2

Entity Budget e Limiti

OneSync ha limiti sul numero di entità sincronizzate per giocatore. Oltre i limiti, le entità “eccedenti” non vengono instradate.

TipoLimite tipico
Entità totali sincronizzate~2048 per giocatore
Veicoli per giocatore~256 (configurabile)
Pedsdipende dalla versione

Se vedi “entity limit reached” nei log, significa che troppe entità vengono create senza essere distrutte. Cause comuni:

  • Script che spawnano peds/veicoli senza DeleteEntity
  • Props generati da molteplici risorse
  • Oggetti con FreezeEntityPosition mai rimossi

WARNING

Entity leak è la causa #1 di degradazione progressiva del server RP. Controlla regolarmente che gli script puliscano le entità non più necessarie. Vedi Modulo Performance.


OneSync nel Server RP (best practice)

onesync on
set onesync_enableInfinity true
set onesync_population true
set onesync_distanceCulling true
 
# Sicurezza
set sv_entityLockdown strict
set sv_filterRequestControl 2
 
# Anti-abuso di eventi di rete
set sv_enableNetworkedSounds false

Pool Sizes

Se hai molte entità dello stesso tipo (es. tanti veicoli custom), puoi aumentare i pool:

increase_pool_size "TxdStore" 6000
increase_pool_size "Peds" 500

WARNING

increase_pool_size si imposta solo all’avvio e ha limiti di sicurezza. Se superi i limiti, il server lo ignora. Usalo solo se necessario e dopo aver verificato i valori consentiti.


Verifica

  • onesync on nel server.cfg
  • Nessun errore “entity limit reached” nei log
  • Le risorse puliscono le entità (no leak)
  • Pool size aumentati solo se necessario

TIP

Prossimo passo: 05 - ACE e Permessi


Torna alla: Indice Generale