From 61ff7804702128a4194c9a78ec689cbd8b0f0cc3 Mon Sep 17 00:00:00 2001 From: Paul Hansen Date: Sat, 21 Feb 2026 14:01:59 -0600 Subject: [PATCH] Fix minecraft EncoderException error --- crates/lib/src/games/minecraft/protocol/java.rs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/crates/lib/src/games/minecraft/protocol/java.rs b/crates/lib/src/games/minecraft/protocol/java.rs index 028b25c..21aa4d9 100644 --- a/crates/lib/src/games/minecraft/protocol/java.rs +++ b/crates/lib/src/games/minecraft/protocol/java.rs @@ -11,6 +11,7 @@ use crate::{ use byteorder::LittleEndian; use serde_json::Value; use std::net::SocketAddr; +use std::time::{SystemTime, UNIX_EPOCH}; pub struct Java { socket: TcpSocket, @@ -83,10 +84,15 @@ impl Java { } fn send_ping_request(&mut self) -> GDResult<()> { - self.send( - [0x01] // Packet ID (1) - .to_vec(), - )?; + let timestamp = SystemTime::now() + .duration_since(UNIX_EPOCH) + .unwrap_or_default() + .as_millis() as i64; + + let mut payload = [0x01].to_vec(); // Packet ID (1) + payload.extend_from_slice(×tamp.to_be_bytes()); // Timestamp (long, 8 bytes) + + self.send(payload)?; Ok(()) }