Como funcionam servidores? (2)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Como funcionam servidores? (2)

Mensagem por Thomaz em Seg 19 Mar 2012, 18:26

Depois de muito tempo tentando temporizar inputs do teclado para poder retornar inputs ao cliente mas sem resultados, decidi vir aqui fazer um segundo questionamento(eu já tentei só que não deu certo):

É possível criar um servidor que envia valores de posições sem ter um lag absurdo de 4 segundos mesmo dentro de uma rede lan?


Eu fiz um esquema bem simples que se utiliza de um "for" para não precisar enviar 300 mensagens dependendo do número de players. O esquema é este:

Spoiler:
clearbuffer();
writebyte(msg_sync)
for(a = 0; a <= global.players; a+=1){
with(obj_player){
if idd = other.a{
writebyte(idd);
writeshort(x);
writeshort(y);
writeshort(direction);
}}}
with(obj_controle){
sendmessage(socket)
}


Onde o servidor recebe inputs e retorna posições. O problema é, como eu falei, o lag absurdo (provavelmente pelo congestionamento de informação). Eu tentei de várias formas consertar este erro mas sem solução. (Tentei colocar alarms para diminuir o congestionamento).

Então, venho fazer uma segunda pergunta: É possível mandar posições sem que exista este lag absurdo?

Ps¹: Meu problema não e com o código mas sim com a lógica por traz dele.
ps²: Estou utilizando a 39dll caso isto tenha alguma diferença na lógica.
ps³: Caso não tenham entendido meu problema, eu posso explicar mais detalhadamente.

Thomaz

Ranking : Nota A
Número de Mensagens : 106
Idade : 21
Data de inscrição : 13/10/2011
Notas recebidas : A
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://bigleafeater.tumblr.com/

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum