--- a/Forge/src/main/java/com/hypherionmc/craterlib/mixin/ServerGamePacketListenerImplMixin.java
+++ b/Forge/src/main/java/com/hypherionmc/craterlib/mixin/ServerGamePacketListenerImplMixin.java
@@ -15,6 +15,8 @@
 import org.spongepowered.asm.mixin.injection.Inject;
 import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
 
+import java.util.concurrent.CompletableFuture;
+
 @Mixin(value = ServerGamePacketListenerImpl.class, priority = Integer.MIN_VALUE)
 public class ServerGamePacketListenerImplMixin {
 
@@ -22,13 +24,14 @@
     public ServerPlayer player;
 
     @Inject(
-            method = "lambda$handleChat$5",
+            method = "lambda$handleChat$9",
             at = @At("HEAD"),
             cancellable = true
     )
-    private void injectChatEvent(Component component, PlayerChatMessage arg, FilteredText p_296589_, CallbackInfo ci) {
-        Component finalcomp = component == null ? arg.decoratedContent() : component;
-        CraterServerChatEvent event = new CraterServerChatEvent(BridgedPlayer.of(this.player), finalcomp.getString(), ChatUtils.mojangToAdventure(finalcomp));
+    private void injectChatEvent(CompletableFuture<Component> completablefuture1, PlayerChatMessage arg, CompletableFuture<FilteredText> completablefuture, Void p_248218_, CallbackInfo ci) {
+        Component comp2 = completablefuture1.join();
+        Component finalArg = comp2 == null ? arg.decoratedContent() : comp2;
+        CraterServerChatEvent event = new CraterServerChatEvent(BridgedPlayer.of(this.player), finalArg.getString(), ChatUtils.mojangToAdventure(finalArg));
         CraterEventBus.INSTANCE.postEvent(event);
         if (event.wasCancelled())
             ci.cancel();
