Como criar telas de login e seleção customizadas no MU Online
Aprenda a customizar por completo as telas de login e de seleção de personagem do cliente de MU Online, editando texturas .ozj/.ozt, layouts de interface e o próprio Main.exe.
A tela de login e a tela de seleção de personagem são o primeiro contato visual do jogador com o seu servidor. Um login genérico passa a impressão de "mais um servidor pirata"; um login bem feito, com logo próprio, arte coerente e campos bem posicionados, transmite profissionalismo antes mesmo do jo
A tela de login e a tela de seleção de personagem são o primeiro contato visual do jogador com o seu servidor. Um login genérico passa a impressão de "mais um servidor pirata"; um login bem feito, com logo próprio, arte coerente e campos bem posicionados, transmite profissionalismo antes mesmo do jogador digitar a senha. Este tutorial cobre o fluxo completo de customização: identificar os arquivos certos, converter e editar texturas no formato do MU, ajustar o layout controlado pelo Main.exe, tratar transparência e empacotar tudo para distribuição. É um guia avançado porque envolve manipular formatos proprietários (.ozj/.ozt) e, em alguns casos, editar bytes do executável.
Pré-requisitos
Antes de começar, tenha em mãos e instalado:
- Cliente completo do seu servidor já com IP configurado. Se você ainda não montou o servidor, comece pelo guia de como criar servidor de MU Online e volte aqui depois.
- Editor de imagem com suporte a camadas: GIMP (gratuito) ou Photoshop.
- Conversor de texturas MU (MU Image Converter, OZJ/OZT Converter ou equivalente da sua season). Cada distribuição tem sua versão preferida — confirme qual bate com o seu cliente.
- HxD (hex editor gratuito) para editar o Main.exe quando necessário.
- Resource Hacker para recursos embutidos (ícone, textos, versão).
- Backup completo da pasta
Interface/e doMain.exe.
Como funciona a tela de login por dentro
A tela de login não é uma imagem única — ela é montada em camadas pelo motor do jogo. Entender essa divisão evita horas de tentativa e erro:
| Camada | Onde vive | O que controla |
|---|---|---|
| Fundo (background) | Textura .ozj na pasta Interface/ | A arte de tela cheia atrás de tudo |
| Painel/moldura dos campos | Textura .ozt (com alpha) | A "janelinha" onde ficam usuário e senha |
| Botões (Login, Sair, Criar) | Texturas .ozt + coordenadas no Main | Aparência e posição dos botões |
| Texto e fontes | Renderizado pelo Main.exe | Labels, versão, mensagens de erro |
| Posicionamento (x,y) | Código do Main.exe | Onde cada elemento aparece na tela |
O ponto crítico: trocar a arte é fácil, mover as coisas de lugar é difícil. Enquanto você mantiver as dimensões e apenas repintar as texturas, o motor coloca tudo onde já esperava. No momento em que você quer mudar coordenadas (ex.: subir os campos 40 pixels), precisa mexer no Main.exe.
Interface/ do SEU cliente para descobrir os nomes reais antes de sair editando.Localizar os arquivos de login e seleção
Explore a pasta do cliente. A estrutura típica (exemplo, varia por season/cliente):
MU Online/
├── Interface/
│ ├── login.ozj ← fundo da tela de login (exemplo)
│ ├── login_ok.ozt ← botão Login (com alpha)
│ ├── login_exit.ozt ← botão Sair
│ ├── newchar.ozj ← fundo da criação de personagem
│ └── character.ozj ← fundo da seleção de personagem (exemplo)
├── Data/
│ └── Local/ ← em algumas versões, textos localizados
└── Main.exe
Para descobrir qual arquivo é qual sem chutar:
- Converta em lote todos os
.ozj/.oztda pastaInterface/para.jpg/.png; - Abra a pasta convertida no Explorer em modo miniatura;
- Identifique visualmente o fundo do login, os botões e o painel de seleção;
- Anote os nomes exatos e as dimensões de cada um (largura x altura).
Formatos de textura do MU e quando usar cada um
| Extensão | Base | Transparência | Uso na tela de login |
|---|---|---|---|
.ozj | JPEG | Não | Fundo de tela cheia, sem transparência |
.ozt | TGA | Sim (alpha) | Botões, molduras, logos sobrepostos |
.ozb | BMP | Não | Texturas simples, elementos pequenos |
A regra de ouro: se o elemento precisa "vazar" para mostrar o fundo atrás dele (um botão com cantos arredondados, um logo recortado), ele tem que ser .ozt. Se você salvar um logo recortado como .ozj, os cantos transparentes viram um retângulo preto ou branco.
Editar o fundo da tela de login (passo a passo)
- Faça backup:
copy Interface\login.ozj Interface\login.ozj.bak; - Converta o original para editar:
login.ozj→login.jpgno conversor; - Abra o
login.jpgno GIMP/Photoshop e anote as dimensões exatas (ex.: 1024x768 — varia por season/cliente); - Monte sua arte em uma nova camada por cima, mantendo o tamanho idêntico:
- Logo do servidor bem visível (topo ou centro);
- Slogan e endereço do site;
- Espaço "limpo" na área onde os campos de login vão aparecer, para não competir com o texto;
- Exporte de volta como
.jpgcom qualidade 90% (JPEG muito comprimido cria artefatos feios); - Converta
login.jpg→login.ozjno conversor; - Substitua o arquivo na pasta
Interface/; - Abra o Main e verifique o resultado.
Customizar os botões (com transparência)
Os botões (Login, Sair, Criar Personagem) geralmente têm dois estados desenhados na mesma textura ou em texturas separadas: normal e "hover/pressionado". Para editá-los:
- Converta o
.oztdo botão para.png(preservando o canal alpha); - No editor, mantenha a transparência — não achate a imagem sobre um fundo sólido;
- Redesenhe o botão respeitando a área clicável original (o motor usa as coordenadas antigas);
- Exporte como
.pngcom alpha preservado; - Converta de volta para
.ozt; - Substitua e teste passando o mouse sobre o botão.
Customizar a tela de seleção de personagem
A tela de seleção é montada de forma parecida, mas tem um detalhe importante: os personagens 3D são renderizados por cima do fundo, em posições fixas. Isso significa que sua arte de fundo precisa deixar livres os "slots" onde os personagens aparecem.
Passo a passo:
- Identifique e converta o fundo da seleção (ex.:
character.ozj); - No editor, marque as áreas onde os modelos de personagem ficam de pé (normalmente três a cinco posições alinhadas);
- Coloque decorações e logo apenas nas bordas e no topo, evitando essas áreas;
- Mantenha a resolução idêntica ao original;
- Reconverta para
.ozje substitua; - Entre com uma conta que tenha personagens criados para validar que nada cobre os modelos.
Ajustar o layout no Main.exe
Quando trocar a arte não basta e você precisa mover campos, botões ou texto, entra a edição do Main.exe. Sem o código-fonte do cliente, isso é feito localizando e alterando valores no executável.
Para trocar textos fixos (labels, título da janela):
- Abra o
Main.exeno HxD; Ctrl+F→ busque o texto atual (ex.:Log In);- Substitua pelos novos caracteres — respeitando o mesmo número de bytes (se o texto novo for menor, complete com espaços);
- Salve.
Regra de comprimento em edição hex:
Texto original: "Log In" = 4C 6F 67 20 49 6E (6 bytes)
Texto novo: "Entrar" = 45 6E 74 72 61 72 (6 bytes) OK
Texto novo: "Acessar" = 7 bytes NÃO CABE
Para mover coordenadas (posição x,y de um botão) sem source, o processo é bem mais delicado e específico de cada build — geralmente você precisa de uma ferramenta de edição de Main da sua season ou do próprio source do cliente. Não recomendo editar coordenadas às cegas no hex em produção.
Testar em resoluções diferentes
Sua arte precisa funcionar não só na sua tela. Teste em pelo menos duas ou três resoluções que o cliente suporta:
- Ajuste a resolução no
Setup.ini(ou config equivalente do cliente); - Abra o login em cada resolução;
- Verifique se o fundo não estica de forma feia e se os campos continuam legíveis;
- Em telas widescreen, confira se a arte não fica "cortada" nas laterais.
Erros comuns e soluções
| Erro | Causa provável | Solução |
|---|---|---|
| Cliente crasha ao abrir o login | Textura com dimensão diferente do original | Recriar a arte com as dimensões exatas do arquivo original |
| Botão vira quadrado preto | Transparência perdida (salvo como .ozj) | Reexportar como PNG com alpha e converter para .ozt |
| Fundo esticado/distorcido | Proporção da imagem alterada | Manter a mesma proporção largura x altura do original |
| Texto do login ilegível | Arte muito carregada atrás dos campos | Deixar área limpa onde os campos aparecem |
| Main.exe não abre após edição hex | Comprimento de bytes alterado | Restaurar backup e reeditar mantendo o mesmo nº de bytes |
| Textura não atualiza no jogo | Cliente lendo de outra pasta/pacote | Confirmar se as texturas estão soltas ou dentro de um pacote de dados |
| Personagens cobertos na seleção | Arte ocupando os slots dos modelos 3D | Deixar as áreas dos personagens livres na arte |
Empacotar e distribuir
Depois de tudo testado, prepare os arquivos para os jogadores baixarem:
# Compactar somente os arquivos alterados como patch (PowerShell + 7-Zip)
& "C:\Program Files\7-Zip\7z.exe" a -t7z -mx=9 patch-login.7z Interface\ Main.exe
# Gerar hash para o jogador verificar integridade
Get-FileHash patch-login.7z -Algorithm SHA256 | Select-Object Hash
Publique o hash SHA256 junto ao link de download. Se você usa um launcher/updater, adicione os arquivos alterados à lista de atualização para que os jogadores recebam o novo login automaticamente.
Checklist de lançamento
- Backup da pasta
Interface/e doMain.exeguardado em_original/ - Nomes e dimensões reais dos arquivos de login confirmados no seu cliente
- Fundo do login recriado nas dimensões exatas do original
- Área dos campos de login mantida limpa e legível
- Botões editados em
.oztcom transparência preservada - Tela de seleção com slots dos personagens 3D livres
- Textos do Main.exe traduzidos sem alterar o número de bytes
- Login testado em pelo menos duas resoluções
- Cliente aberto do zero até a seleção sem crashes
- Patch compactado e hash SHA256 publicado
- Arquivos adicionados à lista do launcher/updater (se houver)
Perguntas frequentes
A tela de login é uma imagem ou está embutida no executável?
Depende da season e da distribuição. Em muitos clientes Season 6 o fundo é uma textura .ozj na pasta Interface, mas o posicionamento dos campos e botões é controlado pelo Main.exe. Em clientes mais novos parte do layout está em arquivos de UI externos.
Preciso recompilar o Main.exe para mudar a posição dos campos?
Nem sempre. Trocar a arte não exige recompilar, mas mover coordenadas de campos e botões geralmente exige editar o Main via hex ou ter o source do cliente. Sem o source, você fica limitado a substituir texturas nas mesmas dimensões.
Qual a resolução correta das imagens de login?
Varia por season e cliente. Um valor comum de referência é 1024x768 para clientes clássicos, mas mantenha sempre as dimensões exatas do arquivo original para evitar distorção. Confira o tamanho do arquivo que você vai substituir antes de criar a arte.
Posso usar transparência na arte de login?
Sim, para elementos sobrepostos use .ozt (base TGA com canal alpha). O fundo principal normalmente é .ozj (base JPEG, sem alpha). Escolher o formato errado faz a transparência sumir ou aparecer um fundo preto.
Como faço backup antes de editar?
Copie a pasta Interface inteira e o Main.exe para uma pasta _original antes de qualquer alteração. Assim, se uma textura ou edição de bytes quebrar o cliente, você restaura em segundos sem baixar tudo de novo.