Since I don't have the time to work on the frontend and the backend, I will discontinue this PacketLogger project. But don't worry, the frontend won't be for nothing.
Developing on both sides takes up a lot of time, especially if you want to implement cool new features on the frontend while the backend contains bugs that must be fixed as to aid users. It's been tough doing that at the same time and I do not wan't to do that anymore. I am mainly a web-developer and I want to continue this passion.
That's why I will stop developing the mod.
But: The frontend will be moved to wisp-forest/gadget. At least that is the current idea. It might take up some weeks before everything is set in place, so I highly encourage you to switch over to gadget if you need an alternative atm.
It has been a pleasent journey working on packetlogger. I learned much about minecraft modding in itself, minecraft packet structure and met wonderful people on the way. If you have some questions, hmu on Twitter or Discord
I use this for development at thejocraft.net. Yes, the code may not be the best. If you want to improve it, do it and open a pull request.
- Web-UI (Default Port 8080)
- Websocket Connection (Default Port 1337)
- InGame config
Minecraft Version | Status | Notes |
---|---|---|
1.19.3 | A rather scuffed version, since 1.19.4 support existed before 1.19.3, so 1.19.3 was created out of 1.19.4 | |
1.19.4 | ✔️ |
✔️ = Supported
- Web-UI: aridevelopment-de/fabric-packet-logger-frontend
- Metadata: aridevelopment-de/fabric-packet-logger-metadata
/packetlogger
is the base command for all subcommands. You should be able to auto-complete them/packetlogger logging on/off
- Toggles the logging state/packetlogger open
- Opens the web-ui in your browser/packetlogger export
- Exports the current stored data in a json format
As developing serializers for each packet takes a lot of time, not every packet is supported. I will add more packets over time. If you want to help out, feel free to open a pull request.
There are some reasons why I didn't use Reflection. Here are the main reasons:
- Reflection is slow
- I like live-streaming data instead of analyzing dumps
- My approach with reflection was horrible (see reflection-rewrite/dev branch)
- I may be able to do a lot more with custom serializers
- And I have my own juicy mappings
If you still prefer a reflection-based approach, check out wisp-forest/gadget
By default, the web-ui connects to the websocket and receives the packet information via json data. You can also connect
to this websocket as well and receive the same data as the web-ui. I'd recommend
using insomnia or weasel on
firefox.
A protocol has been defined for the websocket. It uses data chunking and lazy loading of packet information to reduce
traffic. See protocol.md for more information.
Video: