- ① 잔상 색: 주력 난사 잔상(#959 teal) · 각성 진입 그림자 → 검정(0,0,0,0.5) · 4타 순간이동 · 시전 · 착지 잔상은 원래 거의 검정(0.07,0.03,0.12)
- ② 비수 각성 착지: 낙하로 보인 원인 = 모델이 드러난 뒤 ghost_land(Platform Sub_HeroLanding = 공중에서 내려앉는 클립) 재생 + 옆 진입 동안 실제 모델 숨김 → 착지 상태 = 4타 양손 낮게 가르기(DualBlades_DodgeAttack · 이벤트 끔) · 실제 모델이 보인 채 옆 1.2 m 에서 0.2 s 진입 · 0.04 s 마다 검은 지금 자세 잔상 · 끝 잔상 3 = 양손 베기 자세 · 착지 동안 공격 전진 표 막음(AttackRootMotion.Gate · 실측 이동 0.75 → 0.11 m)
- ③ 비수 주력: 원본 판정(시전 0.5 s 뒤 0.1 s 간격 6회 · 난사와 무관) 끄고(go_effect Loop 0) 난사 틱 0.24 → 0.2 s · 휘두름마다 0.1 s 뒤 원본 한 대 피해 1회 × 10(Skill_ShadowSlash.ProcessCollider · 1회 피해 그대로 → 총량 원본의 10/6) · 범위 PC 발 3.5 m + 몸 반지름 · 대상 쪽 ±110° · 판정 시각 대기열(끊김에도 휘두름마다) · 실측 3회 모두 10/10 · 0.2 s 간격
- ④ 테스트 씬 미실행: PD 가 Play 한 씬 = Assets/Scenes/TestMap.unity(원본 맵 조각 · LoadMapMgr.Awake NRE · #957 과 같음) → WLSkillTestPlayRedirect(에디터) = WLSkillTest.json redirectScenes 의 씬을 연 채 Play 하면 Play 시작 씬을 WLSkillTest.unity 로(playModeStartScene · 끝나면 원래 씬) · 실측 TestMap 에서 Play → ready · 콘솔 오류 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- ① 숫자 키 1~9 · 0 = 그 번호 무기로 즉시 교체(WLSkillTestHarness.SelectWeapon · 번호 = O/P 순환과 같은 종류 순 · 화면 목록) · 이 씬에서 등급 치트 끔
- ② 모든 무기 각성 상태(WLTestScene.AllAwakened → 무기 기술 · 연계 · 파츠 스킬 칸 해금 등급 무시) · 자동 스킬 끔(ManualSkills → PCActor 자동 시전 · WL_TryAutoSkillNow · 파츠 스킬 자동 시전) — Q/E 치트키로만 · 실측 해머 8 s 공격 427 프레임 · 스킬 진입 0 · E = 대지 분쇄 발동
- ③ 대검 주력 모으기 = 검 빛 손잡이 금색 → 칼끝 노랑 축 그라데이션(WL/WeaponGlow _GlowColor2 · _GradAxis · _GradLen · WLWeaponGlowFx 5인자 Set) + 모으기 입자 수명색 노랑 계열(TintGradient · 어두운 층 제외) · 파란 호 = 모으기 사본 루트 ChargePath 렌더러 끔(chargeFxHide)
- ④ 대검 각성 회오리 흰 뭉개짐 = WL_Fx_BladeStormTornado 의 HS 재질 _Emission 5(블룸 없는 화면에서 흰색 포화 · 층별 끄기로 확정) → wraps layers 로 몸통 _Emission 0.7 + 푸른 회색 · 회전 줄무늬 2.5 · 바닥 고리 1.8(프로퍼티 블록)
- ⑤ 비수 3타 = 이펙트와 같은 반시계 1080°/s 한 바퀴(−360°/0.333 s) · 팔라딘 클립 자체 시계 300°/0.18 s 회전을 덮어씀(WLSwingExtras yaw 덮기 · 끝 0.12 s 섞기) · 실측 엉덩이 각이 코드 각을 그대로 따라감
- ⑥ 비수 주력 = 양손 작은 사본 끔 · 대상 쪽 공격 범위 × 0.5 자리에 1개(폭 = 범위 × 1.6) · 실측 거리 0.50 · 범위 1.00 · 배율 0.304
- 발견 수정: WLImpactFx.s_swingAt(같은 PC·단계 궤적 0.3 s 묶음)가 도메인 리로드 꺼짐으로 Play 사이에 남아 새 Play 의 궤적 이펙트 · 비수 3타 회전이 막힘(실측 swing +0 · spins +0) → Play 시작마다 비움 · 연속 Play 2회 확인(swing +6 · spins +3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
실측(테스트 씬 Play): 1·2·3타 반응 로그 각 적용 · 3타 겉모습 ×0.5 11회 · 비행 중 꼬리 입자 숨김 · 3타 자세 제자리(캡처) · 콘솔 게임 오류 0 · 매핑 재굽기 백업 비교 = 변경 1(CastspellC 메타 마스크)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
실측: 연속 Play 버튼 → ready 3.1 s(이전 100~140 s) · 리컴파일 직후 첫 Play 63 s · 패드 입력 (1,0) → 3.9 m/1 s · 키 이동 5.7 m/1.5 s · 등급 6 Q/E 발동 · O/P 순환 · 콘솔 게임 오류 0(2회 연속 Play)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- 가격판: FI Purchaser 가 활성 씬(InGame)에 생겨 섬 씬이 내려가도 남던 옛 판(파괴된 섬에 묶임)을 섬 씬 언로드 순간 제거 + 섬 준비 때 한 번 더
실측: 던전 입장 때 1개 제거 · 복귀 후 판 1개 · 겹침 0 · 오류 0
- 공격 예고 흰 섬광: 알베도 2.2/에미션 1.6(완전 흰색) → 캐릭터 덧그리기 패스 _HitFlash 20 %(flashOverlayOpacity) · 실측 완전 흰색 0
- 넉백 거리 배율(MobKnockbackScale · mobKnockbackDistanceScale 0.5): 새 넉백이 시작된 틱에 원본 남은 시간을 줄여 총 거리 절반
실측 평균 0.203 m(38회) → 0.102~0.103 m(84회) · 넉백 상태 멈춤 0(최솟값을 남기면 끊긴 넉백이 영영 안 풀리던 결함은 수정 전 실측 · 멈춘 넉백 풀기 안전장치 포함)
- 히트 하이라이트: 꺼진 뒤 0.2 s 쉼 동안 다음 점멸을 막아 빠른 연타에서 첫 타만 번쩍 → 타격마다 다시 켬(retriggerEveryHit)
실측(0.15 s 간격 6타): 종전 3/6 → 6/6 · 실제 전투 화면 캡처로 1~3타 모두 표시 확인
- 원본 0줄
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- 던전 풀: 814t 대비 복제가 지형 _MinimumDarkness 만 0.12 로 낮춰 풀잎(0.20)이 그늘마다 밝은 점으로 도드라짐 → 지형을 풀잎 값으로(dungeonTerrainMatchGrassDarkness)
- 경직: 피격 모션 재생(일반 몹은 공격 취소 · 엘리트 설정 · 보스/스킬/사망 제외) → 0.1 s 뒤 굳힘 → 경직 끝까지 공격 쿨타임 붙잡기 · 일반 0.25 / 엘리트 0.18 s · 끊긴 몹은 풀리면 애니 속도 1
- 피격 점멸: 켜짐 0.07(상한 0.09) · 쉼 0.2 s · 덧그리기 패스 _HitFlash 0.2(본체가 비치는 흰색 20 %)
- 하얗게 남던 주원인(실측) = 공격 예고(Telegraph) 흰 섬광이 경직·넉백으로 끊긴 공격에 최대 2.5 s 남음 → CurAnim 이 공격 밖이면 즉시 종료 + 예정 히트 +0.3 s 안전장치
같은 세션 A/B(던전 1 · 3판씩): 끊긴 공격에 남은 흰색 47/80 측정 → 0/41
- 원본 0줄(Assets/Script · FarmingIsland 무수정)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
실측: 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>
원인(실측): Attack1_S_* 클립은 ShowEffect 직후 4~5 프레임만 실제 타격 호이고
그 뒤 칼끝이 한 바퀴 넘게 감긴다. 속도 트림(정지 꼬리만 자름)은 그 감김을
남겨 칼끝 원 피팅이 깨지고(편차비 0.27 > 임계 0.25) 손잡이 중심 폴백으로
떨어져 피벗이 머리 높이·몸 왼쪽으로 0.39 m 밀렸다. 12행 중 1타 4행만 폴백이었고
2·3타 8행은 전부 칼끝원(편차비 0.14/0.17)이라 정상이었다.
- SlashArcMeasure.TrimWindupWrap 신설 — 편차비가 기준 이하가 되는 가장 긴 창 선택
- WeaponTrailDriver.MeasureSwingCalibration · WL816t_Bake 양쪽에서 같은 헬퍼 사용
- SO 신설 arcTrimWindupWrap(true) · arcFitMaxDeviation(0.25 · 기존 하드코딩 이관 C45)
- 캘리브레이션 1타 4행 재베이크 — 2·3타 8행은 수치 무변경(Δ 0.000 m · 0.0°)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
원인(실측): 검기 캘리브레이션 8행이 교체 전 캐릭터 Ai01(root scale 1 · 무기 원본 크기) 기준으로
구워져 있고, 런타임 캐릭터는 814n/814p 로 LH_M05(root scale 1.0527 = f_Scale 0.70 x heightComp 1.5038)
+ 무기 x0.54~0.66 로 바뀌었다. 로컬 프레임이 달라 호 중심이 0.36~0.88 m, 평면 법선이 6.9~61.0 deg
어긋난 채 고정돼 있었고, 이 오차 벡터가 캐릭터와 함께 돌아 화면에서는 가로 -0.50~+0.59 m /
세로 -0.46~+0.86 m 로 방향마다 다르게 보였다.
- WL816t_Bake: 런타임과 같은 PC(swap resolve) x 같은 스케일 x 같은 무기 보정(WLWeaponFitter.Fit)으로
1/2/3 타 클립을 60 Hz 샘플 -> 런타임 ToLocalPos 규약(회전만)으로 12행 재베이크 (구 8행 대체)
- SlashTrailSettings: arcFitAttackRange / arcRangeScale 신설 (기본 off = 무동작 · C8 롤백)
- WeaponTrailDriver.PlaceArc: 스위치 on 이면 호 바깥 반지름 = 공격 범위
(stoppingDistance 양수 최솟값 + AttackRange_Up + immediateAttackMargin · WLRangeRing 과 같은 SOT · 상수 0개)
- 8방향 x 3타 편차 0.525/0.361/0.864 m -> 0.000 m · 법선 61.0/20.5/23.5 deg -> 0.0 deg
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>