Project_WL/AgentScripts/WL747_Tune.cs

36 lines
1.9 KiB
C#

// PD #747 2단계 — 힘민지 무기 실측값으로 SlashTrailSettings 임계값 확정 (eval_file 전용)
// 실측(2026-09-05 Play · WL747_Probe.MeasureWeapons):
// Dagger1 0.201m aspect 1.97 · Dagger2 0.161m aspect 1.97 (10201·10202 쌍검)
// Mace 0.722m aspect 3.75 · Elven_Sword_01 0.885m aspect 3.97
// Shield 0.476m aspect 1.04 ← 반드시 걸러야 하는 것
// → 길이 0.12 / 비율 1.5 로 두면 단검·검·메이스는 통과하고 방패만 걸린다(양쪽 여유 있음).
public static class WL747_Tune
{
const string kSetPath = "Assets/WL/Settings/Resources/WL/SlashTrailSettings.asset";
public static void Run()
{
var so = UnityEditor.AssetDatabase.LoadAssetAtPath<WL.Combat.SlashTrailSettings>(kSetPath);
if (so == null) { UnityEngine.Debug.LogError("[WL747] settings asset 없음: " + kSetPath); return; }
so.minBladeLength = 0.12f; // 실측 최단 검날 = Dagger2 0.161m
so.minBladeAspect = 1.5f; // 실측 단검 1.97 통과 · 방패 1.04 배제
so.verboseLog = false; // 1차 실측 완료 → 상시 로그 끈다
so.enableWeaponTrail = true;
// 쌍검은 검날이 0.16~0.20m 로 짧다 → 폭 비율 0.53 이면 리본이 8~10cm 라 보이지 않는다.
// 검날 전체(자루~칼끝)를 덮도록 1.0 으로 둔다. 나머지 클래스는 원본 크레센트 두께(0.53) 유지.
for (int i = 0; i < so.classOverrides.Count; i++)
{
var o = so.classOverrides[i];
if (o.classId == 10201 || o.classId == 10202) o.widthScale = 1.0f;
}
UnityEditor.EditorUtility.SetDirty(so);
UnityEditor.AssetDatabase.SaveAssets();
UnityEngine.Debug.Log("[WL747] 임계값 확정 minLen=" + so.minBladeLength + " minAspect=" + so.minBladeAspect
+ " verbose=" + so.verboseLog);
}
}