Crash Assistant

Crash Assistant - Crash Assistant 崩溃助手

在 Minecraft 崩溃后显示一个图形界面,立即展示并分析所有受影响的日志。
fabric / forge / legacy-fabric / neoforge 作者 KostromDan 支持版本 1.6.4 - 26.1
下载量
6,807,903
关注数
316
数据来源
Modrinth
模组详细介绍

在 Minecraft 崩溃后显示一个 GUI,立即展示所有相关的游戏/启动器日志、崩溃报告或 hs_err 文件。提供一键上传、复制链接以及执行其他操作的功能,让问题反馈、调试和故障排查更轻松。会分析日志中的许多已知崩溃原因,并提供许多实用的分析工具。如果检测到 Minecraft 正在使用集成显卡,而系统中有可用的独立显卡,则会发出警告。还包含许多常见问题的自动修复功能。

该模组仅限客户端使用。在服务器上,它不会执行任何操作。

如果你有任何问题,欢迎加入我的 Discord 服务器:https://discord.gg/dV8WFrJZK6

功能:

GUI:

GUI

支持拖放。你可以直接从 GUI 中把文件移动到任意位置,或者通过从“Available log files:”标签拖动,一次性拖放所有日志。

日志分析:

分析日志中的许多已知崩溃原因。如果检测到已知问题,它会显示一个对话框,其中包含问题描述和详细解决方案。

atio6axx

支持的分析:

hs_err (JVM 崩溃):

  • AlLibAlcCleanup(某种和 RAM 分配相关的诡异问题)
  • atio6axx.dll(AMD 驱动问题)
  • glfw.dll(通用 GPU 驱动问题)
  • ig7icd64.dll(旧版 Intel 集成显卡驱动问题)
  • InsufficientMemory(系统物理内存或交换空间不足)
  • JavaTooHigh(例如 Spark 模组在 Java ≥ 22 上崩溃)
  • jemalloc.dll(jemalloc 内存分配器相关问题)
  • jvm.dll(潜在的硬件问题或 JVM 自身的 bug)
  • libglfw.so / libopenal.so(常见 Linux 库问题)
  • libGLProgrammability.dylib(macOS 上不兼容的光影包)
  • ~StubRoutines::SafeFetch32(Apple Silicon 上的 macOS 使用了错误的 JDK)
  • nglMultiDrawElementsBaseVertex / 0x0000(GPU 驱动问题)
  • nvoglv64.dll(Nvidia 驱动问题)

log / crash-report:

  • ConnectorIncompatibleFabricMods(在使用 Sinytra Connector 时,检测诸如 Sodium/Iris 等不兼容的 Fabric 模组)
  • Create6Addons(Create 版本与其附属模组之间不兼容,提供一键查找所有不兼容模组的按钮)
  • CtovWithoutLithostitched(ChoiceTheorem's Overhauled Village 模组缺少必需依赖)
  • CurseForgeCorrupted(来自 CurseForge 启动器的 Minecraft/Loader 安装损坏)
  • DiskSpaceEnded(系统磁盘空间已耗尽)
  • DuplicatedMods(安装了同一模组的多个版本)
  • EpicFightAddons(Epic Fight 版本与其附属模组之间不兼容,提供一键查找所有不兼容模组的按钮)
  • FeatureOrderCycle(世界生成特性的循环依赖)
  • FerriteCoreNeighborTable(检测模组错误访问 FerriteCore 的 neighbor table,并提供临时配置变通方案)
  • GeckoLibOculusCompat(警告 GeckoLib Oculus Compat 在 Minecraft 1.20.1+ 上已不再需要且会导致崩溃)
  • GroovyModLoaderIPv6(GML 因 IPv6 问题下载映射失败,包含一键修复此问题的 Auto-Fix,或一键查找所有依赖 GML 的模组)
  • KubeJSDataPack(使用 KubeJS 加载数据包时出错)
  • LanguageProviderMismatch(模组需要不同版本的 Forge/NeoForge)
  • LegacyTooManyIds(在 1.12.2 等旧版 Minecraft 中超过方块/物品 ID 上限)
  • MixinApply(检测由 Mixin 冲突或错误引起的多种崩溃,包含缺失类检测及用于查找依赖缺失类模组的 Auto-Fix)
  • MissingEmbeddiumForOculus(安装了 Oculus 模组但缺少其必需依赖 Embeddium)
  • MissingIndium(某个模组需要 Indium 以兼容 Fabric Renderer API,但未安装)
  • MissingUnsupportedDependencies(Forge/NeoForge 检测到通用依赖冲突)
  • ModernFixWatchDog(集成服务器发生死锁)
  • NeoForgeVersion1201(提示 1.20.1 上的 Neo 已被弃用且会导致许多崩溃,Neo 官方也建议在该版本切换到 Forge)
  • ModuleFind / ModuleResolution(Java 模块系统错误,通常由依赖冲突导致,可立即识别具体是哪个模组引发问题;如果没有本模组,通常需要二分排查)
  • Optifine(警告 OptiFine 已知会导致许多兼容性问题,并建议使用现代替代方案)
  • OutOfMemoryError(Minecraft 分配的 RAM 已耗尽)
  • ResourceLocationException(资源名称包含无效字符,通常由非英文系统设置导致)
  • Rubidium(警告 Rubidium 已被弃用且会导致问题,建议使用 Embeddium)
  • ServerConfigCorrupted(服务器端配置文件格式损坏)
  • UnsupportedClassVersion(某个模组使用比当前 Java 更高的版本编译)
  • UsedByAnotherProcess(文件被其他程序锁定)
  • Version1_21(警告 Minecraft 1.21 已过时且会导致许多问题;建议切换到 1.21.1)

win_event (Windows 事件日志):

  • WasClosedByWindows(游戏卡死并被操作系统终止,通常是在加载期间有用户输入导致)

Codex Logs Analyzer Integration:

  • 上传后,每个受支持的日志都会由 mclo.gs 的 Codex 日志分析器进行分析。有时 Codex 的提示对普通用户来说不够清晰。在这种情况下,会显示带有修复指南的详细说明:
  • 出错的方块/实体

这能显著减轻整合包支持的负担,因为很大一部分问题(超过 75%)都是常见且容易解决的问题。如果需要,你也可以在配置中屏蔽任意分析项。

分析工具

Crash Assistant 包含一套可从 GUI 菜单访问的强大分析工具:

  • Create/Epic Fight Addons Compatibility:扫描你的模组,找出与你已安装的 Create 或 Epic Fight 版本不兼容的附属模组。
  • MCreator Mod Detector:列出所有使用 MCreator 工具制作的模组。
  • Package/Class Finder:搜索所有模组,找出包含特定 Java 类或包的模组。
  • Jdeps Dependencies Analysis:识别哪些模组依赖特定类或包,帮助调试 NoClassDefFoundError 崩溃。

集成显卡检测:

检查游戏是否正在使用集成显卡运行,而系统中其实有更强的独立显卡可用,并显示警告。包含一个一键 Auto-Fix 按钮,用于配置 Windows 让 Java 使用正确的 GPU。

IGPU

Intel 芯片 Bug 警告:

检测你的 CPU 是否属于已知存在严重稳定性 bug 的 Intel 13/14 代型号。它会检查你的微码版本,并提供详细警告和建议。

兼容性:

该模组以最高兼容性和稳定性为目标设计。它运行在一个独立进程中,等待 Minecraft JVM 停止。它会以 Coremod(Forge)或 LanguageAdapter(Fabric/Quilt)的形式极早加载,从而甚至能捕获启动早期的崩溃。

一键上传所有日志并复制链接:

你可以一键上传所有可用日志,并获得一条格式整齐、可直接粘贴到 GitHub 或 Discord 的消息。如果你是整合包作者,你将始终能够确认所有日志都是最新的,并包含所有可用信息,而无需再向用户索取额外文件。

一键加入预配置链接:

你的整合包玩家在崩溃后可以一键找到你的 Discord 并请求帮助。再加上极其便捷的日志上传功能,这将显著提高单个崩溃被反馈的概率。对于单独下载用户,或在未配置时,它会将用户引导到相应 Mod Loader 的 Discord 服务器。

模组列表:

每次由整合包作者启动游戏时,都会保存整合包的模组列表。你也可以使用 /crash_assistant modlist save 命令手动保存模组列表。它对整合包和单独下载的工作方式不同:

整合包:

生成的消息会包含终端用户相较于官方整合包列表新增、删除或更新的模组列表。

单独下载 / 整合包作者:

跟踪自上次成功启动以来模组列表的变化。如果你点了“全部更新”按钮,或者添加了有问题的模组后忘了是哪些,这会非常有用。

配置:

完全可配置:你可以启用或禁用任意功能、更改 Discord 链接,并自定义标签、按钮等文本。

本地化:

完全本地化。当前支持的语言:

  • English
  • German
  • Russian
  • Chinese
  • Spanish
  • Italian

没有硬编码字符串(日志相关除外)。你可以更改每一个可见字符串。有关更多本地化信息,或者如果你想添加新语言,请阅读 lang README。

崩溃命令:

/crash_assistant crash 有 3 个选项:

  • game - 让 Minecraft 崩溃并生成崩溃报告。
  • jvm - 让 JVM 崩溃并生成 hserrpid 文件。
  • no_crash - 在不崩溃的情况下应用附加参数。

在崩溃目标之后,你还可以使用附加参数:

  • --withThreadDump - 在日志中生成线程转储。
  • --withHeapDump - 生成堆转储文件。
  • --GCBeforeHeapDump - 在堆转储前执行垃圾回收。

Problematic Mods Config:

添加一个配置文件 problematicmodsconfig.json,允许你将某些模组标记为与你的整合包不兼容。它有两种模式:检测到不兼容模组时直接使游戏崩溃,或者仅通知用户。添加该模组的终端用户将收到一条预配置消息,解释其不兼容的原因,并会获得一个用于移除它的按钮。

合作伙伴

YourKit 通过创新且智能的工具支持开源项目,用于监控和分析 Java 与 .NET 应用程序性能。

YourKit 是 YourKit Java Profiler、YourKit .NET Profiler 和 YourKit YouMonitor 的创建者。

YourKit

隐私

日志仅会在用户明确点击“Upload”按钮时上传,并且会直接发送到 mclo.gs,这是由 Aternos 运营的日志分享服务。

在发布之前,mclo.gs 会自动脱敏敏感数据——例如访问令牌、IP 地址、系统用户名等——以确保分享内容安全。

关于保存期限、谁可以访问日志,以及你在 GDPR 下的权利的完整信息,可在他们的隐私政策中查看。

由于 mclo.gs 的移动端 UI 可能不太方便,Crash Assistant 默认会通过 gnomebot.dev 对返回的 URL 进行包装(例如 https://mclo.gs/X → https://gnomebot.dev/paste/mclogs/X)。你可以在设置中禁用此行为。gnomebot.dev 是由 Latvian Modder 创建的开源在线日志查看器;它会从 mclo.gs 获取数据,并以更方便的格式展示给用户;它会在最后一次访问后的五分钟内将 paste 缓存在 RAM 中,之后丢弃。

Crash Assistant 本身完全是客户端侧的——它没有服务器,也绝不会接收你的日志副本。

这只是简要的隐私说明。完整隐私政策可在 Crash Assistant 内的 Privacy 菜单中查看。Crash Assistant 会在你首次尝试上传日志时提示你阅读并接受我们的隐私政策。

基本信息
模组名称Crash Assistant
作者KostromDan
下载量6,807,903
关注数316
支持版本1.6.4 - 26.1
加载器fabric / forge / legacy-fabric / neoforge
客户端required
服务端unsupported