From 820e4c0cefa31e9a3a1303826a2b0749222efe3c Mon Sep 17 00:00:00 2001 From: "2573874409@qq.com" Date: Tue, 2 May 2023 19:07:17 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20ModCrash.vb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb index 9381391..8c59b80 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb @@ -361,6 +361,7 @@ 低版本Forge与高版本Java不兼容 版本Json中存在多个Forge Mod过多导致超出ID限制 + NightConfig库问题 End Enum ''' ''' 根据 AnalyzeLogs 与可能的版本信息分析崩溃原因。 @@ -468,6 +469,8 @@ Done: If LogMc.Contains("java.lang.NoSuchMethodError: 'void net.minecraft.client.renderer.texture.SpriteContents.(net.minecraft.resources.ResourceLocation, ") Then AppendReason(CrashReason.OptiFine与Forge不兼容) If LogMc.Contains("java.lang.NoSuchMethodError: 'void net.minecraft.client.renderer.block.model.BakedQuad.(int[], int, net.minecraft.core.Direction, net.minecraft.client.renderer.texture.TextureAtlasSprite, boolean, boolean)'") Then AppendReason(CrashReason.OptiFine与Forge不兼容) If LogMc.Contains("java.lang.NoSuchMethodError: 'void net.minecraft.server.level.DistanceManager.addRegionTicket(net.minecraft.server.level.TicketType, net.minecraft.world.level.ChunkPos, int, java.lang.Object, boolean)'") Then AppendReason(CrashReason.OptiFine与Forge不兼容) + If LogMc.Contains("java.lang.NoSuchMethodError: 'void net.minecraft.server.level.DistanceManager.removeRegionTicket(net.minecraft.server.level.TicketType, net.minecraft.world.level.ChunkPos, int, java.lang.Object, boolean)'") Then AppendReason(CrashReason.OptiFine与Forge不兼容) + If LogMc.Contains("java.lang.NoSuchMethodError: 'net.minecraft.network.chat.FormattedText net.minecraft.client.gui.Font.ellipsize(net.minecraft.network.chat.FormattedText, int)'") Then AppendReason(CrashReason.OptiFine与Forge不兼容) If LogMc.Contains("Open J9 is not supported") OrElse LogMc.Contains("OpenJ9 is incompatible") OrElse LogMc.Contains(".J9VMInternals.") Then AppendReason(CrashReason.使用OpenJ9) If LogMc.Contains("java.lang.NoSuchFieldException: ucp") Then AppendReason(CrashReason.Java版本过高) If LogMc.Contains("because module java.base does not export") Then AppendReason(CrashReason.Java版本过高) @@ -483,6 +486,7 @@ Done: If LogMc.Contains("Maybe try a lower resolution resourcepack?") Then AppendReason(CrashReason.材质过大或显卡配置不足) If LogMc.Contains("java.lang.NoSuchMethodError: net.minecraft.world.server.ChunkManager$ProxyTicketManager.shouldForceTicks(J)Z") AndAlso LogMc.Contains("OptiFine") Then AppendReason(CrashReason.OptiFine导致无法加载世界) If LogMc.Contains("Unsupported class file major version") Then AppendReason(CrashReason.Java版本不兼容) + If LogMc.Contains("com.electronwill.nightconfig.core.io.ParsingException: Not enough data available") Then AppendReason(CrashReason.NightConfig库问题) If LogMc.Contains("Invalid module name: '' is not a Java identifier") Then AppendReason(CrashReason.Mod名称包含特殊字符) If LogMc.Contains("java.lang.UnsupportedClassVersionError: net/fabricmc/loader/impl/launch/knot/KnotClient : Unsupported major.minor version") Then AppendReason(CrashReason.Java版本不兼容) If LogMc.Contains("Could not reserve enough space") Then @@ -883,6 +887,8 @@ NextStack: End If Case CrashReason.材质过大或显卡配置不足 Results.Add("你所使用的材质分辨率过高,或显卡配置不足,导致游戏无法继续运行。\n\n如果你正在使用高清材质,请将它移除。\n如果你没有使用材质,那么你可能需要更新显卡驱动,或者换个更好的显卡……\h") + Case CrashReason.材质过大或显卡配置不足 + Results.Add("当前游戏因为 Night Config 库的一些问题,无法继续运行。\n\n你可以尝试安装 Night Config Fixes 模组,这或许能帮助你解决这个问题。\n可访问该模组的 GitHub 仓库了解更多。\h") Case CrashReason.光影或资源包导致OpenGL1282错误 Results.Add("你所使用的光影或材质导致游戏出现了一些问题……\n\n请尝试删除你所添加的这些额外资源。\h") Case CrashReason.Mod过多导致超出ID限制 From c02045bfe056190ada00561429b1ed111e0368f1 Mon Sep 17 00:00:00 2001 From: "2573874409@qq.com" Date: Wed, 3 May 2023 10:28:17 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20ModCrash.vb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://mclo.gs/rVgURRg --- Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb index 8c59b80..ee52d1c 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb @@ -362,6 +362,7 @@ 版本Json中存在多个Forge Mod过多导致超出ID限制 NightConfig库问题 + ShadersMod与Optifine同时安装 End Enum ''' ''' 根据 AnalyzeLogs 与可能的版本信息分析崩溃原因。 @@ -480,6 +481,7 @@ Done: If LogMc.Contains("Extracted mod jars found, loading will NOT continue") Then AppendReason(CrashReason.Mod文件被解压) If LogMc.Contains("Couldn't set pixel format") Then AppendReason(CrashReason.显卡驱动不支持导致无法设置像素格式) If LogMc.Contains("java.lang.OutOfMemoryError") Then AppendReason(CrashReason.内存不足) + If LogMc.Contains("java.lang.RuntimeException: Shaders Mod detected. Please remove it, OptiFine has built-in support for shaders.") Then AppendReason(CrashReason.ShadersMod与Optifine同时安装) If LogMc.Contains("java.lang.NoSuchMethodError: sun.security.util.ManifestEntryVerifier") Then AppendReason(CrashReason.低版本Forge与高版本Java不兼容) If LogMc.Contains("1282: Invalid operation") Then AppendReason(CrashReason.光影或资源包导致OpenGL1282错误) If LogMc.Contains("signer information does not match signer information of other classes in the same package") Then AppendReason(CrashReason.文件或内容校验失败, If(RegexSeek(LogMc, "(?<=class "")[^']+(?=""'s signer information)"), "").TrimEnd(vbCrLf)) @@ -869,6 +871,8 @@ NextStack: End If Case CrashReason.OptiFine与Forge不兼容 Results.Add("由于 OptiFine 与当前版本的 Forge 不兼容,导致了游戏崩溃。\n\n请前往 OptiFine 官网(https://optifine.net/downloads)查看 OptiFine 所兼容的 Forge 版本,并严格按照对应版本重新安装游戏。") + Case CrashReason.ShadersMod与Optifine同时安装 + Results.Add("当前游戏因为同时安装了 Optifine 和 Shaders Mod,无法继续运行。\n因为 Optifine 已集成 Shaders Mod 的功能,只需删除 Shaders Mod 即可。") Case CrashReason.低版本Forge与高版本Java不兼容 Results.Add("由于低版本 Forge 与当前 Java 不兼容,导致了游戏崩溃。\n\n请尝试以下解决方案:\n - 更新 Forge 到 36.2.26 或更高版本\n - 换用版本低于 8.0.320 的 Java") Case CrashReason.版本Json中存在多个Forge From 1224c1a4273babdbe796c2afcac15d21cb639dae Mon Sep 17 00:00:00 2001 From: "2573874409@qq.com" Date: Wed, 3 May 2023 10:53:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20ModCrash.vb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://mclo.gs/pyYhqhx https://mclo.gs/qCDf08i --- Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb index ee52d1c..c7f31c3 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModCrash.vb @@ -363,6 +363,7 @@ Mod过多导致超出ID限制 NightConfig库问题 ShadersMod与Optifine同时安装 + Forge安装不完整 End Enum ''' ''' 根据 AnalyzeLogs 与可能的版本信息分析崩溃原因。 @@ -489,6 +490,7 @@ Done: If LogMc.Contains("java.lang.NoSuchMethodError: net.minecraft.world.server.ChunkManager$ProxyTicketManager.shouldForceTicks(J)Z") AndAlso LogMc.Contains("OptiFine") Then AppendReason(CrashReason.OptiFine导致无法加载世界) If LogMc.Contains("Unsupported class file major version") Then AppendReason(CrashReason.Java版本不兼容) If LogMc.Contains("com.electronwill.nightconfig.core.io.ParsingException: Not enough data available") Then AppendReason(CrashReason.NightConfig库问题) + If LogMc.Contains("Cannot find launch target fmlclient, unable to launch") Then AppendReason(CrashReason.Forge安装不完整) If LogMc.Contains("Invalid module name: '' is not a Java identifier") Then AppendReason(CrashReason.Mod名称包含特殊字符) If LogMc.Contains("java.lang.UnsupportedClassVersionError: net/fabricmc/loader/impl/launch/knot/KnotClient : Unsupported major.minor version") Then AppendReason(CrashReason.Java版本不兼容) If LogMc.Contains("Could not reserve enough space") Then @@ -872,7 +874,7 @@ NextStack: Case CrashReason.OptiFine与Forge不兼容 Results.Add("由于 OptiFine 与当前版本的 Forge 不兼容,导致了游戏崩溃。\n\n请前往 OptiFine 官网(https://optifine.net/downloads)查看 OptiFine 所兼容的 Forge 版本,并严格按照对应版本重新安装游戏。") Case CrashReason.ShadersMod与Optifine同时安装 - Results.Add("当前游戏因为同时安装了 Optifine 和 Shaders Mod,无法继续运行。\n因为 Optifine 已集成 Shaders Mod 的功能,只需删除 Shaders Mod 即可。") + Results.Add("当前游戏因为同时安装了 Optifine 和 Shaders Mod,无法继续运行。\n\n因为 Optifine 已集成 Shaders Mod 的功能,只需删除 Shaders Mod 即可。") Case CrashReason.低版本Forge与高版本Java不兼容 Results.Add("由于低版本 Forge 与当前 Java 不兼容,导致了游戏崩溃。\n\n请尝试以下解决方案:\n - 更新 Forge 到 36.2.26 或更高版本\n - 换用版本低于 8.0.320 的 Java") Case CrashReason.版本Json中存在多个Forge @@ -899,6 +901,8 @@ NextStack: Results.Add("你所安装的 Mod 过多,超出了游戏的 ID 限制,导致了游戏崩溃。\n请尝试安装 JEID 等修复 Mod,或删除部分大型 Mod。") Case CrashReason.文件或内容校验失败 Results.Add("部分文件或内容校验失败,导致游戏出现了问题。\n\n请尝试删除游戏(包括 Mod)并重新下载,或尝试在重新下载时使用 VPN。\h") + Case CrashReason.Forge安装不完整 + Results.Add("当前游戏因为 Forge 安装不完整,无法继续运行。\n\n请尝试重新全新安装 Forge\h") Case CrashReason.Fabric报错 If Additional.Count = 1 Then Results.Add("Fabric 提供了以下错误信息:\n" & Additional.First & "\n\n请根据上述信息进行对应处理,如果看不懂英文可以使用翻译软件。")