실측: Attack1_S_10101 은 ShowEffect/Move/Projectile 3개뿐이고 LookAtTarget 이 없다.
Attack2/3_S_10101 만 LookAtTarget@0.0000s(int=0, str='') 를 갖는다 → 1타만 대상 방향으로
돌지 않은 채 나간다.
- Hit1LookAtTarget 신설(원본 훅 0 · FBX/meta 0줄) — RuntimeInitializeOnLoadMethod
숨김 러너가 PC 등장·클래스 변경을 폴링하고, 같은 컨트롤러의 2·3타 클립에서
LookAtTarget 이벤트를 템플릿으로 읽어(함수명·시간·파라미터 복사 · 코드 상수 0개 C45)
1타 클립에 AddEvent 로 클래스당 1회 주입 + Animator.Rebind()
- SO 신설 WLCombatCoreSettings.hit1LookAtTarget(1) · hit1ClipNamePattern(Attack1_S_{CID})
· hit1EventFunctionName(LookAtTarget) · hit1PollSeconds(0.5) — 0 이면 러너 자체가 안 뜬다
- 검증(에디트 모드 · 같은 Inject 코드 경로): 1타 이벤트 3→4개, LookAtTarget@0.0000s(int=0,
str='') 로 2·3타와 동일. 2·3타 4개 무변경. transform.LookAt 정렬 각 오차 8방향
37.00° → 0.00°. FBX/meta git status 0줄(에셋 무오염 실측) · 검증 뒤 재임포트로 원복
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
① 발판 = 열림 구역(숨긴 밭 전부) XZ 정중앙 + 인스턴스 스케일 50 %
- WLIslandSettings: platformScale 0.5 / platformCenterOnZone 1 / platformCenterVisibleOnly 1
- 트리거는 스케일 역보정으로 월드 3.40 m 유지 · FI 프리팹 0줄
② 던전 결과창 왼쪽 버튼 = 같은 스테이지 재입장(StageDirector.Retry)
- WLStageUiSettings: dungeonPrimaryRetry 1 / dungeonPrimaryText 「다시 도전」
- 스테이지 모드(#815)는 Current==null 이라 한 줄도 지나가지 않음
③ 액티브 스킬 사용 OFF (PD 「우선 엑티브 스킬은 사용 Off 해줘」)
- 새 파일 ActiveSkillLock.cs · WLCombatCoreSettings.activeSkillsEnabled 0
- 자동 스킬 캐시(arr_magicData) 비움 + 패드 스킬 슬롯 0 · 기본 공격 불변
게이트 PASS(resident · errors[] · 콘솔 error 0) · ProjectSettings/Packages dirty 0
Assets/Script/** · Assets/FarmingIsland/** 0줄
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
적(MobActor·보스)이 공격 사거리 안에 들어오면 플레이어 발밑에 반투명 흰색 원을 띄우고,
사거리 안에 적이 3초 이상 없으면 소멸시킨다(PD #816 원문).
- 반지름 = 게임이 실제 공격 판정에 쓰는 값. MyActor.cs:44/47/222 의 reach 식을 그대로 재현하고,
런타임 NavMeshAgent.stoppingDistance(= PCActor.cs:381 m_ClassData.f_AttackRange) 의 양수 최솟값 +
eStat.AttackRange_Up + WLTargetingSettings.immediateAttackMargin(0.2) 로 잡는다. 코드 상수 0(C45).
- 그리기 = 815f 예고 판과 같은 URP Unlit 반투명 + 런타임 생성 원판 메시(새 셰이더·에셋 0, 드로우콜 +1).
- 값 전부 SO: Assets/WL/Combat/Settings/Resources/WL/WLRangeRingSettings.asset
- 원본 Assets/Script/** 0줄 · 설치는 RuntimeInitializeOnLoadMethod(AfterSceneLoad) 1점.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- TerrainGuard(신규 · 폴링 · 원본 훅 0): PC/몹/보스가 NavMesh 밖 또는 y > maxWalkableY 에
dwell(1 s) 넘게 있으면 원본 Actor.Set_Warp 으로 가장 가까운 walkable 지점 복귀(쿨 3 s · 카메라 리드 스냅)
- SpawnPositionGuard(같은 파일): 새로 나타난 몹의 스폰 지점 검증 → 재표집 3회 → 스포너 노드 폴백
- WLTerrainGuardSettings(SO · 값 22개 전부 에셋 · C8 롤백 enabled=0)
- 프로브 PASS: 언덕 격자 1000점 walkable 0 · FindGround 5/5 · 스폰 200점 언덕 위 0 · C8 6행 · GC 0 B
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
D-41: table_selectskill 58행 전수 실측 — 참조 프리팹/이펙트 키가 없는 3행
(3 Select_Shield · 11 Select_SwordSlash · 14 Select_Star)을 뽑기에서 제외.
원본 Get_DataList(3) 은 그대로 쓰고 결과만 후필터(원본 수정 0줄) · 값 전부 SO.
D-42: WLErrorGuardSettings.suppressUntilNextRunStart(기본 1) — RunPhase.Ended
(결과창~다음 런 시작)까지 훅을 내린 채 둔다. 813x2 파일 +7/-1줄.
자동전투 중 메인 PC HP 가 autoPotionHpRatio(SO · 0.35) 이하면 813i PotionUse.TryUse 로 물약을 자동 사용한다.
근거 = Q5 D-21(4분 런당 사망 3회 · 결과 화면 「사망 / 물약 = 3 / 0」 = 물약 미사용) + 813x(자동전투 기본 ON · eCommon.Auto · PCActor.cs:185) + 813i(PotionUse 공개 API) + 813y(PotionButton provider 연결).
- Assets/WL/Combat/Survival/AutoPotion.cs (신규) — 원본 훅 0 · UI 파일 0 · 폴링만
· 잔량/쿨은 PotionUse.IsReady 로 먼저 걸러 거절 이벤트·GC 0
· 자동전투 OFF(수동 전투) · 사망/부활 중 · PC 없음이면 무동작
- Survival.cs — SurvivalRunner.Update 에 AutoPotion.Tick 1줄(PotionUse.Tick 뒤)
- WLSurvivalSettings.cs/.asset — 값 5개 전부 SO(autoPotionEnabled/HpRatio/RequireAutoCombat/CheckSeconds/Log)
- C8 롤백 = autoPotionEnabled 1 → 0 (코드 무수정)
게이트 PASS · 프로브 AgentScripts/WL813m2_Probe.cs RESULT PASS(10절)
Q5 §4 실측(존 Arrived=0 · 아레나 이탈 46.3 m · 되돌림 3~4 vs 리셋 15~19)의 원인은
RunGuide.Poll 이 피격 중단에서 통째로 return 한 것(구 RunGuide.cs:291) — 그 return 이
도착 판정(구 :303)과 이탈 되돌림(구 :327) 위에 있었다.
- D-24: 도착 판정·이탈 되돌림을 피격과 무관하게 매 폴링 실행 + 정지 판정(0.5 s · 0.3 m/s) 도착
- D-22: 되돌림 즉시 · 되돌림 중 타깃 해제 · 보스 재타깃은 Hold 에서만(락은 상시 유지)
- D-19: 존 반경(18 m) 이탈 즉시 복귀 · guideLeashRadius 12 → 14
- §1-4: WLBossArenaSettings.leashHealPercent 0.15 → 0.05 (쿨 10 s 유지)
- RunTick 로그(존 체류·이동 초·최대 이탈) · 신규 SO 9필드 · C8 스위치 4개
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>