Erros comuns em servidor de MU Online e como resolver
Guia completo de troubleshooting: Connect Fail, GameServer que fecha, erro de ODBC, cliente sem abrir — com diagnóstico passo a passo e mensagens de erro exatas.
Todo admin de servidor de MU Online vai esbarrar nesses erros — especialmente nos primeiros dias. A boa notícia é que 90% dos problemas têm causa conhecida e solução direta. Este guia cobre os erros mais comuns com a mensagem exata, diagnóstico e solução.
Todo admin de servidor de MU Online vai esbarrar nesses erros — especialmente nos primeiros dias. A boa notícia é que 90% dos problemas têm causa conhecida e solução direta. Este guia cobre os erros mais comuns com a mensagem exata, diagnóstico e solução.
Metodologia de diagnóstico
Antes de qualquer coisa, siga esta regra:
> Mude UMA coisa de cada vez e teste depois de cada mudança. Mudar várias configurações ao mesmo tempo torna impossível saber o que resolveu (ou o que causou um problema novo).
Onde estão os logs
MuServer/
├── DataServer/Log/DataServer_AAAAMMDD.txt
├── JoinServer/Log/JoinServer_AAAAMMDD.txt
├── ConnectServer/Log/ConnectServer_AAAAMMDD.txt
└── GameServer/Log/GameServer_AAAAMMDD.txt
Sempre abra o log do serviço que está com problema. Os erros aparecem nas últimas linhas do arquivo mais recente.
ERRO 1: "Connect Fail" no cliente
Sintoma
O cliente abre, mas ao tentar conectar aparece "Connect Fail" ou "Cannot Connect to Server".
O que significa
O cliente não consegue alcançar o ConnectServer na porta 44405.
Diagnóstico passo a passo
Passo 1: O ConnectServer está rodando?
:: Verificar se o processo está ativo
tasklist | findstr ConnectServer
:: Se não aparecer, o ConnectServer não está rodando — inicie-o
Passo 2: O cliente aponta para o IP/hostname correto?
- Para testes locais: o Main deve estar configurado para
127.0.0.1:44405; - Para servidor online: o Main deve ter o IP público ou hostname No-IP;
- Verifique com a ferramenta de edição de Main qual IP está configurado.
Passo 3: A porta 44405 está aberta?
:: Verificar se algo está escutando na porta 44405
netstat -an | findstr 44405
:: Se aparecer: 0.0.0.0:44405 LISTENING → ConnectServer está ativo
:: Se não aparecer → ConnectServer não está escutando (não está rodando ou porta diferente)
Passo 4: O firewall está bloqueando?
:: Testar conexão na porta
telnet 127.0.0.1 44405
:: Se "conectou" (tela preta) → porta acessível
:: Se "Não foi possível conectar" → firewall bloqueando
Passo 5: Teste progressivo
- Tente conectar com
127.0.0.1— se funcionar, o servidor está OK; - Tente com o IP local (
192.168.1.100) — se falhar, o firewall está bloqueando a rede local; - Tente com o IP público ou No-IP — se falhar, o port forwarding não está configurado.
Soluções
| Diagnóstico | Solução |
|---|---|
| ConnectServer não rodando | Iniciar na ordem correta (DataServer → JoinServer → ConnectServer → GameServer) |
| IP errado no Main | Editar o Main com a ferramenta correta |
| Firewall bloqueando | Adicionar regra de entrada para porta 44405 |
| Port forwarding faltando | Configurar no roteador — encaminhar 44405 para o IP local do servidor |
| No-IP desatualizado | Verificar se o DUC está rodando e o IP está correto |
ERRO 2: GameServer fecha sozinho ao iniciar
Sintoma
O GameServer abre, mostra uma janela de console por 1-2 segundos e fecha imediatamente.
Diagnóstico
Passo 1: Ler o log
GameServer/Log/GameServer_AAAAMMDD.txt
Procure pelas últimas linhas:
[ERROR] Cannot connect to DataServer: 127.0.0.1:55557
[ERROR] ODBC Connection Failed: MuOnline
[ERROR] Port 55901 already in use
[ERROR] Map file not found: ./Data/Monster.txt
Passo 2: Verificar ordem de inicialização O GameServer é sempre o último a iniciar. Se o DataServer não estiver ativo, o GameServer fecha imediatamente.
ORDEM CORRETA:
1. DataServer.exe (aguardar "Listening on port 55557")
2. JoinServer.exe (aguardar "Connected to DataServer")
3. ConnectServer.exe (aguardar "Listening on port 44405")
4. GameServer.exe ← só depois de tudo acima estar OK
Passo 3: Verificar porta em uso
:: Verificar se a porta 55901 já está em uso por outro processo
netstat -ano | findstr 55901
:: Se aparecer, o PID do processo que usa a porta fica na última coluna
:: Encerre esse processo: taskkill /PID [número] /F
Erros específicos e soluções
| Mensagem no log | Causa | Solução |
|---|---|---|
Cannot connect to DataServer | DataServer não iniciado | Iniciar DataServer primeiro |
ODBC Connection Failed | DSN errado ou SQL parado | Ver Erro 3 abaixo |
Port already in use: 55901 | Outro processo na porta | Matar o processo ou mudar a porta |
Map file not found | Pasta Data/ incompleta | Verificar arquivos da distribuição |
Invalid server code | ServerCode diferente do ConnectServer | Alinhar os dois arquivos .ini |
Failed to load Monster.txt | Arquivo corrompido ou ausente | Restaurar arquivo da distribuição |
ERRO 3: DataServer não conecta ao SQL (ODBC)
Sintoma
DataServer/Log/:
[ERROR] ODBC Connection Failed: DSN=MuOnline
[ERROR] Login failed for user 'mu_app'
[ERROR] Cannot open database "MuOnline"
Este é o erro mais comum para quem está configurando o servidor pela primeira vez.
Diagnóstico passo a passo
Passo 1: O serviço SQL está rodando?
services.msc → procurar "SQL Server (MSSQLSERVER)"
Status deve ser: "Em execução / Running"
Se estiver parado → clique com direito → Iniciar
Passo 2: O DSN foi criado no ODBC de 32 bits?
Este é o erro mais comum:
ERRADO: Painel de Controle → Ferramentas Administrativas → Fontes de Dados ODBC
(abre o ODBC de 64 bits — não funciona para o MuServer)
CORRETO: Win+R → C:\Windows\SysWOW64\odbcad32.exe
(abre o ODBC de 32 bits — o que o MuServer usa)
No ODBC de 32 bits, verifique se o DSN MuOnline existe na aba System DSN.
Passo 3: Testar o DSN
- Na aba System DSN, clique no DSN
MuOnline→ Configure...; - Avance até a tela de teste e clique em Test Data Source;
- Deve aparecer: "TESTS COMPLETED SUCCESSFULLY!";
- Se falhar, o erro vai indicar o problema específico.
Passo 4: Verificar Mixed Mode no SQL
-- No SSMS, executar:
SELECT SERVERPROPERTY('IsIntegratedSecurityOnly');
-- Resultado 0 = Mixed Mode (correto)
-- Resultado 1 = Windows Authentication Only (PROBLEMA!)
Se retornar 1, mude para Mixed Mode:
- No SSMS, clique com direito no servidor → Properties → Security;
- Mude para "SQL Server and Windows Authentication mode";
- Clique OK e reinicie o serviço SQL.
Passo 5: Verificar TCP/IP habilitado
SQL Server Configuration Manager
→ SQL Server Network Configuration
→ Protocols for MSSQLSERVER
→ TCP/IP deve estar "Enabled"
Se estiver "Disabled", habilite e reinicie o serviço SQL.
ERRO 4: Login falha no cliente ("Account not found" / "Wrong password")
Sintoma
O cliente conecta ao ConnectServer, abre a tela de login, mas ao entrar aparece erro de conta.
Diagnóstico
Conta não existe no banco:
USE MuOnline;
SELECT memb___id, bloc_code, ctl_code FROM MEMB_INFO WHERE memb___id = 'nomeDaConta';
-- Se retornar vazio, a conta não existe
Conta existe mas bloqueada:
-- Se bloc_code = 1, a conta está banida
UPDATE MEMB_INFO SET bloc_code = 0 WHERE memb___id = 'nomeDaConta';
Senha com hash diferente do esperado: Alguns sistemas de registro criptografam a senha em MD5, outros em SHA1, outros em texto puro. Verifique o formato:
SELECT memb__passwd FROM MEMB_INFO WHERE memb___id = 'nomeDaConta';
-- Se retornar uma string de 32 chars = MD5
-- Se retornar uma string de 40 chars = SHA1
-- Se retornar texto legível = texto puro
Crie uma conta de teste diretamente no banco com senha em texto puro para confirmar:
INSERT INTO MEMB_INFO (memb___id, memb__passwd, memb_name, sno__numb, bloc_code, ctl_code)
VALUES ('teste123', '123456', 'Teste', '000-000-000-0001', 0, 0);
ERRO 5: Cliente não abre / crasha ao iniciar
Sintoma
O Main.exe não abre, crasha imediatamente ou mostra erro de DLL.
Causas e soluções
| Erro | Causa | Solução |
|---|---|---|
| "MSVCP140.dll not found" | Visual C++ Runtime faltando | Instalar Visual C++ Redistributable 2015-2022 |
| "d3dx9_XX.dll not found" | DirectX desatualizado | Executar DXSETUP.exe (DirectX Web Installer) |
| "xinput1_3.dll not found" | DirectX End-User Runtime faltando | Instalar DirectX End-User Runtime (junho 2010) |
| Antivírus bloqueia o Main | Falso positivo (comum em executáveis de MU) | Adicionar o Main às exceções do antivírus |
| Resolução não suportada | Main configurado para resolução maior que o monitor | Editar o Setup.ini do cliente e reduzir resolução |
Instalar runtimes essenciais
Para a maioria dos clientes de MU funcionar no Windows 10/11:
- Visual C++ Redistributable (todas as versões):
- Pesquise "Microsoft Visual C++ Redistributable" no site da Microsoft;
- Instale as versões: 2005, 2008, 2010, 2012, 2013, 2015-2022 (x86 e x64);
- DirectX End-User Runtime (junho 2010):
- Pesquise "directx_Jun2010_redist.exe" para baixar;
- Execute e aceite a instalação.
ERRO 6: Personagem some / perde itens ao logar
Sintoma
Jogador sai do servidor com itens e ao entrar novamente eles somem ou o personagem volta para posição anterior.
Causas
Save não funcionando:
-- Verificar quando o personagem foi salvo pela última vez
SELECT Name, ConnectStat, LastLoginDateTime, LastLogoutDateTime
FROM Character WHERE Name = 'NomePersonagem';
-- ConnectStat = 1 significa "ainda conectado" no banco
-- Se sumiu, o save não foi executado antes do servidor fechar
Solução para personagens "travados" como conectados:
-- Zerar status de conexão (se o personagem não consegue entrar)
UPDATE Character SET ConnectStat = 0 WHERE Name = 'NomePersonagem';
UPDATE MEMB_STAT SET ConnectStat = 0 WHERE memb___id = 'nomeDaConta';
Evitar loss de dados:
- Configure
autosavenoGameServer.inipara salvar frequentemente; - Nunca feche o GameServer "no bruto" (pelo X da janela) — use o comando
/shutdowndo GM primeiro para forçar o save de todos.
ERRO 7: Monstros não aparecem no mapa
Sintoma
Mapa está vazio — nenhum monstro nasce.
Diagnóstico
; Verificar no GameServer.ini se o mapa está habilitado
[MAPS]
Lorencia = 1 ; 1 = habilitado
Dungeon = 1
; 0 = desabilitado
; No MonsterSetBase.txt, verificar se há entradas para o mapa
; Exemplo para Lorencia (mapa 0):
1 0 0 120 120 150 150 15 5
; Se não houver linhas com o número do mapa, nenhum monstro nasce
Limite de monstros atingido:
; Aumentar o limite de monstros do mapa
[MAP_MONSTER_LIMIT]
Lorencia = 500 ; aumentar se precisar de mais monstros
ERRO 8: Castle Siege não acontece / não aparece NPC
Diagnóstico via SQL
-- Verificar estado do Castle Siege
SELECT CastleState, RegStartTime, RegEndTime, GuildName
FROM CastleSiege;
-- CastleState valores:
-- 0 = Sem dono, aguardando inscrições
-- 1 = Inscrições abertas
-- 2 = Inscrições encerradas (fase de marcação)
-- 3 = Dono ativo
-- Se o estado estiver "preso", resetar:
UPDATE CastleSiege SET CastleState = 0, RegStartTime = GETDATE();
Tabela de referência rápida
| Sintoma | Primeiro lugar para olhar |
|---|---|
| Connect Fail | Confirmar ConnectServer rodando + Main apontando IP correto |
| GameServer fecha | Log do GameServer — últimas linhas |
| DataServer não conecta | ODBC 32 bits (odbcad32.exe) — testar DSN |
| SQL não conecta | services.msc — serviço SQL rodando + TCP/IP habilitado |
| Login falha | Tabela MEMB_INFO no SSMS — conta existe? bloc_code = 0? |
| Cliente não abre | Instalar Visual C++ Redistributable + DirectX runtimes |
| Monstros sumindo | Log do GameServer + verificar MonsterSetBase.txt |
| Jogador travado | UPDATE Character SET ConnectStat = 0 WHERE Name = '...' |
Perguntas frequentes
Por que aparece 'Connect Fail' ao entrar no servidor?
O cliente não alcança o ConnectServer. Causas: servidor não está rodando, IP/porta errado no Main, portas fechadas no firewall/roteador, ou No-IP desatualizado.
Por que o GameServer fecha sozinho?
Quase sempre é falha de conexão com SQL/DataServer (DSN errado), porta já em uso, ou ordem de inicialização errada. O log do GameServer aponta a causa exata.
O que significa 'ODBC Connection Failed'?
O DataServer não consegue conectar ao SQL Server. Verifique: serviço SQL rodando, DSN criado no ODBC de 32 bits, usuário e senha corretos.
Como ler os logs do servidor?
Os logs ficam na pasta /Log/ de cada serviço. São arquivos .txt com data. Abra o log do GameServer com o Notepad — os erros costumam estar nas últimas linhas.