Ho letto la valvola article on multi-player networking che è stata adattata dal documento 2001 di Yahn Bernier chiamato Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization. Sto facendo un gioco in tempo reale multi-player utilizzando un server collegato a node.js clienti attraverso socket.io e ho alcune domande per quanto riguarda i principi di seguito dettagliate:Principi del gioco multiplayer in tempo reale per TCP e Node.js
impedisce [interpolazione] il movimento nervoso che ciò comporterebbe lo in genere comporta il buffering degli aggiornamenti del server, quindi la loro riproduzione con gli intervalli correttamente interpolati tra. Può anche proteggere contro glitch causati dalla perdita di pacchetti.
previsione è la nozione del cliente predire gli effetti delle azioni della del giocatore locale senza attendere il server per confermarli. Lo stato previsto di un'entità viene verificato rispetto ai comandi del server quando arrivano a finché non viene rilevata una corrispondenza o un'errata corrispondenza.
compensazione Lag è la nozione di server utilizzando la latenza di un giocatore per riavvolgere il tempo durante l'elaborazione di [input dell'utente], per vedere ciò che il giocatore ha visto quando il comando è stato inviato . In combinazione con la previsione, la compensazione del ritardo può aiutare a combattere la latenza della rete al punto di quasi eliminandola dal punto di vista di un utente malintenzionato.
fare i principi si applicano a TCP come fanno a UDP e ci sarebbero differenze di attuazione? Posso vedere che l'interpolazione dell'entità non avrebbe bisogno di proteggere dalla perdita di pacchetti, ma questo è tutto.
Posso persino comunicare tra un server e un browser Web e viceversa utilizzando UDP e Node.js?
Poiché la carta ha più di un decennio, questi principi sono ancora in uso o sono comparse altre tecnologie?
Qualsiasi aiuto sarebbe molto apprezzato.