Files
asciinevrdie/doc/task-ext-combat.md
JiWoong Sul b110b2dc53 docs: 게임 시스템 개편 계획 문서 분리
- 121KB 단일 문서를 22개 태스크 문서로 분리
- 메인 인덱스 문서 (game-system-overhaul-index.md) 생성
- Phase 1-10 태스크 문서 10개 분리
- 추가 시스템 태스크 문서 10개 분리
- 재미 요소 설계 문서 1개 분리
- 기존 문서는 archive/ 폴더로 이동
2025-12-16 19:33:57 +09:00

7.9 KiB

전투 확장: 몬스터 AI/퀘스트/버프

메인 문서: game-system-overhaul-index.md


1. 몬스터 AI/보스 패턴

1.1 일반 몬스터 AI

enum MonsterBehavior {
  aggressive,   // 공격 우선
  defensive,    // 방어 우선
  balanced,     // 균형
  berserker,    // HP 낮을수록 공격력 증가
  healer,       // 자가 회복
}

class MonsterAI {
  final MonsterBehavior behavior;
  final double skillUseChance;   // 스킬 사용 확률
  final List<MonsterSkill> skills;

  MonsterAction decideAction(BattleState state) {
    // AI 로직
  }
}

1.2 보스 몬스터 페이즈

class BossMonster {
  final String id;
  final String name;
  final List<BossPhase> phases;
  final int currentPhaseIndex;

  BossPhase get currentPhase => phases[currentPhaseIndex];
}

class BossPhase {
  final double hpThreshold;      // 이 HP% 이하일 때 다음 페이즈
  final String phaseName;        // "분노", "최후의 발악" 등
  final Map<StatType, double> statModifiers;  // 스탯 변화
  final List<BossSkill> availableSkills;
  final String? phaseStartMessage;  // "커널 패닉이 분노합니다!"
}

1.3 보스 패턴 예시

보스 페이즈 1 (100-70%) 페이즈 2 (70-30%) 페이즈 3 (30-0%)
Syntax Error Dragon 일반 공격 문법 오류 브레스 (범위) 무한 루프 (연속 공격)
Memory Leak Hydra 단일 공격 메모리 침식 (DOT) 머리 재생 (회복 + 분열)
Buffer Overflow Titan 강타 오버플로우 (즉사 위험) 시스템 붕괴 (전체 공격)
Kernel Panic Archon 패닉 공격 블루스크린 (스턴) 시스템 재부팅 (HP 회복)
Glitch God 글리치 (랜덤 효과) 차원 왜곡 (회피 불가) 존재 삭제 (다중 페이즈)

1.4 보스 스킬

class BossSkill {
  final String id;
  final String name;
  final SkillType type;
  final int cooldownTurns;      // 턴 기반 쿨타임
  final double damageMultiplier;
  final List<StatusEffect>? effects;
  final String? castMessage;    // "커널 패닉이 블루스크린을 시전합니다!"
  final int castTime;           // 시전 시간 (경고 표시용)
}

1.5 보스전 특수 메커니즘

메커니즘 설명
시전 경고 강력한 스킬 사용 전 1-2턴 경고 표시
페이즈 전환 연출 HP 임계점 도달 시 특별 애니메이션
분노 게이지 특정 보스는 분노 시 패턴 변화
약점 노출 특정 행동 후 약점 노출 (추가 데미지)
환경 효과 보스에 따라 필드 효과 (독, 화염 등)

2. 퀘스트 시스템 상세

2.1 퀘스트 구조

class Quest {
  final String id;
  final String name;
  final QuestType type;           // main, side, daily, event
  final String description;
  final List<QuestObjective> objectives;
  final QuestReward reward;
  final int requiredLevel;
  final String? prerequisiteQuestId;
}

class QuestObjective {
  final ObjectiveType type;       // kill, collect, reach, survive
  final String targetId;          // 대상 몬스터/아이템/지역
  final int targetCount;
  final int currentCount;
  final bool isCompleted;
}

2.2 퀘스트 타입

타입 설명 갱신
메인 퀘스트 스토리 진행 필수 일회성
서브 퀘스트 추가 보상 일회성
일일 퀘스트 매일 갱신 매일 자정
주간 퀘스트 매주 갱신 매주 월요일
이벤트 퀘스트 기간 한정 이벤트 기간
업적 퀘스트 장기 목표 영구

2.3 메인 퀘스트 흐름

Act I: 각성
├── [메인] 첫 번째 버그 처치
├── [메인] 버그 둥지 탐험
├── [메인] Syntax Error Dragon 처치
└── [보상] Act II 해금

Act II: 성장
├── [메인] 디버거 기사단 가입
├── [메인] 손상된 네트워크 조사
├── [메인] 배신자 추적
├── [메인] Memory Leak Hydra 처치
└── [보상] Act III 해금

... (Act III ~ V)

2.4 서브 퀘스트 예시

퀘스트명 목표 보상
백전용사 몬스터 100마리 처치 골드 1000, 칭호
수집가 무기 10종 획득 희귀 무기 박스
생존자 사망 없이 Act I 클리어 칭호 "완벽주의자"
속도전 30분 내 레벨 10 달성 경험치 물약 x3

2.5 퀘스트 UI

┌─ 퀘스트 ────────────────────────────┐
│                                     │
│ ★ 메인 퀘스트                       │
│   ▶ 버그 둥지 탐험                  │
│     목표: 버그 둥지 도달 [진행 중]  │
│     보상: 골드 500, 경험치 1000     │
│                                     │
│ ☆ 서브 퀘스트                       │
│   ○ 백전용사 [45/100]              │
│   ○ 수집가 [3/10]                  │
│                                     │
│ 📅 일일 퀘스트 (남은 시간: 4시간)   │
│   ☑ 몬스터 30마리 처치 [완료]      │
│   ☐ 크리티컬 10회 [7/10]           │
│   ☐ 레벨업 1회 [0/1]               │
│                                     │
└─────────────────────────────────────┘

3. 버프/디버프 시스템

3.1 버프/디버프 구조

class StatusEffect {
  final String id;
  final String name;
  final EffectType type;          // buff, debuff
  final EffectTarget target;      // self, enemy
  final Duration duration;        // 지속 시간
  final int stacks;               // 중첩 횟수
  final int maxStacks;            // 최대 중첩
  final Map<StatType, double> modifiers;
}

3.2 버프 목록

버프명 효과 지속 시간 획득 방법
공격력 증가 ATK +20% 30초 스킬, 물약
방어력 증가 DEF +20% 30초 스킬, 물약
크리티컬 증가 CRI +10% 30초 스킬, 물약
회피 증가 EVA +10% 30초 스킬
재생 초당 HP 1% 회복 10초 스킬
경험치 부스트 EXP +50% 5분 물약, 이벤트
골드 부스트 GOLD +50% 5분 물약, 이벤트
무적 피해 면역 3초 스킬
분노 ATK +50%, DEF -20% 10초 스킬, 종족 특성

3.3 디버프 목록

디버프명 효과 지속 시간 발생 원인
초당 HP 2% 손실 5초 몬스터 공격
출혈 초당 HP 1% 손실 10초 크리티컬 피격
화상 초당 HP 3% 손실 3초 화염 공격
둔화 공격 속도 -30% 5초 몬스터 스킬
약화 ATK -20% 10초 보스 스킬
취약 DEF -30% 10초 보스 스킬
스턴 행동 불가 2초 보스 스킬
침묵 스킬 사용 불가 5초 보스 스킬
저주 회복량 -50% 15초 언데드 공격

3.4 버프/디버프 UI

┌─ 상태 효과 ─────────────────────────┐
│                                     │
│ 버프:                               │
│ [⚔️+20%] [🛡️+15%] [💨재생]          │
│  25초     18초      5초             │
│                                     │
│ 디버프:                             │
│ [🩸출혈] [⚡스턴]                    │
│  3초      1초                       │
│                                     │
└─────────────────────────────────────┘