
数据包记录器
带有Web界面的客户端数据包记录器
查看大图⚠️ 项目不再维护(以及前端的后续安排)
由于我没有时间同时维护前端和后端,我将停止这个 PacketLogger 项目。但别担心,前端不会白费。
同时开发两端会占用大量时间,尤其是当你想要在前端实现炫酷的新功能,而后端却存在必须修复以帮助用户的 bug 时。同时做这两件事一直很艰难,我不想再这样下去了。我主要是一名 Web 开发者,我想继续这份热情。
这就是为什么我将停止开发这个模组。
但是: 前端将迁移到 wisp-forest/gadget。至少目前的想法是这样。一切就绪可能需要几周时间,所以如果你现在就需要替代方案,我强烈建议你切换到 gadget。
在 packetlogger 上工作是一段愉快的旅程。我学到了很多关于 Minecraft 模组开发本身、Minecraft 数据包结构的知识,并在此过程中遇到了很多很棒的人。如果你有问题,可以通过 Twitter 或 Discord 联系我。
Fabric Packet Logger
我在 thejocraft.net 开发时使用这个。是的,代码可能不是最好的。如果你想改进它,尽管去做并提交一个 pull request。
功能
- Web UI(默认端口 8080)
- WebSocket 连接(默认端口 1337)
- 游戏内配置
支持的 Minecraft 版本
| Minecraft 版本 | 状态 | 备注 |
|---|---|---|
| 1.19.3 | ⚠️ | 一个相当粗糙的版本,因为 1.19.4 的支持早于 1.19.3 存在,所以 1.19.3 是从 1.19.4 中创建出来的 |
| 1.19.4 | ✔️ |
⚠️ = 数据包已实现但未验证
✔️ = 已支持
关联仓库
- Web UI:aridevelopment-de/fabric-packet-logger-frontend
- Metadata:aridevelopment-de/fabric-packet-logger-metadata
命令
/packetlogger是所有子命令的基础命令。你应该能够自动补全它们/packetlogger logging on/off- 切换日志记录状态/packetlogger open- 在浏览器中打开 Web UI/packetlogger export- 将当前存储的数据以 json 格式导出
支持的数据包
客户端绑定
服务端绑定
由于为每个数据包开发序列化器需要大量时间,并非所有数据包都受支持。我会随着时间的推移添加更多数据包。如果你想帮忙,欢迎提交 pull request。
为什么不使用反射来转换数据包数据?
我不用反射有一些原因。以下是主要原因:
- 反射很慢
- 我喜欢实时流式传输数据,而不是分析转储
- 我用反射的做法很糟糕(参见 reflection-rewrite/dev 分支)
- 使用自定义序列化器我可能能做更多事情
- 而且我有自己的美味映射
如果你仍然偏好基于反射的方法,请查看 wisp-forest/gadget
WebSocket
默认情况下,Web UI 连接到 WebSocket 并通过 json 数据接收数据包信息。你也可以连接到此 WebSocket 并接收与 Web UI 相同的数据。我建议在 Firefox 上使用 insomnia 或 weasel。
已经为 WebSocket 定义了一个协议。它使用数据分块和数据包信息的懒加载来减少流量。更多信息请参见 protocol.md。
预览
视频:
MapUpdateAdapter:

正在加载版本记录…


正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。