Servidor de contas para MMO. Opinem.
Ir à página 1, 2, 3  Próximo
 
   3D Game Builder - Índice » Geral
Servidor de contas para MMO. Opinem.
Autor Mensagem
welgomes
Usuário
Usuário


Registrado: 10/07/11
Mensagens: 827
Localização: São Paulo - Capital

Servidor de contas para MMO. Opinem.
Notei que uma dúvida comum do pessoal é como criar um login para o seu jogo MMO.
Porém para se fazer isso é preciso ter um servidor 24hs ligado ou ter uma conta de hospedagem paga.
No servidor tem que existir um banco de dados e suporte a alguma linguagem serve-side (do lado do servidor) como PHP, ASP, JSP etc.

De um mês para cá, eu larguei a programação Desktop para trabalhar com a programação web.

Idea Minha idéia é a seguinte, eu crio na web um cadastro de desenvolvedor, a pessoa cria sua conta e informa o nome do jogo.
Ela passa para os jogadores o link, por exemplo:
wsantos.eti.br?jogo=GTA

Meu programa irá abrir um cadastro para esse jogador para o jogo GTA.
internamente ele irá criar a tabela: game_gta E com os campos: usuario e senha.
Somente o desenvolvedor terá a senha de acesso a essa tabela.
Eu abriria o código para quando a pessoa tivesse seu futuro servidor.

PRIMEIRA ETAPA
Eu desenvolveria um tutorial em que o jogo acessa o banco de dados, lê a tabela e se o usuário e senha bater, informa ao jogador que ele está logado.

SEGUNDA ETAPA
Criar campos comuns na tabela como pontos, vida etc.
O segundo tutorial pegaria informações de vida, pontos etc. e no decorrer do jogo salva essas informações no banco de dados.

Isso já daria uma boa noção do jogo enviando informações ao servidor.


Ter Mar 27, 2012 11:01 pm Exibir perfil de usuários
Sergio Sinistro
Usuário
Usuário


Registrado: 25/03/12
Mensagens: 263
Localização: Amazonas

Utilizando apache 2 e MySQL?
Qua Mar 28, 2012 12:09 am Exibir perfil de usuários
welgomes
Usuário
Usuário


Registrado: 10/07/11
Mensagens: 827
Localização: São Paulo - Capital

Sim, o banco é mysql.
Agora eu não tenho certeza se é Apache, acredito que sim.


Qua Mar 28, 2012 2:02 am Exibir perfil de usuários
Edirlei
Administrador
Administrador


Registrado: 15/03/08
Mensagens: 760

Boa ideia. Vai ajudar muitas pessoas.
Qua Mar 28, 2012 2:40 am Exibir perfil de usuários
welgomes
Usuário
Usuário


Registrado: 10/07/11
Mensagens: 827
Localização: São Paulo - Capital

O complicado é que o servidor, NUNCA mas NUNCA mesmo deve confiar no cliente.

Por exemplo, existe um item no chão, como 1 moeda de ouro que no jogo se chama GOLD.
O cliente manda o comando: +1 GOLD (hipótese)
Se o servidor confiar cegamente, o cliente pode clonar o pacote ou informação e ficar enviando:
+1 GOLD, +1 GOLD, +1 GOLD, +1 GOLD Twisted Evil

O correto é enviar as coordenadas e o item pego.
O servidor confere se realmente o item existe.
Caso exista, então sim ele credita mais uma moeda na conta do jogador e faz o item sumir.

No tutorial provavelmente eu farei o servidor confiar cegamente nos dados.
Porém quero deixar claro que na prática isso nunca deva ser feito.
Qua Mar 28, 2012 2:55 pm Exibir perfil de usuários
kleiton157
Usuário
Usuário


Registrado: 06/05/11
Mensagens: 1170
Localização: Na cáducarai

Cara, essa e uma ótima ideia...


sobre o servidor confiar no client:

Eu não tenho nenhuma experiencia nisso, mais creio que se você colocasse para mandar uma mensagem, ao invés de +1 GOLD, enviasse uma mensagem com o ID do item, por exemplo +1 60758, sendo que 60758 = Gold...

resumindo, fazer um ID para cada item, assim ficaria mais dificiu descobrir o ID de um item, mais você também não pode confiar cegamente em mim, porque eu não sei mexer com isso ai não :)

_________________
________________________________________
- É nescessário ver além do que os olhos mostram
Qua Mar 28, 2012 6:34 pm Exibir perfil de usuários
Viciadao
Usuário
Usuário


Registrado: 27/11/11
Mensagens: 202
Localização: Morro do Alemão

Não se deve confiar mesmo...

Qualquer programa,software ou jogo que usa validação por url:
www.sitedojogo.com/?serial=5656

Pode ser FACILMENTE burlado!!!

O usuário pode modificar o arquivo host!!
Pode usar um programa que intercepta a rede!!!
Resumindo nunca ta seguro!!!
Qua Mar 28, 2012 6:52 pm Exibir perfil de usuários
Sergio Sinistro
Usuário
Usuário


Registrado: 25/03/12
Mensagens: 263
Localização: Amazonas

Ei sobre a questão do MYSQL???
Teria como fazer um sistema de servidor de jogo online usando PHP e mysql independente?

Assim: Um usuario cria uma conta no meu site www.meusite.com e ele cria um servidor: www.servidor1.meusite.com
Ele vira o ADM desse server e pode controlar ele pelo própio navegador!!!
Quando um player for jogar é só:

Conecta o jogador ao site na porta 5656 usando somente php sem programas adicionais:
www.servidor1.meusite.com/?nome=Marcos&porta=5656&skin=swat

Jogador 2 entra no servidor:
www.servidor1.meusite.com/?nome=Fernando&porta=5656&skin=swat

Jogador 3 entra no servidor:
www.servidor1.meusite.com/?nome=Matheus&porta=5656&skin=terrorista

Jogador 1 dispara uma arma e é enviado um comando:
www.servidor1.meusite.com/envia.php?comando=BLABLABLA

Jogador 2 e 3 recebe o comando que foi enviado:
www.servidor1.meusite.com/receber.php

Entendeu oque eu quiz dizer?

O própio PHP recebe o comando de um jogador e repassa ele para os outros entendeu? Sem o uso de server nenhum!!!


Qua Mar 28, 2012 8:09 pm Exibir perfil de usuários
   3D Game Builder - Índice » Geral Ir à página 1, 2, 3  Próximo
Página 1 de 3