
MCGuard - Documentación
¿Qué estás buscando?
Documentación para el cliente
Guía paso a paso para instalar MCGuard en tu ordenador y jugar.
Routemap de Configuración
Guía paso a paso para configurar y proteger tu servidor completamente.
Documentación para el servidor
Configuración avanzada, API y gestión para administradores de servidores.
Instalación del Cliente
1. Descarga la versión de MCGuard correspondiente
Dirígete a la sección de descargas y elige el archivo que coincida con tu versión de Minecraft y Modloader.
2. Instala el archivo .jar
Copia el archivo .jar descargado en tu carpeta /mods dentro del directorio de Minecraft.
%appdata%/.minecraft/mods/¡Listo para funcionar!
Inicia tu juego con el perfil correspondiente y MCGuard estará protegiendo tu sesión.
Alcance y Finalidad de MCGuard
MCGuard es una solución integral de seguridad de "lado del servidor" diseñada para garantizar la integridad técnica de las comunidades de Minecraft. Su objetivo principal es mitigar el uso de modificaciones no autorizadas y asegurar que todos los jugadores compitan en igualdad de condiciones.
A diferencia de otros sistemas, MCGuard Server valida activamente la lista de mods y recursos dinámicos, permitiendo a los administradores definir exactamente qué software está permitido en su ecosistema.
Almacenamiento Local
MCGuard guarda toda la configuración de tus servidores en el almacenamiento local del navegador. Esto significa que los datos no se comparten entre dispositivos y pueden perderse si limpias el caché. Recomendamos conectar la integración con Pastefy desde los ajustes para mantener tus configuraciones sincronizadas y con respaldo en la nube.
Capacidades del Sistema
- Modloader: Compatible con Forge 47.x para Minecraft 1.20.1. El parámetro
useModLoadercontrola si es obligatorio. - Listas de Control (White/Blacklist): Gestión granular del JAR/Mod ID permitido para conectar al servidor.
- Gestión de Resource Packs: Control de paquetes de recursos para evitar "X-Rays" basados en texturas.
- Acciones Automáticas: Kick o Ban configurable tras la detección de inconsistencias.
Configuración Visual Interactiva
No necesitas editar archivos JSON a mano. En este panel de MCGuard, puedes usar la GUI Interactiva para crear y exportar tus configuraciones de forma visual.
Instalación de MCGuard Server
Sigue estos pasos para robustecer tu servidor con la protección de MCGuard.
Paso 1: Preparación del Servidor
Asegúrate de que tu servidor esté usando Minecraft 1.20.1 con Forge 47.x. MCGuard Server actualmente soporta únicamente Forge para esta versión.
Paso 2: Instalación del JAR
Copia el archivo mcguardserver.jar descargado en la carpeta de mods de tu servidor físico o hosting.
mi-servidor/
├── mods/
│ ├── MCGuardServer-1.2.1.jar ← Instalación aquí
│ └── (otros mods...)
├── config/
└── server.propertiesPaso 3: Primer Inicio
Arranca el servidor para que MCGuard genere los archivos de configuración por defecto en config/mcguard/.
Parámetros de Configuración
El archivo principal se encuentra en config/mcguard/validation_config.json. A continuación se detallan las opciones clave:
strictMode Boolean Si está en true, cualquier mod no listado explícitamente causará la desconexión inmediata.whitelistedMods Array<String> Lista de IDs de mods autorizados (en minúscula). El cliente debe tener exactamente estos mods para pasar la validación.ignoreOptionalMods Array<String> Lista de IDs de mods que se ignoran durante la validación. El cliente puede tenerlos o no sin que afecte el resultado.whitelistedResourcePacks Array<String> Lista de nombres de resource packs autorizados (en minúscula). El cliente debe tener exactamente estos packs activos.ignoreOptionalResourcePacks Array<String> Resource packs opcionales permitidos aunque no estén en la whitelist (no causan kick).monitorResourcePackChanges Boolean Monitorea cambios en resource packs mientras el jugador está conectado. Default: true.disconnectOnResourcePackChange Boolean Desconecta al jugador si cambia su resource pack durante la sesión. Default: true.maxModsAllowed Integer Límite máximo de mods que el cliente puede tener cargados. Default: 500.maxResourcePacksAllowed Integer Límite máximo de resource packs activos en el cliente. Default: 50.actions.kickOnInvalid Boolean Expulsa al jugador si la validación falla. Default: true.actions.kickMessage String Mensaje que verá el jugador al ser expulsado. Soporta códigos de color Minecraft (§).actions.banOnMultipleViolations Boolean Banea al jugador tras múltiples infracciones. Default: false.actions.violationsBeforeBan Integer Número de infracciones acumuladas antes de aplicar el ban. Default: 3.kickMessage soporta marcadores que MCGuard Server reemplaza automáticamente: {missingMods}, {requiredMods}, {extraMods}, {missingResourcePacks}, {requiredResourcePacks}, {extraResourcePacks}.
Ejemplo de Configuración JSON (config/mcguard/validation_config.json):
{
"mcguardEnabled": true,
"strictMode": false,
"useModLoader": false,
"whitelistedMods": ["minecraft", "forge", "mcguardserver"],
"ignoreOptionalMods": ["jei", "journeymap"],
"whitelistedResourcePacks": [],
"ignoreOptionalResourcePacks": [],
"monitorResourcePackChanges": true,
"disconnectOnResourcePackChange": true,
"maxModsAllowed": 500,
"maxResourcePacksAllowed": 50,
"logging": {
"enableFileLogging": true,
"enableConsoleLogging": true,
"logPath": "logs/mcguard/",
"webhook": {
"enabled": false,
"languageFile": "es_ES.json"
}
},
"actions": {
"kickOnInvalid": true,
"kickMessage": "§c§lMods no autorizados§r§c. Contacta a los admins.",
"banOnMultipleViolations": false,
"violationsBeforeBan": 3
}
}Modelo de Datos (Clase Mod)
La clase Mod es el modelo del panel de control (frontend). Almacena la información completa de cada mod para la interfaz. El servidor valida únicamente el id del mod (string en minúscula) contra la whitelistedMods de la configuración.
Atributos de la Clase
id String Identificador único del mod en minúscula. El servidor lo usa para comparar contra la whitelist.name String Nombre interno del mod. Generalmente igual al id.title String Nombre legible por humanos mostrado en la interfaz del panel.filename String Nombre exacto del archivo JAR. Ej: mod-1.0.jar.version String Versión del mod para asegurar compatibilidad exacta.hash String Huella MD5 del archivo JAR para verificación de integridad.required Boolean Si es true, el mod es obligatorio para conectar al servidor.size String Tamaño del archivo formateado. Ej: 2.4 MB.downloadUrl String URL principal de descarga del mod.download String URL alternativa de descarga — espejo o fuente secundaria.description String Descripción breve visible en el panel de control.category String Categoría del mod. Ej: utility, performance.author String Nombre del autor o creador del mod.Estructura de Inicialización
Al crear una instancia de Mod, se espera un objeto con el siguiente esquema:
{
id: "ironchest",
name: "ironchest",
title: "Iron Chests",
filename: "ironchest-1.20.1-14.4.4.jar",
version: "14.4.4",
description: "Amplía los cofres con nuevos materiales.",
required: true,
category: "storage",
author: "ProgWML6",
hash: "a1b2c3d4e5f6...",
size: "2.4 MB",
downloadUrl: "https://example.com/mod.jar",
download: ""
}Notificaciones por Discord (Webhooks)
MCGuard permite integrar webhooks de Discord para monitorear eventos críticos en tiempo real. Esta funcionalidad es asíncrona y no afecta el rendimiento del servidor.
Configuración en validation_config.json
Añade el siguiente bloque dentro de la sección logging:
"webhook": {
"enabled": true,
"languageFile": "es_ES.json",
"onPlayerKick": "https://discord.com/api/webhooks/...",
"onPlayerJoin": "https://discord.com/api/webhooks/...",
"onMissingMods": "https://discord.com/api/webhooks/...",
"onExtraMods": "https://discord.com/api/webhooks/...",
"onResourcePackChange": "https://discord.com/api/webhooks/...",
"onValidationTimeout": "https://discord.com/api/webhooks/...",
"onSecurityTampering": "https://discord.com/api/webhooks/...",
"onCreate": "https://discord.com/api/webhooks/...",
"includePlayerUUID": true,
"includeMods": true,
"includeResourcePacks": true,
"useEmbed": true,
"colorKick": "DC354D",
"colorJoin": "28A745",
"colorViolation": "FFC107",
"colorWarning": "FF6C00"
}Eventos Disponibles
onPlayerJoin Notifica cuando un jugador supera la validación con éxito y se conecta al servidor.onPlayerKick Avisa cuando un jugador es expulsado por infracción de validación.onMissingMods
onExtraMods Detalla qué mods faltan o sobran en el cliente del jugador respecto a la whitelist.onResourcePackChange Alerta cuando un jugador cambia su resource pack durante la sesión activa.onValidationTimeout Dispara cuando el cliente no responde la validación en 30 segundos.onSecurityTampering Alerta crítica sobre manipulación de integridad detectada (firma HMAC-SHA256 inválida o nonce reutilizado).onCreate Notificación general al iniciar el servidor y cargar MCGuard correctamente.{player}, {uuid} y {details} que se reemplazan automáticamente en los mensajes.