{"record":{"id":"cce98dd108228549","repo":"babalae/better-genshin-impact","slug":"route","errorCode":null,"errorMessage":"未找到首领路线文件：{route}","messagePattern":"未找到首领路线文件：(.+?)","errorType":"exception","errorClass":"FileNotFoundException","httpStatus":null,"severity":"error","filePath":"BetterGenshinImpact/GameTask/AutoBoss/AutoBossTask.cs","lineNumber":1027,"sourceCode":"        {\n            throw new Exception(\"只有指定讨伐次数模式才能开启须臾树脂或脆弱树脂补充\");\n        }\n\n        if (string.IsNullOrWhiteSpace(_taskParam.CombatStrategyPath))\n        {\n            _taskParam.SetCombatStrategyPath(_taskParam.StrategyName);\n        }\n\n        if (!File.Exists(_taskParam.CombatStrategyPath) && !Directory.Exists(_taskParam.CombatStrategyPath))\n        {\n            throw new Exception(\"当前选择的自动战斗策略文件不存在\");\n        }\n\n        foreach (var route in GetRequiredRouteFiles(_taskParam.BossName))\n        {\n            if (!File.Exists(BuildPathingAssetPath(route)))\n            {\n                throw new FileNotFoundException($\"未找到首领路线文件：{route}\", BuildPathingAssetPath(route));\n            }\n        }\n    }\n\n    /// <summary>\n    /// 获取指定 Boss 启动任务前必须存在的路线文件名。\n    /// </summary>\n    /// <param name=\"bossName\">Boss 名称。</param>\n    /// <returns>需要校验的路线文件名序列。</returns>\n    private static IEnumerable<string> GetRequiredRouteFiles(string bossName)\n    {\n        if (AutoBossData.IsNoPathingSupportBoss(bossName))\n        {\n            yield return $\"{bossName}强制传送.json\";\n            yield return $\"{bossName}键鼠前往.json\";\n            yield break;\n        }\n","sourceCodeStart":1009,"sourceCodeEnd":1045,"githubUrl":"https://github.com/babalae/better-genshin-impact/blob/a7cb36712dcb409be610257d877fcea3597e9d6b/BetterGenshinImpact/GameTask/AutoBoss/AutoBossTask.cs#L1009-L1045","documentation":"Validate 遍历 GetRequiredRouteFiles(BossName)，对每个路线文件用 BuildPathingAssetPath 拼接绝对路径后 File.Exists 检查，缺失即抛 FileNotFoundException（含文件名与路径作为参数）。路线文件是程序内置资产，缺失属安装损坏或 Boss 支持不完整。","triggerScenarios":"GameTask/AutoBoss/Assets/Pathing 下对应 Boss 的 'XXX前往.json' 或 'XXX强制传送.json' 缺失；程序资产未随版本正确部署；BossName 与文件名命名规则不一致。","commonSituations":"打包/安装遗漏资产；用户手动删除资产目录；Boss 支持名单与资产文件不同步（名单含但文件未提供）。","solutions":["重新安装/修复程序以补全 AutoBoss Pathing 资产。","检查 PathingAssetFolder（Global.Absolute('GameTask\\\\AutoBoss\\\\Assets\\\\Pathing')）下是否存在报错文件名。","若为自定义 Boss，确认对应路线文件已放入资产目录且命名匹配。"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"foreach (var route in GetRequiredRouteFiles(_taskParam.BossName))\n{\n    var p = BuildPathingAssetPath(route);\n    if (!File.Exists(p)) { /* 启动前提示资产缺失，建议重装 */ }\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["保持 AutoBoss Pathing 资产目录完整。","新增 Boss 支持时同步附带路线文件。","安装/升级后做资产完整性校验。"],"tags":["validation","filesystem","assets","pathing","genshin","autoboss"],"backgroundTag":null,"analyzedSha":"a7cb36712dcb409be610257d877fcea3597e9d6b","analyzedAt":"2026-08-13T16:44:57.548Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}