Saltar al contenido principal

Desactivar el daño por explosiones

Comparación de métodos​

Elige el control según la ruta del daño. Las explosiones nativas de entidades/proyectiles usan EntityExplodeEvent; el flag WorldGuard de EliteMobs vacía su lista de bloques para élites/proyectiles registrados. Las explosiones simuladas y los scripts pueden modificar bloques directamente. La regeneración repara daños registrados; no es una protección general.

Desactivar el daño a bloques​

Usando gamerule​

/gamerule mobGriefing false controla el daño vanilla de mobs al entorno. No intercepta cambios directos de bloques de plugins o scripts.

Usando WorldGuard​

Con EliteMobs y WorldGuard instalados, establece elitemobs-explosion-block-damage en deny en la región. Protege la ruta de explosiones nativas registradas descrita arriba. No intercepta cambios arbitrarios de bloques Lua/EliteScript ni todas las explosiones simuladas. Comprueba el poder concreto en el área protegida.

Evitar que las bolas de fuego de EliteMobs dañen los bloques​

Los poderes integrados son scripts Lua en plugins/EliteMobs/powers/. Sus entradas de registro predefinidas se vuelven a aplicar después de descubrir los archivos personalizados, por lo que añadir un archivo YAML de metadatos con isEnabled: false no los desactiva. Elimina los poderes que no quieras de las definiciones de jefes y de las listas de aparición natural de EliteMobPowers.yml. En un poder Lua personalizado, un YAML de metadatos con el mismo nombre base puede desactivar la carga; consulta los poderes Lua independientes. Para mantener activo un poder de explosión y proteger el terreno, elige los controles según use una explosión nativa de proyectil registrado o cambios directos de bloques.

Configurar la regeneración de explosiones de EliteMobs​

Edita plugins/EliteMobs/config.yml. Con regeneración activa (por defecto), los bloques registrados empiezan a repararse tras aproximadamente un minuto; siguen aplicándose exclusiones y flags regionales.

Cuando el sistema se encarga de una explosión de un elite, de un proyectil rastreado o de una explosión simulada, EliteMobs elimina los bloques por sí mismo y vacía la lista de bloques de la explosión nativa, de modo que solo se destruyen los bloques que ha registrado. Un plugin que cancele el EliteExplosionEvent cancela todo el daño a bloques de esa explosión.

Las reparaciones restauran un bloque por tick, empezando por los más bajos. Una entidad que esté dentro de un bloque que se está restaurando se eleva hasta quedar encima; si ese camino está bloqueado, la reparación espera y vuelve a intentarlo en el siguiente tick. Cuando se descarga un mundo, EliteMobs restaura primero de golpe sus bloques pendientes; si algunos siguen sin poder colocarse, se cancela la descarga. Los mundos de mazmorras instanciadas que se están eliminando omiten este paso.

  • doExplosionRegen: Usa false para desactivar este sistema de regeneración. Las explosiones nativas aún pueden destruir bloques sin repararlos. Las explosiones simuladas o de scripts que usan este sistema terminan antes de eliminar bloques directamente.
  • doRegenerateContainers: Usa false para dejar los contenedores fuera de las explosiones que gestiona el sistema, de modo que no se destruyen ni se restauran. Cuando se omite el sistema, por ejemplo con doExplosionRegen: false o con el flag elitemobs-explosion-regen en deny, las explosiones nativas aún pueden destruir contenedores.

Otros poderes de explosión/fuego​

EliteMobs incluye varios otros poderes que causan explosiones o fuego. Estos son scripts de Lua en la carpeta plugins/EliteMobs/powers/:

Poderes del Dragón del End:

  • ender_dragon_aimed_fireball.lua
  • ender_dragon_disco_fireballs.lua
  • ender_dragon_fireball_bombardment.lua
  • ender_dragon_ender_fireball_bombardment.lua

Otros poderes de explosión:

  • gold_explosion.lua
  • arrow_fireworks.lua
  • fireworks_barrage.lua

Poderes basados en fuego:

  • firestorm.lua
  • flame_pyre.lua
  • flamethrower.lua
  • attack_fire.lua

Examina el script de cada poder antes de elegir una regla de protección. Activar la regeneración no impide el daño inicial a los bloques, y cambiar un poder no cambia otros scripts que produzcan efectos similares.

Control regional de explosiones (requiere WorldGuard)​

Instala ambos plugins y crea una región WorldGuard que cubra el área. Para las explosiones nativas registradas, ejecuta:

/region flag <region-name> elitemobs-explosion-block-damage deny

Solución de problemas​

Comprueba si el poder usa el evento nativo o modifica bloques directamente. En eventos nativos, verifica la cobertura de la región, el flag denegado y la carga de ambos plugins. Si no hay reparación, revisa doExplosionRegen, flags de regeneración y exclusiones de contenedores. Reparar daños no demuestra que se hayan evitado.