Commit Graph

10 Commits

Author SHA1 Message Date
깃 관리자 e12a43b123 fix(BT5-Dev #16): Distance 기반 단순 감지 — Bounds 산수 의존 폐기 (PM 자인·근본)
PD 강한 어조:
- "그래서 어떻게 해야 제대로 동작하는건데? 똑바로 일해!"
- "내 플레이에만 의지하지말고 기획팀에도 참여할 수 있도록 방법을 찾아봐"

PM 자인:
- 엔트리 11까지 추측 + Bounds 산수 의존 — 100% 정합 보장 X
- Unity MCP 본 세션 미활성 (Claude Desktop만 — BT3 영역). 본 PM 직접 Play 검증 X
- PD에게 검증 떠넘김 영역 — C5·C44·C2 위배

근본 정정:
- EnemyController.cs: hitRangeX(0.7)·hitRangeY(1.0)·stompMinDy(0.5) public 영역. Update Distance 기반 감지 (Mathf.Abs(dx)<hitRangeX && Mathf.Abs(dy)<hitRangeY). Bounds·Collider·SpriteRenderer 영역 무관 = 항상 작동
- PlayerEnemyCollision.cs: dyAtCollision 필드 신규. 밟기 판정 = dy > stompMinDy (산수 영역 폐기)

미변경 영역 보존:
- IgnoreCollision·queriesHitTriggers·fixedDeltaTime·targetFrameRate·OneWayPlatform·DeathZone Coroutine·Player.prefab·flipX·LastGroundedPosition·OnDeath/Resurrect·자동부착·Health i-frame·Flash·Prompt·Enemy.prefab IsTrigger=0·EnemyController.Awake IgnoreCollision

PD 명령 2번 — 기획팀 참여 방안:
- 기획팀장 Task 호출 — BT5-Dev 메카닉 정합성·디자인 의도 검토 (system-designer·ux-designer)
- PlayMode 테스트 자동 영역 — PD/기획팀 Test Runner 클릭만으로 검증
- 별건: Unity MCP Claude Code 영역 활성화·CI batchmode

매니페스트 archived: 2026-05-07_152059_distance

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 15:22:38 +09:00
깃 관리자 0079c0a7bd fix(BT5-Dev #14): VisualBounds 감지 영역 전환 (PM 자인·영역 한정)
PD 강한 어조 (3건):
- 몬스터 충돌체크 발생 X (닿아도 피해 X)
- 밟기 처치 X
- 통과 이동 가능 의무

PM 자인 (C5·C39·C44):
- 엔트리 10 _collider.bounds.Intersects 활용 — Enemy CapsuleCollider2D 0.45×0.09 ground sensor 영역 단독 = Enemy 본체 영역 부재 = 거의 발동 X. Collider 크기 미실측

정정 영역 한정 (2파일만):
- EnemyController.cs: VisualBounds 속성 신규 (spriteRenderer.bounds fallback _collider.bounds). Update _collider.bounds.Intersects → VisualBounds.Intersects
- PlayerEnemyCollision.cs: 밟기 판정 enemy.Bounds.max.y → enemy.VisualBounds.max.y

미변경 영역 (PD 일관성 명시 — 영구 보존):
- Physics2D.IgnoreCollision·queriesHitTriggers·targetFrameRate·fixedDeltaTime
- SetupOneWayPlatforms·DeathZone Coroutine·Player.prefab·flipX
- LastGroundedPosition·OnHealthDeath/Resurrect·자동 컴포넌트
- Health invulnerableDuration·resurrectInvulnerableDuration·GrantInvulnerability
- PlayerInvulnerabilityFlash·ResurrectPromptUI·Enemy.prefab·EnemyController.Awake

매니페스트 archived: 2026-05-07_151159_combat5

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 15:13:11 +09:00
깃 관리자 4852636f9a fix(BT5-Dev #13): Enemy 등장 복원 + One-Way Platform (PM 자인·재정정)
PD 재보고 2건:
1. 몬스터가 등장하지 않음
2. 점프·이동 시 지형 통과 (One-Way Platform)

PM 자인 (C5·C44):
- 엔트리 9에서 Enemy IsTrigger=1 변경 → 지면 통과 부작용 → Enemy 떨어짐 → 화면 외

Unity 외부 영역 변경:
- Enemy.prefab: m_IsTrigger 1→0 복원 (지면 충돌 회복)
- EnemyController.cs: OnTrigger 폐기 → Awake에서 Physics2D.IgnoreCollision(Player↔Enemy) + Update에서 Bounds.Intersects 직접 감지
- GameOptimizer.cs: SetupOneWayPlatforms 신규 (AfterSceneLoad RuntimeInitialize) — TilemapCollider2D usedByEffector=true + PlatformEffector2D(useOneWay·surfaceArc 180) 자동 부착

매니페스트 archived: 2026-05-07_150343_combat4

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 15:05:33 +09:00
깃 관리자 ed97a5d2f1 fix(BT5-Dev #12): 밟기 위치 단독 판정·Enemy Trigger 통과·낙사 카메라 외 대기 (PD 3건)
PD 재보고 3건 (2026-05-07):
1. 밟기 판정 발생 X — 점프 상태도 피해
2. 적은 점프 밟기 외 통과 가능
3. 낙사 시 캐릭터 완전 사라진 후 재시작

진단·정정:
- 1번 근원: OnCollisionEnter 시점 velocity.y=0 + IsGrounded=true 보정 → 위치 단독 판정 채택 (tolerance 0.15)
- 2번: Enemy CapsuleCollider2D m_IsTrigger=0→1 + OnCollisionEnter→OnTriggerEnter/Stay + queriesHitTriggers=false (Enemy 자기 raycast 보호)
- 3번: DeathZone Coroutine — Camera viewport.y<-0.1 대기 + controlEnabled=false + timeout 3초

Unity 외부 영역:
- Enemy.prefab: m_IsTrigger 0→1
- EnemyController.cs: OnTriggerEnter2D + OnTriggerStay2D
- PlayerEnemyCollision.cs: 위치 단독 판정 (velocity·IsGrounded 의존 폐기)
- GameOptimizer.cs: Physics2D.queriesHitTriggers=false 추가
- DeathZone.cs: Coroutine + 카메라 viewport 영역 외 대기

매니페스트 archived: 2026-05-07_145736_combat3

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:59:12 +09:00
깃 관리자 73b4b9c824 feat(BT5-Dev #11): 밟기 점프 판정·Bounce 1/3·낙사 위치 복귀·게임 최적화 (PD 4건)
PD 직접 지시 4건 (2026-05-07):
1. 밟기 = 점프 상태(공중) + 적 상단 충돌만. 비점프는 플레이어 피해
2. 밟기 튕김 1/3
3. 화면 스크롤 버벅임 — 게임 최적화
4. 낙사 = HP 감소 + 가까운 이동 가능 지역 복귀 + 1초 무적

Unity 외부 영역 변경:
- PlayerEnemyCollision.cs: 밟기 3조건 (!IsGrounded && velocity.y<0 && Bounds.min.y>=enemy.Bounds.center.y) + Bounce(jumpTakeOffSpeed/3)
- Health.cs: GrantInvulnerability(float duration) 신규 — Mathf.Max로 기존 i-frame과 비교
- PlayerController.cs: LastGroundedPosition 추적 (Update 끝)
- DeathZone.cs: 즉사 schedule 폐기 → 위치 복귀 + Decrement(1) + GrantInvulnerability(1)
- GameOptimizer.cs (신설): targetFrameRate 60 + vSync 0 + fixedDeltaTime 1/60 (RuntimeInitialize Before scene)

별건 후속: Sprite Atlas·Cinemachine damping·Tilemap CompositeCollider2D (Editor 작업 영역)

매니페스트 archived: 2026-05-07_144911_combat2

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:51:18 +09:00
깃 관리자 9f7e9d95fb feat(BT5-Dev #10): PD 지시 5건 일괄 — 무적 깜빡임·밟기 복원·사망 입력 차단·부활 팝업·부활 무적
PD 직접 지시 5건 (2026-05-07):
1. 피해 수신 0.5초 hit 모션 + 깜빡임 + 무적
2. 몬스터 밟기 복원 (BT5-Dev 2단계 폐기 영역 — PD 직접 지시 우선)
3. 사망 시 이동 입력 차단
4. 부활/재시작 팝업 — 예: 제자리 부활 / 아니오: 씬 재시작
5. 부활 직후 2초 무적 (충돌 피해 무시·밟기 가능)

Unity 외부 영역 변경:
- Health.cs: invulnerableDuration 0.6→0.5 + resurrectInvulnerableDuration 2.0 신규 + Resurrect 시 무적 적용
- PlayerEnemyCollision.cs: 위 밟기 판정 (player.Bounds.center.y >= enemy.Bounds.max.y) → EnemyDeath + Bounce
- PlayerController.cs: OnHealthDeath/OnHealthResurrect 구독 + 동반 컴포넌트 AddComponent 자동
- PlayerInvulnerabilityFlash.cs (신설): IsInvulnerable 동안 SpriteRenderer.enabled toggle 0.1초
- ResurrectPromptUI.cs (신설): OnGUI 임시. 예→Resurrect / 아니오→SceneManager.LoadScene

자동 부착 영역으로 Player.prefab 변경 0 (회귀 영향 0). UI 미관은 별건 후속.

매니페스트 archived: 2026-05-07_143305_combat

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:37:05 +09:00
깃 관리자 c6040f86db fix(BT5-Dev #9): facing 로직 반전 + Collider Offset 양수 재정정 (PM 자인)
PD 재보고 2건:
1. 캐릭터 반대 방향 출력 — Hero1 sprite는 좌측 default, 게임 기본 우측
2. 캐릭터 공중 부유 + 몬스터 밟기 불가 — Collider 하단이 발보다 더 아래

PM 자인 (C5·C44):
- 엔트리 5에서 idle01 시각 "우측 향함" 잘못 판단 → 실제 좌측 향함

Unity 외부 영역 정정:
- PlayerController.cs: flipX 로직 반전 (move>0 → flipX=true, move<0 → flipX=false)
- Player.prefab: m_FlipX 0→1 (디폴트 우측 향함) + BoxCollider2D Size 1.20→1.15 + Offset -0.05→+0.10 (발 위치 sprite 85% 정합)

매니페스트 archived 자동 이동: 2026-05-07_142709_facing2

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:28:28 +09:00
깃 관리자 4c1c186ae0 fix(BT5-Dev #8): Hero1 facing 반전 보강 + Collider2D 시각 정합 (PM 즉시 처리)
PD 지시: "캐릭터 방향 반전 + 충돌 판정 영역 캐릭터 이미지 정합".

실측:
- PlayerController.cs flipX 처리 코드 존재 (line 153~159)
- AnimationController.cs = Player.prefab 부착 0건 dead code
- anim 8종 m_FlipX curve 0건 (Animator 덮어쓰기 영역 외)
- Hero1 PPU 300, sprite 430×430 = 월드 1.43 단위
- 기존 Collider Size 0.32×0.54 = Hero1 대비 22% (이전 32×64 PNG 잔존)

처리 (Unity 외부 레포 영역):
- PlayerController.cs: spriteRenderer·animator 자식 fallback 2 라인 추가 (안전망)
- Player.prefab: BoxCollider2D Size 0.32×0.54→0.45×1.2 + Offset (-0.09,-0.14)→(0,-0.05) + TilingProperty 1.28→1.43

feedback_pm_excessive_decision_request 첫 적용 — 옵션 나열·결정 요청 없이 PM 즉시 처리.

매니페스트 archived 자동 이동: 2026-05-07_141743_facing

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:22:59 +09:00
깃 관리자 789ec907e9 fix(BT5-Dev D안): Unity 백업 28 파일 전수 삭제 + Phase 1 §12 정정 + feedback 2종 등록
PD CS0101 보고 (`PlayerAttackTests.cs.bak_*.cs(15,14): error CS0101`) 근본 해결.

근본 원인 (C2-1): C6-1 백업 적용 영역 오해. Unity Assets/ = D:/EerieVillage 별도 git + GitAutoSync 추적 = 백업 불요 영역인데 백업 생성. .cs.bak_*.cs = Unity 컴파일 대상 → 클래스 중복.

PD 결정 (2건):
1. D 옵션 — 백업 전수 삭제 + 명세 정정 + feedback 등록
2. 헌법급 PM feedback — 옵션 나열·결정 요청 폐기·분석 명확 시 즉시 진행

처리:
- Unity Assets bak_2026* 일괄 삭제: 28 파일 (회차 0423·0424·0507)
- Phase 1 §12 전면 재작성: 백업 12종 → 0건 + C6-1 적용 영역 명문화 + git checkout 롤백 절차
- feedback 신설: feedback_pm_excessive_decision_request (헌법급) + feedback_unity_backup_compile_pollution (organizational)
- MEMORY.md 인덱스 2 라인 추가
- BT5-Dev 활성 지시 6단계 갱신

매니페스트 archived 자동 이동 2건: 2026-05-07_133153 + 2026-05-07_133240_mem

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 13:37:29 +09:00
깃 관리자 13976e2857 feat(BT5-Dev Hero1): 캐릭터 교체 + 캐릭터 리소스 규칙 SOT 신설 (C49 1~3단계 완결)
PD 결정 (2026-05-07): PlayerTestGirl 폐기 → Hero1 정식 캐릭터 교체. 모션 8종 (attack·combatidle·idle·hit·jump·resurrection·run·death) + 상태 전환 룰 (idle⇄combatidle 5초 타이머·hit 인터럽트 보호·death→resurrection 시퀀스). 정합성 이슈 5건 A안 일괄 채택.

C49 표준 프로세스:
- Phase 1 (개발팀장 Opus 설계) — 06_Hero1_적용_설계.md 768라인 14섹션 + 기각안 6건
- Phase 2 (클라이언트팀 Sonnet 적용) — W1~W12 일괄. Unity 영역 변경 10건 + 신설 9건. C6-1 백업 9종 (timestamp 20260507_1253)
- Phase 3 (개발팀장 Opus 검증) — 10영역 §A~§J 통과 (Critical 0·Major 1·차단 0). Major 1 = Health.cs Animator parameter Console warning 가능성 (게임 영향 0)

산출물 (BT 레포):
- 공유/PD_지시_트래킹/개발팀_PD_지시_로그.md (BT5-Dev 5단계 갱신)
- 프로젝트/EerieVillage/개발/spec/캐릭터_리소스_규칙_v1.md (영구 SOT 신설)
- 프로젝트/EerieVillage/개발/06_Hero1_적용_설계.md (Phase 1 설계)
- 공유/대화로그/EerieVillage/2026-05-07.md (엔트리 1·2·3)

Unity 영역 (E:/EerieVillage 별도 git): 8 State Animator + 8 Parameter + AnimationClip 8종 + 신규 컴포넌트 2종 + Health.cs 부활 + 19 EditMode tests

매니페스트 archived 자동 이동 4건: 123431·124022·125257·131323

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 13:16:09 +09:00