Que tipo de servidor e banco de dados você deve usar para um jogo online multiplayer, baseado em navegador com chat?
Depende. A questão é muito aberta, e tenho a certeza que a minha resposta só será parcialmente correcta quando você descobrir quais são os seus requisitos.
No entanto, há o suficiente para começar:
Que tipo de servidor e base de dados deve usar para um jogo online multiplayer, baseado em browser com chat?
Online e multiplayer - ok, então precisamos de algo que possa lidar com o estado do jogo e transições válidas. Ie., se eu "plantar uma árvore em (x,y)", é (x,y) um lugar válido para plantar, eu carrego os itens necessários? Este backend-server precisa de controlar tudo o que os jogadores podem fazer. Há muitas maneiras de fazer isso. Eu sugiro que você use um servidor escrito em um idioma que você já conhece. Pode ser o node.js, Java, Kotlin, Go, ou qualquer outra linguagem em que você seja proficiente. Porque - e este é um ponto importante - é aqui que o seu código de jogo é escrito e é totalmente personalizado. Ninguém mais pode fazer isso - ele é escrito para seu jogo e somente seu jogo.
com chat - isso representa outro "canal" de comunicação. Ele nem precisa estar rodando nas mesmas portas ou servidores que o jogo principal. Na verdade, a maioria dos jogos rodam seu chat em um sistema separado. Novamente, isto será tipicamente personalizado, a menos que você escolha usar um dos protocolos existentes (irc, por exemplo) onde você pode conectar um cliente a um servidor local em execução.
e banco de dados - Então, nós descobrimos que devemos escrever o software do servidor chato nós mesmos. Que tal a base de dados, então?
Again, podemos estar a usar várias tecnologias de base de dados ao mesmo tempo. Chat é tipicamente write-once, leia muitos, enquanto o estado do jogo irá mudar o tempo todo. E também, as contas (com potenciais cartões de crédito) não devem ser guardadas perto do resto das coisas. Assim, para mensagens de chat, um sofáDB combinaria bem (você não receberá transações aqui, mas isso pode não importar), enquanto o estado do sistema e os dados da conta cabem bem em uma base de dados relacional antiquada. Eu mesmo iria para o postgresql, por ser gratuito e bem suportado, mas você faz você.
Artigos semelhantes
- Qual é a melhor maneira de implementar um jogo baseado em servidor baseado em turnos no Android?
- Qual é a maneira eficiente de construir um servidor para um jogo multiplayer online?
- Um jogo baseado em servidor pode ser hackeado com o guardião do jogo?
- Podem recomendar uma sala de chat online para adultos (não uma sala de chat para adultos) onde eu possa encontrar pessoas para uma conversa normal?