{"record":{"id":"6889ab923f6bbb0a","repo":"babalae/better-genshin-impact","slug":"json-txt","errorCode":null,"errorMessage":"当前任务暂不支持使用json策略，请使用txt策略","messagePattern":"当前任务暂不支持使用json策略，请使用txt策略","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"BetterGenshinImpact/GameTask/AutoFight/Script/CombatScriptParser.cs","lineNumber":23,"sourceCode":"using System.IO;\nusing System.Linq;\nusing static BetterGenshinImpact.GameTask.Common.TaskControl;\n\nnamespace BetterGenshinImpact.GameTask.AutoFight.Script;\n\npublic class CombatScriptParser\n{\n    public static string CurrentAvatarName = \"当前角色\";\n    \n    public static CombatScriptBag ReadAndParse(string path)\n    {\n        if (File.Exists(path))\n        {\n            // 防护性代码：防止 .json 策略文件被错误传入旧的 .txt 解析器\n            if (path.EndsWith(\".json\", StringComparison.OrdinalIgnoreCase))\n            {\n                Logger.LogError(\"当前任务暂不支持使用json策略，请使用txt策略\");\n                throw new Exception(\"当前任务暂不支持使用json策略，请使用txt策略\");\n            }\n\n            return new CombatScriptBag(Parse(path));\n        }\n        else if (Directory.Exists(path))\n        {\n            var files = Directory.GetFiles(path, \"*.txt\", SearchOption.AllDirectories);\n            if (files.Length == 0)\n            {\n                Logger.LogError(\"战斗脚本文件不存在：{Path}\", path);\n                throw new Exception(\"战斗脚本文件不存在\");\n            }\n\n            var combatScripts = new List<CombatScript>();\n            foreach (var file in files)\n            {\n                try\n                {","sourceCodeStart":5,"sourceCodeEnd":41,"githubUrl":"https://github.com/babalae/better-genshin-impact/blob/a7cb36712dcb409be610257d877fcea3597e9d6b/BetterGenshinImpact/GameTask/AutoFight/Script/CombatScriptParser.cs#L5-L41","documentation":"Error \"当前任务暂不支持使用json策略，请使用txt策略\" thrown in babalae/better-genshin-impact.","triggerScenarios":"CombatScriptParser.ReadAndParse 收到 .json 后缀的路径，该解析器只支持txt策略，防护性地抛出。","commonSituations":"在只支持txt策略的旧任务（如部分自动战斗入口）里选择了json格式的战斗策略文件。","solutions":["将战斗策略文件改为 .txt 格式","使用支持 JSON 策略的任务类型（如自动战斗）","将 JSON 策略内容改写为文本指令格式"],"exampleFix":"改用txt格式战斗脚本；需要json策略时使用支持json策略的任务入口。","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a7cb36712dcb409be610257d877fcea3597e9d6b","analyzedAt":"2026-08-13T16:44:57.548Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}