diff options
| author | Pugdoot <pugmatt@gmail.com> | 2026-02-02 12:51:36 -0500 |
|---|---|---|
| committer | Pugdoot <pugmatt@gmail.com> | 2026-02-02 12:51:36 -0500 |
| commit | 5d14ff621ad7e40e2060a4e6863ff0eef4115f2f (patch) | |
| tree | a28b8c8a2eeeb5a6ef3fd29fb5e2e7f3fc9cacb6 | |
| parent | 002fb42774ffce4eb56ef248bc2f0971682d2992 (diff) | |
| download | BedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.tar.gz BedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.tar.bz2 BedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.zip | |
(Release) Fix Hive connect + Add Online Mode toggle1.64
3 files changed, 15 insertions, 3 deletions
diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java index 787f4dc..04e1c48 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java @@ -19,7 +19,7 @@ import java.sql.SQLException; import java.util.*; public class BedrockConnect { - private static String release = "1.63"; + private static String release = "1.64"; private static Config config; private static Database database; diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/Config.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/Config.java index 1f848ee..b418ef5 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/Config.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/Config.java @@ -51,6 +51,7 @@ public class Config { private boolean debug = false; private boolean fetchIps = false; private boolean storeDisplayNames = true; + private boolean onlineMode = true; private int packetLimit = 200; private int globalPacketLimit = RakConstants.DEFAULT_GLOBAL_PACKET_LIMIT; private HashMap<String, String> featuredServerIps; @@ -244,6 +245,9 @@ public class Config { case "motd_cooldown": motdCooldown = Integer.parseInt(setting.getValue()); break; + case "online_mode": + onlineMode = setting.getValue().equalsIgnoreCase("true"); + break; } } @@ -424,6 +428,10 @@ public class Config { return debug; } + public boolean isOnlineModeEnabled() { + return onlineMode; + } + public boolean canFetchIps() { return fetchIps; } diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/server/PacketHandler.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/server/PacketHandler.java index e9f7b0e..ef3fcb4 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/server/PacketHandler.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/server/PacketHandler.java @@ -174,7 +174,7 @@ public class PacketHandler implements BedrockPacketHandler { switch (featuredServer) { case 0: // Hive - transfer(getIP("hivebedrock.network"), 19132); + transfer(getIP("geo.hivebedrock.network"), 19132); break; case 1: // Cubecraft transfer(!BedrockConnect.getConfig().canFetchFeaturedIps() ? getIP("mco.cubecraft.net") : "mco.cubecraft.net", 19132); @@ -503,7 +503,7 @@ public class PacketHandler implements BedrockPacketHandler { public PacketSignal handle(LoginPacket packet) { try { ChainValidationResult result = EncryptionUtils.validatePayload(packet.getAuthPayload()); - if (!result.signed()) { + if (BedrockConnect.getConfig().isOnlineModeEnabled() && !result.signed()) { throw new RuntimeException("Chain not signed"); } PublicKey identityPublicKey = result.identityClaims().parsedIdentityPublicKey(); @@ -521,6 +521,10 @@ public class PacketHandler implements BedrockPacketHandler { BedrockConnect.logger.debug("Player made it through login: " + extraData.displayName + " (xuid: " + extraData.identity + ")"); + if (!result.signed()) { + BedrockConnect.logger.debug("Chain not signed: " + extraData.displayName + " (xuid: " + extraData.identity + ")"); + } + name = extraData.displayName; uuid = extraData.identity.toString(); |
