Explosionsschaden deaktivieren
Methodenvergleich
Wähle den Schutz passend zum Schadenspfad. Normale Entity-/Projektil-Explosionen verwenden Bukkits EntityExplodeEvent; das EliteMobs-WorldGuard-Flag leert dessen Blockliste bei erfassten Elites/Projektilen. Simulierte Explosionen und Skripte können Blöcke direkt verändern. Regeneration repariert erfasste Schäden und ist kein allgemeiner Blockschutz.
Blockschaden deaktivieren
Mit gamerule
/gamerule mobGriefing false steuert Vanilla-Mob-Griefing. Direkte Blockänderungen durch Plugins oder Skripte werden dadurch nicht abgefangen.
Mit WorldGuard
Installiere EliteMobs und WorldGuard und setze elitemobs-explosion-block-damage in der Region auf deny. Dies schützt vor dem oben beschriebenen normalen Explosionsereignis. Beliebige Lua-/EliteScript-Blockänderungen werden nicht abgefangen; auch simulierte Explosionen sind nicht generell abgedeckt. Prüfe die tatsächlich verwendete Fähigkeit im geschützten Bereich.
EliteMobs-Feuerbälle daran hindern, Blöcke zu beschädigen
Integrierte Powers sind Lua-Skripte unter plugins/EliteMobs/powers/. Ihre vordefinierten Registereinträge werden nach dem Einlesen eigener Powers erneut angewendet. Eine YAML-Metadatendatei mit isEnabled: false deaktiviert daher keine integrierte Power. Entferne unerwünschte Powers aus Bossdefinitionen und den Pools für natürliches Spawnen in EliteMobPowers.yml. Bei einer eigenen Lua-Power können YAML-Metadaten mit demselben Basisdateinamen das Laden deaktivieren; siehe eigenständige Lua-Powers. Soll eine Explosions-Power aktiv bleiben und trotzdem das Gelände schützen, wähle die Schutzmaßnahmen danach, ob sie eine erfasste normale Projektil-Explosion oder direkte Blockänderungen verwendet.
EliteMobs-Explosionsregeneration konfigurieren
Bearbeite plugins/EliteMobs/config.yml. Bei aktivierter Regeneration (Standard) beginnt die Reparatur erfasster Blöcke nach etwa einer Minute. Ausnahmen und regionale Regenerationsflags gelten weiterhin.
Übernimmt der Handler eine Explosion von einem Elite, einem erfassten Projektil oder einer simulierten Explosion, entfernt EliteMobs die Blöcke selbst und leert die Blockliste der normalen Explosion. So werden nur die Blöcke zerstört, die EliteMobs erfasst hat. Ein Plugin, das das EliteExplosionEvent abbricht, bricht den gesamten Blockschaden der Explosion ab.
Reparaturen stellen einen Block pro Tick wieder her, die untersten Blöcke zuerst. Eine Entität, die in einem wiederhergestellten Block steht, wird darauf angehoben; ist dieser Weg blockiert, wartet die Reparatur und versucht es im nächsten Tick erneut. Wird eine Welt entladen, stellt EliteMobs zuerst alle ausstehenden Blöcke auf einmal wieder her; lassen sich einige trotzdem nicht setzen, wird das Entladen abgebrochen. Instanzierte Dungeon-Welten, die gerade gelöscht werden, überspringen diesen Schritt.
doExplosionRegen: Setze dies auffalse, um diese Regenerationsverarbeitung zu deaktivieren. Normale Explosionen können Blöcke weiterhin ohne Reparatur zerstören. Simulierte/skriptgesteuerte Explosionen über diesen Handler kehren vor ihrer direkten Blockentfernung zurück.doRegenerateContainers: Setze dies auffalse, um Container aus den vom Handler übernommenen Explosionen herauszuhalten, sodass sie weder zerstört noch wiederhergestellt werden. Wird der Handler umgangen, etwa mitdoExplosionRegen: falseoder mit dem aufdenygesetzten Flagelitemobs-explosion-regen, können normale Explosionen Container weiterhin zerstören.
Andere Explosions-/Feuer-Powers
EliteMobs liefert mehrere weitere Powers aus, die Explosionen oder Feuer verursachen. Dies sind Lua-Skripte im Ordner plugins/EliteMobs/powers/:
Ender-Drachen-Powers:
ender_dragon_aimed_fireball.luaender_dragon_disco_fireballs.luaender_dragon_fireball_bombardment.luaender_dragon_ender_fireball_bombardment.lua
Andere Explosions-Powers:
gold_explosion.luaarrow_fireworks.luafireworks_barrage.lua
Feuerbasierte Powers:
firestorm.luaflame_pyre.luaflamethrower.luaattack_fire.lua
Prüfe das Skript jeder Power, bevor du eine Schutzregel auswählst. Aktivierte Regeneration verhindert den ursprünglichen Blockschaden nicht. Änderungen an einer Power ändern keine unabhängigen Skripte, die ähnliche Effekte erzeugen.
Regionale Explosionssteuerung (WorldGuard erforderlich)
Installiere beide Plugins und erstelle eine WorldGuard-Region für den Bereich. Verwende für erfasste normale Explosionen:
/region flag <region-name> elitemobs-explosion-block-damage deny
Fehlerbehebung
Prüfe, ob die konkrete Fähigkeit das normale Ereignis oder direkte Blockänderungen nutzt. Kontrolliere bei normalen Ereignissen Regionsabdeckung, verweigertes Flag und geladene Plugins. Prüfe bei fehlender Reparatur doExplosionRegen, Regenerationsflags und Container-Ausnahmen. Eine erfolgreiche Reparatur beweist keine Verhinderung der Zerstörung.