diff --git a/src/main/java/dev/micle/loginprotection/network/MismatchedVersionException.java b/src/main/java/dev/micle/loginprotection/network/MismatchedVersionException.java deleted file mode 100644 index ee291b3..0000000 --- a/src/main/java/dev/micle/loginprotection/network/MismatchedVersionException.java +++ /dev/null @@ -1,7 +0,0 @@ -package dev.micle.loginprotection.network; - -public class MismatchedVersionException extends RuntimeException { - public MismatchedVersionException(String msg) { - super(msg); - } -} diff --git a/src/main/java/dev/micle/loginprotection/network/NetworkManager.java b/src/main/java/dev/micle/loginprotection/network/NetworkManager.java index 2422778..cca8353 100644 --- a/src/main/java/dev/micle/loginprotection/network/NetworkManager.java +++ b/src/main/java/dev/micle/loginprotection/network/NetworkManager.java @@ -5,24 +5,18 @@ import dev.micle.loginprotection.network.client.InputPacket; import dev.micle.loginprotection.network.client.LastInputTickPacket; import dev.micle.loginprotection.network.server.PlayerStatePacket; import dev.micle.loginprotection.network.server.RequestLastInputTickPacket; -import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.network.NetworkRegistry; import net.minecraftforge.network.simple.SimpleChannel; -import java.util.regex.Pattern; - public class NetworkManager { - private static final String VERSION = LoginProtection.MOD_ID + "-net-1"; - private static final Pattern NET_VERSION_PATTERN = Pattern.compile(String.format("^%s-net-\\d+$", LoginProtection.MOD_ID)); - private static final Pattern MOD_VERSION_PATTERN = Pattern.compile("^\\d+\\.\\d+\\.\\d+-\\d+\\.\\d+\\.\\d+$"); private static SimpleChannel channel; public static void init() { // Create channel channel = NetworkRegistry.ChannelBuilder.named(LoginProtection.createResourceLocation("network")) - .clientAcceptedVersions(v -> v.equals(VERSION)) - .serverAcceptedVersions(v -> v.equals(VERSION)) - .networkProtocolVersion(() -> VERSION) + .clientAcceptedVersions(v -> v.equals(LoginProtection.getVersion())) + .serverAcceptedVersions(v -> v.equals(LoginProtection.getVersion())) + .networkProtocolVersion(LoginProtection::getVersion) .simpleChannel(); // Register packets @@ -49,43 +43,6 @@ public class NetworkManager { .add(); } - public static void writeVersionInfo(FriendlyByteBuf buffer, boolean senderIsServer) { - buffer.writeBoolean(senderIsServer); - buffer.writeUtf(VERSION); - buffer.writeUtf(LoginProtection.getVersion()); - } - - public static void checkVersion(FriendlyByteBuf buffer) { - boolean senderIsServer = buffer.readBoolean(); - String serverNetVersion = (senderIsServer) ? readNetVersion(buffer) : VERSION; - String serverModVersion = (senderIsServer) ? readModVersion(buffer) : LoginProtection.getVersion(); - String clientNetVersion = (senderIsServer) ? VERSION : readNetVersion(buffer); - String clientModVersion = (senderIsServer) ? LoginProtection.getVersion() : readModVersion(buffer); - - if (!serverNetVersion.equals(clientNetVersion) || !serverModVersion.equals(clientModVersion)) { - throw new MismatchedVersionException(String.format("The server and client are running mismatched " + - "versions of [Micle's Login Protection]. Try updating this mod on either the client and or " + - "the server. Client version is %s (%s). Server version is %s (%s).", clientModVersion, - clientNetVersion, serverModVersion, serverNetVersion)); - } - } - - public static String readNetVersion(FriendlyByteBuf buffer) { - String netVersion = buffer.readUtf(); - if (!NET_VERSION_PATTERN.matcher(netVersion).matches()) { - return String.format("UNKNOWN (%s)", netVersion); - } - return netVersion; - } - - public static String readModVersion(FriendlyByteBuf buffer) { - String modVersion = buffer.readUtf(); - if (modVersion.equals("NONE") || !MOD_VERSION_PATTERN.matcher(modVersion).matches()) { - return String.format("UNKNOWN (%s)", modVersion); - } - return modVersion; - } - public static SimpleChannel getChannel() { return channel; } diff --git a/src/main/java/dev/micle/loginprotection/network/client/InputPacket.java b/src/main/java/dev/micle/loginprotection/network/client/InputPacket.java index f98241c..b2f621c 100755 --- a/src/main/java/dev/micle/loginprotection/network/client/InputPacket.java +++ b/src/main/java/dev/micle/loginprotection/network/client/InputPacket.java @@ -2,7 +2,6 @@ package dev.micle.loginprotection.network.client; import dev.micle.loginprotection.data.ProtectedPlayer; import dev.micle.loginprotection.data.ProtectedPlayerManager; -import dev.micle.loginprotection.network.NetworkManager; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraftforge.network.NetworkEvent; @@ -10,12 +9,9 @@ import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class InputPacket { - public static void encode(final InputPacket packet, final FriendlyByteBuf buffer) { - NetworkManager.writeVersionInfo(buffer, false); - } + public static void encode(final InputPacket packet, final FriendlyByteBuf buffer) {} public static InputPacket decode(final FriendlyByteBuf buffer) { - NetworkManager.checkVersion(buffer); return new InputPacket(); } diff --git a/src/main/java/dev/micle/loginprotection/network/client/LastInputTickPacket.java b/src/main/java/dev/micle/loginprotection/network/client/LastInputTickPacket.java index 069b64e..3126762 100644 --- a/src/main/java/dev/micle/loginprotection/network/client/LastInputTickPacket.java +++ b/src/main/java/dev/micle/loginprotection/network/client/LastInputTickPacket.java @@ -2,7 +2,6 @@ package dev.micle.loginprotection.network.client; import dev.micle.loginprotection.data.ProtectedPlayer; import dev.micle.loginprotection.data.ProtectedPlayerManager; -import dev.micle.loginprotection.network.NetworkManager; import dev.micle.loginprotection.proxy.Proxy; import dev.micle.loginprotection.setup.Config; import net.minecraft.network.FriendlyByteBuf; @@ -22,12 +21,10 @@ public class LastInputTickPacket { } public static void encode(final LastInputTickPacket packet, final FriendlyByteBuf buffer) { - NetworkManager.writeVersionInfo(buffer, false); buffer.writeInt(packet.lastInputTick); } public static LastInputTickPacket decode(final FriendlyByteBuf buffer) { - NetworkManager.checkVersion(buffer); return new LastInputTickPacket(buffer.readInt()); } diff --git a/src/main/java/dev/micle/loginprotection/network/server/PlayerStatePacket.java b/src/main/java/dev/micle/loginprotection/network/server/PlayerStatePacket.java index 3f7317d..334c00d 100644 --- a/src/main/java/dev/micle/loginprotection/network/server/PlayerStatePacket.java +++ b/src/main/java/dev/micle/loginprotection/network/server/PlayerStatePacket.java @@ -1,7 +1,6 @@ package dev.micle.loginprotection.network.server; import dev.micle.loginprotection.data.ProtectedPlayer; -import dev.micle.loginprotection.network.NetworkManager; import dev.micle.loginprotection.proxy.Proxy; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.network.NetworkEvent; @@ -16,12 +15,10 @@ public class PlayerStatePacket { } public static void encode(final PlayerStatePacket packet, final FriendlyByteBuf buffer) { - NetworkManager.writeVersionInfo(buffer, true); buffer.writeUtf(packet.state.toString()); } public static PlayerStatePacket decode(final FriendlyByteBuf buffer) { - NetworkManager.checkVersion(buffer); return new PlayerStatePacket(ProtectedPlayer.State.valueOf(buffer.readUtf())); } diff --git a/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java b/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java index c8c0802..f7974d2 100644 --- a/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java +++ b/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java @@ -10,11 +10,9 @@ import java.util.function.Supplier; public class RequestLastInputTickPacket { public static void encode(final RequestLastInputTickPacket packet, final FriendlyByteBuf buffer) { - NetworkManager.writeVersionInfo(buffer, false); } public static RequestLastInputTickPacket decode(final FriendlyByteBuf buffer) { - NetworkManager.checkVersion(buffer); return new RequestLastInputTickPacket(); }