E ai galera,
Estou aprendendo a cada dia com a engine UNITY (v5+) então decidi criar um projeto que será um "MMORPG" ou como eu gosto de falar "M-RPG" devido ser uma quantidade menor de jogadores por mundo.
Nesse projeto quero evoluir muito a ideia de mundo aberto, customização, exploração e desenvolvimento dos personagens onde cada jogador terá seu papel.
Futuramente irei criar um tópico especifico para o projeto e expor de forma mais clara as minhas ideias e o conceito, pois quero fugir um pouco da mesmice dos jogos online de fantasia onde é basicamente tudo igual.
O nome do projeto até então é "Kingsland"
Para iniciar esse projeto comecei a desenvolver um servidor socket utilizando a linguagem C#, o servidor trata todas as requisições de any clients e executa suas funções recebendo/entregando mensagens. O Servidor utiliza o banco de dados SQL Server para armazenar e ler dados.
Eu particularmente achei fantástica a ideia de misturar unity + sockets, não tive muitos problemas com conexões assíncronas mas funciona perfeitamente o client/servidor.
Venho apenas mostrar nesse tópico alguns avanços e testes com o GameServer.
Abaixo imagem reproduzindo um "server stress" no server que foi criado e adaptado, basicamente 'spawnando' diversos jogadores e analisando o desempenho do server:
- Link da imagem (Server Stress)
Abaixo um ".gif" demonstrando um sistema de fade in/fade out nos painéis, muito legal pois é algo que eu queri afazer algum tempo atras e consegui introduzir nesse projeto, também no gif podemos ver a comunicação direta com o Server, demonstrando a velocidade de resposta.
- Link do GIF (Panel test e resposta do servidor)
Abaixo imagem do servidor no final de uma chamada, onde o client conectou, logou com seu usuário, recebeu informações de seu personagem e depois saiu.
- Link da imagem (Servidor)
"Features" até o momento:
- SQL Server Database Engine
- Register Account Request
- Login Request
- Disconnect Request
- Load Account Request
- Create Character Request
- Delete Character Request
- Server Responses
- Save Characters in-game
- Teste com múltiplos clients
- Painéis agradáveis com sistema fade in/out
- Textos com outline para melhor visualização
- Server OnClose Event para lidar com todas as conexões ativas e pendentes
...