PDA

View Full Version : [Guida] Netcode semplice per CS



ti|T
15-07-2004, 15:09
Non riproducete il contenuto di queste guide senza autorizzazione. Laddove aveste bisogno, inserite un mirror a questi topic. Grazie.
In caso di commenti o correzioni, utilizzate i forum di Counter-Strike.

* Introduzione
Niente e' piu' inutile di una guida per il netcode.
Una volta abbandonato il proprio ambito locale, ci si affida ad una sorta di pseudo-casualita'.
Niente e' da dare per scontato, non esiste piu' nessun riscontro oggettivo.

Il multiplayer e' soggetto alle leggi di internet. Nel caso di una partita in rete di Counter-Strike, ci sono mille fattori che possono influenzare le prestazioni della vostra connessione. Tra i maggiori artefici: qualita' della linea, banda disponibile, qualita' del proprio provider, prestazioni del server di gioco.

Nonostante tutto, e' necessaria una sorta di introduzione generale per (cercare di) ottenere il massimo dalle proprie risorse in termini di connettivita' e per indirizzare correttamente chi fosse nuovo del panorama di Counter-Strike. E' questo che cercheremo di ottenere con questa guida.

* Il netcode
La guida fa riferimento a Counter-Strike 1.6 e non andando nel tecnico, e' da ritenersi di livello semplice.
I comandi che esamineremo sono solo 3 e, sebbene possa essere obiettabile, sono gli unici comandi fondamentali al "tuning" del comportamento della propria connessione.

rate
Quantita' di banda utilizzata dal gioco
Range di valori utili: 5000-20000

cl_updaterate
Numero di update al secondo (pacchetti spediti) che il vostro PC ricevera' dal server di gioco
Range di valori utili: 10-101

cl_cmdrate
Numero di update al secondo (pacchetti inviati) che il vostro PC inviera' al server di gioco
Range di valori utili: 10-101

Il range di valori potrebbe variare a seconda delle impostazioni del sever.

* Valori indicativi per il netcode
A questo punto si arriva al campo in cui tutto e' soggettivo e dipende dai mezzi a propria disposizione.
Nessun settaggio e' migliore di quello con cui si e' instaurato il miglior feeling.

Uno strumento per poter monitorare lo stato del proprio netcode e' il comando
net_graph 3 (il 3 sta per quello di tipo numerico, il piu' facile da decifrare)
se si volesse variare la posizione del netgraph, utilizzate il comando
net_graphwidth (con un valore di 250 dovrebbe evitare di sovrapporsi alle informazioni del gioco)

Come valori di base, sul quale iniziare la regolazione dei propri valori ottimali, potremmo prendere in esame i seguenti.

rate
56k: 5000
isdn 64k: 6000/8000
isdn 128k: 14000
adsl: 10000/20000
fibra: 20000

Impostare il rate sopra i 20000 risulta essere inutile in quanto l'engine di Counter-Strike 1.6 e' limitato a questo valore (nella 1.5 il limite era 25000).
La reale banda a disposizione non e' da considerarsi quella "nominale" (256, 640, 1280) ma quella garantita. E' questo il motivo per il quale una adsl base in genere non e' performante quanto le rispettive proposte da provider di fascia alta.
Nel caso di rate troppo alto per la vostra connessione, assisterete ad una comparsa di loss e choke (il significato di questi due termini e' spiegato sotto) nel vostro netgraph.

cl_updaterate
56k: 10/20
isdn 64k: 25/40
isdn 128k: 40/60
adsl: 75/100
fibra: 100

Il comando updaterate genera un miglior feeling con quanto succede nel gioco. Piu' e' alto e piu' il nostro gioco sara' sincronizzato con quanto avviene online.
La quantita' di update che la vostra connessione e' in grado di sostenere dipende dalla stabilita' e dalla velocita' in download della stessa.
Tenere un valore troppo alto di updaterate puo' portare la comparsa di loss: aggiornamenti persi poiche' il vostro pc non riesce a riceverli (o che il server non riesce ad inviarvi).

cl_cmdrate
56k: 10/20
isdn 64k: 40/60
isdn 128k: 60/100
adsl: 75/100
fibra: 100

Il comando cmdrate aiuta il server a conoscere esattamente la vostra posizione e le vostre azioni nel gioco. Piu' e' alto e piu' il server sara' reattivo ai nostri comandi.
La quantita' di update che la vostra connessione e' in grado di sostenere dipende dalla stabilita' e dalla velocita' in upload della stessa.
Tenere un valore troppo alto di updaterate puo' portare la comparsa di choke: aggiornamenti persi poiche' il vostro pc non riesce a trasmetterli (o che il server non riesce a ricevere).

* Come impostare il netcode
Partendo dai valori generali, solamente orientativi, procedete nell'aumentare o diminuire i comandi con differenze di
rate: 500
cl_updaterate/cl_cmdrate: 5
ad ogni tentativo, tenendo d'occhio il comportamento del netcode (esaminando choke e loss).

Tenete presente che i fenomeni di choke e loss, al momento della connessione al server e all'inizio del match, sono normali.
Cio' a cui dovreste fare attenzione e' il comportamento del vostro netcode nei momenti piu' concitati del gioco.

Valori variabilli di 1/10 di loss o choke sono accettabili, considerando che si va dallo 0 perfetto al 100 di situazione disastrata.
Non avere ne' choke ne' loss non e' sintomo di un netcode impostato al meglio. Cercate di preferire valori di netcode quanto piu' alti possibile cercando un compromesso con i loss e choke visualizzati e soprattutto esaminando il feeling in gioco.

Un'ultima nota, l'ex_interp.
La versione 1.6 di Counter-Strike imposta automaticamente questo parametro al valore corretto di 1/cl_updaterate.
Qualora cosi' non fosse, o si volesse averne la sicurezza, impostare il valore di ex_interp a 0.
Questo e' l'unico valore che riproduce sul vostro PC cio' che realmente avviene sul server di gioco.