Como configurar o ChatServer (chat global) no MU Online
Configure o ChatServer do seu servidor de MU Online e libere o chat global, as mensagens privadas e o sistema de amigos: função do serviço, porta padrão, integração com Connect/Join/GameServer, teste em jogo e solução dos erros mais comuns.
O ChatServer é o serviço que dá voz ao seu servidor de MU Online: é ele que faz o chat global aparecer, entrega as mensagens privadas de um jogador para outro e, na maioria dos emuladores, sustenta a lista de amigos e o mural da guild. Ele não é o coração do jogo — o GameServer roda sem ele — mas é
O ChatServer é o serviço que dá voz ao seu servidor de MU Online: é ele que faz o chat global aparecer, entrega as mensagens privadas de um jogador para outro e, na maioria dos emuladores, sustenta a lista de amigos e o mural da guild. Ele não é o coração do jogo — o GameServer roda sem ele — mas é o que transforma um servidor "vazio" em um servidor com comunidade viva. O problema é que ele quase nunca funciona "de primeira": é um serviço de rede, e a menor divergência de IP ou porta entre ele, o GameServer e o cliente deixa o chat mudo sem dar erro claro. Este tutorial cobre o que o ChatServer faz, quando você realmente precisa dele, como configurá-lo, qual porta usar, como integrá-lo ao resto do MuServer e como resolver os erros mais comuns.
O que é o ChatServer
No conjunto de serviços de um servidor de MU (Connect, Join, DataServer, GameServer e ChatServer), cada um tem uma função isolada. O ChatServer é responsável pelo tráfego de mensagens que não é combate nem movimento: chat global (aquele canal que todos leem), mensagens privadas (whisper/PM), e — dependendo do emulador — a lista de amigos, o convite de guild e mensagens de sistema. Ele funciona como um "central telefônica": os clientes se conectam a ele, e ele encaminha cada mensagem para o destinatário certo em tempo real. Ele conversa com o GameServer para saber quem está online e a qual conta cada personagem pertence.
Quando o ChatServer é necessário
Você precisa do ChatServer sempre que quiser esses recursos ativos:
- Chat global funcional — o canal que aparece para todos os jogadores.
- Mensagens privadas entre players (whisper).
- Sistema de amigos / friend list — em muitos emuladores é o ChatServer que sustenta isso.
- Convites e mural de guild — dependendo da season e do emulador.
Se o seu foco é apenas subir o servidor para testar login e gameplay, o ChatServer pode ficar desligado sem impedir o jogo. Mas para qualquer servidor que vá receber jogadores de verdade, ele é praticamente obrigatório: sem ele, um jogador clica em "enviar mensagem" e nada acontece, o que passa a impressão de servidor quebrado.
Pré-requisitos
- Servidor de MU já rodando com Connect, Join, DataServer e GameServer no ar (veja o tutorial de criação de servidor).
- Acesso à pasta do ChatServer (executável e arquivo de configuração).
- IP definitivo do servidor (o IP público, se for VPS/dedicado; ou o IP local, se for teste em rede interna).
- Permissão para abrir portas no firewall do Windows e no painel do provedor/VPS.
- Backup dos arquivos de configuração antes de qualquer alteração.
Arquivos e portas envolvidos
Os nomes variam por emulador (IGCN, MuEMU, X-Team, Season 6). Os elementos mais comuns:
| Função | Exemplo (varia por emulador) | Observação |
|---|---|---|
| Executável do serviço | ChatServer.exe | Sobe em janela própria |
| Config do ChatServer | ChatServer.ini / ChatServer.dat | Define IP e portas |
| Porta pública (clientes) | 55906 | Porta que o cliente/GameServer usa |
| Porta interna/admin | 55901 ou 55911 | Comunicação/controle interno |
| Referência no GameServer | GameServerInfo / *.dat | Onde o GS aponta o ChatServer |
| IP publicado no cliente | main.dll / IPManager | O que o jogador conecta |
> Trate cada número de porta como parte de um "trio": o que o ChatServer escuta, o que o GameServer informa e o que o firewall libera. Se os três não baterem, o chat global não sobe.
Passo 1 — Definir o IP e as portas do ChatServer
Abra o arquivo de configuração do ChatServer e localize as chaves de IP e porta. Em muitos emuladores o bloco se parece com isto (nomes de chave variam):
[ChatServer]
BindIP = 0.0.0.0
PublicIP = 192.168.0.10
Port = 55906
AdminPort = 55901
GameServerConnect = 127.0.0.1
BindIP = 0.0.0.0faz o serviço escutar em todas as interfaces (recomendado em VPS).PublicIPé o IP que os clientes usam para chegar até ele — em servidor online, o IP público.Porté a porta pública do chat (padrão histórico 55906).AdminPorté a porta interna de controle.
Salve e guarde esses valores anotados — você vai repeti-los no GameServer e no firewall.
Passo 2 — Apontar o GameServer para o ChatServer
O GameServer precisa saber onde o ChatServer está para encaminhar o tráfego de mensagens. No arquivo de informação do GameServer, localize as chaves que citam o ChatServer e preencha com o mesmo IP e porta do Passo 1:
ChatServerAddress = 192.168.0.10
ChatServerPort = 55906
Aqui mora o erro número um dos iniciantes: colocar 127.0.0.1 no ChatServer mas o IP público no GameServer (ou vice-versa). Em servidor de rede local, use o IP local nos dois; em servidor online, use o IP público nos dois. Consistência é tudo.
Passo 3 — Publicar o IP correto no cliente
O cliente do jogador também precisa alcançar o ChatServer. Em muitos emuladores, o cliente usa o mesmo IP do servidor principal (definido no main.dll / arquivo de IP do cliente) e apenas a porta muda internamente. Confirme que o IP publicado para os jogadores é o mesmo IP público que você colocou como PublicIP do ChatServer. Se o cliente conecta em um IP e o ChatServer escuta em outro, o login funciona (porque o Connect responde), mas o chat global fica mudo.
Passo 4 — Liberar a porta no firewall e no NAT
O serviço só é útil se a porta estiver acessível. Faça dois níveis de liberação:
- Firewall do Windows — crie uma regra de entrada permitindo a porta TCP do ChatServer (ex.: 55906) e a porta admin, se ela for usada externamente.
- NAT / painel do provedor — em VPS ou dedicado, abra/encaminhe a mesma porta no painel do provedor. Muitos provedores bloqueiam portas por padrão.
Exemplo de regra rápida no Windows (execute como administrador; ajuste a porta ao seu emulador):
New-NetFirewallRule -DisplayName "MU ChatServer 55906" -Direction Inbound -Protocol TCP -LocalPort 55906 -Action Allow
Para testar se a porta está aberta de fora, use um verificador de porta externo apontando para o IP público e a porta do ChatServer.
Passo 5 — Subir os serviços na ordem certa
A ordem de inicialização importa. O padrão seguro é:
- DataServer (banco/dados).
- Connect Server.
- Join Server.
- GameServer.
- ChatServer por último (ou junto do GameServer).
Se o ChatServer sobe antes do GameServer e depende dele para checar quem está online, ele pode ficar em estado de erro. Suba o GameServer primeiro, confirme que ele está estável, e então inicie o ChatServer.
Passo 6 — Testar o chat em jogo
- Suba todos os serviços e confirme que o ChatServer está na janela "escutando" na porta correta.
- Entre com duas contas (duas instâncias do cliente ou dois computadores).
- Envie uma mensagem no chat global com uma conta e confirme que a outra recebe.
- Teste a mensagem privada (whisper) de uma conta para a outra.
- Teste a lista de amigos: adicione, confirme o status online/offline e envie mensagem pela lista.
- Confirme que, ao deslogar uma conta, a outra vê o status atualizar.
Se o chat global funciona mas o whisper não (ou o contrário), o problema costuma ser específico da season/emulador — nesse caso, revise as chaves do ChatServer relacionadas a cada recurso.
Erros comuns e soluções
| Sintoma | Causa provável | Solução |
|---|---|---|
| Chat global não aparece | IP/porta divergente entre ChatServer e GameServer | Iguale IP e porta nos dois arquivos |
| ChatServer fecha ao abrir | Porta já em uso por outro serviço | Troque a porta ou libere quem a ocupa |
| Whisper não chega | Cliente apontando IP diferente do ChatServer | Confirme o IP publicado no cliente |
| Funciona local, não online | Porta bloqueada no firewall/NAT | Abra a porta no Windows e no painel do provedor |
| Lista de amigos travada | ChatServer subiu antes do GameServer | Reinicie na ordem correta (GS antes do CS) |
| Chat cai após minutos | Perda de conexão GS↔CS (IP interno errado) | Ajuste o IP interno de integração |
Boas práticas e desempenho
- Rode junto em servidor pequeno, separe em servidor grande. Para poucos jogadores, ChatServer na mesma máquina do GameServer é suficiente. Se o servidor crescer, mover o ChatServer para outra máquina alivia o GameServer.
- Documente o trio IP/porta. Anote em um só lugar o IP e a porta usados no ChatServer, no GameServer e no cliente. A maioria dos problemas de chat é divergência entre esses três.
- Não confie em histórico automático. O ChatServer roteia em tempo real; ele não guarda logs. Se você precisa de moderação ou registro de conversas, planeje um sistema de log à parte.
- Reinicie o trio junto. Ao trocar de IP (mudança de VPS, por exemplo), atualize ChatServer, GameServer e cliente na mesma janela de manutenção para não deixar o chat inconsistente.
Checklist de lançamento
- IP e porta do ChatServer definidos e anotados.
- GameServer apontando para o mesmo IP/porta do ChatServer.
- IP publicado no cliente igual ao PublicIP do ChatServer.
- Porta liberada no firewall do Windows e no NAT do provedor.
- Serviços subindo na ordem correta (ChatServer por último).
- Chat global testado entre duas contas.
- Mensagem privada (whisper) testada.
- Lista de amigos e status online/offline validados.
- Backup das configurações salvo antes do lançamento público.
Com o ChatServer no ar e testado, o seu servidor deixa de ser um mapa silencioso e passa a ter conversa, disputa e comunidade — que é o que segura o jogador. O próximo passo natural é padronizar mensagens de sistema e avisos globais para eventos, usando o mesmo canal de chat para engajar quem está online.
Perguntas frequentes
O ChatServer é obrigatório para o servidor funcionar?
Não. O GameServer sobe e o jogo roda sem ele. O ChatServer é responsável pelo chat global, pelas mensagens privadas entre players e, em muitos emuladores, pela lista de amigos e pela guild board. Sem ele, o login funciona, mas esses recursos ficam mudos ou dão erro ao serem usados.
Qual porta o ChatServer usa?
O padrão histórico é a porta 55906 (e uma porta interna de administração, comum 55901/55911). Varia por emulador. Confirme no arquivo de configuração do próprio ChatServer e libere a porta no firewall e no NAT do seu provedor/VPS antes de anunciar o servidor.
O ChatServer roda na mesma máquina do GameServer?
Pode rodar junto, e é o mais comum em servidores pequenos. Em servidores maiores ele é separado por desempenho. O que importa é que o GameServer e o Connect saibam o IP e a porta corretos do ChatServer — se apontarem para o lugar errado, o chat global cai.
Por que o chat global não aparece mesmo com o ChatServer ligado?
Quase sempre é IP/porta divergente entre o ChatServer e o que o GameServer/Connect informa, porta bloqueada no firewall, ou o cliente apontando para um IP diferente. Confirme os três pontos: config do ChatServer, config do GameServer e IP publicado no cliente.
O ChatServer guarda o histórico das conversas?
Por padrão não. Ele roteia mensagens em tempo real entre jogadores conectados; não é um banco de logs de chat. Se você quer histórico/moderação, precisa de um sistema de log adicional (plugin do emulador ou solução externa) — isso não vem pronto na maioria dos MuServers.