Cómo Configurar el Master Level por Clase en el Servidor de MU Online
Guía técnica completa para configurar el Master Level individualmente por clase en un servidor privado de MU Online, con consultas SQL, archivos .ini y resolución de errores.
El Master Level (ML) es uno de los sistemas de progresión más valorados en los servidores privados de MU Online. Configurarlo por clase — en lugar de aplicar un único valor global — permite crear experiencias de juego equilibradas, donde las Fairy Elfs y Dark Wizards pueden tener límites de ML diferentes a los de Dark Lords o Rage Fighters. Esta guía cubre el proceso completo para MuServer Season 6 (el más popular en servidores privados), con notas para Season 9+ a lo largo del texto.
Requisitos Previos
Antes de comenzar, asegúrese de tener:
- Acceso a SQL Server Management Studio (SSMS) conectado a la base de datos
MuOnline - Permiso de lectura/escritura en las carpetas
GameServer/Data/yGameServer/Setup/ - El servidor apagado durante ediciones de tablas críticas o archivos
.inide clase - Una copia de seguridad de la base de datos (consulte el tutorial de backup antes de continuar)
Paso 1: Identificar la Versión de su MuServer
El método de configuración difiere entre versiones. Ejecute esta consulta para verificar:
USE MuOnline
GO
SELECT name FROM sys.tables WHERE name LIKE '%Master%' OR name LIKE '%ML%'
GO
Interprete los resultados:
- Tablas como
T_ML_CLASS_INFO,T_ML_SKILL_LIST→ Season 6 con base de datos - Tabla
MasterLevelSkillTree→ Season 9 a 13 - Sin tablas de ML → configuración vía archivo
.ini(saltar al Paso 3)
Paso 2: Configurar Master Level por Clase vía SQL (Season 6)
2.1 Verificar la Estructura de la Tabla de Clases
USE MuOnline
GO
SELECT * FROM T_ML_CLASS_INFO
GO
La tabla normalmente contiene columnas como:
| Columna | Descripción |
|---|---|
ClassCode | Código numérico de la clase (ver abajo) |
MaxMasterLevel | Nivel máximo de ML permitido |
MLPointsPerLevel | Puntos de ML ganados por nivel |
MLExpMultiplier | Multiplicador de experiencia de ML |
Tabla de referencia de códigos de clase:
| Código | Clase | Evolución |
|---|---|---|
| 0 | Dark Wizard | Soul Master / Grand Master |
| 1 | Dark Knight | Blade Knight / Blade Master |
| 2 | Fairy Elf | Muse Elf / High Elf |
| 3 | Magic Gladiator | Duel Master |
| 4 | Dark Lord | Lord Emperor |
| 5 | Summoner | Dimension Master |
| 6 | Rage Fighter | Fist Master |
2.2 Cambiar el Límite de ML por Clase
Ejemplo: establecer ML 200 para Dark Wizard, ML 150 para Rage Fighter y ML 300 para Dark Knight:
USE MuOnline
GO
-- Dark Wizard (ClassCode 0): ML máximo 200
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 200, MLPointsPerLevel = 1, MLExpMultiplier = 100
WHERE ClassCode = 0
-- Dark Knight (ClassCode 1): ML máximo 300
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 300, MLPointsPerLevel = 1, MLExpMultiplier = 90
WHERE ClassCode = 1
-- Fairy Elf (ClassCode 2): ML máximo 200
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 200, MLPointsPerLevel = 1, MLExpMultiplier = 100
WHERE ClassCode = 2
-- Magic Gladiator (ClassCode 3): ML máximo 200
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 200, MLPointsPerLevel = 1, MLExpMultiplier = 100
WHERE ClassCode = 3
-- Dark Lord (ClassCode 4): ML máximo 200
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 200, MLPointsPerLevel = 1, MLExpMultiplier = 100
WHERE ClassCode = 4
-- Summoner (ClassCode 5): ML máximo 200
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 200, MLPointsPerLevel = 1, MLExpMultiplier = 100
WHERE ClassCode = 5
-- Rage Fighter (ClassCode 6): ML máximo 150 (ajuste de balance)
UPDATE T_ML_CLASS_INFO
SET MaxMasterLevel = 150, MLPointsPerLevel = 1, MLExpMultiplier = 120
WHERE ClassCode = 6
GO
2.3 Configurar el Nivel Mínimo para Activar el Master Level
El ML solo se habilita cuando el personaje alcanza el level máximo normal. Verifique y ajuste:
USE MuOnline
GO
-- Verificar configuración actual del nivel mínimo para activación de ML
SELECT * FROM T_ML_CONFIG
GO
-- Establecer level 400 como requisito mínimo para que todas las clases activen ML
UPDATE T_ML_CONFIG
SET MinLevelToActivateML = 400
WHERE ConfigKey = 'GLOBAL_MIN_LEVEL'
GO
GameServerInfo o en el archivo GameServerInfo.ini, no en T_ML_CONFIG. Si la consulta devuelve un error, continúe con el Paso 3.Paso 3: Configurar vía MasterLevelSetting.ini
Si su servidor utiliza archivos .ini para el control de ML, localice el archivo en:
GameServer/Data/MasterLevelSetting.ini
o en algunas versiones:
GameServer/Setup/MasterLevelConfig.ini
3.1 Estructura Típica del Archivo
Ábralo con Notepad++ y busque bloques por clase:
[MasterLevel_DarkWizard]
Enable = 1
MaxMasterLevel = 200
PointsPerLevel = 1
ExpMultiplier = 100
MinLevelRequired = 400
[MasterLevel_DarkKnight]
Enable = 1
MaxMasterLevel = 300
PointsPerLevel = 1
ExpMultiplier = 90
MinLevelRequired = 400
[MasterLevel_FairyElf]
Enable = 1
MaxMasterLevel = 200
PointsPerLevel = 1
ExpMultiplier = 100
MinLevelRequired = 400
[MasterLevel_MagicGladiator]
Enable = 1
MaxMasterLevel = 200
PointsPerLevel = 1
ExpMultiplier = 100
MinLevelRequired = 400
[MasterLevel_DarkLord]
Enable = 1
MaxMasterLevel = 200
PointsPerLevel = 1
ExpMultiplier = 100
MinLevelRequired = 400
[MasterLevel_Summoner]
Enable = 1
MaxMasterLevel = 200
PointsPerLevel = 1
ExpMultiplier = 100
MinLevelRequired = 400
[MasterLevel_RageFighter]
Enable = 1
MaxMasterLevel = 150
PointsPerLevel = 1
ExpMultiplier = 120
MinLevelRequired = 400
Enable = 0 para deshabilitar completamente el Master Level de una clase específica. Esto es útil para servidores temáticos donde ciertas clases no deben tener acceso al sistema de ML.3.2 Configurar el Árbol de Habilidades de ML por Clase
Además de los límites, cada clase tiene su propio árbol de habilidades de ML. Los archivos de habilidades se encuentran en:
GameServer/Data/MasterSkillTree_[NombreDeClase].bmd
o en la base de datos:
USE MuOnline
GO
-- Verificar habilidades de ML disponibles para Dark Wizard
SELECT SkillID, SkillName, ClassCode, MLPointCost, MaxRank
FROM T_ML_SKILL_LIST
WHERE ClassCode = 0
ORDER BY SkillID
GO
Para cambiar el costo en puntos de ML de una habilidad específica:
USE MuOnline
GO
-- Aumentar el costo de una habilidad crítica del Dark Wizard (SkillID 350)
UPDATE T_ML_SKILL_LIST
SET MLPointCost = 3, MaxRank = 10
WHERE SkillID = 350 AND ClassCode = 0
GO
Paso 4: Ajustar la Tasa de Experiencia de ML en GameServer.ini
La tasa de experiencia de ML global (antes del multiplicador por clase) se configura en:
GameServer/GameServer.ini
Busque y ajuste la sección:
[MasterLevel]
MasterExpRate = 100
; 100 = tasa estándar (1x)
; 200 = doble de experiencia de ML
; 50 = mitad de la experiencia de ML
MasterExpRate (ini) × MLExpMultiplier (por clase) / 100. Por ejemplo, con MasterExpRate = 200 y MLExpMultiplier = 90 para DK, el Dark Knight recibe 200 × 90 / 100 = 180% de la EXP base de ML.Paso 5: Verificar y Probar la Configuración
5.1 Confirmar los Datos Guardados en la Base de Datos
USE MuOnline
GO
-- Verificar la configuración final de ML por clase
SELECT
ClassCode,
MaxMasterLevel,
MLPointsPerLevel,
MLExpMultiplier
FROM T_ML_CLASS_INFO
ORDER BY ClassCode
GO
5.2 Revisar un Personaje Específico
USE MuOnline
GO
-- Ver datos de ML de un personaje
SELECT
Name,
Class,
cLevel,
MasterLevel,
MasterPoint
FROM Character
WHERE Name = 'NombreDelPersonaje'
GO
5.3 Corregir el ML Incorrecto de un Personaje
Si un personaje tiene un ML mayor que el nuevo límite configurado:
USE MuOnline
GO
-- Reiniciar ML al nuevo máximo (ej: 200 para Dark Wizard)
UPDATE Character
SET MasterLevel = 200, MasterPoint = 0
WHERE Name = 'NombreDelPersonaje' AND Class IN (0, 1, 16, 17, 32, 33)
-- Class 0,1 = DW base; 16,17 = Soul Master; 32,33 = Grand Master
GO
Class en la base de datos almacena la evolución actual, no la clase base. Dark Wizard base = 0, Soul Master = 16, Grand Master = 32. Asegúrese de incluir todos los códigos de evolución al hacer UPDATE por clase.Paso 6: Configuración para Season 9 a 13+
En versiones más recientes, la configuración de ML por clase se trasladó al archivo:
GameServer/Data/MasterSkillTreeData.xml
o a la tabla MasterLevelSkillTree en la base de datos. La estructura XML es la siguiente:
<MasterLevelConfig>
<Class id="0" name="DarkWizard" maxML="200" pointsPerLevel="1" expMult="100" minLevel="400"/>
<Class id="1" name="DarkKnight" maxML="300" pointsPerLevel="1" expMult="90" minLevel="400"/>
<Class id="2" name="FairyElf" maxML="200" pointsPerLevel="1" expMult="100" minLevel="400"/>
<Class id="3" name="MagicGladiator" maxML="200" pointsPerLevel="1" expMult="100" minLevel="400"/>
<Class id="4" name="DarkLord" maxML="200" pointsPerLevel="1" expMult="100" minLevel="400"/>
<Class id="5" name="Summoner" maxML="200" pointsPerLevel="1" expMult="100" minLevel="400"/>
<Class id="6" name="RageFighter" maxML="150" pointsPerLevel="1" expMult="120" minLevel="400"/>
</MasterLevelConfig>
Solución de Problemas
Problema: El personaje alcanzó el level máximo pero no puede activar el ML
→ Verifique que MinLevelRequired sea igual al MaxLevel configurado en el servidor → Confirme que Enable = 1 para la clase del personaje → Compruebe que el cliente esté actualizado para soportar la versión de ML del servidor
Problema: Los puntos de ML desaparecen al reiniciar el servidor
→ Es posible que la tabla T_ML_CHAR_INFO no esté persistiendo los datos correctamente → Ejecute: SELECT * FROM T_ML_CHAR_INFO WHERE CharName = 'NombreDelPersonaje' → Si está vacía, el sistema de persistencia de ML puede estar desactivado en GameServer.ini
Problema: Las skills de ML no aparecen en el árbol aunque ML esté activo
→ Confirme que los archivos MasterSkillTree_*.bmd corresponden a la versión del cliente → Verifique que la tabla T_ML_SKILL_LIST tenga entradas para el ClassCode correcto → Reexporte los archivos .bmd con un editor BMD si es necesario
.ini, reinicie completamente el GameServer. Un simple /reloadconfig no siempre recarga la configuración de Master Level, dependiendo de la compilación del servidor.Perguntas frequentes
¿Qué tabla SQL almacena los límites de Master Level por clase?
Depende de la versión del servidor. En Season 6 (MuServer S6), la tabla principal es MuOnline.dbo.T_ML_CLASS_INFO para los límites por clase y MuOnline.dbo.T_ML_SKILL_LIST para los árboles de habilidades. Algunas compilaciones usan archivos .ini en lugar de tablas de base de datos.
¿Es posible tener ML 400 para una clase y ML 200 para otra?
Sí. El campo MaxMasterLevel se configura de forma separada por código de clase (0=DW, 1=DK, 2=Elf, 3=MG, 4=DL, 5=Summoner, 6=RF). Actualice cada fila individualmente en la tabla o en la sección correspondiente del archivo de configuración.
El servidor no carga los cambios de Master Level aunque se reinicie. ¿Qué verifico?
Verifique que editó el archivo correcto (algunos servidores almacenan en caché archivos .ini). Confirme que GameServer.exe se reinició por completo y no solo con /reloadconfig. Revise también si hay un archivo MasterLevelSetting.ini duplicado en subcarpetas de temporada.
¿Cómo deshabilito el Master Level solo para Elfs en el servidor?
Establezca MaxMasterLevel = 0 para la clase Elf (código 2) en la tabla T_ML_CLASS_INFO o en el bloque correspondiente de MasterLevelSetting.ini. Con valor 0, los personajes de esa clase no podrán activar el ML.