How to Configure the Crywolf Event on MU Online Server
Complete technical guide to configure the Crywolf event on your MU Online server: INI files, SQL tables, schedules, and troubleshooting steps.
The Crywolf event is one of the most important cooperative pieces of content in MU Online. Players must defend the Crywolf Altar against waves of monsters led by Balgass. When the event is lost, the entire server suffers an EXP penalty. This guide covers the complete configuration for Season 6 Episode 3 servers.
Prerequisites
Before starting, confirm your environment meets the following requirements:
- MuServer Season 6 Episode 3 (version 1.04d or later recommended)
- EventServer installed and functional
- SQL Server 2008 or later with the
MuOnlinedatabase - Administrative access to the server directories
D:\MuServer\EventServer\ or C:\GameServer\EventServer\. Before editing any file, create a full backup of your database and the EventServer/ and GameServer/Data/ directories.Step 1: Verify the EventServer File Structure
Crywolf is managed by the EventServer, not the GameServer directly. Confirm the following files exist:
EventServer/
├── EventServer.exe
├── EventServer.cfg
├── Crywolf.ini
└── Log/
└── Crywolf.log
If Crywolf.ini does not exist, create it as shown in Step 2. If the Log/ directory is missing, create it manually — the EventServer does not create this folder automatically, and its absence may prevent error messages from being written to disk.
Step 2: Configure the Crywolf.ini File
Open or create EventServer/Crywolf.ini with a text editor (Notepad++ is recommended to avoid encoding issues — always save as ANSI, not UTF-8 with BOM):
[Crywolf]
CrywolfEnable=1
CrywolfTime=60
CrywolfUserMin=0
CrywolfBossHP=100
CrywolfMonsterRespawn=1
CrywolfRewardGold=1
CrywolfRewardExp=1
CrywolfExpPenalty=1
CrywolfSchedule=00:00,06:00,12:00,18:00
CrywolfAltarHP=100
CrywolfSuccessRate=50
Description of the main parameters:
| Parameter | Default Value | Description |
|---|---|---|
CrywolfEnable | 1 | Enables (1) or disables (0) the event |
CrywolfTime | 60 | Event duration in minutes |
CrywolfUserMin | 0 | Minimum players required to start the event |
CrywolfBossHP | 100 | Boss Balgass HP as a percentage |
CrywolfSchedule | HH:MM | Start times, comma-separated |
CrywolfAltarHP | 100 | Total altar HP (100 = full default value) |
CrywolfExpPenalty | 1 | Enables the EXP penalty on defeat |
CrywolfUserMin=0 so the event always starts regardless of how many players are online. On larger servers, use CrywolfUserMin=10 to ensure meaningful participation and make the event more engaging.Step 3: Configure EventServer.cfg
Open EventServer/EventServer.cfg and confirm or adjust the connection settings for the other server components:
[Connect]
GameServerIP=127.0.0.1
GameServerPort=55960
ConnectServerIP=127.0.0.1
ConnectServerPort=44405
[DataBase]
DSN=MuOnline
ID=sa
PWD=your_password_here
DBName=MuOnline
[Event]
CrywolfEventEnable=1
BloodCastleEnable=1
DevilSquareEnable=1
sa account in production without a strong password. Create a dedicated SQL account for the EventServer with permissions scoped to the MuOnline database only: GRANT SELECT, INSERT, UPDATE, DELETE ON DATABASE::MuOnline TO event_user;Step 4: Configure the Database Tables
Execute the following scripts in SQL Server Management Studio (SSMS) connected to the MuOnline database:
4.1 — Verify and create the T_CrywolfInfo table:
-- Check if the table exists
SELECT * FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'T_CrywolfInfo';
-- If it does not exist, create it:
CREATE TABLE [dbo].[T_CrywolfInfo] (
[CrywolfState] TINYINT NOT NULL DEFAULT 0,
[OccupationState] TINYINT NOT NULL DEFAULT 0,
[ExpPenaltyRate] TINYINT NOT NULL DEFAULT 50,
[GoldPenaltyRate] TINYINT NOT NULL DEFAULT 0,
[SuccessUserCount] INT NOT NULL DEFAULT 0,
[LastSuccessDate] DATETIME NULL,
[LastFailDate] DATETIME NULL
);
4.2 — Insert the initial record:
-- Check whether a record already exists
SELECT COUNT(*) FROM MuOnline..T_CrywolfInfo;
-- If the result is 0, insert the default row:
INSERT INTO MuOnline..T_CrywolfInfo
(CrywolfState, OccupationState, ExpPenaltyRate, GoldPenaltyRate)
VALUES
(0, 0, 50, 0);
4.3 — Reset Crywolf state before testing:
UPDATE MuOnline..T_CrywolfInfo
SET CrywolfState = 0,
OccupationState = 0,
ExpPenaltyRate = 0;
CrywolfState = 0 means Crywolf is under player control (no penalty active). CrywolfState = 1 means monsters have taken over Crywolf and the EXP penalty is applied server-wide to all players.Step 5: Verify Monster Spawns in the GameServer
Crywolf monsters are defined in GameServer/Data/MonsterSetBase.txt. Confirm that entries are present for the Crywolf map (Map Index 34):
// Crywolf - Map 34
// Format: MapNumber / MonsterIndex / X / Y / Direction / SpawnType
34 238 150 025 1 0 // Werewolf
34 239 160 035 1 0 // Scout
34 240 170 045 3 0 // Lich
34 241 180 055 1 0 // Death Rider
34 242 150 060 3 0 // Force Golem
34 430 112 067 3 1 // Balgass (Boss)
GameServer/Data/MapInfo.txt to confirm the valid boundaries of Map 34 and adjust spawn positions to stay within range. Coordinates outside the map bounds cause monsters to spawn at position zero or may crash the GameServer during event initialization.Step 6: Configure Crywolf Rewards
Rewards are controlled by the T_CrywolfReward table and the penalty values in T_CrywolfInfo:
-- Inspect the rewards table
SELECT * FROM MuOnline..T_CrywolfReward;
-- Set EXP bonus rate for a successful defense (value as a bonus percentage on top of base EXP)
UPDATE MuOnline..T_CrywolfReward
SET ExpBonusRate = 20
WHERE RewardType = 1;
-- Check the current penalty configuration
SELECT ExpPenaltyRate, GoldPenaltyRate
FROM MuOnline..T_CrywolfInfo;
To adjust the EXP penalty when Crywolf is lost:
-- Reduce the penalty from the default 50% to 30%
UPDATE MuOnline..T_CrywolfInfo
SET ExpPenaltyRate = 30;
-- Remove the penalty entirely (not recommended on competitive servers)
UPDATE MuOnline..T_CrywolfInfo
SET ExpPenaltyRate = 0;
Step 7: Enable the Crywolf Portal in the GameServer
Verify that the entry gate for Crywolf is active in the database:
-- Check if the portal is enabled
SELECT GateNumber, GateName, MapNumber, Enable
FROM MuOnline..T_GateInfo
WHERE GateNumber = 52; -- Crywolf gate number
-- Enable if not active
UPDATE MuOnline..T_GateInfo
SET Enable = 1
WHERE GateNumber = 52;
Also confirm that GameServer/Data/Crywolf.bmd exists. Without this file, the map will not load on the client side and players will see a connection error when trying to enter.
Step 8: Start and Test the EventServer
Correct startup sequence:
- Start
DataServer.exe→ wait for "Ready" in the console - Start
ConnectServer.exe→ wait for the connection to be established - Start
GameServer.exe→ wait for full initialization - Start
EventServer.exe→ monitor the console for connection errors
Confirm the following lines appear in the EventServer console:
[Crywolf] Initialize OK
[Crywolf] Next event: 06:00:00
[Crywolf] Connected to GameServer: 127.0.0.1:55960
Force an immediate start for testing (builds with stored procedure support):
EXEC MuOnline..WZ_CrywolfSetState @State=1;
Step 9: Adjust Schedules for Time Zones
The EventServer uses the Windows system clock of the server machine. To align event times with your player base's peak hours:
; EventServer/Crywolf.ini
; Example: server running in UTC, players in Brazil (UTC-3)
; Add 3 hours to each desired local time
CrywolfSchedule=03:00,09:00,15:00,21:00
Check the time zone currently configured on the Windows server:
REM Run in CMD with administrator privileges on the server:
tzutil /g
To force a clock resync and prevent schedule drift:
w32tm /resync /force
Troubleshooting Common Issues
Event does not start at the configured time
- Confirm that
CrywolfEnable=1is set inCrywolf.ini - Review the log at
EventServer/Log/Crywolf.log - Confirm the EventServer clock is in sync with the system
- Restart the EventServer after any
.inifile changes
Balgass does not spawn during the event
-- Verify that Balgass (ID 430) is enabled in the monster table
SELECT MonsterID, MonsterName, Enable
FROM MuOnline..MonsterBase
WHERE MonsterID = 430;
-- Enable if necessary
UPDATE MuOnline..MonsterBase
SET Enable = 1
WHERE MonsterID = 430;
Also verify that monster ID 430 has a valid entry in MonsterSetBase.txt under Map 34.
EXP penalty is not being applied after a loss
-- Check the current Crywolf state
SELECT CrywolfState, ExpPenaltyRate
FROM MuOnline..T_CrywolfInfo;
-- CrywolfState must be 1 for the penalty to be active
-- ExpPenaltyRate must be greater than 0
-- If both are correct and the penalty still does not apply, restart the GameServer
Configuration Summary
Crywolf configuration involves three integrated components: EventServer/Crywolf.ini (controls schedules and event parameters), the T_CrywolfInfo and T_CrywolfReward tables in the MuOnline database (control state and rewards), and the spawn data in GameServer/Data/MonsterSetBase.txt (defines where monsters appear on Map 34).
With all three components correctly configured and the EventServer started in the right order — after DataServer and GameServer — Crywolf will run automatically at the defined times, applying the server-wide EXP penalty whenever players fail to defend the altars against Balgass and his forces.
Perguntas frequentes
Which MuServer version supports Crywolf?
Crywolf was introduced in Season 4 Episode 2. Servers running Season 6 Episode 3 with MuServer 1.04d or later have full support, including the EXP penalty system and automatic rewards via the EventServer.
Crywolf does not start automatically — how do I fix this?
Confirm that CrywolfEnable=1 is set in EventServer/Crywolf.ini, that the EventServer is running and connected to the GameServer, and that CrywolfSchedule entries are in HH:MM format. Check EventServer/Log/Crywolf.log for specific error messages.
How do I change the EXP penalty when Crywolf is lost?
In the T_CrywolfInfo table of the MuOnline database, adjust the ExpPenaltyRate field. The default is 50 (50% EXP reduction). Run: UPDATE MuOnline..T_CrywolfInfo SET ExpPenaltyRate=30 to lower the penalty to 30%. Restart the EventServer after.
Crywolf monsters are not spawning — what should I check?
Verify GameServer/Data/MonsterSetBase.txt and confirm that Map 34 entries are present for monster IDs 238-244 and boss Balgass (ID 430). Also confirm that CrywolfMonsterRespawn=1 is set in EventServer/Crywolf.ini.
How do I force Crywolf to start immediately for testing?
Add a time close to the current server time to CrywolfSchedule in Crywolf.ini and restart the EventServer. On builds that support it, you can also run EXEC MuOnline..WZ_CrywolfSetState @State=1 in SSMS to force the event state.