diff --git a/build.gradle b/build.gradle
index aab1616..1abcd3f 100644
--- a/build.gradle
+++ b/build.gradle
@@ -59,8 +59,8 @@ repositories {
 dependencies {
     compileOnly sourceSets.java17compat.output
 
-    include "com.viaversion:viaversion:4.6.2-SNAPSHOT"
-    include("com.viaversion:viabackwards-common:4.6.2-SNAPSHOT") {
+    include "com.viaversion:viaversion:4.7.0-23w12a-SNAPSHOT"
+    include("com.viaversion:viabackwards-common:4.7.0-23w12a-SNAPSHOT") {
         exclude group: "com.viaversion", module: "viaversion"
         exclude group: "io.netty", module: "netty-all"
         exclude group: "com.google.guava", module: "guava"
@@ -68,7 +68,7 @@ dependencies {
     include "com.viaversion:viarewind-core:2.0.4-SNAPSHOT"
     include "net.raphimc:ViaLegacy:2.2.8"
     include "net.raphimc:ViaAprilFools:2.0.6"
-    include("net.raphimc:ViaProtocolHack:2.2.0") {
+    include("net.raphimc:ViaProtocolHack:2.2.2") {
         exclude group: "org.slf4j", module: "slf4j-api"
     }
 
diff --git a/src/main/java/net/raphimc/viaproxy/injection/mixins/MixinProtocolVersion.java b/src/main/java/net/raphimc/viaproxy/injection/mixins/MixinProtocolVersion.java
index 6643fde..53c59f0 100644
--- a/src/main/java/net/raphimc/viaproxy/injection/mixins/MixinProtocolVersion.java
+++ b/src/main/java/net/raphimc/viaproxy/injection/mixins/MixinProtocolVersion.java
@@ -50,6 +50,7 @@ public abstract class MixinProtocolVersion {
         remaps.put("1.16.4/5", new Pair<>("1.16.4-1.16.5", null));
         remaps.put("1.18/1.18.1", new Pair<>("1.18-1.18.1", null));
         remaps.put("1.19.1/2", new Pair<>("1.19.1-1.19.2", null));
+        remaps.put("1.20", new Pair<>("23w12a", null));
     }
 
     @Redirect(method = "<clinit>", at = @At(value = "INVOKE", target = "Lcom/viaversion/viaversion/api/protocol/version/ProtocolVersion;register(ILjava/lang/String;)Lcom/viaversion/viaversion/api/protocol/version/ProtocolVersion;"))