2.4 KiB
2.4 KiB
[TECH-REPORT] Skybound Boss Battle Architecture (v1.0)
Date: 2026-04-22
Author: Antigravity (Dev Lead)
Status: COMPLETED / STABLE
1. 개요 (Overview)
Skybound Protocol의 8단계 캠페인 시스템 완성을 위한 '데이터 주도형 보스 전투 시스템'의 구현 상세를 기록한다. 본 시스템은 하드코딩된 보스 로직을 탈피하고, 외부 레지스트리 기반의 페이즈 제어 및 플레이어 숙련도(Mastery)에 따른 최종 보스 분기 로직을 핵심으로 한다.
2. 주요 구현 사항 (Key Implementations)
2.1 기체별 데미지 감쇄 시스템 (Damage Mitigation)
- 목적: 기체(Airframe)별 개성을 강화하고 생존 전략의 차별화 제공.
- 로직:
CombatSystem.ts내 피격 판정 시GAME_BALANCE의 감쇄율 적용. - 수치:
- FALCON: 탄환 -17% / 충돌 -34%
- RAYCE: 탄환 -13% / 충돌 -26%
2.2 보스 레지스트리 아키텍처 (Boss Registry)
- 파일:
src/features/game/config/bossRegistry.ts - 역할: 스테이지별 보스 데이터(이름, ID, 페이즈 구성, 패턴 밀도)의 Single Source of Truth.
- 특징:
resolveNextPhase()유틸리티를 통해 HP 임계값, 부하 기체 전멸(MINIONS_CLEARED), 부품 파괴 등 다양한 조건에 따른 동적 페이즈 전환 지원.
2.3 최종 보스 분기 로직 (Mastery Branching)
- 위치:
StageDirectorSystem.ts->instantiateBoss() - 조건: 인게임 모든 업그레이드(6종)가 **Level 10 (Mastery)**에 도달했는지 체크.
- 분기:
- Normal: 험프티 덤프티 (Humpty Dumpty)
- Mastery: 디바인 램파트 (Divine Rampart) - 기본 체력 1.5배 증가 및 4단계 페이즈 구성.
3. 데이터 구조 (Data Structure)
export interface BossPhase {
phaseIndex: number;
attackPatterns: Pattern[];
transformationTrigger: 'HP_THRESHOLD' | 'ALL_PARTS_DESTROYED' | 'MINIONS_CLEARED' | null;
hpThreshold: number | null;
}
4. 향후 유지보수 가이드 (Maintenance)
- 보스 추가:
bossRegistry.ts의BOSS_REGISTRY배열에 신규BossDefinition을 추가하는 것만으로 신규 보스 및 페이즈 설계 가능. - 밸런스 조정:
balance.ts의PLAYER.AIRFRAMES섹션에서 감쇄율 수치 즉시 조정 가능.
Approval Status: 🫡 (Kodari Approved)