Suporte ao desenvolvimento de jogos!


    [EO]Servidor MySQL

    Compartilhe
    avatar
    Dooolly
    Moderador Global
    Moderador Global

    Medalhas :
    Mensagens : 1236
    Créditos : 146

    Ficha do personagem
    Nível: 1
    Vida:
    30/30  (30/30)
    Energia:
    0/0  (0/0)

    Re: [EO]Servidor MySQL

    Mensagem por Dooolly em Qua Dez 27, 2017 1:56 pm

    Esse sistema não é meu, porém posso responder a isso, bom o sistema está muito cru, sim isso é verdade, mas é uma base, não quis entregar algo pronto, isso é apenas um modelo, para incentivar o estudo, até pq não adiantaria colocar um banco de dados como esse se não sabem como usar.
    Outro motivo não é nem devido a segurança, dependendo de onde for hospedar a segurança será priorizada no host, o real motivo é que esse tipo de banco de dados possui um sistema de leitura um pouco mais lento do que em arquivos atual do EO, é ai que entra o MySQL somente em contas, isso permite uma melhor manipulação dos usuário do jogo, permite um painel de controle, um sistema de registro, um sistema de ranking e maior interação da conta com um possível site do jogo. Permitindo premiações não só no jogo como também em outras plataformas.

    dnrock
    Novato
    Novato

    Mensagens : 6
    Créditos : 0

    Re: [EO]Servidor MySQL

    Mensagem por dnrock em Qua Dez 27, 2017 2:03 pm

    @Dooolly escreveu:Esse sistema não é meu, porém posso responder a isso, bom o sistema está muito cru, sim isso é verdade, mas é uma base, não quis entregar algo pronto, isso é apenas um modelo, para incentivar o estudo, até pq não adiantaria colocar um banco de dados como esse se não sabem como usar.
    Outro motivo não é nem devido a segurança, dependendo de onde for hospedar a segurança será priorizada no host, o real motivo é que esse tipo de banco de dados possui um sistema de leitura um pouco mais lento do que em arquivos atual do EO, é ai que entra o MySQL somente em contas, isso permite uma melhor manipulação dos usuário do jogo, permite um painel de controle, um sistema de registro, um sistema de ranking e maior interação da conta com um possível site do jogo. Permitindo premiações não só no jogo como também em outras plataformas.

    Eu entendi dolly, e espero que você não tenha levado como uma crítica foi apenas um comentário, me ajudou muito, pois pretendo "criar" uma engine com banco totalmente independente e isso me deu uma noção de como funciona tudo.
    avatar
    Dooolly
    Moderador Global
    Moderador Global

    Medalhas :
    Mensagens : 1236
    Créditos : 146

    Ficha do personagem
    Nível: 1
    Vida:
    30/30  (30/30)
    Energia:
    0/0  (0/0)

    Re: [EO]Servidor MySQL

    Mensagem por Dooolly em Qua Dez 27, 2017 2:34 pm

    @dnrock escreveu:Eu entendi dolly, e espero que você não tenha levado como uma crítica foi apenas um comentário, me ajudou muito, pois pretendo "criar" uma engine com banco totalmente independente e isso me deu uma noção de como funciona tudo.

    Que bom que entendeu, a criticas e sugestões são sempre bem vindas, estamos aqui para responder, e passar conhecimento. Se que um banco de dados totalmente independente, pode usar o MySQL sim, pra mim é o melhor(Minha opinião), porém é o melhor para alguns casos específicos, sim, os itens poderão ser salvos no MySQL tranquilamente, mas caso queira um leitura rápidas de qualquer informação, usar MySQL se tornaria fraco nesse caso, ai seria melhor o uso de arquivos no próprio host, que pra mim é o mais rápido no momento. Qualquer sugestão ou duvida pode postar que iremos tentar lhe ajudar Very Happy
    avatar
    DragonicK
    Banido
    Banido

    Mensagens : 440
    Créditos : 59

    Re: [EO]Servidor MySQL

    Mensagem por DragonicK em Qui Jan 04, 2018 8:36 pm


    Tive que pedir pra tirar o ban da minha conta só pra vir comentar aqui. 

    1. O sistema não está cru, a única coisa que talvez falta é adicionar um Anti SQL Injection para o nome de usuário e nome do personagem. Se o servidor não permite caracteres especiais no momento da criação do personagem e da conta, não é necessário.
    O que é cru são essas engines mal planejadas. 
    Edit: Falta implementar um sistema de Hash para as senhas.

    2. O que manter no MySQL?

    Qualquer coisa que você deseja. Eu usei apenas os usuários personagens para interagir melhor com um site no registro. Evitei ter trabalho extra ao lidar com o restante dos dados da engine, esse é o motivo do sistema estar como está. 
    Não lembro pra qual engine eu fiz esse sistema, e está completo. Se você usar em outra, certamente terá que adaptar.
    Resumindo, o sistema fica desse jeito pelo custo baixo de implementação, não é necessário modificar muita coisa.

    3. Segurança
    A segurança depende do administrador do banco de dados, se ele não conhece as fraquezas, logo, ficará vulnerável. 
    E também, jamais pode se esquecer de fazer a segurança no sistema operacional que se está usando.
    Faça o mysql trabalhar apenas em ambiente LOCAL e bloqueie a porta 3306 para o público com algum firewall.


    4. Desempenho
    Na minha atual engine, o login é quase instantâneo, isso se não fosse pela verificação de versão e checksum do cliente. Conheço sistemas que tem mais de 10 mil usuários e o login também é quase instantâneo.

    Essas engines só acessam o banco de dados quando o personagem entra no jogo e quando sai, APENAS ISSO.

    Quando o usuário entra no jogo, o servidor busca os dados do personagem apenas uma vez, e envia para o usuário. Todo jogo você deve esperar os dados serem enviados do servidor para o cliente.
    2 segundos a mais ou a menos, não faz diferença.

    Quando o usuário sai do jogo, ele não tem contato com mais nada, então, não importa se o servidor levou mais tempo pra salvar o jogador no banco de dados do que no arquivo. 

    Toda vez que o servidor é aberto, ele reúne todas as informações e guarda na memória. Nenhum jogador vai estar tentando se conectar no servidor nesse momento. Não tem necessidade de ser rápido, só tem que carregar as informações na memória.

    Vocês ficam preocupados com desempenho onde não é importante. Esses jogos que vocês fazem com 50 npcs, 80 itens e com 25 jogadores online. A diferença de desempenho não vai ser visível com ou sem MySQL.

    Só pra ter uma ideia, o servidor do Dragon Nest leva aproximadamente 4 minutos pra ser carregado completamente na minha máquina. E usa toda a minha memória, 8 gigas.


    Conteúdo patrocinado

    Re: [EO]Servidor MySQL

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Sex Set 21, 2018 7:01 am