본 문서는 핵심 루프 의 한 단계 아래 시스템 정의다. 한 번의 출정(런)이 어떤 단계로 구성되며, 각 단계에서 무엇이 결정되고 무엇이 저장·손실되는지를 정의한다.
이 시스템의 핵심
런은 로비 출발 → 맵 활동 → 결과 정산까지의 하나의 세션 이며, 반드시 세 가지 종료 사유 중 하나로 끝난다.
탈출 성공/사망/시간 초과가 자산 보존 여부 를 가른다 — 휴대는 잃을 수 있고, 창고와 메타 성장은 잃지 않는다.
탈출 지점에서 몇 초를 버티는가 가 런의 마지막 압박이다 — 점유 중 몹이 달려온다.
flowchart LR
subgraph PREP [🏠 출정 전 준비]
P[NPC · 인벤토리 · 미션]
end
subgraph TRANSIT [✨ 진입]
T[씬 전환 연출]
end
subgraph RUNZONE [⚔️ 런 중 행동]
R[탐색 · 전투 · 루팅 · 생존]
end
subgraph RESULT [🎯 종료 사유]
S[탈출 성공]
D[사망]
O[시간 초과]
end
L[로비 복귀]
P -->|진입로 상호작용| T --> R
R -->|탈출 지점 점유 n초| S
R -->|HP 0| D
R -->|세션 타이머 만료| O
S -->|SaveGame true| L
D -->|SaveGame false| L
O -->|SaveGame false| L
classDef prep fill:#e0f2fe,stroke:#0284c7,stroke-width:2px,color:#075985
classDef transit fill:#ede9fe,stroke:#7c3aed,stroke-width:2px,color:#4c1d95
classDef run fill:#fef3c7,stroke:#d97706,stroke-width:2px,color:#78350f
classDef ok fill:#bbf7d0,stroke:#16a34a,stroke-width:2.5px,color:#14532d
classDef ng fill:#fecaca,stroke:#dc2626,stroke-width:2.5px,color:#7f1d1d
classDef neutral fill:#f1f5f9,stroke:#64748b,stroke-width:2px,color:#0f172a
class P prep
class T transit
class R run
class S ok
class D,O ng
class L neutral
linkStyle 2 stroke:#16a34a,stroke-width:2.5px
linkStyle 3 stroke:#dc2626,stroke-width:2.5px
linkStyle 4 stroke:#dc2626,stroke-width:2.5px
원칙 규칙 의미 단일 세션 단위 로비 출발 → 정산 복귀가 하나의 런 런을 중단하거나 재개할 수 없다 종료 사유는 셋 탈출 성공 / 사망 / 시간 초과 사유에 상관없이 반드시 로비로 돌아온다 휴대와 창고는 다르다 휴대(런용)는 잃을 수 있고 창고(거점용)는 항상 유지 무엇을 들고 갈지가 핵심 결정이다 시간이 압박한다 맵·스테이지별 GameTime 카운트다운 깊이 파밍할수록 탈출 여유가 줄어든다 메타는 살아남는다 사망해도 창고·Status/Stat·숙련도·미션·NPC 평판·스킬 유지 런 실패가 모든 것을 리셋하지 않는다
종료 사유 휴대 인벤토리 창고 메타 성장 코드 탈출 성공 전부 보존 변동 없음 유지 SaveGame(true)사망 전부 손실 , 빈 인벤토리로 복귀변동 없음 유지 SaveGame(false)세션 시간 초과 전부 손실 (사망 동일)변동 없음 유지 SaveGame(false)자발적 포기·강제 종료 전부 손실 (사망 동일)변동 없음 유지 SaveGame(false)
메타 성장 보존 범위: 창고 자산 / Status·Stat / 숙련도 / 미션 진행 / NPC 평판 / 스킬·진화 .
장착 슬롯에 올라가 있던 아이템도 휴대에 포함된다 — 사망 시 같이 손실.
로비는 다음 런을 준비하는 거점이다. 출정 전 단계에서는 다음 행동이 가능하다.
NPC / 시설 가능한 행동 대장장이 (대장간) 무기·장비 수리, 크래프팅, 파츠 조립 (모루) 보부상 (잡화상) 잡템 매매 약초상 (약초방) 치료·회복 관련 거래 주막 아줌마 (개인 아지트) 창고 사용, 휴식, 도깨비 탈출 복귀 지점 진입로 인게임 진입 트리거
초기에는 진입로가 1개, 게임 진행도에 따라 추가 진입로가 해금된다.
모든 NPC는 미션 제공·진행·완료 기능을 함께 가진다.
플레이어는 진입로와 상호작용하기 전에 다음을 결정한다.
어떤 무기·방어구·파츠를 장착할지.
어떤 소모품(Utility)·재료(Material)를 인벤토리에 넣고 갈지.
화폐(Money)를 얼마나 가져갈지.
어떤 미션을 활성 상태로 들고 갈지.
로비 진입로와 상호작용하면 씬 전환 연출 (컨셉 일러스트 또는 단순 애니메이션)이 재생된 뒤 런 씬으로 들어간다.
진입로별로 컨셉이 다르다.
기본 진입로: 수풀에 우거진 마을 입구.
추후 진입로: 도깨비 컨셉의 “거울”, “도자기” 등.
씬 전환 동안 게임 타이머는 시작되지 않는다.
실제 런 씬: Assets/01_Game/Scenes/3DGameScene.unity.
런 씬 안에서 플레이어가 수행할 수 있는 행동을 축별로 정의한다.
축 내용 연결 시스템 탐색 베이스맵 위의 모듈·존을 이동하며 상자·낱개 아이템·NPC 발견 맵 모듈 시스템 전투 공격·방어·패링·구르기·치명타. 스태미너·HP 관리 전투 시스템 루팅 발견한 아이템의 등급·수량 확정, 인벤토리 적재 아이템·드랍·루팅 시스템 생존 HP·Stamina·Hunger·Thirst 관리 캐릭터 스테이터스 시스템 미션 진행 미션 조건 충족 (사냥, 아이템 수집 등) 미션 시스템 탈출 결정 지금 탈출할지, 더 깊이 들어갈지 판단 탈출 (이 문서 §4)
스탯 의미 0이 되면 HP생명력 사망 처리 (§5.2) Stamina행동 자원 (공격·방어·구르기 소모) 일시적 행동 불능, 회복 대기 Hunger허기 단계 페널티 후 HP 도트 Thirst갈증 단계 페널티 후 HP 도트
참고
확정 (2026-05-21) — 코드 구현 채택 : Hunger/Thirst는 단계형 페널티로 운영된다.
게이지 효과 50% 이하 (Phase 1) 스태미너 회복 속도 저하 25% 이하 (Phase 2) 이동속도 저하 (Thirst) / 무게 페널티 (Hunger) 0% (DoT) HP 도트 데미지 (dotDamagePerSecond = 5f 초당)
감소량은 baseDecayPer10s (10초당)이며 다음 조건이 추가 감소를 만든다.
조건 추가 감소 질주 (Sprint) 활성화 시 가산 과적 (Overweight — 무게 > 한도) 활성화 시 가산 환경 (Desert, Volcano, HeatDebuff, PoisonDebuff) 환경/디버프에서 별도 추가
Grit(근성) 스탯 이 페널티 감소율을 줄이는 용도로 코드에 TODO로 남아 있다 — 8번째 스테이터스 후보.
런 시작과 동시에 GameTimer가 카운트되며, GameTime(초)에 도달하면 자동 종료된다.
타이머 만료는 탈출 실패 와 동일하게 처리된다 (모든 자산 손실).
GameTime은 맵·스테이지별로 차등 운영한다 (확정).
탈출은 런의 모든 종료 사유 중 유일한 성공 경로 다.
루트 트리거 로비 복귀 지점 물리적 탈출 입구 또는 맵에 배치된 통로형 장치와 상호작용 로비 (마을 입구) 도깨비 탈출 도깨비 탈출 아이템 소모 (드랍·1회 소모형) 현재는 일반 로비. 추후 주막 아지트 내부로 분기
탈출 지점에 도달해 상호작용을 시작한다.
n초 동안 해당 지점을 점유해야 탈출이 확정된다.
점유 중 일정 확률(n%)로 화면 밖에서 해당 지역 태그에 맞는 몬스터가 생성되어 달려온다.
점유 시간이 끝나면 EscapeInteractable.OnCompleteInteraction 호출 → 결과 팝업(성공) → SaveGame(true) → 로비 씬 전환.
한 세션에 탈출 지점은 한 곳만 활성화된다.
시작 지점에서 가장 가까운 탈출 후보는 후보에서 제외한다 (의도적 동선 강제).
탈출 모듈은 몹 모듈과 겹칠 수 있다 (탈출 시도 중 교전 가능성).
도깨비 탈출 루트는 도깨비 아이템을 가진 상태에서만 사용 가능하며, 아이템 사용 시 소모된다.
항목 의미 결정 시점 탈출 점유 시간 (초)탈출 지점 점유 필요 시간 밸런싱 단계 추격 몹 생성 확률 (%)점유 중 화면 밖 몹 스폰 확률 밸런싱 단계 세션 시간 (초)GameTimer.GameTime 값밸런싱 단계, 스테이지별 차등
▶ 탈출 vs 파밍 — 마지막 압박
플레이어가 세션 남은 시간 2분, 인벤토리 여유 4칸인 상태에서 탈출 지점을 발견한다.
바로 탈출하면 현재 자산은 안전하다. 그러나 근처 상자 2개가 아직 열려 있지 않다.
상자를 열면 좋은 아이템이 나올 수 있다 — 그러나 이동하는 사이 타이머가 더 줄어든다.
탈출 지점으로 돌아와 점유를 시작하면 화면 밖에서 몹이 스폰될 수 있다.
체력이 낮은 상태라면 전투 한 번이 사망으로 이어져 모든 자산을 잃는다.
결과 팝업(성공) 표시.
SaveGame(true) 호출 — 런 중 획득한 모든 자산이 캐릭터/창고 자산으로 영구 반영된다.
로비 씬으로 전환. 진입로 위치는 탈출 루트에 따라 다르다.
플레이어 HP가 0이 되면 GameScene.PlayerDie 호출.
사망 처리 순서:
플레이어 컨트롤 분리 (PlayerManager.DisconnectPlayer).
사망 애니메이션 재생.
런타임 스탯 0 처리 (HP/Stamina/Hunger/Thirst = 0).
게임 타이머 종료 (GameTimer.End()).
사망 원인 기록(PlayerHpLossRecord)을 결과 팝업에 전달.
결과 팝업(실패) 표시, SaveGame(false) 호출 — 런 중 획득 자산 전부 손실, 메타 성장 유지.
복귀 후 휴대 인벤토리는 완전 빈 상태 (시작 아이템 없음).
로비 씬으로 전환.
GameTimer가 GameTime에 도달하면 자동 종료.
사망과 동일하게 SaveGame(false) → 로비 씬.
별도 사망 연출은 없다 (현재 구현 기준).
탈출 성공: 사용한 탈출 루트에 따라 마을 입구 또는 주막에서 시작.
실패(사망·시간초과): 로비 기본 시작 지점.
복귀 후 즉시 다음 출정 전 준비 단계로 들어간다.
미션 진행 상태, 메타 성장, 창고 자산은 결과와 무관하게 유지되어 있다.
시스템 연결 지점 인벤토리·창고 출정 전 휴대↔창고 정리, 런 종료 시 보존/손실 처리. 맵 모듈 런 씬 구조, 탈출 지점 배치, 몬스터 스폰. 아이템·루팅·드랍 런 중 루팅 결과 인벤토리 적재, 도깨비 탈출 아이템 드랍 처리. 전투 런 중 행동 축의 핵심. 탈출 지점 점유 중 교전 가능성. 캐릭터 스테이터스 HP·Stamina·Hunger·Thirst 런타임 자원 관리, 사망 조건. 미션·NPC·상인 출정 전 준비 NPC 행동, 미션 진행 상태 보존.
Hunger/Thirst 0 도달 시 HP DoT 이외 추가 효과 (행동 불능, 시야 왜곡 등) 도입 여부.
도깨비 탈출 아이템의 획득 방법·획득 가능 횟수 (현재는 드랍).
진입로별 세션 시간 차등 검토 시점.
탈출 점유 시간·추격 몹 스폰 확률의 기준 값 (밸런싱 단계).