Add formal enemies, remaining formal partners and synthesized UI SFX

- UI SFX v3: procedurally synthesized one-shots (Tools/synth_ui_sfx.py) wired to
  buttons, rewards, errors and red dots via UiSfx, gated by the SFX setting.
- Five formal enemies (Hornlet, Dashlet, Shellhorn, HornCaptain, GreatHorn):
  Hunyuan 50k -> 2000-tri XPbr, DGXA TokenRig, Idle/Walk/Attack, nested per type
  in PrototypeArena; PrototypeBattle.Enemy gains presentation-only Moving/Strikes.
- Formal partners for all ten pets in the arena and portraits, including new
  VineSprite, ThunderLeopard and TideWhale.
- Pipeline fixes: reject local TokenRig fallback, drop loose mesh islands,
  configurable Unity run_script timeout, companion static stage.
- Also includes concurrent work from another tool in this working tree
  (FlameLion, enemy combat FX, challenge mode, home explorer, server updates).
- Resources registered in Doc/ResDesc_*.md; verified on isolated :18081.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
udx
2026-10-21 12:23:55 +08:00
co-authored by Claude Opus 5.5
parent 6c64210331
commit 89e0fa246f
780 changed files with 7117051 additions and 15906 deletions
@@ -6,8 +6,16 @@
"label": "角色与单位美术验收",
"spacing": 3.0,
"groundSize": 24.0,
"cameraPosition": { "x": 6.0, "y": 1.4, "z": -6.5 },
"cameraTarget": { "x": 6.0, "y": 0.85, "z": 0.0 },
"cameraPosition": {
"x": 6.0,
"y": 1.4,
"z": -6.5
},
"cameraTarget": {
"x": 6.0,
"y": 0.85,
"z": 0.0
},
"fieldOfView": 35,
"subjects": [
{
@@ -59,7 +67,11 @@
"maxTriangles": 2500,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": ["Idle", "Walk", "Attack"],
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "敌方制作标准样例:同角色12骨→空间对齐→低模转权重→Idle/Walk/Attack→离线收尾;Enemy视觉Variant见Characters/Enemy/RockBall。Motion=0/1,Attack使用Trigger。"
},
{
@@ -81,8 +93,270 @@
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": ["Idle", "Walk", "Attack"],
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "火喵T1伙伴视觉:同角色22骨,Walk全骨骼首帧校准,尾部权重修正;Idle/Walk循环,Attack单次双爪施法,0.55秒出手事件。专用Companion_FireCat_Review场景Edit/Play均通过。"
},
{
"id": "BudBud",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/BudBud/BudBud.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "芽芽T1正式静态模,0.50m、Y-up、底面中心、局部-Z正面,正侧背检查通过。"
},
{
"id": "BudBud_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/BudBud/BudBud_Companion.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "芽芽T1草系治疗伙伴:混元50k→2000 tris/1024 XPbr;自身22骨,先Walk后补三动作,Edit/Play通过。",
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
]
},
{
"id": "SparkBird",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/SparkBird/SparkBird.prefab",
"expectedHeight": 0.45,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "闪闪雀T1正式静态模:混元50k→2000 tris/1024 XPbr,0.45m、Y-up、底面中心、局部-Z正面,四向验收通过。"
},
{
"id": "SparkBird_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/SparkBird/SparkBird_Companion.prefab",
"expectedHeight": 0.45,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "闪闪雀T1电系输出伙伴:自身28骨,avian_grounded/wing_cast,先Walk后补三动作,双翼相对身体前挥门禁及Edit/Play通过。",
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
]
},
{
"id": "BubbleTurtle",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/BubbleTurtle/BubbleTurtle.prefab",
"expectedHeight": 0.35,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "泡泡龟T1正式静态模:混元50k→离线统一朝向→2000 tris/1024 XPbr,0.35m、Y-up、底面中心、局部-Z正面,四向图确认。"
},
{
"id": "BubbleTurtle_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/BubbleTurtle/BubbleTurtle_Companion.prefab",
"expectedHeight": 0.35,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "泡泡龟T1水系守护:最终26骨、quadruped_turtle/turtle_bubble、四脚实际网格步态/壳体刚性/Edit与Play通过,0.6秒释放事件。",
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
]
},
{
"id": "RockRhino",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/RockRhino/RockRhino.prefab",
"expectedHeight": 0.55,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "岩甲犀T1静态模:官方混元50k→离线+70°统一朝向→2000tris/1024 XPbr,0.55m、Y-up、底面中心、局部-Z正面,四向图确认。"
},
{
"id": "RockRhino_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/RockRhino/RockRhino_Companion.prefab",
"expectedHeight": 0.55,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "岩甲犀T1控制伙伴:自身29骨、quadruped_heavy/braced_bash,先单Walk后补三动作,四脚实际蒙皮/岩甲与角刚性/Edit与Play通过,0.6秒事件。",
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
]
},
{
"id": "Hornlet_Enemy",
"kind": "Enemy",
"prefab": "Assets/Bundles/Characters/Enemy/Hornlet/Hornlet_Enemy.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "小角怪(普通,type0):混元50k→2000 tris/1024 XPbr,DGXA同源TokenRig,biped_short/body_slam三动作,Edit/Play通过;战场 Enemies/EnemyN/Type0 嵌套。"
},
{
"id": "Dashlet_Enemy",
"kind": "Enemy",
"prefab": "Assets/Bundles/Characters/Enemy/Dashlet/Dashlet_Enemy.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "疾跑怪(快速,type1):混元50k→2000 tris/1024 XPbr,DGXA同源TokenRig,biped_short/body_slam三动作,Edit/Play通过;战场 Enemies/EnemyN/Type1 嵌套。"
},
{
"id": "Shellhorn_Enemy",
"kind": "Enemy",
"prefab": "Assets/Bundles/Characters/Enemy/Shellhorn/Shellhorn_Enemy.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "硬壳怪(护甲,type2):混元50k→2000 tris/1024 XPbr,DGXA同源TokenRig,biped_short/body_slam三动作,Edit/Play通过;战场 Enemies/EnemyN/Type2 嵌套。"
},
{
"id": "HornCaptain_Enemy",
"kind": "Enemy",
"prefab": "Assets/Bundles/Characters/Enemy/HornCaptain/HornCaptain_Enemy.prefab",
"expectedHeight": 0.6,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "角怪队长(精英,type3):混元50k→2000 tris/1024 XPbr,DGXA同源TokenRig,biped_short/body_slam三动作,Edit/Play通过;战场 Enemies/EnemyN/Type3 嵌套。"
},
{
"id": "GreatHorn_Enemy",
"kind": "Enemy",
"prefab": "Assets/Bundles/Characters/Enemy/GreatHorn/GreatHorn_Enemy.prefab",
"expectedHeight": 0.8,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "大角首领(首领,type4):混元50k→2000 tris/1024 XPbr,DGXA同源TokenRig,biped_short/body_slam三动作,Edit/Play通过;战场 Enemies/EnemyN/Type4 嵌套。"
},
{
"id": "FlameLion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/FlameLion/FlameLion.prefab",
"expectedHeight": 0.6,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "烈焰狮T1静态:官方混元50k→2000tris/1024 XPbr,0.60m、Y-up、底面中心、局部-Z正面,四向验收通过。"
},
{
"id": "FlameLion_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/FlameLion/FlameLion_Companion.prefab",
"expectedHeight": 0.6,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"notes": "烈焰狮T1火系输出:自身远程28骨、biped_short/flame_roar,单Walk后补三动作、实际双脚/鬃毛刚性/头与双爪施法/Edit与Play通过;0.6秒事件。",
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
]
},
{
"id": "VineSprite_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/VineSprite/VineSprite_Companion.prefab",
"expectedHeight": 0.5,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "藤蔓灵(pet 7)T1:混元50k→2000 tris/1024 XPbr,DGXA同源28骨,biped_short/ranged_cast(治疗施法),Edit/Play通过。"
},
{
"id": "ThunderLeopard_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/ThunderLeopard/ThunderLeopard_Companion.prefab",
"expectedHeight": 0.45,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "雷鸣豹(pet 8)T1:混元50k→2000 tris/1024 XPbr,DGXA同源31骨,quadruped_heavy/braced_bash(头肩短扑),Edit/Play通过。"
},
{
"id": "TideWhale_Companion",
"kind": "Animal",
"prefab": "Assets/Bundles/Characters/Animal/TideWhale/TideWhale_Companion.prefab",
"expectedHeight": 0.55,
"heightTolerance": 0.01,
"maxTriangles": 2000,
"requireXpbr": true,
"requireAnimator": true,
"requiredClips": [
"Idle",
"Walk",
"Attack"
],
"notes": "潮汐鲸(pet 9)T1:混元50k→2000 tris/1024 XPbr,DGXA同源22骨,biped_short/body_slam,Edit/Play通过。"
}
],
"workflow": {