第一步
- 检查您安装的 McHorse 系列模组是否为最新版,或是否为同一时间发布的版本;
- 检查是否缺少了某个必要的依赖模组。使用 Blockbuster 时必须同时加载 McLib、Aperture、Metamorph、Minema。
- 不要自作聪明故意漏装某几个模组,然后跑到群里喊自己为什么启动不了。
如果有上述问题,请参考下文中的版本号进行全面的升级,新旧版混用通常也是导致崩溃问题的关键。
若仍无法解决,请继续阅读,稍后会指引你找到游戏崩溃日志文件所在的文件夹。
📥 模组 / 软件下载与安装
找到游戏崩溃日志
文件位置
通常情况下,在客户端的 .minecraft/crash-reports
目录下可获取游戏崩溃日志,文件名通常为 crash-年-月-日_时.分.秒-client.txt
。
找不到崩溃日志
如果没有生成崩溃日志,我们可能会要求你在进入游戏世界后,持续按下 F3 + C
10 秒手动触发崩溃。届时,你就可以在上述路径下找到日志文件了。
不要发错日志文件
请不要只上传启动器报错截图,或是上传启动器的日志文件(尤其不要提供 HMCL 的崩溃日志和截图),部分启动器会生成崩溃信息包,但信息包内也可能不包含崩溃日志,请不要上传。
如果您确实没有找到这个文件目录,或是该目录下没有最新的崩溃日志(某些情况下确实不会生成崩溃日志),再考虑发送 .minecraft/logs
下的 latest.log
以及 debug.log
游戏运行日志文件。如果有崩溃日志,请优先上传崩溃日志,而非游戏运行日志。
根据崩溃现象进行自我排查
1. 游戏无法正常启动
表现:游戏无法正常启动,点击启动后没有弹出游戏窗口
排查步骤:
- 游戏资源库是否完整 —— 比如使用官方的 Forge 安装器可能会因为网络问题无法下载完整的资源库造成无法启动;
- 游戏关键文件是否缺失 —— 通常情况下,启动器会自动补全;
- McHorse 系列模组中是否缺失了某个模组 —— 请参考「下载与安装」中列出的模组以及安装注意事项
- 启动器中的游戏内存是否设置正确;
- Java 版本是否为 Java 8 —— 如果使用 Java 9+ 或使用 OpenJ9 可能会出现其他不可预见的问题;
- Java 路径是否设置正确;
- 启动器是否有其他设置上的问题;
- Mod 文件是否损坏 —— 可以在下载页面获取文件的 MD5,并与本地的文件进行比对来排查。
如果你使用的是 HMCL 启动器,且在启动时弹出错误报告,我们几乎不能根据错误代码提出解决方案。通常你可以换用其他的启动器以解决无法启动的问题,推荐使用 PCL2、BakaXL、MutilMC 等启动器。
2. 游戏过程中发生崩溃
表现:游戏能正常启动,但经过了某个特定操作后,游戏发生崩溃
排查步骤:
- McHorse 系列模组中是否缺失了某个模组 —— 请参考「下载与安装」中列出的模组以及安装注意事项
- 是否安装了同一时间发布的 McHorse 系列模组 —— 请参考「下载与安装」中列出的模组版本号以及安装注意事项
如已排除模组版本问题,请参考上文发送崩溃日志文件。如果可以的话,请务必告诉我们如何重现崩溃(你是在进行怎样的操作时才会造成崩溃),提供视频演示那是坠吼的。
3. 游戏在启动阶段崩溃
表现:Forge 的加载进度条跑满或加载到一半时崩溃,或在加载完成后弹出游戏崩溃提示
排查步骤:
- 模组之间是否有冲突 —— 建议将 mods 文件夹的完整截图发到群组中
- Forge 版本是否存在问题 —— 1.12.2 的用户可以尝试将 Forge 版本切换为 14.23.5.2768 以上 ,2847 以下的版本
- McHorse 系列模组的版本是否过旧 —— 每个版本的 Blockbuster 或 Aperture 所依赖的模组都不一样,最好的办法就是将模组全部升级到最新版本
- mod 文件是否损坏 —— 极为罕见,可以通过 MD5 校验 jar 文件进行排查
- 如果你的 PC 只有核心显卡而没有独立显卡,且 CPU 上市时间较早(最高只支持到 OpenGL 2.1),也可能会在加载了 Blockbuster 系列模组后造成崩溃
- 是否使用了 OpenJDK(OpenJ9)启动游戏 —— 如果有,请尝试 Oracle JDK / JRE
如无法解决,请参考上文发送崩溃日志文件。
4. 常见的崩溃日志及其解决方案
以下为几种常见的崩溃情况,且崩溃信息基本相同。如果您在对比以下几种情况后,发现它们与自己的崩溃信息相符,可按照提示进行尝试解决。
如果仍无法解决,请将崩溃日志发送至群组内。
进入单人存档会导致崩溃,但多人游戏不会
如果你的崩溃日志中包含以下信息,且您的启动器为第三方启动器,届时请将您的启动器升级为最新版,或前往 Minecraft.net 购买 Minecraft Java Edition 国际版正版账号(支持国内常见的支付方式),并使用正版登录启动游戏。
Description: Updating screen events
java.lang.IllegalArgumentException: Name and ID cannot both be blank
at com.mojang.authlib.GameProfile.<init>(GameProfile.java:26)
at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:186)
at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:173)
at net.minecraft.client.Minecraft.func_71371_a(Minecraft.java:2421)
at net.minecraftforge.fml.client.FMLClientHandler.tryLoadExistingWorld(FMLClientHandler.java:734)
at net.minecraft.client.gui.GuiListWorldSelectionEntry.func_186777_e(GuiListWorldSelectionEntry.java:249)
at net.minecraft.client.gui.GuiListWorldSelectionEntry.func_186774_a(GuiListWorldSelectionEntry.java:199)
at net.minecraft.client.gui.GuiWorldSelection.func_146284_a(SourceFile:82)
at net.minecraft.client.gui.GuiScreen.func_73864_a(GuiScreen.java:443)
at net.minecraft.client.gui.GuiWorldSelection.func_73864_a(SourceFile:116)
at net.minecraft.client.gui.GuiScreen.func_146274_d(GuiScreen.java:533)
at net.minecraft.client.gui.GuiWorldSelection.func_146274_d(SourceFile:49)
at net.minecraft.client.gui.GuiScreen.func_146269_k(GuiScreen.java:501)
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1759)
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1098)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
在进入存档时崩溃,且进入新存档也会发生崩溃
如果你的崩溃日志中包含以下信息,请检查您使用的是否为 64 位 JRE,并检尝试为游戏多分配一些内存(至少需要 2 GB)。
Description: Unexpected error
java.lang.NullPointerException: Unexpected error
at net.minecraft.world.World.getSkyColorBody(World.java:1484)
at net.minecraft.world.WorldProvider.getSkyColor(WorldProvider.java:463)
at net.minecraft.world.World.func_72833_a(World.java:1475)
at net.minecraft.client.renderer.EntityRenderer.func_78466_h(EntityRenderer.java:2286)
at net.minecraft.client.renderer.EntityRenderer.func_175068_a(EntityRenderer.java:1639)
at net.minecraft.client.renderer.EntityRenderer.func_78471_a(EntityRenderer.java:1614)
at net.minecraft.client.renderer.EntityRenderer.func_181560_a(EntityRenderer.java:1385)
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1119)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
打开光影或使用过程中发生崩溃
如果你的崩溃日志中包含以下信息,请将 OptiFine 升级至最新的稳定版本,并卸载所有除 OptiFine 以外的「优化模组」。
Description: Unexpected error
java.lang.NullPointerException
at net.minecraft.client.renderer.ActiveRenderInfo.projectViewFromEntity(ActiveRenderInfo.java:57)
at net.minecraft.client.renderer.ActiveRenderInfo.getBlockStateAtEntityViewpoint(ActiveRenderInfo.java:68)
at net.minecraft.client.renderer.EntityRenderer.getFOVModifier(EntityRenderer.java:680)
at net.minecraft.client.renderer.EntityRenderer.setupCameraTransform(EntityRenderer.java:933)
at net.optifine.shaders.ShadersRender.renderShadowMap(ShadersRender.java:284)
at net.optifine.shaders.Shaders.beginRender(Shaders.java:4093)
at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1592)
at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1384)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1119)
at net.minecraft.client.Minecraft.run(Minecraft.java:3942)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)