finds.dev← search

// the find

novelhawk/PhotonDissector

★ 6 · C · GPL-3.0 · updated May 2020

Wireshark dissector for Photon Unity Networking's Protocol

A Wireshark dissector, written in C, that decodes the UDP packets used by Photon Unity Networking, the transport layer under many Unity multiplayer games. It is for developers debugging PUN traffic or trying to see what a Photon game sends over the wire. It runs as a Wireshark plugin, not as a standalone tool.

- It decodes the packet header and then walks each command bundled in the datagram, so Wireshark shows the command structure of every packet instead of an opaque UDP payload.

- The milestone list says exactly what works. Header decoding is done and payload decoding is not, so you know where the coverage stops before you install it.

- It is one C file plus a CMakeLists.txt, small enough to read in an afternoon. It is a reasonable template for writing a Wireshark dissector for another binary protocol.

- Command payloads are not dissected, and that milestone is unchecked. The header view shows that a command exists but not what it carries, and the payload is where the game data is. The tool is useful for traffic shape and timing, not for understanding what a game actually sends.

- The game-specific sub-dissector milestone is also open, so every game's operation data stays as raw bytes. Anyone who wants more than headers has to write that layer.

- Nothing has been pushed since May 2020, and Wireshark's C plugin API has changed since then. Expect to fix the build against a current Wireshark before it loads.

- The README covers the goal and milestones but gives no build steps, no sample capture, and no Photon protocol version. You have to read the source to work out which version it was written against.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →