Minecraft21 de enero de 2026 82 vistas

Configuración Anti-Xray Paper: Guía completa para servidor de Minecraft

Configuración Anti-Xray Paper: Guía completa para servidor de Minecraft

Introducción a Anti-Xray

¿Qué es X-Ray?

X-Ray es una técnica de trampa que permite a los jugadores ver a través de bloques sólidos para localizar fácilmente minerales, cuevas, bases ocultas y otras estructuras. Esta trampa se puede realizar a través de clientes modificados, paquetes de recursos o mods.

Solución Paper

Paper incorpora nativamente un sistema anti-Xray efectivo que funciona en el lado del servidor. A diferencia de los plugins tradicionales, esta solución no requiere ninguna instalación adicional y ofrece una protección sólida contra la mayoría de las técnicas de X-Ray.

Ventajas de la Solución Nativa

Aspecto Descripción
Rendimiento Optimizado a nivel de código servidor
Compatibilidad Funciona con todos los clientes vanilla
Mantenimiento Actualizado automáticamente con Paper
Fiabilidad Sin dependencias externas
Configuración Personalizable por mundo/dimensión

Funcionamiento Técnico

Principio Básico

El anti-Xray de Paper funciona modificando los datos de chunks enviados a los clientes. En lugar de enviar los bloques reales, el servidor reemplaza algunos bloques por señuelos hasta que el jugador se acerque lo suficiente para revelarlos legítimamente.

Proceso de Revelación

Un bloque oculto se revela cuando se cumple una de las siguientes condiciones:

  • El jugador rompe un bloque adyacente
  • El jugador coloca un bloque adyacente
  • Un pistón mueve un bloque adyacente
  • Una explosión destruye un bloque adyacente
  • El agua o la lava fluyen sobre un bloque adyacente
  • El bloque entra en el campo de visión directa (raytracing activado)

Bloques Adyacentes

El sistema considera las 6 caras de un bloque (arriba, abajo, norte, sur, este, oeste). Un bloque se considera "expuesto al aire" si al menos una de sus caras toca un bloque transparente (aire, vidrio, agua, etc.).


Modos de Funcionamiento

Paper ofrece dos modos distintos, cada uno con sus ventajas e inconvenientes.

Modo Motor 1: Reemplazo Simple

Este modo reemplaza todos los bloques ocultos (no expuestos al aire) por un bloque de reemplazo único, generalmente la piedra.

Funcionamiento:

Bloque original oculto → Piedra (o bloque definido)
Bloque expuesto al aire → Permanece sin cambios

Ventajas:

  • Bajo impacto en el rendimiento
  • Consumo de memoria mínimo
  • Ancho de banda de red reducido

Inconvenientes:

  • Vulnerable a X-Ray avanzados que filtran la piedra
  • Los jugadores experimentados pueden adivinar las ubicaciones

Uso recomendado:

  • Servidores con recursos limitados
  • Gran población de jugadores
  • Servidores creativos o semi-RP

Modo Motor 2: Ofuscación Aleatoria

Este modo reemplaza los bloques ocultos por bloques aleatorios seleccionados de una lista configurable, creando un "ruido visual" que hace inútil el X-Ray.

Funcionamiento:

Bloque original oculto → Bloque aleatorio (diamante, oro, hierro, etc.)
Bloque expuesto al aire → Permanece sin cambios

Ventajas:

  • Protección máxima contra todos los tipos de X-Ray
  • Imposible distinguir entre minerales reales y falsos
  • Desalienta completamente el uso de X-Ray

Inconvenientes:

  • Impacto más alto en el rendimiento
  • Consumo de memoria aumentado
  • Ancho de banda de red incrementado

Uso recomendado:

  • Servidores de supervivencia competitivos
  • Servidores PvP/Facción
  • Servidores donde la economía de recursos es importante

Comparación Visual

Criterio Modo 1 Modo 2
Protección Básica Máxima
CPU Bajo Modrado
RAM Bajo Modrado
Red Bajo Modrado
Recomendado Casual Competitivo

Configuración Completa

Ubicación del Archivo

El archivo de configuración se encuentra en:

config/paper-world-defaults.yml      # Configuración por defecto
<world>/paper-world.yml              # Configuración específica del mundo

Estructura de Configuración

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 64
    update-radius: 2
    lava-obscures: false
    use-permission: false
    hidden-blocks:
      - copper_ore
      - deepslate_copper_ore
      - raw_copper_block
      - gold_ore
      - deepslate_gold_ore
      - raw_gold_block
      - iron_ore
      - deepslate_iron_ore
      - raw_iron_block
      - coal_ore
      - deepslate_coal_ore
      - lapis_ore
      - deepslate_lapis_ore
      - mossy_cobblestone
      - obsidian
      - chest
      - diamond_ore
      - deepslate_diamond_ore
      - redstone_ore
      - deepslate_redstone_ore
      - clay
      - emerald_ore
      - deepslate_emerald_ore
      - ender_chest
    replacement-blocks:
      - chest
      - amethyst_block
      - andesite
      - budding_amethyst
      - calcite
      - coal_ore
      - deepslate_coal_ore
      - deepslate
      - deepslate_copper_ore
      - deepslate_diamond_ore
      - deepslate_emerald_ore
      - deepslate_gold_ore
      - deepslate_iron_ore
      - deepslate_lapis_ore
      - deepslate_redstone_ore
      - diorite
      - dirt
      - emerald_ore
      - granite
      - gravel
      - iron_ore
      - oak_planks
      - smooth_basalt
      - stone
      - tuff

Parámetros Detallados

enabled

enabled: true

Activa o desactiva el anti-Xray. Establecer en false para desactivar completamente.

engine-mode

engine-mode: 2

Define el modo de funcionamiento (1 o 2). Ver la sección anterior para más detalles.

max-block-height

max-block-height: 64

Altura máxima (coordenada Y) a la que se aplica el anti-Xray. Por encima de este valor, no se realiza ninguna obfuscación. Reducir este valor mejora el rendimiento.

Valores recomendados:

  • Mundo Normal: 64 (nivel del mar)
  • Inframundo: 128 (altura total)
  • End: 0 (desactivado, pocos minerales)

update-radius

update-radius: 2

Radio de actualización de bloques cuando se revela un bloque. Un valor de 2 significa que los bloques en un radio de 2 bloques se actualizarán.

Valores:

  • 1 : Máximo rendimiento, riesgo de bloques no revelados
  • 2 : Equilibrio recomendado
  • 3+ : Máxima seguridad, impacto en el rendimiento

lava-obscures

lava-obscures: false

Si se activa, la lava se considera un bloque opaco para la obfuscación. Útil para el Inframundo pero puede causar problemas visuales.

use-permission

use-permission: false

Si está activado, los jugadores con el permiso paper.antixray.bypass no se verán afectados por el anti-Xray. Útil para los administradores durante la depuración.

bloques-ocultos

bloques-ocultos:
  - mineral_de_diamante
  - mineral_de_esmeralda
  # ...

Lista de bloques a ocultar/ofuscar. Estos bloques serán reemplazados cuando no estén expuestos al aire.

Modo 1: Estos bloques son reemplazados por piedra (o el primer bloque de bloques-de-reemplazo).

Modo 2: Estos bloques son reemplazados por un bloque aleatorio de la lista de bloques-de-reemplazo.

bloques-de-reemplazo

bloques-de-reemplazo:
  - piedra
  - pizarra
  - granito
  # ...

Lista de bloques utilizados como reemplazo.

Modo 1: Solo se utiliza el primer bloque de la lista.

Modo 2: Los bloques se eligen aleatoriamente de esta lista.


Optimización por Tipo de Servidor

Servidor de Supervivencia Vanilla

Configuración equilibrada para una experiencia de supervivencia clásica.

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 64
    update-radius: 2
    lava-obscures: false
    use-permission: false
    bloques-ocultos:
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_profundidad
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
    bloques-de-reemplazo:
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_profundidad
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
      - bloque_de_amatista
      - andesita
      - amatista_brotante
      - calcita
      - pizarra
      - diorita
      - tierra
      - granito
      - grava
      - basalto_pulido
      - piedra
      - toba

Servidor de Facción/PvP

Configuración máxima para entornos competitivos donde el fraude debe ser estrictamente evitado.

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 320
    update-radius: 2
    lava-obscures: false
    use-permission: false
    bloques-ocultos:
      - escombros_antiguos
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_profundidad
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - mineral_de_oro_del_nether
      - mineral_de_cuarzo_del_nether
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
      - cofre_trampeado
      - cofre_de_ender
      - caja_de_shulker
      - caja_de_shulker_blanca
      - caja_de_shulker_naranja
      - caja_de_shulker_magenta
      - caja_de_shulker_azul_celeste
      - caja_de_shulker_amarilla
      - caja_de_shulker_verde_lima
      - caja_de_shulker_rosa
      - caja_de_shulker_gris
      - caja_de_shulker_gris_claro
      - caja_de_shulker_cian
      - caja_de_shulker_púrpura
      - caja_de_shulker_azul
      - caja_de_shulker_marrón
      - caja_de_shulker_verde
      - caja_de_shulker_roja
      - caja_de_shulker_negra
      - barril
      - dispensador
      - dropper
      - embudo
      - generador
      - tnt
    bloques-de-reemplazo:
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_profundidad
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
      - bloque_de_amatista
      - andesita
      - amatista_brotante
      - calcita
      - pizarra
      - diorita
      - tierra
      - granito
      - grava
      - tablones_de_roble
      - basalto_pulido
      - piedra
      - toba

Servidor Económico

Configuración dirigida a los recursos de valor para proteger la economía del servidor.

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 64
    update-radius: 2
    lava-obscures: false
    use-permission: false
    bloques-ocultos:
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - escombros_antiguos
      - cofre
      - cofre_de_ender
      - generador
    bloques-de-reemplazo:
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_carbón
      - mineral_de_pizarra_de_carbón
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - pizarra
      - piedra
      - granito
      - diorita
      - andesita

Servidor de Rendimiento (Alta Población)

Configuración mínima para servidores con muchos jugadores donde el rendimiento es crítico.

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 1
    max-block-height: 48
    update-radius: 1
    lava-obscures: false
    use-permission: false
    bloques-ocultos:
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - escombros_antiguos
    bloques-de-reemplazo:
      - piedra

Configuración por Dimensión

Sobremundo (world)

Archivo: world/paper-world.yml

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 64
    update-radius: 2
    lava-obscures: false
    use-permission: false
    bloques-ocultos:
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_profundidad
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
      - bloque_de_cobre_crudo
      - bloque_de_oro_crudo
      - bloque_de_hierro_crudo
    bloques-de-reemplazo:
      - bloque_de_amatista
      - andesita
      - amatista_brotante
      - calcita
      - cofre
      - mineral_de_carbón
      - mineral_de_pizarra_de_carbón
      - mineral_de_cobre
      - mineral_de_pizarra_de_cobre
      - pizarra
      - mineral_de_diamante
      - mineral_de_pizarra_de_diamante
      - diorita
      - tierra
      - mineral_de_esmeralda
      - mineral_de_pizarra_de_esmeralda
      - mineral_de_oro
      - mineral_de_pizarra_de_oro
      - granito
      - grava
      - mineral_de_hierro
      - mineral_de_pizarra_de_hierro
      - mineral_de_lapislázuli
      - mineral_de_pizarra_de_lapislázuli
      - tablones_de_roble
      - mineral_de_redstone
      - mineral_de_pizarra_de_redstone
      - basalto_pulido
      - piedra
      - toba

Inframundo (world_nether)

Archivo: world_nether/paper-world.yml

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 2
    max-block-height: 128
    update-radius: 2
    lava-obscures: false
    use-permission: false
    hidden-blocks:
      - ancient_debris
      - chest
      - nether_gold_ore
      - nether_quartz_ore
      - gilded_blackstone
    replacement-blocks:
      - ancient_debris
      - basalt
      - blackstone
      - chest
      - gilded_blackstone
      - gravel
      - magma_block
      - nether_bricks
      - nether_gold_ore
      - nether_quartz_ore
      - netherrack
      - soul_sand
      - soul_soil

Fin (world_the_end)

Fichier : world_the_end/paper-world.yml

El End contiene pocos recursos para proteger. Por lo general, una configuración mínima o desactivada es suficiente.

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 1
    max-block-height: 0
    update-radius: 2
    lava-obscures: false
    use-permission: false
    hidden-blocks:
      - chest
      - ender_chest
      - shulker_box
    replacement-blocks:
      - end_stone

O simplemente desactivado:

anticheat:
  anti-xray:
    enabled: false

Impacto en el Rendimiento

Métricas por Modo

Métrica Modo 1 Modo 2 Sin Anti-Xray
CPU (generación de chunks) +5-10% +15-25% Base
RAM por chunk +0.1 KB +0.5-1 KB Base
Ancho de banda +2-5% +10-20% Base
Latencia de red Insignificante +1-5 ms Base

Factores que Influyen en el Rendimiento

Número de hidden-blocks

Cuanto más larga sea la lista, más pesado será el procesamiento.

# Ligero (5-10 bloques)
hidden-blocks:
  - diamond_ore
  - emerald_ore
  - gold_ore
  - ancient_debris
  - chest

# Pesado (más de 20 bloques)
hidden-blocks:
  - coal_ore
  - deepslate_coal_ore
  - copper_ore
  - deepslate_copper_ore
  # ... 20+ entradas

max-block-height

Reducir este valor disminuye significativamente la carga.

# Rendimiento óptimo
max-block-height: 48

# Equilibrado
max-block-height: 64

# Protección máxima (costoso)
max-block-height: 320

update-radius

Cada aumento multiplica el número de bloques a verificar.

# Radio 1: 6 bloques verificados
update-radius: 1

# Radio 2: 26 bloques verificados
update-radius: 2

# Radio 3: 98 bloques verificados
update-radius: 3

Optimización del Rendimiento

Para servidores con alta carga

anticheat:
  anti-xray:
    enabled: true
    engine-mode: 1          # Modo más ligero
    max-block-height: 48    # Límite bajo
    update-radius: 1        # Radio mínimo
    hidden-blocks:          # Lista corta
      - diamond_ore
      - deepslate_diamond_ore
      - ancient_debris
    replacement-blocks:
      - stone

Monitoreo del rendimiento

Utilice Spark para analizar el impacto:

/spark profiler start
# Espere unos minutos mientras los jugadores juegan
/spark profiler stop

Busque en el informe:

  • AntiXray en los hilos
  • ChunkSerializer para el impacto en la generación
  • PlayerConnection para el impacto en la red

Resolución de Problemas y Problemas Comunes

Problema: Bloques visibles brevemente antes de la obfuscación

Síntoma: Los jugadores ven los bloques reales durante una fracción de segundo al cargar los chunks.

Causa: Latencia de red o alta carga del servidor.

Soluciones:

# Aumentar la prioridad del anti-xray
update-radius: 2

# Verificar la configuración de red
# En server.properties
network-compression-threshold=256

Problema: Bloques que permanecen ocultos después de la extracción

Síntoma: Después de romper un bloque, los bloques adyacentes permanecen obstruidos.

Causa: update-radius demasiado bajo o error de versión.

Soluciones:

# Aumentar el radio de actualización
update-radius: 2

# Verificar que Paper esté actualizado
# Descargar la última versión en papermc.io

Problema: Rendimiento degradado

Síntoma: TPS bajo, lag al cargar chunks.

Soluciones:

# Reducir la carga
engine-mode: 1
max-block-height: 48
update-radius: 1

# Reducir la lista de bloques
hidden-blocks:
  - diamond_ore
  - deepslate_diamond_ore
  - emerald_ore
  - deepslate_emerald_ore

Problema: Algunos bloques no están ocultos

Síntoma: Los jugadores X-Ray ven algunos minerales.

Causa: Bloque no incluido en hidden-blocks o expuesto al aire.

Soluciones:

# Verificar que todas las variantes estén incluidas
hidden-blocks:
  - diamond_ore
  - deepslate_diamond_ore  # No olvidar la versión deepslate

Problema: Incompatibilidad con ciertos plugins

Síntoma: Los plugins de protección o economía no funcionan correctamente.

Causa: Algunos plugins interactúan con los bloques de manera no estándar.

Soluciones:

  • Actualizar el plugin afectado
  • Contactar al desarrollador del plugin
  • Agregar a los administradores al bypass:
use-permission: true

Luego otorgar el permiso paper.antixray.bypass a los administradores.

Comandos de Depuración

# Recargar la configuración (después de modificar)
/paper reload

# Verificar la configuración activa
/paper dumpplugins  # Indirectamente, verifica que Paper esté funcionando

# Perfilador del servidor
/spark profiler start
/spark profiler stop

Mejores Prácticas

Configuración Inicial

  1. Comenzar en Modo 2 para una protección máxima
  2. Ajustar según el rendimiento observado
  3. Probar con jugadores de confianza que usen X-Ray

Lista de Bloques Recomendada

Imprescindibles (todos los servidores)

  • diamond_ore / deepslate_diamond_ore
  • emerald_ore / deepslate_emerald_ore
  • ancient_debris

Recomendados (survival)

  • gold_ore / deepslate_gold_ore
  • iron_ore / deepslate_iron_ore
  • copper_ore / deepslate_copper_ore
  • lapis_ore / deepslate_lapis_ore
  • redstone_ore / deepslate_redstone_ore
  • coal_ore / deepslate_coal_ore

Contenedores (PvP/Facción)

  • chest / trapped_chest
  • ender_chest
  • barrel
  • shulker_box (todos los colores)
  • hopper
  • dispenser / dropper

Especiales

  • spawner (si es importante en tu servidor)
  • tnt (servidores PvP)
  • obsidian (bases ocultas)

Mantenimiento

  • Actualizar Paper regularmente para correcciones
  • Supervise el rendimiento con Spark o Timings
  • Pruebe después de cada actualización importante de Minecraft
  • Documente sus modificaciones en un archivo de registro de cambios

Seguridad Adicional

El anti-Xray no reemplaza otras medidas:

  • Plugin anti-trampas (Matrix, Vulcan, Grim)
  • Registros de bloques (CoreProtect, Prism)
  • Moderación activa y reportes de jugadores
  • Verificación regular de jugadores sospechosos

Recursos y Referencias

Documentación Oficial

Herramientas Útiles

Comunidad