본문으로 건너뛰기

HP 회복 시스템

v1.0 | 2026-04-02 | 초기 설계

수치 SSOT: game/data/balance_config.json (hp_recovery), game/data/shrine.json (hp_regen), game/data/pickups.json (food 아이템)


1. 설계 철학

뱀서라이크 장르 표준을 따라 기본 패시브 회복 없음. 플레이어는 음식 드롭 아이템으로만 인런 회복이 가능하며, 사당 영구 업그레이드로 소량의 패시브 재생을 해금할 수 있다.

참조 게임회복 방식우리 게임 적용
Vampire Survivors음식 드롭만 (패시브 없음)음식 드롭 채택
Brotato자연 회복 스탯 존재사당 업그레이드 형태로 채택
HoloCure음식 드롭 + 스탯하이브리드 모델

핵심 원칙: 회복은 "보상"이지 "기본권"이 아니다. 피격을 피하는 것이 1순위, 회복은 실수를 만회하는 2순위.


2. 회복 소스

2-1. 음식 드롭 (인런 주 회복원)

적 처치 시 확률적으로 드롭. 상세 드롭 테이블은 game/data/pickups.json 참조.

아이템회복량주 획득원테마
10 HP일반 적 (3%)조선 전통 떡
삼계탕25 HP엘리트 적 (5%), 타이머 (2분마다)보양식
산삼탕50 HP보스 (100%), 보물상자귀한 산삼 요리

기대 회복량 (15분 런 기준):

  • 일반 적 ~700킬 × 3% = ~21개 떡 = 210 HP
  • 엘리트 10킬 × 5% + 타이머 67회 = ~7개 삼계탕 = 175 HP
  • 보스 23킬 = 23개 산삼탕 = 100~150 HP
  • 총 기대 회복: 485535 HP (캐릭터 max HP의 3~8배)

2-2. 사당 영구 업그레이드 — "생기" (패시브 재생)

메타 진행 보상. game/data/shrine.jsonhp_regen 참조.

레벨효과비용누적 비용
1+0.5 HP/초3030
2+1.0 HP/초6090
3+1.5 HP/초90180
4+2.0 HP/초120300
5+2.5 HP/초150450

밸런스 근거: 15분(900초) × 2.5 HP/초 = 2,250 HP 최대 재생. 캐릭터 HP 100 기준 22.5회분. 실질 EHP 기여는 피격 빈도와 상쇄되므로 "생존 보험" 수준.

2-3. 기존 시스템 연동

시스템효과출처
극양 상태모든 HP 회복량 -50%yinyang.json extreme_yang.debuffs.hp_recovery_reduction
무당복 4세트극음 진입 시 즉시 HP 30% 회복 (CD 60초)equipment.json mudang_bok.bonus_4
사당 체력최대 HP +5/레벨 (최대 +50)shrine.json health
강시 캐릭터HP 0 도달 시 5초 불사 (1회)characters.json gangsi.trait

3. 밸런스 제약

3-1. 극양 패널티

극양 상태(게이지 70+)에서 모든 회복 효과가 50% 감소:

  • 떡 10 HP → 5 HP
  • 삼계탕 25 HP → 12 HP
  • 사당 재생 2.5 HP/초 → 1.25 HP/초

이는 극양의 공격 보너스(ATK +25%, DMG +30%)에 대한 리스크 밸런스.

3-2. 오버힐 불가

현재 HP가 max_health를 초과할 수 없음. 이미 health_component.gdheal() 함수가 minf(current + amount, max) 처리.

3-3. 저주 연동 (Phase 3 확장 고려)

Phase 3에서 "회복 봉인" 저주 추가 가능성 열어둠. 현재는 설계하지 않음.


4. Engineer 구현 체크리스트

  1. HealthComponent — 패시브 재생 로직 추가 (_process에서 shrine regen 적용)
  2. 극양 회복 감소 적용 — heal() 호출 전 YinyangSystem 상태 확인하여 배율 적용
  3. 음식 픽업 → heal() 연동 (기존 EventBus 시그널 패턴 사용)
  4. 사당 매니저 — hp_regen 업그레이드 읽기/적용

변경 이력

날짜버전변경 내용
2026-04-02v1.0초기 설계: 음식 드롭 + 사당 재생 + 극양 패널티