O maior portal de MU Online do Brasil — desde 2003
Tutorial Avançado Servidor

Como configurar um servidor de MU Online no Zhyper MuServer

Suba um servidor de MU Online com o pacote Zhyper MuServer do zero: banco no SQL Server, restauração das databases MuOnline/Me_MuOnline, configuração de IP e portas no ConnectServer, DataServer, JoinServer e GameServer, e primeiro login testado.

BR Bruno · Atualizado em 20 jan 2025 · ⏱ 16 min de leitura
Resposta rápida

O Zhyper MuServer é um dos pacotes de arquivos de servidor de MU Online mais usados por quem está começando, justamente porque entrega tudo pré-montado: os executáveis do MuServer (Main), o banco de dados e um cliente compatível. Ainda assim, "pré-montado" não é "clique e jogue" — você precisa resta

O Zhyper MuServer é um dos pacotes de arquivos de servidor de MU Online mais usados por quem está começando, justamente porque entrega tudo pré-montado: os executáveis do MuServer (Main), o banco de dados e um cliente compatível. Ainda assim, "pré-montado" não é "clique e jogue" — você precisa restaurar as databases no SQL Server, alinhar o IP e as portas em quatro executáveis diferentes e sincronizar o cliente. Errar um único IP ou pular a ordem de inicialização faz o GameServer fechar sem explicação. Este tutorial percorre a montagem completa, do banco ao primeiro login, com os pontos onde o iniciante mais trava. Se você ainda não tem uma visão geral, vale ler antes o guia de como criar um servidor de MU Online.

O que é o Zhyper MuServer

O Zhyper não é um emulador escrito do zero: é uma distribuição (um "files") que empacota binários de MuServer já compilados, scripts SQL para criar/restaurar o banco e um cliente na mesma season dos binários. A arquitetura segue o padrão de qualquer servidor de MU: quatro processos que conversam entre si e um banco de dados por trás. Entender essa divisão é o que faz a configuração deixar de ser "tentativa e erro". Os detalhes de menu, arquivos e nomes de pastas variam por release do pacote — trate os exemplos abaixo como referência, não como valores fixos.

Componentes do servidor

ComponentePapelPorta padrão (exemplo)
DataServerFaz a ponte entre o GameServer e o SQL Server55960 / 55970
ConnectServerLista os servidores e recebe a primeira conexão do cliente44405
JoinServerValida login/conta e gerencia a sessão55970
GameServerO mundo do jogo em si (mapas, mobs, jogadores)55901 / 44405

As portas acima são exemplos e mudam conforme o release do Zhyper. O que nunca muda é a lógica: o DataServer é o único que fala com o banco; o GameServer nunca acessa o SQL diretamente.

Pré-requisitos

  • Windows (Server 2012+ ou Windows 10/11) com direitos de administrador.
  • SQL Server 2008 R2 / 2012 / 2014 com autenticação SQL habilitada (usuário sa).
  • SQL Server Management Studio (SSMS) para restaurar e inspecionar o banco.
  • O pacote Zhyper MuServer (Main + Databases) e o cliente correspondente.
  • Redistribuíveis Visual C++ (2010/2013/2015) instalados — a falta deles derruba os executáveis no boot.
  • Um IP definido: 127.0.0.1 para teste local ou o IP público da sua VPS para produção.

Passo 1 — Instalar e preparar o SQL Server

  1. Instale o SQL Server escolhendo o modo Mixed Mode Authentication (Windows + SQL) e defina uma senha para o usuário sa.
  2. Abra o SQL Server Configuration Manager e confirme que o protocolo TCP/IP está Enabled.
  3. Reinicie o serviço do SQL Server para aplicar.
  4. Abra o SSMS e conecte usando sa e a senha definida — se conectar, a base para o MuServer está pronta.

> Se você só consegue logar com autenticação do Windows, o MuServer não vai conectar. Ele depende de usuário e senha SQL nos arquivos de config.

Passo 2 — Restaurar as databases (MuOnline e Me_MuOnline)

O Zhyper acompanha dois bancos: geralmente MuOnline (dados do jogo: contas, personagens, itens) e Me_MuOnline (ranking/eventos, conforme o release). Você pode restaurar por arquivo .bak ou executando os scripts .sql.

Restaurando por backup no SSMS:

  1. Clique com o botão direito em Databases → Restore Database.
  2. Em Device, aponte para o arquivo .bak do pacote.
  3. Confirme o nome de destino (MuOnline) e finalize.
  4. Repita para o segundo banco (Me_MuOnline).

Se o pacote traz scripts em vez de .bak, abra cada .sql no SSMS e execute (F5), criando os bancos manualmente. Ao final, confirme que as duas databases aparecem na árvore de Databases.

-- Verificação rápida: as databases existem?
SELECT name FROM sys.databases
WHERE name IN ('MuOnline', 'Me_MuOnline');

Passo 3 — Configurar a conexão do DataServer com o banco

Dentro da pasta Main do Zhyper, o DataServer tem um arquivo de conexão (comumente MuOnline.ini, Connection.ini ou similar — o nome varia por emulador/release). Nele você informa a instância do SQL, o nome das databases e as credenciais.

[MuOnline]
Server   = (local)
Database = MuOnline
User     = sa
Password = suaSenhaAqui

[Me_MuOnline]
Server   = (local)
Database = Me_MuOnline
User     = sa
Password = suaSenhaAqui
  • Server = (local) funciona para instância padrão local; em VPS pode ser .\SQLEXPRESS ou o nome da instância.
  • Usuário e senha precisam ser exatamente os do sa (ou do usuário que você criou).

Salve e abra apenas o DataServer. Se ele listar as tabelas/queries sem erro de conexão, a ponte com o banco está de pé.

Passo 4 — Alinhar IP e portas nos executáveis

Este é o passo onde 90% dos iniciantes travam. O mesmo IP precisa constar em todos os arquivos de configuração dos executáveis e no cliente. Os nomes de arquivo variam (ConnectServer.ini, ServerList.dat, GameServerInfo.dat, IpList.dat, JoinServer.ini), mas a lógica é sempre a mesma:

  1. ConnectServer — define a lista de servidores exibida no cliente. Aponte o IP e a porta do GameServer aqui (ServerList.dat / IpList.dat).
  2. JoinServer — configure o IP de bind e a porta que o GameServer vai usar para validar login.
  3. GameServer — em GameServerInfo.dat (ou equivalente), preencha o IP do ConnectServer, do JoinServer e do DataServer.
  4. Use 127.0.0.1 em tudo para teste local; troque para o IP público apenas quando for publicar.

> Nunca misture 127.0.0.1 em um arquivo e o IP público em outro. Ou é tudo local, ou é tudo o IP externo. Misturar gera "servidor cheio" ou desconexão logo após o login.

Passo 5 — Iniciar os executáveis na ordem correta

A ordem importa porque cada processo depende do anterior estar no ar:

  1. DataServer — conecta no SQL Server (abra primeiro, sempre).
  2. ConnectServer — sobe a lista de servidores.
  3. JoinServer — fica pronto para autenticar contas.
  4. GameServer — carrega mapas e mobs; é o último a subir.

Muitos pacotes Zhyper incluem um Server Start.exe ou um .bat que abre tudo na ordem certa. Se você abrir manualmente, respeite a sequência. Um GameServer aberto antes do DataServer não encontra o banco e fecha.

Passo 6 — Criar a conta e apontar o cliente

Com os servidores no ar:

  1. No SSMS, insira uma conta na tabela de contas (comumente MEMB_INFO) ou use a ferramenta de registro que acompanha o pacote.
  2. Na pasta do cliente do Zhyper, localize o arquivo que define o IP de conexão (frequentemente um .dat criptografado editável por uma ferramenta do pacote, ou um ServerList em texto).
  3. Aponte o cliente para 127.0.0.1 (local) ou para o IP público (produção).
  4. Execute o cliente pelo launcher/main do próprio Zhyper, não por um main.exe avulso de outra season.

Passo 7 — Testar o primeiro login

  1. Abra o cliente e confirme que a lista de servidores aparece (isso valida o ConnectServer).
  2. Faça login com a conta criada — se autenticar, o JoinServer está OK.
  3. Entre com um personagem: se o mundo carregar, o GameServer e o DataServer estão comunicando.
  4. Crie um personagem novo e verifique se ele persiste após relogar (isso confirma a escrita no banco).
  5. Teste um comando de GM (ex.: criar item) para validar permissões.

Erros comuns e soluções

SintomaCausa provávelSolução
GameServer fecha ao abrirDataServer não iniciado ou banco não restauradoRestaure as databases e abra o DataServer antes
"Disconnected" logo após loginIP/porta divergente entre arquivosAlinhe o mesmo IP em todos os .ini/.dat e no cliente
Lista de servidores vaziaConnectServer sem IP do GameServerAjuste ServerList.dat/IpList.dat
Erro de conexão com SQLsa desabilitado ou senha erradaAtive Mixed Mode e confira usuário/senha no config
Cliente crasha no loginCliente de season diferente do MainUse o cliente que acompanha o release do Zhyper
Executável some sem mensagemVisual C++ Redistributable ausenteInstale os redistribuíveis 2010/2013/2015
"Server is full"Mistura de IP local e públicoPadronize local OU público em todos os arquivos

Checklist de lançamento

  • SQL Server em Mixed Mode, TCP/IP habilitado e sa funcionando.
  • Databases MuOnline e Me_MuOnline restauradas e visíveis no SSMS.
  • DataServer conectando ao banco sem erros.
  • Mesmo IP em ConnectServer, JoinServer, GameServer e cliente.
  • Executáveis iniciados na ordem: Data → Connect → Join → Game.
  • Conta criada e login validado in-game.
  • Personagem criado persiste após relogar (escrita no banco OK).
  • Portas liberadas no firewall (apenas para publicação externa).
  • Backup da pasta Main e das databases antes de abrir ao público.

Com o Zhyper rodando e o primeiro login testado, você tem uma base estável para evoluir: ajustar taxas de experiência e drop, configurar eventos, adicionar itens e customizações. Antes de abrir para jogadores, faça um backup completo da pasta Main e das duas databases — assim, qualquer edição futura que quebre o servidor pode ser revertida em minutos, sem perder o trabalho de montagem.

Perguntas frequentes

O que é o Zhyper MuServer?

É um pacote de arquivos (files) de servidor de MU Online distribuído pela comunidade, já pré-montado com Main (executáveis do MuServer), banco de dados e cliente compatível. Ele reúne ConnectServer, DataServer, JoinServer e GameServer em uma estrutura pronta, o que reduz o trabalho de montar tudo do zero. A season exata varia por release do pacote.

Preciso de que versão do SQL Server?

O Zhyper roda bem com SQL Server 2008 R2, 2012 ou 2014 (Express serve para testes locais). O importante é que a instância aceite autenticação SQL (usuário sa) e não só a do Windows, porque os arquivos de conexão do MuServer usam usuário e senha do banco.

Consigo rodar o Zhyper na minha própria máquina para testar?

Sim. Para teste local você usa o IP 127.0.0.1 em todos os arquivos de configuração e no cliente. Para abrir para a internet é preciso IP público/VPS, liberar as portas no firewall e apontar o cliente para o IP externo. Comece sempre local antes de publicar.

Qual a ordem de inicialização dos executáveis?

Sempre DataServer primeiro (ele conecta no banco), depois ConnectServer, JoinServer e por último o GameServer. Se você abrir o GameServer antes do DataServer, ele não acha o banco e fecha ou trava na tela de conexão.

O cliente do Zhyper serve para qualquer season?

Não. O cliente precisa ser exatamente o que acompanha aquele release do Zhyper (mesma season e revisão). Um cliente de season diferente gera erro de conexão, crash no login ou itens invisíveis. Use sempre o cliente do próprio pacote.

Por que o GameServer fecha sozinho ao abrir?

Quase sempre é banco não restaurado, IP/porta errados nos arquivos de config ou o DataServer não estar aberto antes. Verifique nessa ordem: databases restauradas, DataServer rodando, IPs iguais em todos os .dat/.ini e portas livres.

BR
Editor de eventos, mapas e itens

Bruno é especialista em eventos, mapas, bosses e economia de itens do MU Online. Documenta cada detalhe com base em jogo real.

Continue lendo

Artigos relacionados