Multiplayer tutorial 1: Conceitos

3

Index

Tagged

Contributors

Stats

24,106 visits, 37,795 views

Tools

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 14 Aug, 2015. Last updated 25 Feb, 2019

Qualidade da ligação

Uma série de medições pode ser feita para determinar a qualidade de uma ligação através da Internet, e é um bom guia da qualidade susceptível de jogo que irão resultar. Estes incluem latência , variância atraso do pacote (PDV), perda de pacotes e largura de banda.

Latency

Como resultado de dispositivos e as leis da física de roteamento, cada mensagem enviada através da Internet vai levar algum tempo para chegar ao destino. O tempo de transmissão é chamado a latência , ou, por vezes, o tempo de ping . É comumente algo em torno de 20ms a 200ms para qualquer dado dois jogadores em qualquer lugar do mundo, embora, como qualquer jogador experiente pode dizer-lhe, por vezes, pode estar além desse intervalo. Os jogos geralmente executado em 60 FPS, ou seja, cada quadro leva cerca de 16ms. Uma latência de 100 ms significa que o jogo avança cerca de seis quadros antes que uma mensagem enviada chega ao destino. Se então ele precisa de uma resposta, ela dobra: a resposta vai chegar mais seis quadros mais tarde.

[Latência de transmissão através da Internet] [17]

Em jogos de ação, os tempos de resposta são muito importantes. Bons jogadores muitas vezes pode responder a jogabilidade eventos dentro de dezenas de milissegundos, e tornam-se muito sensível a estes atrasos. Considere uma bala se movendo a 500 pixels por segundo. Em 200ms que abrange 100 pixels, o que poderia facilmente ser a diferença entre uma batida direta e desaparecidos por um amplo espaço.

Esta latência de transmissão de dados pela Internet cria alguns problemas difíceis. Para o jogo, para ser justo, todos os jogadores precisam estar vendo a mesma coisa e ter a mesma oportunidade para responder a eventos. Na prática, cada jogador está agindo em um intervalo de tempo diferente e de acolhimento devem tomar as decisões sobre o que está realmente acontecendo. Enquanto várias técnicas são utilizadas para compensar os atrasos de tempo e tentar manter o jogo justo, qualquer jogador experiente pode também dizer-lhe que uma baixa latência serve como uma vantagem gameplay: você vai ver as coisas acontecem um pouco antes de outros jogadores.

Packet Delay Variance (PDV)

Outro problema com a latência é que pode variar para cada mensagem. Se duas mensagens são enviadas através da Internet, pode-se tomar 50ms para chegar, mas o segundo pode levar 70ms. Este é o chamado atraso de pacotes variância , ou PDV. Em Construct 2, é medida como a mais alta latência menos a menor latência ao longo dos últimos medições, assim, no exemplo dado seria 20ms. A PDV alta tende a ser pior do que a alta latência. O motor de múltiplos jogadores antecipa quando as mensagens chegará e tenta compensar o atraso. A alta latência com um baixo PDV, as previsões sobre horários de chegada trabalhar bem e as compensações são precisas, resultando em gameplay estável. A baixa latência com um alto PDV significa mensagens chegam de forma imprevisível, e as compensações são por vezes imprecisas, resultando na jogabilidade instável como o motor tem vários jogadores para fazer correções, e anulando a vantagem de uma baixa latência.

Perda

Packet

As mensagens também podem ir totalmente ausente. Embora os dispositivos de roteamento fazer uma tentativa de "melhor esforço" para passar mensagens ao longo, eles são autorizados a simplesmente deixá-los se eles se inundado com muitas mensagens, sem memória, acidente, perder o poder, e assim por diante. A porcentagem de mensagens que vão faltar é chamado de perda de pacotes . O motor de múltiplos jogadores podem facilmente compensar pacotes ocasionais indo ausente, mas se a perda de pacote é elevado a qualidade de jogo começa a degradar.

Uma causa comum de perda de pacotes é alto tráfego causando dispositivos de roteamento para obter mensagens enviadas mais rápido do que eles podem receber ou processá-los. Se a capacidade é excedida, algumas mensagens serão processadas e retransmitidas, e os outros serão descartados de forma a preservar algum grau de serviço. Se tivesse que lidar com cada mensagem, o backlog continuaria aumentando com retransmissão cada vez mais lentas até que falhou completamente. A fim de evitar causar isso, é aconselhável tentar transmitir mensagens menores ao menor taxa aceitável - que também os torna mais propensos a chegar rapidamente.

Bandwidth

Finalmente, a largura de banda refere-se à taxa global em que os dados podem ser enviados. Todas as conexões de Internet têm uma taxa de download e upload máximo, frequentemente medida em megabits por segundo. Desde há oito bits em um byte, dividindo que por 8 dá-lhe a taxa em megabytes por segundo (uma vez que a maioria dos sistemas de software, incluindo Construct 2, medir os dados em bytes em vez de bits). Por exemplo, uma conexão de 40 megabits / seg pode em teoria de transferência de 5 megabytes por segundo. No entanto, note a taxa de upload pode ser diferente, e é geralmente menos em conexões de Internet de consumo.

Largura de banda pode ser o gargalo para os grandes jogos. Os pares mais participar de um jogo, mais dados o anfitrião deve fazer o upload para manter todos os pares up-to-date. Eventualmente, o anfitrião vai atingir o limite de sua taxa de upload e perda de pacotes irá ocorrer. Esta é outra razão para enviar pequenas mensagens com o menor taxa aceitável, uma vez que minimiza a largura de banda necessária.

  • 0 Comments

Want to leave a comment? Login or Register an account!