Files
asciinevrdie/doc/task-ext-events.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.2 KiB

이벤트/알림 시스템

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


1. 이벤트 시스템

1.1 이벤트 종류

이벤트 타입 주기 지속 시간
일일 보너스 매일 접속 시
주간 보스 매주 일요일 24시간
시즌 이벤트 시즌별 2-4주
기념일 이벤트 특정 날짜 1-7일
돌발 이벤트 랜덤 1-2시간

1.2 이벤트 구조

class GameEvent {
  final String id;
  final String name;
  final EventType type;
  final DateTime startTime;
  final DateTime endTime;
  final List<EventReward> rewards;
  final List<EventQuest> quests;
  final EventBonuses? bonuses;
}

class EventBonuses {
  final double expMultiplier;     // 경험치 배율
  final double goldMultiplier;    // 골드 배율
  final double dropRateBonus;     // 드롭률 보너스
}

1.3 시즌 이벤트 예시

시즌 테마 특별 콘텐츠
버그 헌팅 시즌 특별 몬스터, 봄 한정 장비
여름 핫픽스 페스티벌 경험치 2배, 여름 코스튬
가을 수확의 코드 골드 2배, 가을 한정 펫
겨울 시스템 동면 특별 던전, 겨울 한정 세트

1.4 이벤트 보상 구조

┌─ 신년 이벤트 ───────────────────────┐
│                                     │
│ 🎉 2025 신년 맞이 특별 이벤트       │
│    기간: 1/1 ~ 1/7                  │
│                                     │
│ ─────────────────────────────────── │
│ 📋 이벤트 미션                      │
│                                     │
│ ☑ 몬스터 100마리 처치 [100/100]    │
│   보상: 신년 무기 상자              │
│                                     │
│ ☐ 던전 5회 클리어 [3/5]            │
│   보상: 전설 물약 세트              │
│                                     │
│ ☐ 보스 처치 [0/1]                  │
│   보상: 신년 한정 칭호              │
│                                     │
│ ─────────────────────────────────── │
│ 🎁 출석 보상 (7일)                  │
│ [✓][✓][✓][✓][ ][ ][ ]             │
│  1  2  3  4  5  6  7               │
│                                     │
│ 7일 완료 보상: 신년 한정 세트       │
│                                     │
└─────────────────────────────────────┘

1.5 돌발 이벤트

이벤트 발생 확률 효과
골드 러시 5% 1시간 골드 3배
경험치 폭풍 5% 1시간 경험치 2배
보물 사냥 3% 희귀 아이템 드롭률 +100%
엘리트 침공 3% 정예 몬스터 대량 등장
행운의 시간 2% 모든 보너스 적용

2. 알림/푸시 시스템

2.1 알림 종류

카테고리 알림 기본 설정
게임 진행 레벨업 켜기
퀘스트 완료 켜기
보스 해금 켜기
업적 달성 켜기
전투 사망 켜기
희귀 아이템 획득 켜기
HP 위험 (20% 이하) 끄기
시스템 오프라인 보상 준비 켜기
일일 미션 갱신 켜기
이벤트 시작/종료 켜기
상점 갱신 끄기
소셜 (향후) 친구 요청 켜기
길드 알림 켜기

2.2 푸시 알림 (모바일)

class PushNotificationService {
  /// 로컬 푸시 알림 예약
  Future<void> scheduleNotification({
    required String title,
    required String body,
    required DateTime scheduledTime,
    String? payload,
  });

  /// 반복 알림 설정
  Future<void> scheduleRepeating({
    required String title,
    required String body,
    required RepeatInterval interval,
  });
}

enum RepeatInterval {
  hourly,
  daily,
  weekly,
}

2.3 푸시 알림 시나리오

시나리오 트리거 메시지 예시
복귀 유도 24시간 미접속 "⚔️ 버그들이 기다리고 있어요!"
오프라인 보상 8시간 경과 "🎁 오프라인 보상이 가득 찼어요!"
일일 미션 매일 오전 9시 "📋 새로운 일일 미션이 도착했어요!"
이벤트 이벤트 시작 "🎉 신년 이벤트가 시작되었어요!"
이벤트 종료 이벤트 종료 1시간 전 " 이벤트가 1시간 후 종료됩니다!"

2.4 인앱 알림

┌─ 알림 센터 ─────────────────────────┐
│                                     │
│ 오늘                                │
│ ─────────────────────────────────── │
│ 🎮 레벨 26 달성!           14:32   │
│                                     │
│ ⚔️ 디버거의 검 획득 (Epic)  14:15   │
│                                     │
│ 📋 일일 미션 완료          13:45   │
│    보상: 골드 500, 경험치 물약      │
│                                     │
│ 어제                                │
│ ─────────────────────────────────── │
│ 🏆 업적 달성: 백전용사      23:12   │
│                                     │
│ 💀 사망: 메모리 누수에 의해  21:30   │
│                                     │
│           [ 모두 읽음 ]             │
│                                     │
└─────────────────────────────────────┘

2.5 알림 설정 UI

┌─ 알림 설정 ─────────────────────────┐
│                                     │
│ 🔔 푸시 알림                        │
│    마스터 스위치    [● 켜기]        │
│                                     │
│ ─────────────────────────────────── │
│ 게임 진행                           │
│    레벨업          [● 켜기]         │
│    퀘스트 완료     [● 켜기]         │
│    업적 달성       [● 켜기]         │
│                                     │
│ 시스템                              │
│    오프라인 보상   [● 켜기]         │
│    일일 미션 갱신  [● 켜기]         │
│    이벤트          [● 켜기]         │
│                                     │
│ 방해 금지 시간                      │
│    [22:00] ~ [08:00]               │
│                                     │
└─────────────────────────────────────┘