diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerManager.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerManager.java index 936db3f19..6243eda1c 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerManager.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerManager.java @@ -252,6 +252,9 @@ public final class MultiplayerManager { if (msg.contains("Failed to get a tun/tap device")) { error = HiperExitEvent.FAILED_GET_DEVICE; } + if (msg.contains("Failed to load certificate from config")) { + error = HiperExitEvent.FAILED_LOAD_CONFIG; + } } if (logJson.containsKey("network")) { @@ -314,6 +317,7 @@ public final class MultiplayerManager { public static final int INVALID_CONFIGURATION = -2; public static final int CERTIFICATE_EXPIRED = -3; public static final int FAILED_GET_DEVICE = -4; + public static final int FAILED_LOAD_CONFIG = -5; } public static class HiperIPEvent extends Event { diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerPage.java index 69a45e590..d60159bdc 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/multiplayer/MultiplayerPage.java @@ -254,6 +254,9 @@ public class MultiplayerPage extends DecoratorAnimatedPage implements DecoratorP case MultiplayerManager.HiperExitEvent.FAILED_GET_DEVICE: Controllers.dialog(i18n("multiplayer.error.failed_get_device")); break; + case MultiplayerManager.HiperExitEvent.FAILED_LOAD_CONFIG: + Controllers.dialog(i18n("multiplayer.error.failed_load_config")); + break; default: Controllers.dialog(i18n("multiplayer.exit", event.getExitCode())); break; diff --git a/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties b/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties index add124e1a..ec47935bd 100644 --- a/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties +++ b/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties @@ -690,7 +690,8 @@ multiplayer.download=正在下载依赖 multiplayer.download.failed=初始化失败,部分文件未能完成下载 multiplayer.download.success=多人联机初始化完成 multiplayer.download.unsupported=多人联机依赖不支持当前系统或平台 -multiplayer.error.failed_get_device=HiPer 无法创建网络设备,可能是缺少 root 权限。 +multiplayer.error.failed_get_device=HiPer 无法创建网络设备,可能是HiPer已经启动或缺少管理员权限。 +multiplayer.error.failed_load_config=HiPer 初始化失败,可能是配置文件存在问题或证书已失效。 multiplayer.error.file_not_found=找不到 HiPer 程序。该程序应该在进入多人联机页面时完成下载。请重启 HMCL 再试。\n请检查你电脑的杀毒软件是否将 HiPer 标记为病毒,如果是,请恢复 HiPer。 multiplayer.exit=HiPer 意外退出,退出码 %d multiplayer.hint=多人联机功能处于实验阶段,如果有问题请前往 mcer.cn 反馈