How to Configure Classic MU Online Server (Season 1-2) from Scratch
Complete technical guide to configure a MU Online Season 1-2 server from scratch: SQL Server, server files, rates, events, and GM accounts.
Prerequisites and Installation Environment
Before starting, prepare the environment with the following components:
- Operating system: Windows Server 2008/2012 or Windows 10/11 (64-bit)
- SQL Server: 2000 (MSDE) or 2005 Express — compatible with MuServer S1/S2
- Server files: MuServer Season 1 or Season 2 (build matching your client version)
- Minimum RAM: 2 GB (recommended 4 GB for local testing)
- Required ports: 44405, 55901, 55551, 55980
Step 1 — Install and Prepare SQL Server
1.1 Install SQL Server 2000 (MSDE) or SQL Server 2005 Express. After installation, open SQL Server Enterprise Manager or Management Studio and confirm the service is running.
1.2 Create the main database:
CREATE DATABASE MuOnline
GO
USE MuOnline
GO
1.3 Execute the table creation scripts provided with your MuServer package. They are typically located at:
MuServer/SQL/MuOnline.sql
MuServer/SQL/MuOnline_Event.sql
MuServer/SQL/MuOnline_Log.sql
Run each script in the order above using Query Analyzer (SQL 2000) or Management Studio (SQL 2005+).
1.4 Configure the database access user:
USE master
GO
EXEC sp_addlogin 'muonline', 'YourStrongPassword123', 'MuOnline'
GO
USE MuOnline
GO
EXEC sp_adduser 'muonline', 'muonline', 'db_owner'
GO
sa account directly in the game server configuration files. Always create a dedicated user with minimum required permissions (db_owner on the MuOnline database is sufficient).Step 2 — MuServer S1/S2 Directory Structure
After extracting the server files, the structure should be:
C:\MuServer\
├── ConnectServer\
│ ├── ConnectServer.exe
│ └── ConnectServer.cfg
├── GameServer\
│ ├── GameServer.exe
│ ├── GameServer.ini
│ └── Data\
│ ├── MonsterSetBase.txt
│ ├── Drop\
│ └── Events\
│ ├── BloodCastle\
│ └── DevilSquare\
├── DataServer\
│ ├── DataServer.exe
│ └── DataServer.cfg
└── EventServer\
├── EventServer.exe
└── EventServer.cfg
C:\Program Files\ to avoid UAC permission issues on Windows. The path C:\MuServer\ or D:\MuServer\ is ideal.Step 3 — Configure the ConnectServer
Open ConnectServer/ConnectServer.cfg and adjust the following parameters:
[CONNECT_SERVER_INFO]
Port = 44405
MaxConnectPerIP = 10
MaxAcceptCount = 1000
PingInterval = 30
Then edit the game server section to point to the GameServer:
[GAME_SERVER_INFO_0]
ServerCode = 0
ServerName = Lorencia
ConnectIP = 127.0.0.1
Port = 55901
If running on a VPS with a public IP, replace 127.0.0.1 with the machine's internal IP (not the public IP — the client receives the public IP provided by the ConnectServer).
Step 4 — Configure the GameServer
4.1 Open GameServer/GameServer.ini and configure the database connection:
[DataBase]
IP = 127.0.0.1
Port = 1433
ID = muonline
PW = YourStrongPassword123
DBName = MuOnline
4.2 Configure the server's base rates:
[GameServerInfo]
ExperienceRate = 10
MasterExpRate = 5
DropRate = 30
ZenRate = 100
MaxLevel = 400
MaxResets = 0
4.3 For Season 2, enable Dark Lord in the section:
[DarkLord]
Enable = 1
MaxSummonMonster = 5
ExperienceRate is a multiplier over the game's base XP table. A value of 10 means 10x the default XP. For servers faithful to the classic experience, use values between 1 and 5.Step 5 — Configure the DataServer
Open DataServer/DataServer.cfg:
[DataServerInfo]
ServerCode = 0
Port = 55551
DBIP = 127.0.0.1
DBPort = 1433
DBID = muonline
DBPW = YourStrongPassword123
DBName = MuOnline
The DataServer handles character and item storage. It must be started before the GameServer and ConnectServer.
Step 6 — Configure the EventServer (Blood Castle and Devil Square)
The EventServer manages automatic events. Edit EventServer/EventServer.cfg:
[EventServerInfo]
Port = 55980
DBIP = 127.0.0.1
DBPort = 1433
DBID = muonline
DBPW = YourStrongPassword123
DBName = MuOnline
[BloodCastle]
Enable = 1
OpenTime01 = 00:00
OpenTime02 = 02:00
OpenTime03 = 04:00
OpenTime04 = 06:00
OpenTime05 = 12:00
OpenTime06 = 18:00
OpenTime07 = 21:00
[DevilSquare]
Enable = 1
OpenTime01 = 01:00
OpenTime02 = 03:00
OpenTime03 = 09:00
OpenTime04 = 15:00
OpenTime05 = 20:00
Step 7 — Configure Drops and Monsters
Drops in Season 1-2 are configured via text files in GameServer/Data/Drop/:
ItemDropFromMonster.txt # normal monster drops
ItemDropFromBoss.txt # boss drops
Format for each line in ItemDropFromMonster.txt:
// MonsterID ItemSection ItemIndex ItemLevel DropRate(0-9999999)
1 0 0 0 50000 // Goblin drops Kris +0 with 0.5% chance
To adjust drops globally via SQL:
-- Increase drop rate of all excellent items by 50%
UPDATE MuOnline..T_ItemDropInfo
SET DropRate = DropRate * 1.5
WHERE ItemOption > 0
GO
T_ItemDropInfo table. Check your specific build's documentation to confirm which system is active.Step 8 — Startup Sequence
Always start the components in this order:
Step 8.1 → Start SQL Server and confirm it is responding.
Step 8.2 → Run DataServer/DataServer.exe and wait for DataServer Start OK.
Step 8.3 → Run EventServer/EventServer.exe and wait for EventServer Start OK.
Step 8.4 → Run GameServer/GameServer.exe and wait for GameServer Start OK and Database Connect OK.
Step 8.5 → Run ConnectServer/ConnectServer.exe last.
Step 9 — Create an Administrator Account (GM)
Once the server is running, create the GM account directly in the database:
USE MuOnline
GO
-- Create administrator account
INSERT INTO MEMB_INFO (
memb___id, memb__pwd, memb_name, sno__numb,
post_code, addr_info, addr_deta, tel__numb,
PhoneNumber, mail_addr, bloc_code, ctl1_code
)
VALUES (
'admin', '12345678', 'Administrator', '00000000000',
'00000', 'Admin', 'Admin', '00000000',
'00000000000', '[email protected]', 0, 0
)
GO
-- Set GM permission (ctl1_code = 1 for standard GM)
UPDATE MEMB_INFO SET ctl1_code = 1 WHERE memb___id = 'admin'
GO
To promote a character to GM in-game (Season 1-2), edit the character table:
UPDATE MuOnline..Character
SET CtlCode = 1
WHERE Name = 'YourCharacterName'
GO
Step 10 — Verification and Troubleshooting
10.1 Check the logs for each component:
GameServer/Log/GameServer.log— connection errors, data loadingDataServer/Log/DataServer.log— character read/write errorsConnectServer/Log/ConnectServer.log— client connections
10.2 Test connectivity with the MU client by configuring Main.exe to point to the server IP on port 44405.
10.3 If the client shows "Cannot Connect to Server", run in CMD:
netstat -ano | findstr "44405"
netstat -ano | findstr "55901"
Both ports should appear as LISTENING.
127.0.0.1:44405. For external access on a VPS, configure the ConnectServer with the VPS public IP and open the required ports in both the Windows Firewall and the hosting control panel.Basic Firewall Configuration (Windows)
Run the following commands in CMD as Administrator to open the required ports:
netsh advfirewall firewall add rule name="MU ConnectServer" protocol=TCP dir=in localport=44405 action=allow
netsh advfirewall firewall add rule name="MU GameServer" protocol=TCP dir=in localport=55901 action=allow
netsh advfirewall firewall add rule name="MU DataServer" protocol=TCP dir=in localport=55551 action=allow
netsh advfirewall firewall add rule name="MU EventServer" protocol=TCP dir=in localport=55980 action=allow
With these steps completed, your MU Online Season 1-2 server will be ready to accept connections. Monitor the logs regularly during the first hours of operation to identify any configuration errors or instability.
Perguntas frequentes
Which SQL Server version works best with Season 1-2?
SQL Server 2000 (MSDE) is the most compatible with the original MuServer Season 1-2. SQL Server 2005 also works with compatibility adjustments. Avoid SQL Server 2008+ for servers based on older MDS files without specific patches.
How do I know if my GameServer is correctly connected to the database?
Open GameServer/Log/GameServer.log after starting. You should see the line 'Database Connect OK'. If you see 'Database Connect Failed', check the connection string in GameServer/GameServer.ini under the [DataBase] section.
The server starts but nobody can connect — what should I check?
First, confirm that ConnectServer is active and listening on port 44405 (default for Season 1-2). Then verify that Windows Firewall allows ports 55901 (GameServer), 44405 (ConnectServer), and 55551 (DataServer). Use netstat -ano in CMD to confirm.
How do I change the character limit per account in Season 1-2?
Run in SQL Server: UPDATE MuOnline..T_AccountCharacter SET AccountLevel = 1 WHERE AccountLevel = 0. To adjust the allowed maximum, edit the MaxCharacterPerAccount value in GameServer/GameServer.ini or in the T_ServerInfo table depending on your MuServer build.
What is the difference between MuServer S1 and S2 in file structure?
Season 2 introduces the Darkness (Dark Lord) class system and DataServer adjustments. The folder structure is identical, but Season 2 includes additional files in GameServer/Data/DarkLord/ and extra database entries for Dark Lord skills and item sets.