16 KiB
대화로그 — EerieVillage — 2026-04-23
프로젝트: 기묘한 고을 : 조선퇴마뎐 / EerieVillage: Joseon Exorcist 조직: BurningTimes 기록 근거: C32 대화로그 기록 의무 (헌법급)
[01:05] BT5 파일럿 초기 기획 5종 작성 완료 — Phase 3-A 착수
태그: #기획 #BT5 #초기기획 #Phase3파일럿
수행 주체: 기획팀장 (PM Task 호출 경유)
작업 요지: PD님 지시 BT5 수령 — EerieVillage 본격 개발 착수 전 파일럿 단계 초기 기획 지시. 핵심 게임 룰 9개를 기반으로 초기 기획 5종 문서 작성.
산출물 (5종 · 총 509 라인):
프로젝트/EerieVillage/기획/01_게임_컨셉.md(67 라인)- 정체성 한 줄, 재미 축 3종(육성 롤러코스터·액션 플랫포머·영속 위안), 타겟 유저, 레퍼런스(Dead Cells·Hades·Vampire Survivors·Brotato), 세일즈 포인트 4종
프로젝트/EerieVillage/기획/02_코어_루프.md(101 라인)- 마을↔스테이지 플로우 다이어그램, 사망 분기 상태 보존 매트릭스, 분기 포인트 4종 감정 설계
프로젝트/EerieVillage/기획/03_진행_시스템_초안.md(121 라인)- 3축 육성 구조 (카드·아이템·특성) + 손실 범위 층화, 카드 3픽 추상 골격, 파츠 1개 교체식, 특성 영속 성장 방향
프로젝트/EerieVillage/기획/04_전투_기본_스펙.md(100 라인)- 이동·점프·공격 3액션 (PC/모바일 대응), 라이프 1 + 무적 시간 설계, PlatformerMicrogame 계승 + 근거리 공격 1종 시작
프로젝트/EerieVillage/기획/05_스테이지_구조_초안.md(120 라인)- 마을 정적 허브 + 스테이지 3단 구성(도입·전개·보스), 난이도 곡선 방향, 재도전 루프 심리
핵심 결정 (재미 축 중심):
- 재미의 축 3종 정의 — (1) 육성 롤러코스터 카타르시스 = 핵심 / (2) 액션 플랫포머 손맛 = 핵심 / (3) 영속 성장의 위안 = 보조. 참신함:일관성 = 3:7 원칙 준수
- 코어 룰 9개 전수 준수 — 특히 룰 7(라이프 1·레벨 초기화·카드 전손)의 가혹함이 축 1 낙차의 본질임을 명시. 완화 시도는 일괄 기각
- 3축 손실 범위 층화 — 카드(런 내 전손) / 아이템(유지) / 특성(유지) 3층 구조로 감정 곡선 안정화
기각안 (전 문서 공통 방향):
- 라이프·낙차·카드 전손을 완화하는 모든 변형 — 기각 (축 1 붕괴 위험)
- 하드코어·탑뷰·중간 세이브·체크포인트 변형 — 기각 (캐주얼 로그라이크 포지션 유지)
- 입력 복잡화 (복수 공격 버튼) — 기각 (카드 효과 계층에서 복잡도 담당)
- 완전 랜덤 프로시저럴 맵 — 기각 (파일럿 스코프 초과)
Phase 3-B/C로 이관된 상세 보류 항목:
- 스킬 카드 효과·리스트·시너지 체계 → Phase 3-B (system-designer·content-designer)
- 아이템 파츠 종류·효과·드롭 테이블 → Phase 3-B (content-designer)
- 특성 종류·조건·수치 → Phase 3-B (system-designer·balance-designer)
- 전투 수치(이동속도·점프·대미지·무적시간) → Phase 3-B (balance-designer + 개발팀 엔진 실측)
- 조선·퇴마 세계관 SOT·보스 네이밍 톤·마을 컨셉 → Phase 3-B (narrative-designer)
- 스테이지 수·구간 배치·보스 패턴 → Phase 3-B (level-designer)
- 모바일 터치 UX 상세 → Phase 3-B (ux-designer + BT.Framework 통합)
- BM·과금 구조·타겟 플랫폼 세부 → Phase 3-C (PD 결정)
- 아트 톤·UI 톤 → Phase 3-B (ux-designer + 외부 아트)
Agent 호출 이력:
- 전문 에이전트(system/content/level/narrative/balance/ux-designer) 추가 호출 없음.
- 사유: 본 세션 자체가 PM의
Task(기획팀장)호출 내부 컨텍스트 — Claude Code 구조상 서브에이전트의 서브에이전트 호출 경로가 기술적으로 보장되지 않음. 본 파일럿은 골격 수준이므로 팀장이 각 전문 영역 관점을 문서 내부 "상세 보류 — Phase 3-B/C" 섹션으로 명시 구조화하여 다음 단계 전문 에이전트가 연속 이어받을 수 있게 준비. - Phase 3-B 착수 시 PM이 레포 루트 세션에서 전문 에이전트를 병렬 호출하는 방식 권장.
- 사유: 본 세션 자체가 PM의
매니페스트: 2026-04-23_BT5_Plan_초기기획5종 (target_files 9건, C35-9 해제 통과)
기각안 기록 근거: C32-통합 안내 (구 P22 흡수) — 결정·설계 엔트리는 기각안 필드 필수. 각 문서 §7(또는 §8) 기각안 섹션에 2~5건 기록.
변경 이력 기록 근거: P16 산출물 추적성. 각 문서 말미 변경 이력 테이블 유지.
공유 상태: 내부 공유 (C21-① · 로컬 commit 예정). PD님 별도 "세션 공유" 지시 시 main push (C21-②).
[01:29] BT5-Dev 3단계 Unity 템플릿 선행 분석 완료 — 개발 3종 문서 작성
태그: #개발 #BT5-Dev #3단계 #템플릿분석
수행 주체: 개발팀장 (PM Task 호출 경유)
작업 요지: PD님 BT5-Dev 3단계 지시 수령 — EerieVillage 본격 개발 착수 전 Unity 2D PlatformerMicrogame 템플릿 구조·스크립트 실측 분석 + 구현 로드맵 수립. 기획팀 5종 문서 Read 선행하여 기획 방향 정합성 확보.
산출물 (3종 · 개발 디렉토리 신설):
프로젝트/EerieVillage/개발/01_템플릿_구조_분석.md(~120 라인)- Assets 디렉토리 구조 (Audio·Character·Scripts·Scenes·Prefabs·Environment·Editor 등), Scripts 6폴더 네임스페이스 분할, Packages/manifest.json 14종 주요 패키지 (Cinemachine 3.1.5·InputSystem 1.19·URP 17.3·Unity MCP), SampleScene 단일 씬, Character Sprites 15종 + Mr.Alien 교체 대상 식별, ProjectSettings 주요 설정, 특기사항 5종
프로젝트/EerieVillage/개발/02_스크립트_분석.md(~230 라인)- 스크립트 전수 36개 목록 (Core 5·Gameplay 12·Mechanics 14·Model 1·UI 2·View 2), 주요 아키텍처 패턴 4종 실측 (Simulation 이벤트 시뮬레이터·KinematicObject 물리·PlayerEnemyCollision 밟기 판정·PlatformerModel Inspector 직렬화), 재사용/교체/신규 3종 분류 (재사용 10 · 교체 5 · 신규 11), C11 개발 관점 평가
프로젝트/EerieVillage/개발/03_게임_제작_준비.md(~200 라인)- 코어 루프 구현 로드맵 (씬 구조 Additive Load·사망 분기 체인·레벨업 카드 진입점·아이템 파츠·특성 JSON), P0/P1/P2 3단계 우선순위, BT.Framework Tier 1 5종 선별 (SafeAreaBorder·Log·ValidationEx·FormatEx·EnumEx), C30·자동 sync 운영 체크리스트, 기각안 5종
주요 발견사항:
- 독자 이벤트 시뮬레이터 (
Simulation.Schedule<T>+ HeapQueue + 이벤트 풀링): Unity 표준 UnityEvent 미사용.Event<T>.OnExecute정적 Action 훅 구조로 EerieVillage 카드 효과 부착 지점으로 즉시 활용 가능 — C11 "범용성" 긍정 - Kinematic 물리 (KinematicObject.PerformMovement):
body.Cast + shellRadius + groundNormal로 플랫포머 정밀 제어. 기획 04 §4-1 "템플릿 계승" 방향 일치 — 신규 재구현 불요 - 마리오 식 밟기 판정 (PlayerEnemyCollision.willHurtEnemy = player.center.y ≥ enemy.max.y): EerieVillage "공격 키 기반 피해" 구조와 상충 — 교체 필수 (P0)
- Health.maxHP = 1 기본값: 기획 코어 룰 7 "라이프 1"과 이미 정합. i-frame 필드 추가만 필요
- 단일 씬 한계:
SampleScene.unity하나만 — 마을·전투 분리 Scene 신설 + Additive Load 구조 설계 (P0) - 공격 입력 부재: InputActions에
Player/Attack액션 신규 정의 필요 +Schedule<PlayerAttack>이벤트 체인 (P0)
핵심 결정:
- 재사용/교체/신규 분류: 재사용 10 / 교체 5 / 신규 11 → 템플릿의 70%+ 자산 계승, 로그라이크 메타 시스템(런 상태·메타 상태·카드·아이템·특성) 11종 신규
- 씬 구조 Additive Load 채택 — Single Load 대비 전환 느낌·로딩 우월 (C11 "직관성")
- 특성·아이템 저장 JSON +
Application.persistentDataPath— PlayerPrefs(구조화 부적합)·SQLite(과도) 기각 - BT.Framework Tier 1 5종 선별 도입 (P29-3 준수): SafeAreaBorder·Log·ValidationEx·FormatEx·EnumEx. 전량 도입 기각 (장르 부적합 항목 존재).
UITouchHandler·BackKeyDispatcher는 EerieVillage 개발 중 패턴 확인 후 Tier 2 승격 기안
기각안 (개발 관점):
- 템플릿 완전 제거 + 자체 구현 — 기각 (Simulation·Kinematic·Cinemachine 고품질)
- 단일 Scene 상태 기반 영역 전환 — 기각 (복잡도 과다)
- PlayerPrefs 저장 — 기각 (구조화 부적합)
- Unity 표준 Dynamic Rigidbody2D 교체 — 기각 (정밀도 열위)
- BT.Framework 16종 전량 도입 — 기각 (장르 부적합)
Agent 호출 이력:
클라이언트팀장서브에이전트 호출 없음- 사유: 본 세션 자체가 PM의
Task(개발팀장)호출 내부 컨텍스트. Claude Code 구조상 서브에이전트 재귀 호출 경로 불안정. 템플릿 실측 분석은 Read·Glob·Bash만으로 충분히 수행 가능하며, 전문 서브에이전트 호출이 필요한 깊이는 아님 - Phase 2 이상 본격 구현 착수 시 PM이 레포 루트 세션에서
게임플레이·ui-ux·테크아트·최적화전문 에이전트 병렬 호출 권장
- 사유: 본 세션 자체가 PM의
Read 실측 스크립트 (핵심 11개 본문 심층 + 주변 6개 요지 = 총 17종 이름 식별): PlayerController·GameController·Health·KinematicObject·Simulation·Simulation.Event·EnemyController·PlayerEnemyCollision·PlayerDeath·PlayerSpawn·PlatformerModel·MetaGameController·MainUIController·AnimationController·VictoryZone·HealthIsZero·EnemyDeath
Unity 프로젝트 상태:
- 경로:
E:/EerieVillage/(PD 이동 + 중복 하위 폴더 삭제 완료 2026-04-23) - 원격 push 완료:
9f689c1 - 자동 sync 배치: BT5-Dev C안
Assets/Editor/GitAutoSync/GitAutoSync.cs+scripts/unity_auto_sync.sh - C30 git 최신 상태 점검: 본 분석 착수 전
ls실측으로 Assets 전수 확인 (문서 전용 작업이므로 Unity 프로젝트 파일 수정 없음 — C30-2 "대상 프로젝트 파일 직접 수정" 아님)
기각안 기록 근거: C32-통합 안내 (구 P22 흡수) — 결정·설계 엔트리는 기각안 필드 필수. 본 엔트리 기각안 (개발 관점) 섹션 5건 기록.
변경 이력 기록 근거: P16 산출물 추적성. 각 문서 §8 또는 §9 변경 이력 테이블 유지.
공유 상태: 내부 공유 (C21-① · 로컬 commit 예정). PD님 별도 "세션 공유" 지시 시 main push (C21-②).
[BT6-Plan · ux-designer] 모바일 터치 UX·HUD 설계 완료
태그: #기획 #BT6-Plan #Phase3B #ux-designer #모바일터치 #HUD
수행 주체: ux-designer
작업 요지: BT6-Plan Phase 3-B 지시 수령 — BT5-Plan 04_전투_기본_스펙·02_코어_루프·03_게임_제작_준비 Read 선행 후 모바일 터치 UX 설계 + HUD 설계 2종 문서 작성.
산출물 (2종):
프로젝트/EerieVillage/기획/ux/01_모바일_터치_UX.md- 조작 스킴 확정 (가상 스틱 좌/점프·공격 버튼 우), 버튼 레이아웃 와이어프레임, Input System 액션 맵, 피격 3종 피드백, BT.Framework 재사용 매핑 6종, 기각안 3종
프로젝트/EerieVillage/기획/ux/02_HUD_설계.md- 정보 우선순위 3순위, 인게임 HUD 와이어프레임, 레벨업 카드 픽 UI, 마을 UI, 사망·복귀 전환 UI, 접근성 기본, BT.Framework 재사용 매핑 4종, 기각안 3종
핵심 결정 (기각안 필수 포함):
- 조작 스킴: 가상 스틱(좌) + 점프·공격 버튼(우). 스와이프 회피 기각 (오입력·라이프 1 위험)
- 레벨업 카드 픽: Time.timeScale=0 + Unscaled Time. 시간 제한 없음 기각 철회 → 시간 제한 기각 (캐주얼 포지션)
- HUD 정보 우선순위: 라이프 → 레벨·경험치 → 카드 슬롯. 미니맵 기각
- BT.Framework Tier 2 이관 3종: SafeAreaBorder·UITouchHandler·BackKeyDispatcher 신규 구현 → 개발팀 이관
기각안 6건: 터치스킴: 스와이프 회피·고정 스틱·버튼 비표시. HUD: 미니맵·카드 슬롯 크게·시간 제한 카드 픽
공유 상태: 내부 공유 (C21-①). PD님 별도 "세션 공유" 지시 시 main push (C21-②).
[02:10] BT5-Dev 2단계 Unity 프로젝트 파일 직접 Edit으로 구현 완료
태그: #개발 #BT5-Dev #2단계 #Unity_MCP_미지원_대응 #파일_직접_Edit #i-frame #공격 #스프라이트_교체
수행 주체: 개발팀장 Agent (PM Task 호출 경유)
배경 · 방향 재설계:
PD 지시 원 계획은 Claude Desktop Unity MCP. 본 Claude Code 세션은 mcp__unity-mcp__* 미지원. PD 재지시 "파일 직접 Edit으로 가능한 범위 최대 구현. PD 수동 최소화." 개발팀장 Agent가 Unity 프로젝트 텍스트 자산(YAML·JSON·C#) 직접 편집 방식으로 수행 — 커버리지 ~90% 달성.
산출물 (Unity 프로젝트 편집 — 외부 레포 E:/EerieVillage/):
- C# 스크립트 신설 2종 (+ .meta guid 할당)
Assets/Scripts/Gameplay/PlayerAttack.cs— Simulation.Event, 카드·특성 훅 확장 지점Assets/Scripts/Mechanics/AttackHitbox.cs— OverlapBoxAll 근거리 판정 박스, Inspector 노출 파라미터 5종, Gizmo 가시화, 중복 타격 방지 HashSet
- C# 스크립트 개정 3종
PlayerController.cs— m_AttackAction·attackCooldown·attackAudio·attackHitbox·facing 추가, Update에서 Schedule 발화Health.cs— invulnerableDuration 기본 0.6s, IsInvulnerable 프로퍼티, Decrement i-frame 가드, Die는 i-frame 우회PlayerEnemyCollision.cs— "위에서 밟기" 판정 폐기, i-frame 체크 후 Decrement, HealthIsZero 체인 신뢰
- Asset 편집 2종
Settings/InputSystem_Actions.inputactions— Player 맵에 Attack 액션 +<Mouse>/leftButton·<Gamepad>/rightTrigger바인딩Scenes/SampleScene.unity— Alien 데코 SpriteRendererm_Sprite를 Mr.Alien(GUID 443583d5...)에서 PlayerIdle frame10(GUID ba86c7b2..., fileID 21300020)으로 교체
산출물 (BT worktree):
프로젝트/EerieVillage/개발/04_BT5-Dev_2단계_구현보고.md(신설) — 편집 파일 목록·구현 체크리스트·PD 수동 요청 4건·리스크 5종·기각안 5종memory/org/feedback_pm_dev_task_delegation_failure.md(신설) — PM 환경 제약 PD 전가 패턴 SOT, 4단계 실측 체크리스트공유/개발팀_백업/EerieVillage/*.bak_20260423_0201.*(5파일) — C6-1 원본 보호
핵심 결정 (기각안 필수 포함):
- "Mr.Alien → Player 시리즈 교체" 재해석: Player.prefab은 이미 PlayerIdle 사용 중. SampleScene의 "Alien" 데코 오브젝트만 잔존 → 스프라이트 참조만 PlayerIdle로 교체
- i-frame 기본 0.6s: 기획 04 §3-2 후보 범위 0.4~0.8s 중간값. Inspector 노출로 Phase 3-B balance-designer 튠 가능
- 공격 애니메이션 부재 → 정적 유지: PD 원문 허용. Animator "attack" trigger 호출은 warning만 남김 (동작 영향 없음)
- 기각안 5건:
- Player.prefab에 AttackHitbox YAML 직접 추가 기각 (MonoBehaviour guid 관리 복잡)
- Animator Controller YAML에 attack trigger 직접 추가 기각 (StateMachine 깨짐 리스크)
- Mr.Alien.png 자산 삭제 기각 (타 참조 검증 전, C6-1 준수)
- 공격 신규 애니메이션 생성 기각 (스프라이트 리소스 부재)
- PlayerEnemyCollision Bounce 유지 기각 ("위에서 밟기" 의도 결합 로직)
PD 수동 작업 요청 (4건):
- Player GameObject에
AttackHitbox컴포넌트 Add - Enemy.prefab에
Health컴포넌트 Add - Play 모드 런타임 검증 (이동·점프·공격·i-frame·사망)
- (선택) Animator
attacktrigger 파라미터 추가
공유 상태: 내부 공유 (C21-①). Unity 프로젝트는 외부 레포라 Editor 실행 시 GitAutoSync가 자동 push → origin/main 반영. BT worktree 산출물은 PM 재량 commit·push (C20).
관련 규칙 준수:
- C6-1 원본 보호 백업 5종 (
bak_20260423_0201표준 포맷) - C30 Unity 프로젝트 git 최신 확인 (fetch·status → clean)
- C34-11 절대 경로 하드코딩 주의 (Unity 프로젝트
E:/EerieVillage/허용 외부 레포, BT 산출물은 worktree 상대) - C23 정직성 — Play 모드 검증 불가 사실 명시, 리스크 5종 공개
- C29 업무 자율 수행 — PD 수동 4건으로 축소, PM 떠넘기기 차단