El mayor portal de MU Online de Brasil — desde 2003
Tutorial Intermedio Tutoriais

Uso Avanzado de las Herramientas de GM en el Servidor de MU Online

Aprende a usar comandos GM avanzados, gestionar jugadores por SQL y configurar permisos de staff en tu servidor privado de MU Online.

EQ Equipo ViciadosMU · Actualizado el 3 jul 2026 · ⏱ 12 min de lectura

Introducción

Las herramientas de GM (Game Master) son el núcleo de la administración de un servidor privado de MU Online. Usarlas correctamente marca la diferencia entre un servidor estable y una experiencia de juego comprometida. Esta guía cubre los comandos más importantes, la estructura de permisos en la base de datos y las buenas prácticas operativas para administradores de servidores con MuServer Season 6.

Nota: Esta guía asume que tienes acceso a SQL Server Management Studio (SSMS) y al directorio de instalación del servidor, normalmente C:\MuServer\ o D:\GameServer\.

1. Estructura de Permisos de GM

1.1 La Tabla MEMB_INFO

Los permisos de GM se controlan directamente en la base de datos MuOnline, en la tabla MEMB_INFO. Las columnas relevantes son:

ColumnaTipoDescripción
memb___idvarchar(10)Login de la cuenta
AccountLeveltinyintNivel de acceso (0 = jugador, 1–3 = GM)
AccountExpireDatedatetimeVencimiento de la cuenta
bloc_codechar(1)'Y' = baneado, 'N' = activo

Para ascender a un jugador a GM Level 3 (acceso total):

USE MuOnline;
UPDATE MEMB_INFO
SET AccountLevel = 3
WHERE memb___id = 'nombre_cuenta';

Para degradar a un GM y convertirlo de nuevo en jugador común:

USE MuOnline;
UPDATE MEMB_INFO
SET AccountLevel = 0
WHERE memb___id = 'nombre_cuenta';
Atenção: Las cuentas con AccountLevel = 3 tienen acceso sin restricciones al servidor. Asigna este nivel únicamente a personas de total confianza. Prefiere usar Level 1 o 2 para moderadores.

1.2 Configuración en GameServer.ini

Confirma que los comandos GM están habilitados en GameServer/GameServer.ini:

[GameServer]
GMCommand=1
GMServerCommand=1
MaxGMCommand=3

Tras modificar este archivo, reinicia el proceso GameServer.exe para que los cambios surtan efecto.


2. Comandos GM Esenciales

2.1 Comandos de Navegación y Comunicación

Disponibles desde Level 1:

  • /move [mapa] — Teletransporta al GM al mapa indicado. Ejemplo: /move lorencia
  • /move [mapa] [x] [y] — Teletransporta a coordenadas específicas. Ejemplo: /move lorencia 130 135
  • /post [mensaje] — Envía un mensaje en naranja a todos los jugadores conectados
  • /notice [mensaje] — Muestra un aviso en la parte superior de la pantalla de todos los jugadores

2.2 Comandos de Gestión de Jugadores

Disponibles desde Level 2:

  • /kick [personaje] — Desconecta el personaje del servidor
  • /ban [personaje] — Banea la cuenta asociada al personaje
  • /setstat [stat] [valor] — Modifica los atributos del personaje objetivo
  • /goto [personaje] — Teletransporta al GM hasta el personaje
  • /call [personaje] — Teletransporta al personaje hasta el GM

2.3 Comandos de Ítems y Personajes (Level 3)

/additem [código_ítem] [nivel] [opciones] [luck] [skill]
/resetchar [personaje]
/setlevel [personaje] [nivel]
/addzen [valor]
/addpoint [stat] [valor]

Ejemplo para añadir una Lame of Lightning +13 con Full Options y Skill:

/additem 0 4 13 15 1 1
Dica: Consulta el archivo GameServer/Data/Item/ItemList.ini o la tabla ItemAddOption en la base de datos para obtener los códigos correctos de cada ítem. Los códigos varían entre versiones de MuServer.

3. Gestión mediante SQL Server

3.1 Consultar Jugadores Conectados

Para ver quién está conectado en un momento dado:

USE MuOnline;
SELECT
    a.AccountID,
    a.Name AS Personaje,
    a.Class,
    a.cLevel AS Nivel,
    a.MapNumber AS Mapa,
    a.MapPosX AS X,
    a.MapPosY AS Y
FROM Character a
INNER JOIN MEMB_STAT b ON a.AccountID = b.memb___id
WHERE b.ConnectStat = 1
ORDER BY a.cLevel DESC;

3.2 Banear y Desbanear Cuentas

Baneo temporal (hasta una fecha específica):

USE MuOnline;
UPDATE MEMB_INFO
SET bloc_code = 'Y',
    todt_bl_dt = '2026-12-31 23:59:59'
WHERE memb___id = 'cuenta_objetivo';

Baneo permanente:

USE MuOnline;
UPDATE MEMB_INFO
SET bloc_code = 'Y',
    todt_bl_dt = NULL
WHERE memb___id = 'cuenta_objetivo';

Desbanear una cuenta:

USE MuOnline;
UPDATE MEMB_INFO
SET bloc_code = 'N',
    todt_bl_dt = NULL
WHERE memb___id = 'cuenta_objetivo';

3.3 Restablecer la Contraseña de una Cuenta

USE MuOnline;
UPDATE MEMB_INFO
SET memb__pwd = 'nueva_contraseña_en_texto_plano'
WHERE memb___id = 'cuenta_objetivo';
Atenção: Muchos servidores almacenan contraseñas en texto plano en la columna memb__pwd. Otros aplican hash MD5 o SHA1. Verifica el método usado por tu panel web antes de actualizar directamente por SQL para evitar incompatibilidades al iniciar sesión.

4. Monitoreo de Logs de GM

4.1 La Tabla GMCommand_Log

MuServer Season 6 registra todos los comandos ejecutados por GMs en la tabla GMCommand_Log:

USE MuOnline;
SELECT TOP 100
    GM_Account,
    GM_Character,
    Command,
    Target_Character,
    CommandTime
FROM GMCommand_Log
ORDER BY CommandTime DESC;

4.2 Filtrar Comandos Sospechosos

Para auditar el uso de /additem o /addzen en las últimas 24 horas:

USE MuOnline;
SELECT *
FROM GMCommand_Log
WHERE CommandTime >= DATEADD(HOUR, -24, GETDATE())
AND (Command LIKE '%additem%' OR Command LIKE '%addzen%')
ORDER BY CommandTime DESC;
Dica: Configura un SQL Server Agent Job para exportar este reporte diariamente a una tabla de auditoría separada. Esto ayuda a detectar abusos de permisos por parte del staff de forma temprana.

5. Configuración de Comandos Personalizados

5.1 El Archivo GMCommands.ini

En algunas builds de MuServer, los comandos disponibles por nivel se definen en GameServer/Data/GMCommands.ini:

[Level1]
/move=1
/post=1
/notice=1
/mapinfo=1

[Level2]
/kick=1
/ban=1
/goto=1
/call=1
/setstat=1

[Level3]
/additem=1
/resetchar=1
/setlevel=1
/addzen=1
/addpoint=1
/serverinfo=1

Añade o elimina entradas según tu política de administración. Reinicia GameServer.exe después de cualquier cambio.

5.2 El Comando /serverinfo

Usa /serverinfo para mostrar información del servidor directamente en el juego:

/serverinfo

Devuelve: versión del servidor, número de jugadores en línea, tiempo de actividad y mapa actual. Disponible por defecto en Level 3.


6. Buenas Prácticas de Administración

6.1 Segmentación de Roles → No des Level 3 a todos los miembros del staff. Usa Level 1 para moderadores de chat, Level 2 para moderadores en el juego y Level 3 solo para administradores.

6.2 Cuenta GM dedicada → Cada miembro del staff debe tener su propia cuenta GM. Nunca compartas la cuenta principal del administrador.

6.3 Rotación de Contraseñas → Cambia las contraseñas de las cuentas GM mensualmente y siempre que un miembro salga del equipo:

USE MuOnline;
UPDATE MEMB_INFO
SET memb__pwd = 'nueva_contraseña'
WHERE AccountLevel > 0;

6.4 Copia de Seguridad Antes de Intervenciones → Antes de cualquier cambio manual por SQL, haz una copia de seguridad de la tabla afectada:

SELECT * INTO MEMB_INFO_backup_20260703 FROM MEMB_INFO;
Atenção: Nunca ejecutes comandos UPDATE o DELETE sin cláusula WHERE en la base de datos MuOnline. Un comando sin filtro puede corromper todos los registros de la tabla de forma simultánea.

Resolución de Problemas

Problema: El comando GM no funciona en el juego

  1. Verifica AccountLevel en MEMB_INFO por SQL
  2. Confirma GMCommand=1 en GameServer.ini
  3. Pide al jugador que cierre sesión y vuelva a entrar
  4. Revisa los registros en GameServer/Logs/GMCommand.log

Problema: /additem devuelve el ítem equivocado

  • Consulta la tabla ItemList en la base de datos o el archivo GameServer/Data/Item/ItemList.ini
  • La sintaxis puede variar: algunas builds usan /item [tipo] [índice] [nivel]

Problema: El baneo por SQL no funciona

  • Confirma que bloc_code se guardó como 'Y' (mayúscula)
  • Desconecta al jugador por la fuerza con /kick antes del baneo
  • Verifica si tu panel web sobreescribe el campo bloc_code al sincronizar sesiones

Perguntas frequentes

¿Cuál es la diferencia entre GM Level 1, 2 y 3 en MuServer?

En MuServer Season 6, el Level 1 permite comandos básicos como /move y /post. El Level 2 añade /kick, /ban y /setstat. El Level 3 (acceso total) desbloquea /additem, /resetchar y manipulación directa de atributos. Los niveles se definen en la columna AccountLevel de la tabla MEMB_INFO en la base de datos MuOnline.

¿Cómo cambio el nivel de GM de un jugador por SQL?

Ejecuta: UPDATE MuOnline..MEMB_INFO SET AccountLevel = 3 WHERE memb___id = 'tu_cuenta'; — reemplaza el valor de AccountLevel por el nivel deseado (1, 2 o 3) y haz que el jugador cierre sesión y vuelva a entrar para que el cambio surta efecto.

El comando /additem no funciona en mi servidor, ¿por qué?

Verifica que el AccountLevel sea correcto en MEMB_INFO, que el servidor tenga GMCommand = 1 en GameServer.ini y que tu versión de MuServer soporte el comando. En algunas builds el comando equivalente es /item seguido del código del ítem.

¿Cómo banear a un jugador por tiempo limitado en vez de permanentemente?

Usa la tabla MEMB_INFO: UPDATE MuOnline..MEMB_INFO SET bloc_code = 'Y', todt_bl_dt = '2026-12-31 23:59:59' WHERE memb___id = 'cuenta_objetivo'; — el campo todt_bl_dt define la fecha de expiración del baneo. Ponlo en NULL para un baneo permanente.

EQ

Equipo ViciadosMU

Equipe editorial do ViciadosMU — portal de MU Online no ar desde 2003.

Sigue leyendo

Artículos relacionados