summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPugdoot <pugmatt@gmail.com>2026-02-02 12:51:36 -0500
committerPugdoot <pugmatt@gmail.com>2026-02-02 12:51:36 -0500
commit5d14ff621ad7e40e2060a4e6863ff0eef4115f2f (patch)
treea28b8c8a2eeeb5a6ef3fd29fb5e2e7f3fc9cacb6
parent002fb42774ffce4eb56ef248bc2f0971682d2992 (diff)
downloadBedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.tar.gz
BedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.tar.bz2
BedrockConnect-5d14ff621ad7e40e2060a4e6863ff0eef4115f2f.zip
(Release) Fix Hive connect + Add Online Mode toggle1.64
-rw-r--r--serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java2
-rw-r--r--serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/Config.java8
-rw-r--r--serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/server/PacketHandler.java8
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();