Suporte no desenvolvimento de jogos


    Corrigindo erro grave na conexão

    Valentine
    Valentine
    Administrador
    Administrador

    Medalhas : Corrigindo erro grave na conexão 94JxvCorrigindo erro grave na conexão ZgLkiRU
    Mensagens : 5042
    Créditos : 1121

    Corrigindo erro grave na conexão Empty Corrigindo erro grave na conexão

    Mensagem por Valentine em Dom Fev 10, 2013 12:10 pm

    Parece um pequeno erro, mais este é um dos bugs mais perigosos que eu já vi, está é a correção que não pode faltar no seu jogo por se tratar de uma coisa importante que é a conexão entre o cliente e servidor. O Eclipse Origins e derivados tem um sistema de anti flood que impede sobrecargas no servidor, fazendo com que um jogador só possa ocupar no máximo 1000 bytes por segundo na memória do computador do servidor, além de também só poder enviar e receber 25 mensagens entre cliente e servidor, isto é ótimo, porém tem um grande problema, mesmo que um jogador não seja um hacker, uma hora ou outra a depender do sistema, o jogador pode sem perceber ultrapassar esses limites, o problema é que quando passa esse limite NUNCA MAIS você consegue receber mais nada do servidor, obrigando o jogador a ter que se desconectar e tentar uma nova conexão com o servidor. Este erro passou despercebido porque não acontece esse problema com jogadores admins.

    Abra o servidor

    1 - Em modServerTCP, procure por:
    Código:
        If GetPlayerAccess(index) <= 0 Then
            ' Check for data flooding
            If TempPlayer(index).DataBytes > 1000 Then
                Exit Sub
            End If
        
            ' Check for packet flooding
            If TempPlayer(index).DataPackets > 25 Then
                Exit Sub
            End If
        End If

    2 - Substitua por:
    Código:
        If GetPlayerAccess(index) <= 0 Then
            ' Check for data flooding
            If TempPlayer(index).DataBytes > 1000 Then
                If GetTickCount < TempPlayer(index).DataTimer Then
                    Exit Sub
                End If
            End If
        
            ' Check for packet flooding
            If TempPlayer(index).DataPackets > 25 Then
                If GetTickCount < TempPlayer(index).DataTimer Then
                    Exit Sub
                End If
            End If
        End If

    Créditos:
    Valentine
    Mavis


    Última edição por Valentine em Seg Jul 06, 2015 8:46 pm, editado 2 vez(es)


    _________________
    Corrigindo erro grave na conexão AIymW
    RD12
    RD12
    Lenda
    Lenda

    Medalhas : Corrigindo erro grave na conexão 48080450Corrigindo erro grave na conexão Trophy11Corrigindo erro grave na conexão GIueZCorrigindo erro grave na conexão ZgLkiRU
    Mensagens : 1946
    Créditos : 744

    Corrigindo erro grave na conexão Empty Re: Corrigindo erro grave na conexão

    Mensagem por RD12 em Dom Fev 10, 2013 1:44 pm

    Esse servidor do Eclipse realmente é muito bom, nem se compara ao do Netplay.
    Mas essa sua modificação não vai desfazer o sistema de anti flood né? Pelo que eu vi você verificou o tempo.
    Valentine
    Valentine
    Administrador
    Administrador

    Medalhas : Corrigindo erro grave na conexão 94JxvCorrigindo erro grave na conexão ZgLkiRU
    Mensagens : 5042
    Créditos : 1121

    Corrigindo erro grave na conexão Empty Re: Corrigindo erro grave na conexão

    Mensagem por Valentine em Dom Fev 10, 2013 3:48 pm

    Não, a correção faz com que se ultrapassou o segundo que tava bloqueando ele deixa de bloquear, só bloqueia se o tempo ainda estiver naquele segundo que ultrapassou o limite.


    _________________
    Corrigindo erro grave na conexão AIymW
    Laxus
    Laxus
    Aldeia Friend
    Aldeia Friend

    Mensagens : 1150
    Créditos : 78

    Corrigindo erro grave na conexão Empty Re: Corrigindo erro grave na conexão

    Mensagem por Laxus em Dom Fev 10, 2013 4:45 pm

    Não entendi direito para que serve. Mais se você falou que e importante ta falado +1 para você!!


    _________________
    "Não importa o quão forte o cara é, o que importa é encara-lo de frente sem fraquejar"
                                                                                                                                                        Laxus ~ Fairy Tail
    Felix Blayder
    Felix Blayder
    Membro de Honra
    Membro de Honra

    Mensagens : 1407
    Créditos : 219

    Ficha do personagem
    Nível: 1
    Experiência:
    Corrigindo erro grave na conexão Left_bar_bleue0/0Corrigindo erro grave na conexão Empty_bar_bleue  (0/0)
    Vida:
    Corrigindo erro grave na conexão Left_bar_bleue30/30Corrigindo erro grave na conexão Empty_bar_bleue  (30/30)

    Corrigindo erro grave na conexão Empty Re: Corrigindo erro grave na conexão

    Mensagem por Felix Blayder em Seg Fev 11, 2013 10:37 am

    Opa, legal, já tá até na engine aki...

    +1 cred!!!


    _________________

    Se inscreva em meu Canal no YouTube:
    https://www.youtube.com/localnerd

    Faça uma doação para ajudar nos custos:

    https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3N8T2RJ977RCQ


    Conteúdo patrocinado

    Corrigindo erro grave na conexão Empty Re: Corrigindo erro grave na conexão

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qua Jan 29, 2020 6:18 am