Salta ai contenuti

Zombie

Gli zombie sono bs_zombies. È di gran lunga la resource più grande. La versione breve di come funziona: il server tiene una lista di ogni vagante (il registro), della sua salute e di chi lo ospita. I giocatori vedono solo i ped dei vaganti vicini a loro. Tutto è in resources/[beyond]/bs_zombies/config/.

Tre tipi in Zombies.Types (config_zombies.lua): walker, brute, crawler. I crawler hanno bisogno che la resource nutria_crawl_anims sia avviata prima di bs_zombies, altrimenti si rialzano.

-- bs_zombies/config/config_net.lua
Zombies.Mode = 'networked' -- or 'legacy'
  • networked (predefinita) - un vero ped OneSync per vagante, creato dal server. Tutti vedono lo stesso zombie nello stesso punto. OneSync migra la proprietà a un client vicino, e solo il proprietario ne esegue l’IA.
  • legacy - il vecchio modo. Ogni client costruisce i propri ped locali e riporta le posizioni. Usala se la modalità in rete ti dà problemi, è solo un riavvio di bs_zombies, nient’altro.

Puoi cambiarla anche dalla console F1 (categoria Zombie), richiede il riavvio di bs_zombies.

Quanti vaganti ricevono un vero ped contemporaneamente:

cap = min(hardCap, baseCap + perPlayerCap * (players - 1))
ChiavePredefinitoSignificato
promoteRadius300un vagante entro questa distanza da qualsiasi giocatore riceve un ped
demoteHysteresis60il ped viene rimosso quando nessuno è entro il raggio + questo
baseCap24con un giocatore online
perPlayerCap18aggiunto per ogni giocatore in più
hardCap160mai più di questo
perPlayerNear34massimo attorno a un giocatore
perfBudgetMs70se il frame medio del server supera questo, il limite scende
perfMinFactor0.35…ma mai sotto questa frazione
entitySoft / entityHard1400 / 1900totale ped+oggetti+veicoli. Tra i due il limite si riduce, a hard vengono rimossi i vaganti più lontani
fpsGood / fpsLow / lowFpsFactor45 / 25 / 0.5un giocatore con pochi FPS ha meno vaganti attorno
corpseSeconds120durata dei cadaveri in rete
simDensityScale0.35la popolazione della simulazione viene scalata di questo in modalità in rete (riavvio)

Se alzi hardCap, alza anche Streaming.PoolGuard.maxNetworked (default 96), che limita quanti record di vaganti esistono in assoluto.

Da config_streaming.lua:

ChiavePredefinito
Streaming.spawnMin / spawnMax200 / 300i vaganti compaiono in questo anello attorno a un giocatore
Streaming.PoolGuard.minSpawnDistance100niente compare più vicino di così a qualsiasi giocatore
Zombies.Settings.spawnDistanceMin100lo stesso minimo, lato settori
Streaming.PoolGuard.maxPerPlayer28vaganti contati attorno a ogni giocatore
Streaming.PoolGuard.clientPedLimit180il client smette di creare ped a questa dimensione del pool di ped
Streaming.PoolGuard.clientMaxLocal40massimo di ped di vaganti che un client tiene (legacy)
Streaming.cleanupDistance480

Il minimo di spawn è il maggiore tra spawnDistanceMin, minSpawnDistance e 100. Quindi gli zombie non ti compaiono mai in faccia, tranne con lo spawn forzato dello staff.

Niente compare dentro le zone sicure (config_zones.lua). Gli zombie non si arrampicano nemmeno, per niente. È Zombies.Mobility, per favore non attivarlo, salgono sui tetti e restano bloccati.

La mappa è divisa in settori che si svegliano e si addormentano. Li modifichi nel pannello della mappa dei settori, una pagina web servita dalla resource nodes. Al primo avvio stampa in console l’URL con una chiave. Se vuoi una chiave tua:

set bs_sectormap_key "your-own-long-random-token"

Usa set, non setr. setr invia il convar a ogni client e poi tutti i giocatori hanno la tua chiave.

Lo staff ha anche /atlas (bs_atlas), una mappa in diretta della simulazione in gioco.

Spari, auto, il gadget decoy, eventi: tutto fa rumore e il rumore attira i vaganti (config_noise.lua, Zombies.NoiseSources). I soppressori riducono molto il rumore delle armi (Weapons.Effects.suppressor.noiseScale = 0.28). Le orde sono in Zombies.Horde, le ondate di orde degli eventi del mondo sono in Eventi del mondo.

ComandoLatoCosa
/znetserver, staffconteggio in rete, limite e perché, frame medio, censimento entità, il tuo conteggio vicino
/zsyncserver, staffper giocatore, vaganti del server vicini vs ped che il client ha davvero
/zdiagserverstato generale, include le righe di /znet
/zstatus, /zsim, /znodes, /sectorserverdirector, simulazione, nodi, il tuo settore
/zclearservercancella i vaganti
/znetc, /zgaitclientvaganti in rete adottati, proprietario, andatura
/poolsclientuso del pool di ped
/safezonesclientdisegna i cerchi delle zone sicure

L’elenco completo è nella pagina API di bs_zombies.

  1. Imposta Zombies.Mode = 'legacy' (F1 o il file), ensure bs_zombies. Fatto.
  2. Segnala cosa hai visto con l’output di /znet e /zsync, è la prima cosa che chiederò.