Cómo Crear Cuenta GM y Configurar Permisos en el Servidor de MU
Aprende a crear cuentas GM, configurar niveles de permiso y gestionar el acceso administrativo en tu servidor de MU Online con SQL y archivos .ini de configuración.
El control total de tu servidor de MU Online comienza con la correcta creación y configuración de cuentas GM (Game Master). En este tutorial aprenderás a crear una cuenta GM mediante SQL Server, definir niveles de permiso, configurar los comandos disponibles por nivel y proteger el acceso administrativo.
Qué es una Cuenta GM en MU Online
Una cuenta GM es una cuenta de jugador con privilegios elevados dentro del servidor. El nivel de GM se almacena en la base de datos y es leído por el GameServer durante el inicio de sesión. Según el nivel asignado, el personaje tiene acceso a comandos como teletransporte, generación de ítems, baneo de jugadores y monitoreo del servidor en tiempo real.
MEMB_INFO en la base de datos MuOnline y por el archivo GameServer/Data/GameServerInfo.ini. Las versiones Season 9+ pueden usar tablas adicionales como T_GmInfo.Requisitos Previos
- Acceso a SQL Server Management Studio (SSMS) conectado a la base de datos del servidor
- Acceso a la carpeta de instalación del GameServer (ej.:
C:/MuServer/GameServer/) - Servidor detenido o posibilidad de reiniciarlo tras los cambios
- Una cuenta de jugador ya creada (mediante el sitio web o SQL)
Paso 1 — Identificar la Base de Datos Correcta
Abre el SSMS y conéctate al servidor SQL. Las bases de datos más comunes en servidores MU son:
-- Listar todas las bases de datos disponibles
SELECT name FROM sys.databases WHERE name LIKE '%Mu%' OR name LIKE '%mu%';
Los nombres de bases de datos por defecto son:
MuOnline— datos de cuentas, personajes e inventarioMuOnline_MEoMeOnline— en algunas distribuciones Season 6Account— en servidores con base de datos de autenticación separada
ConnectServer/ConnectServer.ini y busca la línea DBName= — indica la base de datos de cuentas utilizada.Paso 2 — Verificar la Estructura de la Tabla MEMB_INFO
Antes de modificar cualquier valor, verifica los campos disponibles:
USE MuOnline;
GO
-- Ver estructura de la tabla de cuentas
SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'MEMB_INFO';
Los campos esenciales para GM son:
| Campo | Tipo | Descripción |
|---|---|---|
memb___id | varchar(10) | Login de la cuenta |
m_Level | tinyint | Nivel GM (0=jugador, 1-3=GM) |
memb__pwd | varchar(10) | Contraseña de la cuenta |
mail_addr | varchar(50) | Correo electrónico de registro |
Paso 3 — Crear la Cuenta GM mediante SQL
Si la cuenta no existe aún, créala directamente en la base de datos:
USE MuOnline;
GO
INSERT INTO MEMB_INFO (
memb___id,
memb__pwd,
memb_name,
sno__numb,
bloc_code,
mail_addr,
mail_chek,
bloc_memo,
ctl1_code,
m_Level,
m_MLevelOK
)
VALUES (
'gmadmin', -- login de la cuenta (máx. 10 caracteres)
'clave123', -- contraseña (máx. 10 caracteres, sin hash en S6)
'GM Admin', -- nombre visible
'000-000-000-00', -- número de documento ficticio (requerido en algunas versiones)
0, -- 0 = cuenta activa, 1 = bloqueada
'[email protected]',
1, -- correo verificado
'',
0,
3, -- m_Level = 3 (GM máximo)
1
);
memb___id tiene tres guiones bajos (memb___id), no dos. Es un error frecuente que provoca un INSERT silenciosamente fallido. Verifica siempre la estructura exacta con el comando del Paso 2.Paso 4 — Elevar una Cuenta Existente a GM
Si la cuenta ya existe y quieres elevarla:
USE MuOnline;
GO
-- Verificar la cuenta antes de hacer cambios
SELECT memb___id, memb_name, m_Level, bloc_code
FROM MEMB_INFO
WHERE memb___id = 'nombrecuenta';
-- Establecer como GM Level 3 (administrador)
UPDATE MEMB_INFO
SET m_Level = 3
WHERE memb___id = 'nombrecuenta';
Tabla de Referencia de Niveles GM
| m_Level | Tipo | Acceso típico |
|---|---|---|
| 0 | Jugador común | Sin comandos GM |
| 1 | GM Auxiliar | /move, /post, /notice |
| 2 | GM Moderador | /kick, /mute, /warp |
| 3 | GM Administrador | Todos los comandos |
GameServer/Data/GameServerInfo.ini. La base de datos define el nivel; el .ini define qué puede hacer cada nivel.Paso 5 — Configurar Permisos en GameServerInfo.ini
Abre el archivo GameServer/Data/GameServerInfo.ini (o GameServer/GameServerInfo.ini según la versión) y localiza la sección de GM:
[GameServer]
; Ocultar GM del mapa para otros jugadores
HideGM = 1
; Nivel mínimo para comandos básicos (/move, /post)
CommandMinLevel = 1
; Nivel mínimo para comandos de moderación (/kick, /ban)
CommandModerateLevel = 2
; Nivel mínimo para comandos administrativos (/additem, /reset)
CommandAdminLevel = 3
; ¿El GM puede generar ítems?
GMAddItemEnable = 1
; ¿El GM aparece en los rankings?
GMRankingVisible = 0
T_GmCommandInfo de la base de datos. Usa SELECT * FROM MuOnline.dbo.T_GmCommandInfo; para inspeccionar la estructura.Paso 6 — Configurar Comandos GM por Nivel (Season 6)
En servidores Season 6 con el archivo GameServer/Data/GmCommand.ini, configura de la siguiente manera:
[GmCommand]
; Formato: NombreComando = NivelMínimoGM
/move = 1
/post = 1
/notice = 1
/warp = 1
/kick = 2
/mute = 2
/unmute = 2
/ban = 3
/unban = 3
/additem = 3
/setlevel = 3
/reset = 3
/addzen = 3
/dc = 3
/hide = 1
/unhide = 1
Paso 7 — Crear el Personaje GM (si es necesario)
En algunas distribuciones, el personaje GM debe crearse de forma separada a la cuenta. Mediante SQL:
USE MuOnline;
GO
-- Verificar si ya existe un personaje en la cuenta
SELECT Name, Class, cLevel, Strength, Dexterity, Vitality, Energy
FROM Character
WHERE AccountID = 'gmadmin';
-- Si no existe, insertar un personaje base (ejemplo: Dark Knight)
INSERT INTO Character (
AccountID, Name, Class, cLevel,
Strength, Dexterity, Vitality, Energy, Leadership,
MapNumber, MapPosX, MapPosY,
Money, Experience, LevelUpPoint,
CtlCode
)
VALUES (
'gmadmin',
'GMAdmin', -- nombre visible en el juego (máx. 10 caracteres)
16, -- 16 = Dark Knight (ver tabla de clases abajo)
400, -- nivel inicial
400, 400, 400, 400, 0,
0, -- mapa inicial (Lorencia = 0)
125, 125, -- coordenadas X, Y en Lorencia
999999999, -- zen inicial
0,
0,
3 -- CtlCode = 3 para GM
);
Tabla de Referencia de Clases (Campo Class)
| Valor | Clase |
|---|---|
| 0 | Dark Wizard |
| 16 | Dark Knight |
| 32 | Elf |
| 48 | Magic Gladiator |
| 64 | Dark Lord |
| 80 | Summoner |
| 96 | Rage Fighter |
CtlCode en la tabla Character también influye en el comportamiento GM en algunas versiones. Establécelo en 3 para acceso completo o 1 para solo visualización sin comandos.Paso 8 — Reiniciar el GameServer y Probar
Tras realizar todos los cambios:
- Detén el GameServer (
GameServer/GameServer.exe→ cerrar el proceso) - Reinicia el GameServer
- Inicia sesión con la cuenta GM creada
- En el juego, prueba el comando
/post Servidor MU Online Online! - Si el comando funciona, la cuenta GM está correctamente configurada
/reload gm desde la consola del GameServer. Esto recarga la lista de GMs sin desconectar a los jugadores activos.Solución de Problemas Comunes
La cuenta GM no puede usar comandos
-- Verificar los valores actuales de la cuenta
SELECT memb___id, m_Level, bloc_code, ctl1_code
FROM MuOnline.dbo.MEMB_INFO
WHERE memb___id = 'gmadmin';
Si bloc_code = 1, la cuenta está bloqueada. Corrígelo con:
UPDATE MuOnline.dbo.MEMB_INFO
SET bloc_code = 0
WHERE memb___id = 'gmadmin';
El personaje no reconoce el nivel GM tras iniciar sesión
Verifica que el CtlCode del personaje sea correcto:
SELECT Name, CtlCode FROM MuOnline.dbo.Character WHERE AccountID = 'gmadmin';
-- Corregir CtlCode si es necesario
UPDATE MuOnline.dbo.Character
SET CtlCode = 3
WHERE AccountID = 'gmadmin';
Los comandos GM funcionan pero los jugadores pueden ver al GM en el mapa
Confirma que HideGM=1 esté en GameServerInfo.ini y que el servidor se haya reiniciado tras la edición. Los cambios en archivos .ini solo tienen efecto después de un reinicio completo del GameServer.
Buenas Prácticas de Seguridad
- Nunca uses el mismo login GM para jugar normalmente — mantén cuentas separadas
- Cambia la contraseña GM regularmente mediante SQL:
UPDATE MEMB_INFO SET memb__pwd = 'nuevaClave' WHERE memb___id = 'gmadmin'; - Revisa todas las acciones GM en los registros del GameServer (carpeta
GameServer/Log/) - Revoca los permisos de ex-miembros del equipo de inmediato:
UPDATE MEMB_INFO SET m_Level = 0 WHERE memb___id = 'exgm'; - Considera crear cuentas con
m_Level = 1para GMs auxiliares — limita el acceso al mínimo necesario
Perguntas frequentes
¿Cuál es la diferencia entre GM Level 1 y GM Level 3?
El GM Level 1 (valor 1 en la base de datos) da acceso a comandos básicos como /move y /post. El GM Level 3 (valor 3) es el nivel máximo, con acceso a comandos críticos como /additem, /kick, /ban y /reset. Usa Level 3 únicamente para administradores de total confianza.
¿Por qué mi personaje GM no aparece invisible para otros jugadores?
Esto depende de la configuración HideGM en el archivo GameServer/Data/GameServerInfo.ini. Asegúrate de que HideGM=1 esté activo y que el personaje tenga GM Level >= 1 en la tabla MEMB_INFO de la base de datos.
¿Puedo tener más de una cuenta GM en el mismo servidor?
Sí, sin límite. Cada cuenta necesita tener el campo m_Level configurado individualmente en la tabla MEMB_INFO. Se recomienda crear una cuenta GM separada para cada administrador, nunca compartir credenciales.
¿Cómo elimino los permisos GM de una cuenta sin borrarla?
Ejecuta UPDATE MuOnline.dbo.MEMB_INFO SET m_Level = 0 WHERE memb___id = 'nombrecuenta'; — esto degrada la cuenta a jugador común sin afectar al personaje ni sus ítems.