Brazil's biggest MU Online portal — since 2003
Tutorial Advanced Server

How to edit the Main, login screen and client resolution

Complete guide to customizing a MU Online private server client: what the Main.exe controls (server connection, client behavior, texts), the two methods for changing the server IP in the client (config file vs hex editor), how to use HxD to safely hex-edit Main.exe and replace the hardcoded IP, how to change the login background image (correct file format, dimensions, and location by season), how to edit the WTF file and text files to customize in-game messages and item names, how to fix broken accent characters (locale setting, font files, encoding), how to configure the client resolution for modern widescreen monitors, a full list of tools you need for client editing, and the safety checklist before distributing a modified client.

BR Bruno · Updated on Dec 3, 2024 · ⏱ 12 min read
Quick answer

The client is the first thing every player sees and interacts with. Customizing it — even just changing the login screen image — signals that your server is its own unique experience, not just a generic MU installation.

The client is the first thing every player sees and interacts with. Customizing it — even just changing the login screen image — signals that your server is its own unique experience, not just a generic MU installation.

Atenção: Back up every file before editing. Back up Main.exe, the login image, and any text files. A corrupted Main.exe means players can't open the game at all. Work on copies, not originals.

What the Main.exe controls

WHAT'S INSIDE MAIN.EXE:

SERVER CONNECTION INFORMATION:
→ The IP address or hostname of your ConnectServer
→ The port the client connects to (e.g., 44405)
→ Some distributions use external config files for this — others hardcode it in the binary

INTERFACE TEXTS:
→ Window title bar text ("MU Online" can be changed to your server name)
→ Button labels ("Connect", "Create Account", "Exit")
→ Version string displayed in the client (e.g., "Season 6 Ep. 3")

CLIENT BEHAVIOR:
→ Protocol version used for server communication
→ Whether the client uses encryption for specific packet types
→ Some visual behavior settings

WHAT'S IN SEPARATE FILES (NOT in Main.exe):
→ Login background image — in the Data/ or BMP/ folder
→ In-game texts (item names, monster names) — in text/language files
→ Configuration (resolution, graphics options) — in .cfg or .ini files
→ Sounds and music — in Sound/ and Music/ folders

Method 1: Changing IP via config file (easy)

CHECK FOR A CONFIG FILE FIRST — IT'S MUCH EASIER:

Look in your client folder for:
→ IP.txt, server.ini, Connect.ini, ServerList.txt, serverinfo.txt, or similar
→ These files contain the ConnectServer address in plain text

COMMON CONTENT FORMATS:

Format A (single line):
127.0.0.1

Format B (with port):
127.0.0.1 44405

Format C (INI style):
[ConnectServer]
IP = 127.0.0.1
Port = 44405

EDITING:
1. Open the file in Notepad or Notepad++
2. Replace the existing IP with your server's IP or hostname
3. Save the file in the SAME format (don't change the structure)
4. Test by opening the client — it should connect to your server

IF THE CLIENT READS THIS FILE:
→ You can distribute the config file separately (or patch it via launcher)
→ Changing the server IP is as simple as updating one text file
→ Players never need to re-download the entire client for an IP change

Method 2: Hex-editing Main.exe (hardcoded IP)

HEX EDITING — FOR HARDCODED IPs IN THE BINARY:

TOOLS NEEDED:
→ HxD (free hex editor) — download from mh-nexus.de

STEP 1 — WORK ON A COPY:
→ Copy Main.exe to Main_BACKUP.exe before touching anything
→ Open HxD → File → Open → select the COPY of Main.exe

STEP 2 — FIND THE CURRENT IP:
→ Edit → Find → find: (set search type to "Text string")
→ Search for the current IP (e.g., "127.0.0.1" or the IP the client was pointing to)
→ Or: search for a common default IP like "game1.webzen.com"
→ HxD highlights the bytes containing the IP string

STEP 3 — EDIT THE IP:
→ Click on the first character of the IP in the right panel (the text/ASCII view)
→ Type your new IP directly
→ CRITICAL: the new IP must be exactly the same length or shorter
  → "45.67.89.100" (14 chars) replacing "127.0.0.1" (9 chars) won't fit
  → Solution: pad shorter IPs with spaces or null bytes (0x00) AFTER the IP
  → Example: "45.67.89.10" = 11 chars, original "127.0.0.1" = 9 chars
    → Use a shorter IP or change the client's IP reference location

STEP 4 — HANDLE LENGTH DIFFERENCES:
→ If your IP is SHORTER: fill remaining bytes with 0x00 (null bytes in hex view)
→ If your IP is LONGER: this is more complex — the binary structure may not allow it
  → Solutions: use a shorter hostname, or find a config-file based method

STEP 5 — SAVE AND TEST:
→ File → Save (saves the modified copy)
→ Open the game using this modified copy
→ If it connects to your server: success
→ If the game crashes: the edit was wrong — use the backup and try again

Changing the login screen image

CUSTOMIZING THE LOGIN/SELECT BACKGROUND:

FIND THE ORIGINAL IMAGE:
→ Browse the client folder for subfolders: Data/, BMP/, Texture/, Image/
→ Look for image files with names like:
  → select.jpg, back.jpg, login.bmp, character.jpg, charselect.jpg
→ Right-click → Properties → Details to see the exact dimensions

CREATE YOUR CUSTOM IMAGE:
→ Use your original image as the size reference
→ Tools: Photoshop, GIMP (free), or Canva
→ Design your server's logo, character art, or themed background
→ Export in the SAME format as the original (same .jpg or .bmp extension)
→ Name the file EXACTLY the same as the original (case-sensitive on some systems)
→ Save at EXACTLY the same dimensions (resize if needed)

REPLACE THE ORIGINAL:
1. Rename the original to back_ORIGINAL.jpg (keep as backup)
2. Place your new image with the original's exact name in the same folder
3. Open the client → the new image should appear on the login/select screen

COMMON REASONS THE IMAGE DOESN'T APPEAR:
→ File name is wrong (even capitalization: Select.jpg vs select.jpg matters)
→ Image format mismatch (client expects BMP but you saved as JPG)
→ Wrong dimensions (image is distorted or not loading)
→ Image too large (some clients have a size limit — keep under 2 MB)

Editing WTF and text files

CUSTOMIZING IN-GAME TEXTS:

WHAT TEXT FILES CONTAIN:
→ Item names and descriptions
→ Monster names
→ Skill and spell names
→ System messages ("You've been disconnected from the server")
→ Event messages

FINDING THE FILES:
→ Look in: Lang/, Language/, or the main client folder
→ Common file names: ItemList.txt, MonsterList.txt, SpellList.txt
→ Some seasons use binary formats (.dat) — these require specialized tools

EDITING SAFELY:
→ Use Notepad++ (not plain Notepad) — it shows character encoding
→ Before editing: check the file encoding (Encoding menu in Notepad++)
  → Usually Windows-1252 or UTF-8
→ Edit ONLY the text content, NOT the structure (don't add or remove tab characters)
→ Save in the SAME encoding as the original

ADDING YOUR SERVER NAME:
→ Find references to "MU Online" or "WEBZEN" in the text files
→ Replace with your server's name
→ The window title usually comes from the Main.exe binary or a resource file

Fixing broken accent characters

FIX FOR ACCENTED CHARACTERS (á, é, ñ, ç, ü, etc.):

SYMPTOMS:
→ Characters that should have accents show as "?" or "□" or random symbols
→ Affects: item names, chat text, NPC messages

CAUSE:
→ The client's internal encoding doesn't match your Windows locale setting

FIX 1 — SYSTEM LOCALE (try this first):
1. Control Panel → Region → Administrative tab
2. "Language for non-Unicode programs" → Change system locale
3. Select: Spanish (Spain), Spanish (Mexico), or Portuguese (Brazil)
4. Click OK → restart Windows
5. Open the client → accents should now display correctly

FIX 2 — FONT FILES:
→ The client uses its own custom font files (usually in a Fonts/ folder or embedded)
→ If the font doesn't include accented characters: they can't display
→ Community distributions for LATAM often have pre-patched font files
→ Look in your distribution's forum for "font fix" or "accent fix" patches

FIX 3 — TEXT FILE ENCODING:
→ If you edited text files and introduced the encoding mismatch:
  → In Notepad++: open the file → Encoding → Convert to ANSI (Windows-1252)
  → Save → the accents should work again

Resolution and widescreen

SETTING THE CLIENT RESOLUTION:

DEFAULT MU S6 RESOLUTIONS:
→ 800x600, 1024x768, 1280x960, 1280x1024 (4:3 aspect ratios)
→ Some distributions add 1920x1080 via widescreen patches

CHANGING RESOLUTION:
→ Look for Setup.exe in the client folder → runs a configuration dialog
→ Or look for Main.ini or resolution.cfg with a "Width" and "Height" setting
→ Change values to your monitor's resolution

WINDOWED MODE:
→ Many clients support: right-click Main.exe → Properties → Shortcut → Target
→ Add: -window or -windowed at the end of the path
→ Example: "C:\MuServer\Main.exe" -window

FOR WIDESCREEN MONITORS (16:9):
→ The original client renders in 4:3 — on a 16:9 monitor it appears stretched or with black bars
→ Recommended: tell your GPU to "maintain aspect ratio" (forces black bars — no stretching)
  → NVIDIA Control Panel → Display → Adjust desktop size → Aspect ratio
  → AMD Radeon Settings → Display → GPU Scaling → Maintain aspect ratio
→ Community widescreen patches: search your distribution's forum for "widescreen patch"
Dica: After all modifications, test the complete client on a clean PC (or VM) before distributing it. What works on your development machine may be missing a DLL or registry entry that causes it to fail on a fresh install. A test on a clean machine is the only real validation.

Pair this with the client installer tutorial (for packaging the edited client into a professional installer), the launcher tutorial (for distributing updates to the client files without full reinstalls), and the common server errors tutorial (for fixing client crashes that happen after incorrectly edited Main files).

Frequently asked questions

What is the MU Online Main?

Main.exe (or a similarly named executable) is the game client — the program players run to play MU Online. Depending on the distribution, it contains: the ConnectServer IP and port (either hardcoded in the binary or read from a config file), interface texts, version information, and some client behavior settings. Editing it allows you to point the client at your server and customize what players see.

How do I change the server IP in Main.exe?

It depends on the distribution. Many modern distributions store the IP in a separate file (server.ini, IP.txt, ServerList.txt, or similar) that Main.exe reads on startup — much easier to edit. Older distributions hardcode the IP inside the Main.exe binary itself, requiring a hex editor (HxD) to change. Check your client folder for a config file first before using the hex editor.

What format is the login screen image?

It varies by season. Season 6 login background is typically a .jpg or .bmp file, usually 1024x768 or a similar 4:3 resolution. The file is in a textures or data folder inside the client — look for files named select.jpg, back.jpg, login.bmp, or character.jpg. Always match the exact file name, format, and dimensions of the original.

Why do accented characters appear as question marks or garbage in the client?

The MU client was designed for a specific Windows locale and character encoding. When the system locale doesn't match what the client expects, characters outside basic ASCII (á, é, ñ, ç, etc.) display incorrectly. Fix: Control Panel → Region → Administrative → 'Language for non-Unicode programs' → change to Spanish (Spain), Spanish (Mexico), or Portuguese (Brazil) depending on your distribution → restart Windows.

BR
Events, maps & items editor

Bruno specializes in MU Online events, maps, bosses and item economy. He documents every detail based on real gameplay.

Keep reading

Related articles

🖼️
Tutorial

How to create custom login and character selection screens in MU Online

Learn how to fully customize the login and character selection screens of the MU Online client by editing .ozj/.ozt textures, interface layouts, and the Main.exe itself.

22 min · Advanced ·
🚀
Tutorial

How to create an update launcher for MU Online

Complete guide to creating an update launcher for a MU Online server: what a launcher does (compares client files with the server and downloads only what changed), how the version list / patch list works (file hashes, sizes, and paths), how to host the update files on your website, configuring the launcher to point to your update server URL, the difference between launchers that download the whole client and patch-based launchers that update incrementally, how to handle a client update that changes hundreds of files efficiently, what to put on the launcher's interface (server news, social links, play button, background), common launcher problems and how to fix them (SSL errors, hash mismatches, download failures), and the best pre-built launcher solutions available for MU Online Season 6 servers.

12 min · Intermediate ·
📦
Tutorial

How to create a client installer for your MU Online server

Complete guide to creating a professional installer for your MU Online server client: what a client installer does and why it matters for player onboarding, what files must be included in the client package (game binaries, custom textures, sounds, launcher), how to prepare the client folder before building the installer, the most-used free tools for creating Windows installers (Inno Setup and NSIS), step-by-step walkthrough with Inno Setup to build a .exe installer, how to add prerequisites (DirectX, Visual C++ Redistributable) to the installer, how to test the installer on a clean machine, hosting the installer for download, how to reduce antivirus false positives, and how to pair the installer with a launcher for automatic future updates.

12 min · Intermediate ·