How-to: Boss erstellen
Status: Datengetriebene Boss-Encounters mit Resource-Katalog, Shared-Fallback, Phasen, Angriffen, Adds, Arena-Events und Drop-Profil.
1. Encounter-Resource anlegen
Lege unter res://Resources/Boss/ eine BossEncounterResource an und vergib eine stabile ID wie boss-<name>. Pflege Basiswerte, Archetype, Farbe, Door-Lock und optional BossVisualScene sowie PhaseTransitionVfxScene.
Jede Phase benötigt eine eindeutige ID und absteigende EnterHealthFraction. Weise ein BossMovementProfileResource, gewichtete BossAttackEntryResource-Einträge sowie optionale Spawn- und Arena-Events zu. Angriffsarten werden über AttackPatternKind ausgeführt; neue Arten brauchen zusätzlich einen Executor in BossAttackExecutors.cs und eine Registrierung in BossAttackExecutorRegistry.cs.
2. Katalog und Dungeon anbinden
- Encounter in
res://Resources/Boss/BossEncounterCatalog.treseintragen. - Passende Enemy-Definition mit
IsBoss=trueim Enemy-Katalog bereitstellen. - Bossraum aus
RoomTemplate_Boss_Example01.tscnableiten und mindestensBossSpawnMarker3Dmit stabiler ID sowie benötigteHazardAnchorMarker3D-Tags anlegen. - Room-Template im V3-Katalog registrieren.
- Sicherstellen, dass
DungeonObjectiveDefinitionFactorydieselbe Boss-Instance-ID in Enemy-Definition undRequiredBossIdsverwendet.
DungeonRun3DController lädt den Resource-Katalog über BossEncounterCatalogResource.LoadOrDefault(). Ein fehlender oder leerer Katalog fällt auf BossEncounterCatalogFactory mit Bulwark, Striker und Controller zurück. Unbekannte Encounter verwenden derzeit Striker als Laufzeit-Fallback.
3. Rewards, Replay und Authority
BossClearRewardProfileResource steuert garantierte und optionale physische Drops. Der Tod muss weiter über DungeonEnemy3D.Died zum Encounter, Objective-Tracker und Drop-Schedule gelangen. Boss-Hazards und relevante Combat-Ereignisse werden vom Replay-Pfad aufgezeichnet. Die Online-Waffenentscheidung ist serverautoritativ; die vollständige Boss-/Run-Simulation liegt weiterhin nicht vollständig auf dem Headless-Server.
Tests und manuelle Prüfung
BossEncounterTests.cs: Katalogvalidierung, Phasenreihenfolge, deterministische Angriffsauswahl, Rewards und Resource-Konvertierung.- Dungeon-/Objective-Tests: stabile IDs, Boss-Gate, Duplicate-Kills und Room-Marker.
- Manuell: Fallback und Resource-Override, alle Phasen/Attacken/Adds/Hazards, Door-Lock, Drop, Replay-Playback und Abbruch prüfen.
Verwandt: Encounters, Raum erstellen, Objectives.