请问有没有什么教程帮忙能看懂报错文件

Users who are viewing this thread

现阶段游戏更新导致mod报错 或者喜欢的mod太多 导致的游戏崩溃甚至无法进入游戏 有没有工具或者教程帮忙简单的弄懂报错文件 或者mod冲突的问题的 游戏自带的弹出但是看不懂 也不清楚到底是什么mod的问题 一项项mod添加查找,导致游戏的积极性消失。使得玩游戏变得像工作一样麻烦
 
您好,DR_wang,
欢迎来到 TaleWorlds 论坛。

首先,遗憾的是,没有简单的工具或教程可以帮助您理解报错文件。报错文件中的说明和自动生成的报错报告提供了一些信息,就如同其报告工具与报错报告描述的那样:
Bannerlord has encountered a problem and will close itself.
This is a community Crash Report. Please save it and use it for reporting the error. Do not provide screenshots, provide the report!
Most likely this error was caused by a custom installed module.
报错报告主要用于玩家提交给 TaleWorlds 的 QA 支持团队,以帮助开发人员更好地找到游戏客户端中的兼容性错误,它的目的是为了改进游戏质量并提供更好的用户体验。

然而,这并不意味着无法理解报错报告。通过观察报错报告的结构和显示的语法,我们可以推断出游戏和报错报告是使用.NET框架下的C#编程语言生成的。因此,只需要对 .NET框架和 C# 编程语言进行一些学习,就可以大致理解报错报告中的语法逻辑。然而,个人而言,我不建议不具备编程基础的玩家们这样做,除非你喜欢探索和折腾。因为最方便的方法是可以直接将报错报告提交给QA团队。

简单来说:请直接将报错报告通过私信发送给 @MArdA TaleWorlds 就可以得到专业的回答,而不是发送给我。
我只是利用个人的空闲时间,希望能够运用自己的知识和研究技巧来帮助一些玩家,我是远远不如 QA 团队专业的。

现阶段游戏更新导致mod报错 或者喜欢的mod太多 导致的游戏崩溃甚至无法进入游戏 有没有工具或者教程帮忙简单的弄懂报错文件 或者mod冲突的问题的 游戏自带的弹出但是看不懂

根据您的描述,这是一个有关于 Mod 模组冲突的问题。因此我们需要对报告中的 "Involved Modules" (受冲突的模组)一栏进行解读。这是您分享的报告中 "Involved Modules" 一栏中显示的内容:
C#:
Sandbox
Method: virtual System.Void SandBox.GauntletUI.GauntletCraftingScreen::OnCraftingLogicInitialized()
Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77)
HarmonyIssue: False

这些命令是关于一个名为"Sandbox"的模块中的一个方法的信息。这个方法是在一个名为"GauntletCraftingScreen"的类中的"GauntletCraftingScreen.OnCraftingLogicInitialized()"方法。

让我们逐一解释这些命令:
  1. Sandbox:这是模块的名称,这是游戏 Mount&Blade II:Bannerlord (骑马与砍杀 2:霸主)中的一个模块(或者可以称作为子系统,同时与战役等模式相区别)。
    • 在C#中,命名空间(模块/子系统)是一种包含类、结构、枚举、接口等的容器。
  2. Method: virtual System.Void SandBox.GauntletUI.GauntletCraftingScreen::OnCraftingLogicInitialized():这是一个方法的全名。它位于"SandBox.GauntletUI.GauntletCraftingScreen"这个类中,方法名为"OnCraftingLogicInitialized"。"System.Void"表示这个方法没有返回值(即它不返回任何信息,只执行某些操作)。"virtual"表示这个方法可以在任何继承了"GauntletCraftingScreen"类的子类中被重写。
    • 这是一个C#方法的声明。"virtual"关键字表示这个方法可以在任何继承了"GauntletCraftingScreen"类的子类中被重写。"System.Void"表示这个方法没有返回值。
  3. Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77):这是在执行堆栈中的一个帧,表示在运行时出现错误或异常时程序的状态。"IL Offset: 77"表示错误发生在方法的第77个中间语言(Intermediate Language,IL)指令。这
    • 在执行堆栈中的一个帧,表示在运行时出现错误或异常时程序的状态。"IL Offset: 77"表示错误发生在方法的第77个中间语言(Intermediate Language,IL)指令。在.NET中,C#代码在编译时会被转换为IL,然后在运行时被进一步编译为机器代码。
  4. HarmonyIssue: False:这表示这个问题与 Harmony(一个用于创建游戏模块的库)无关
    • 这个不需要进一步解读,只需要知道与 Harmony 无关即可。
因此我们可以简单地根据 Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77) 推测出,同时根据您的问题描述,我们可以了解到:
例如这个报错文件 mod提示里面没问题 但是mod加多了 打开铁匠铺就会报错崩溃

这确实是由与铁匠铺锻造相关的一个加载逻辑错误导致的。

既然已经有一个相对明确而非模糊的范围,接下来最方便的方法就是以此为线索,检查已安装的Mod中是否包含了拓展铁匠铺功能的Mod,然后将其停用即可。相较于“大海捞针”般的盲目搜索,至少我们有一些线索可以追踪。

编辑补充:有论坛内的骑友提醒我可以通过调高 Sandbox 模组(您报错中显示的模组)的排序优先级来解决一些潜在导致的冲突问题。
示例:Native > Sandbox Core > Sandbox > CustomBattle >StoryMode


也不清楚到底是什么mod的问题 一项项mod添加查找,导致游戏的积极性消失。使得玩游戏变得像工作一样麻烦

最后,我必须坦诚地说,Modding文化和魅力就是如此。

与那些无法进行Modding和改装的游戏相比,玩家们被赋予了对游戏进行自定义的能力。然而,要让自己的《骑马与砍杀》游戏变得如“齐天大圣手中金箍棒”般顺手,就需要不断地摸索、查找所需功能并进行调试,直到满意为止。然而,正是玩家之间互助的精神和富有创造力的大神们不断在Mod中展现令人惊叹的创意,使得《骑马与砍杀》系列的Mod社区能够持续繁荣至今。

毕竟,改装 Modding 实际上就是一个"愿意尝试、愿意付出的过程(愿打愿挨)",玩家们必须不断尝试、改装,才能使自己的《骑马与砍杀》游戏与个人的游玩风格相契合。诚然,官方还需要在 Mod 兼容性上做更多努力,因为现今因为版本更新导致一些 Mod 随着更新而出现报错的问题也是客观存在的。
最后,每个人都有自己在卡拉迪亚之路上的旅程,而《骑马与砍杀》的框架赋予了玩家们在这个大陆上用自己的玩法创造自己独一无二传奇的能力。祝愿大家游戏愉快!

另外,我必须谦虚地承认我平时对国内的骑友们常用 Mod 的了解不多,相信平时玩的多的 Mod 履历比较丰富的骑友应该可以比较容易地察觉是哪一个 Mod 可能会导致冲突,希望大家能互相给予帮助。并对我不专业的地方进行指正,谢谢。
 
Last edited:
您好,DR_wang,
欢迎来到 TaleWorlds 论坛。

首先,遗憾的是,没有简单的工具或教程可以帮助您理解报错文件。报错文件中的说明和自动生成的报错报告提供了一些信息,就如同其报告工具与报错报告描述的那样:

报错报告主要用于玩家提交给 TaleWorlds 的 QA 支持团队,以帮助开发人员更好地找到游戏客户端中的兼容性错误,它的目的是为了改进游戏质量并提供更好的用户体验。

然而,这并不意味着无法理解报错报告。通过观察报错报告的结构和显示的语法,我们可以推断出游戏和报错报告是使用.NET框架下的C#编程语言生成的。因此,只需要对 .NET框架和 C# 编程语言进行一些学习,就可以大致理解报错报告中的语法逻辑。然而,个人而言,我不建议不具备编程基础的玩家们这样做,除非你喜欢探索和折腾。因为最方便的方法是可以直接将报错报告提交给QA团队。

简单来说:请直接将报错报告通过私信发送给 @MArdA TaleWorlds 就可以得到专业的回答,而不是发送给我。
我只是利用个人的空闲时间,希望能够运用自己的知识和研究技巧来帮助一些玩家,我是远远不如 QA 团队专业的。



根据您的描述,这是一个有关于 Mod 模组冲突的问题。因此我们需要对报告中的 "Involved Modules" (受冲突的模组)一栏进行解读。这是您分享的报告中 "Involved Modules" 一栏中显示的内容:
C#:
Sandbox
Method: virtual System.Void SandBox.GauntletUI.GauntletCraftingScreen::OnCraftingLogicInitialized()
Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77)
HarmonyIssue: False

这些命令是关于一个名为"Sandbox"的模块中的一个方法的信息。这个方法是在一个名为"GauntletCraftingScreen"的类中的"GauntletCraftingScreen.OnCraftingLogicInitialized()"方法。

让我们逐一解释这些命令:
  1. Sandbox:这是模块的名称,这是游戏 Mount&Blade II:Bannerlord (骑马与砍杀 2:霸主)中的一个模块(或者可以称作为子系统,同时与战役等模式相区别)。
    • 在C#中,命名空间(模块/子系统)是一种包含类、结构、枚举、接口等的容器。
  2. Method: virtual System.Void SandBox.GauntletUI.GauntletCraftingScreen::OnCraftingLogicInitialized():这是一个方法的全名。它位于"SandBox.GauntletUI.GauntletCraftingScreen"这个类中,方法名为"OnCraftingLogicInitialized"。"System.Void"表示这个方法没有返回值(即它不返回任何信息,只执行某些操作)。"virtual"表示这个方法可以在任何继承了"GauntletCraftingScreen"类的子类中被重写。
    • 这是一个C#方法的声明。"virtual"关键字表示这个方法可以在任何继承了"GauntletCraftingScreen"类的子类中被重写。"System.Void"表示这个方法没有返回值。
  3. Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77):这是在执行堆栈中的一个帧,表示在运行时出现错误或异常时程序的状态。"IL Offset: 77"表示错误发生在方法的第77个中间语言(Intermediate Language,IL)指令。这
    • 在执行堆栈中的一个帧,表示在运行时出现错误或异常时程序的状态。"IL Offset: 77"表示错误发生在方法的第77个中间语言(Intermediate Language,IL)指令。在.NET中,C#代码在编译时会被转换为IL,然后在运行时被进一步编译为机器代码。
  4. HarmonyIssue: False:这表示这个问题与 Harmony(一个用于创建游戏模块的库)无关
    • 这个不需要进一步解读,只需要知道与 Harmony 无关即可。
因此我们可以简单地根据 Frame: void SandBox.GauntletUI.GauntletCraftingScreen.OnCraftingLogicInitialized() (IL Offset: 77) 推测出,同时根据您的问题描述,我们可以了解到:


这确实是由与铁匠铺锻造相关的一个加载逻辑错误导致的。

既然已经有一个相对明确而非模糊的范围,接下来最方便的方法就是以此为线索,检查已安装的Mod中是否包含了拓展铁匠铺功能的Mod,然后将其停用即可。相较于“大海捞针”般的盲目搜索,至少我们有一些线索可以追踪。

编辑补充:有论坛内的骑友提醒我可以通过调高 Sandbox 模组(您报错中显示的模组)的排序优先级来解决一些潜在导致的冲突问题。
示例:Native > Sandbox Core > Sandbox > CustomBattle >StoryMode




最后,我必须坦诚地说,Modding文化和魅力就是如此。

与那些无法进行Modding和改装的游戏相比,玩家们被赋予了对游戏进行自定义的能力。然而,要让自己的《骑马与砍杀》游戏变得如“齐天大圣手中金箍棒”般顺手,就需要不断地摸索、查找所需功能并进行调试,直到满意为止。然而,正是玩家之间互助的精神和富有创造力的大神们不断在Mod中展现令人惊叹的创意,使得《骑马与砍杀》系列的Mod社区能够持续繁荣至今。

毕竟,改装 Modding 实际上就是一个"愿意尝试、愿意付出的过程(愿打愿挨)",玩家们必须不断尝试、改装,才能使自己的《骑马与砍杀》游戏与个人的游玩风格相契合。诚然,官方还需要在 Mod 兼容性上做更多努力,因为现今因为版本更新导致一些 Mod 随着更新而出现报错的问题也是客观存在的。
最后,每个人都有自己在卡拉迪亚之路上的旅程,而《骑马与砍杀》的框架赋予了玩家们在这个大陆上用自己的玩法创造自己独一无二传奇的能力。祝愿大家游戏愉快!

另外,我必须谦虚地承认我平时对国内的骑友们常用 Mod 的了解不多,相信平时玩的多的 Mod 履历比较丰富的骑友应该可以比较容易地察觉是哪一个 Mod 可能会导致冲突,希望大家能互相给予帮助。并对我不专业的地方进行指正,谢谢。
好的 感谢您的帮助
 
Back
Top Bottom