from asyncio.queues import Queue import time from bta_proxy.datainputstream import AsyncDataInputStream from bta_proxy.packets import * async def inspect_client(queue: Queue, addr: tuple[str, int]): dis = AsyncDataInputStream(queue) last_time = time.time() with open("packets-%s-%d-client.txt" % addr, "w") as f: while True: try: pkt = await Packet.read_packet(dis) except EOFError: break now = time.time() delta = now - last_time last_time = now print(f"{delta*1000:+8.1f}ms {pkt}", file=f) match pkt.packet_id: case Packet10Flying.packet_id: continue case Packet11PlayerPosition.packet_id: continue case Packet12PlayerLook.packet_id: continue case Packet13LookMove.packet_id: continue case Packet255KickDisconnect.packet_id: break case _: print(f"C {delta*1000:+8.1f}ms {pkt}") async def inspect_server(queue: Queue, addr: tuple[str, int]): dis = AsyncDataInputStream(queue) last_time = time.time() with open("packets-%s-%d-server.txt" % addr, "w") as f: while True: try: pkt = await Packet.read_packet(dis) except EOFError: break now = time.time() delta = now - last_time last_time = now print(f"{delta*1000:+8.1f}ms {pkt}", file=f) match pkt.packet_id: case Packet50PreChunk.packet_id: continue case Packet51MapChunk.packet_id: continue case Packet31RelEntityMove.packet_id: continue case Packet32EntityLook.packet_id: continue case Packet33RelEntityMoveLook.packet_id: continue case _: print(f"S {delta*1000:+8.1f}ms {pkt}")