Sobre
Uma estrutura de servidor de jogo multi-plataforma e multiprocessos. A camada de rede é implementada de três maneiras: SocketApi, Boost Asio e Libuv. Memória compartilhada, filas sem bloqueio, pools de objetos e pools de memória são usados na estrutura para melhorar o servidor atuação.
Há também um cliente Unity3D em constante aprimoramento. O jogo contém um grande número de recursos completos, montarias, pets e equipamentos, todos os quais podem ser jogados e usados, e podem entrar na batalha de masmorras. A jogabilidade multijogador também foi implementada e continua a ser desenvolvida. endereço do gitee: https://gitee.com/ylmbtm/GameProject3
Grupo de troca QQ: 45139128
Instruções de inicialização do servidor
1. Compilar
Windows: Abra a solution com Visual Studio 2017 ou superior para compilar diretamente.
Linux: Execute o script buildall.sh para compilar
2. Instale o mysql
Instale os dados do mysql na máquina. A versão recomendada é mysql5.7. Após a instalação, se você não quiser alterar o arquivo de configuração, crie um novo usuário root e defina a senha para 123456 (este é o padrão para o arquivo de configuração)
Em seguida, localize o arquivo db_create.sql no projeto, execute este arquivo no banco de dados para que a tabela do banco de dados seja criada.
3. Inicie o servidor
Depois de concluir as duas etapas acima, há um arquivo StartServer.bat no diretório Server, execute o arquivo bat e siga os prompts.
Descrição das funções do servidor
Servidor de Login (LoginServer): Aceita a conexão de login do jogador e processa a mensagem de solicitação de login.
AccountServer: Controla a verificação do login da conta, a criação de uma nova conta e o armazenamento do banco de dados da conta.
CenterServer: Usado para atividades entre servidores e requisitos de guerra entre servidores.
Logic Server (LogicServer): Processa os dados lógicos do personagem do jogador e processa as funções lógicas gerais do personagem do jogador.
Game Server (GameServer): Lida com a sincronização de movimentos do jogador, habilidades, buff e outras funções de combate.
Data Server (DBServer): Como um servidor proxy entre o servidor lógico e o banco de dados mysql, ele é responsável por gravar regularmente os dados do jogador no banco de dados.
Servidor Gateway (ProxyServer): Como um servidor de trânsito entre o cliente, o servidor lógico e o servidor do campo de batalha, é o principal responsável pelo encaminhamento de mensagens.
Log Server (LogServer): O servidor de log é principalmente responsável por gravar logs de operação de serviço lógico no banco de dados mysql.
WatchServer: Responsável especialmente por receber comandos de controle do background da WEB e controlar o servidor.
Documentação e tutoriais
1. Tutorial em vídeo fornecido por Binaryhobart (450282550)
Experimente o efeito do cliente (todos os códigos e recursos do cliente estão no arquivo de grupo)
![GameProject3 01](https://raw.githubusercontent.com/ylmbtm/resource/master/01.png)
![GameProject3 02](https://raw.githubusercontent.com/ylmbtm/resource/master/02.png)
![GameProject3 03](https://raw.githubusercontent.com/ylmbtm/resource/master/03.png)
![GameProject3 04](https://raw.githubusercontent.com/ylmbtm/resource/master/04.png)
Download
GitHub
Créditos
ylmbtm
Uma estrutura de servidor de jogo multi-plataforma e multiprocessos. A camada de rede é implementada de três maneiras: SocketApi, Boost Asio e Libuv. Memória compartilhada, filas sem bloqueio, pools de objetos e pools de memória são usados na estrutura para melhorar o servidor atuação.
Há também um cliente Unity3D em constante aprimoramento. O jogo contém um grande número de recursos completos, montarias, pets e equipamentos, todos os quais podem ser jogados e usados, e podem entrar na batalha de masmorras. A jogabilidade multijogador também foi implementada e continua a ser desenvolvida. endereço do gitee: https://gitee.com/ylmbtm/GameProject3
Grupo de troca QQ: 45139128
Instruções de inicialização do servidor
1. Compilar
Windows: Abra a solution com Visual Studio 2017 ou superior para compilar diretamente.
Linux: Execute o script buildall.sh para compilar
2. Instale o mysql
Instale os dados do mysql na máquina. A versão recomendada é mysql5.7. Após a instalação, se você não quiser alterar o arquivo de configuração, crie um novo usuário root e defina a senha para 123456 (este é o padrão para o arquivo de configuração)
Em seguida, localize o arquivo db_create.sql no projeto, execute este arquivo no banco de dados para que a tabela do banco de dados seja criada.
3. Inicie o servidor
Depois de concluir as duas etapas acima, há um arquivo StartServer.bat no diretório Server, execute o arquivo bat e siga os prompts.
Descrição das funções do servidor
Servidor de Login (LoginServer): Aceita a conexão de login do jogador e processa a mensagem de solicitação de login.
AccountServer: Controla a verificação do login da conta, a criação de uma nova conta e o armazenamento do banco de dados da conta.
CenterServer: Usado para atividades entre servidores e requisitos de guerra entre servidores.
Logic Server (LogicServer): Processa os dados lógicos do personagem do jogador e processa as funções lógicas gerais do personagem do jogador.
Game Server (GameServer): Lida com a sincronização de movimentos do jogador, habilidades, buff e outras funções de combate.
Data Server (DBServer): Como um servidor proxy entre o servidor lógico e o banco de dados mysql, ele é responsável por gravar regularmente os dados do jogador no banco de dados.
Servidor Gateway (ProxyServer): Como um servidor de trânsito entre o cliente, o servidor lógico e o servidor do campo de batalha, é o principal responsável pelo encaminhamento de mensagens.
Log Server (LogServer): O servidor de log é principalmente responsável por gravar logs de operação de serviço lógico no banco de dados mysql.
WatchServer: Responsável especialmente por receber comandos de controle do background da WEB e controlar o servidor.
Documentação e tutoriais
1. Tutorial em vídeo fornecido por Binaryhobart (450282550)
Experimente o efeito do cliente (todos os códigos e recursos do cliente estão no arquivo de grupo)
![GameProject3 01](https://raw.githubusercontent.com/ylmbtm/resource/master/01.png)
![GameProject3 02](https://raw.githubusercontent.com/ylmbtm/resource/master/02.png)
![GameProject3 03](https://raw.githubusercontent.com/ylmbtm/resource/master/03.png)
![GameProject3 04](https://raw.githubusercontent.com/ylmbtm/resource/master/04.png)
Download
GitHub
Créditos
ylmbtm