feat: Add interactive packet documentation system
- Create JSON-based packet documentation for 145 packets (66 incoming, 79 outgoing) - Add HTML template with search, filtering, and navigation - Support enum/bitfield field display with values and descriptions - Support packet variants for version-specific structures - Include 0xBF extended command subpackets documentation - Add PowerShell build script to generate final HTML 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
ec287d7691
commit
f0b65fecb7
28 changed files with 6011 additions and 0 deletions
142
Distribution/Data/packets/outgoing/effects.json
Normal file
142
Distribution/Data/packets/outgoing/effects.json
Normal file
|
|
@ -0,0 +1,142 @@
|
|||
{
|
||||
"category": "Effects",
|
||||
"packets": [
|
||||
{
|
||||
"id": "0x54",
|
||||
"name": "Sound Effect",
|
||||
"description": "Plays a sound effect at a location.",
|
||||
"direction": "outgoing",
|
||||
"isDynamic": false,
|
||||
"size": 12,
|
||||
"fields": [
|
||||
{ "name": "packetId", "type": "byte", "size": 1, "value": "0x54", "description": "Packet identifier" },
|
||||
{ "name": "flags", "type": "byte", "size": 1, "value": "0x01", "description": "Sound flags" },
|
||||
{ "name": "soundId", "type": "short", "size": 2, "description": "Sound effect ID" },
|
||||
{ "name": "volume", "type": "short", "size": 2, "value": "0x0000", "description": "Volume (unused)" },
|
||||
{ "name": "x", "type": "short", "size": 2, "description": "X coordinate" },
|
||||
{ "name": "y", "type": "short", "size": 2, "description": "Y coordinate" },
|
||||
{ "name": "z", "type": "short", "size": 2, "description": "Z coordinate" }
|
||||
],
|
||||
"source": {
|
||||
"file": "Projects/Server/Network/Packets/OutgoingEffectPackets.cs",
|
||||
"line": 41
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "0x70",
|
||||
"name": "Screen Effect",
|
||||
"description": "Triggers a screen-wide visual effect (fade in/out).",
|
||||
"direction": "outgoing",
|
||||
"isDynamic": false,
|
||||
"size": 28,
|
||||
"fields": [
|
||||
{ "name": "packetId", "type": "byte", "size": 1, "value": "0x70", "description": "Packet identifier" },
|
||||
{ "name": "effectType", "type": "byte", "size": 1, "value": "0x04", "description": "Effect type (4)" },
|
||||
{ "name": "padding1", "type": "byte[]", "size": 8, "description": "Padding (zeros)" },
|
||||
{
|
||||
"name": "type",
|
||||
"type": "enum",
|
||||
"enumType": "sequential",
|
||||
"size": 2,
|
||||
"description": "Screen effect type",
|
||||
"values": [
|
||||
{ "value": 0, "name": "FadeOut", "description": "Fade screen to black" },
|
||||
{ "value": 1, "name": "FadeIn", "description": "Fade screen from black" },
|
||||
{ "value": 2, "name": "LightFlash", "description": "Light flash effect" },
|
||||
{ "value": 3, "name": "FadeInOut", "description": "Fade out then in" },
|
||||
{ "value": 4, "name": "DarkenScreen", "description": "Darken screen" }
|
||||
]
|
||||
},
|
||||
{ "name": "padding2", "type": "byte[]", "size": 16, "description": "Padding (zeros)" }
|
||||
],
|
||||
"source": {
|
||||
"file": "Projects/Server/Network/Packets/OutgoingEffectPackets.cs",
|
||||
"line": 322
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "0xC0",
|
||||
"name": "Hued Effect",
|
||||
"description": "Displays a graphical effect with hue and render mode.",
|
||||
"direction": "outgoing",
|
||||
"isDynamic": false,
|
||||
"size": 36,
|
||||
"fields": [
|
||||
{ "name": "packetId", "type": "byte", "size": 1, "value": "0xC0", "description": "Packet identifier" },
|
||||
{
|
||||
"name": "effectType",
|
||||
"type": "enum",
|
||||
"enumType": "sequential",
|
||||
"size": 1,
|
||||
"description": "Effect type",
|
||||
"values": [
|
||||
{ "value": 0, "name": "Moving", "description": "Effect moves between two points" },
|
||||
{ "value": 1, "name": "Lightning", "description": "Lightning bolt effect" },
|
||||
{ "value": 2, "name": "FixedXYZ", "description": "Effect at fixed location" },
|
||||
{ "value": 3, "name": "FixedFrom", "description": "Effect attached to source" }
|
||||
]
|
||||
},
|
||||
{ "name": "sourceSerial", "type": "uint", "size": 4, "description": "Serial of source entity" },
|
||||
{ "name": "targetSerial", "type": "uint", "size": 4, "description": "Serial of target entity" },
|
||||
{ "name": "itemId", "type": "short", "size": 2, "description": "Effect graphic ID" },
|
||||
{ "name": "srcX", "type": "short", "size": 2, "description": "Source X coordinate" },
|
||||
{ "name": "srcY", "type": "short", "size": 2, "description": "Source Y coordinate" },
|
||||
{ "name": "srcZ", "type": "sbyte", "size": 1, "description": "Source Z coordinate" },
|
||||
{ "name": "dstX", "type": "short", "size": 2, "description": "Destination X coordinate" },
|
||||
{ "name": "dstY", "type": "short", "size": 2, "description": "Destination Y coordinate" },
|
||||
{ "name": "dstZ", "type": "sbyte", "size": 1, "description": "Destination Z coordinate" },
|
||||
{ "name": "speed", "type": "byte", "size": 1, "description": "Effect speed" },
|
||||
{ "name": "duration", "type": "byte", "size": 1, "description": "Effect duration" },
|
||||
{ "name": "unknown1", "type": "byte", "size": 1, "value": "0x00", "description": "Unknown" },
|
||||
{ "name": "unknown2", "type": "byte", "size": 1, "value": "0x00", "description": "Unknown" },
|
||||
{ "name": "fixedDirection", "type": "bool", "size": 1, "description": "Fixed direction" },
|
||||
{ "name": "explode", "type": "bool", "size": 1, "description": "Explode on impact" },
|
||||
{ "name": "hue", "type": "int", "size": 4, "description": "Effect hue" },
|
||||
{ "name": "renderMode", "type": "int", "size": 4, "description": "Render mode" }
|
||||
],
|
||||
"source": {
|
||||
"file": "Projects/Server/Network/Packets/OutgoingEffectPackets.cs",
|
||||
"line": 175
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "0xC7",
|
||||
"name": "Particle Effect",
|
||||
"description": "Displays an advanced particle effect with extended parameters.",
|
||||
"direction": "outgoing",
|
||||
"isDynamic": false,
|
||||
"size": 49,
|
||||
"fields": [
|
||||
{ "name": "packetId", "type": "byte", "size": 1, "value": "0xC7", "description": "Packet identifier" },
|
||||
{ "name": "effectType", "type": "byte", "size": 1, "description": "Effect type (see 0xC0)" },
|
||||
{ "name": "sourceSerial", "type": "uint", "size": 4, "description": "Serial of source entity" },
|
||||
{ "name": "targetSerial", "type": "uint", "size": 4, "description": "Serial of target entity" },
|
||||
{ "name": "itemId", "type": "short", "size": 2, "description": "Effect graphic ID" },
|
||||
{ "name": "srcX", "type": "short", "size": 2, "description": "Source X coordinate" },
|
||||
{ "name": "srcY", "type": "short", "size": 2, "description": "Source Y coordinate" },
|
||||
{ "name": "srcZ", "type": "sbyte", "size": 1, "description": "Source Z coordinate" },
|
||||
{ "name": "dstX", "type": "short", "size": 2, "description": "Destination X coordinate" },
|
||||
{ "name": "dstY", "type": "short", "size": 2, "description": "Destination Y coordinate" },
|
||||
{ "name": "dstZ", "type": "sbyte", "size": 1, "description": "Destination Z coordinate" },
|
||||
{ "name": "speed", "type": "byte", "size": 1, "description": "Effect speed" },
|
||||
{ "name": "duration", "type": "byte", "size": 1, "description": "Effect duration" },
|
||||
{ "name": "unknown1", "type": "byte", "size": 1, "value": "0x00", "description": "Unknown" },
|
||||
{ "name": "unknown2", "type": "byte", "size": 1, "value": "0x00", "description": "Unknown" },
|
||||
{ "name": "fixedDirection", "type": "bool", "size": 1, "description": "Fixed direction" },
|
||||
{ "name": "explode", "type": "bool", "size": 1, "description": "Explode on impact" },
|
||||
{ "name": "hue", "type": "int", "size": 4, "description": "Effect hue" },
|
||||
{ "name": "renderMode", "type": "int", "size": 4, "description": "Render mode" },
|
||||
{ "name": "effect", "type": "short", "size": 2, "description": "Particle effect ID" },
|
||||
{ "name": "explodeEffect", "type": "short", "size": 2, "description": "Explosion effect ID" },
|
||||
{ "name": "explodeSound", "type": "short", "size": 2, "description": "Explosion sound ID" },
|
||||
{ "name": "serial", "type": "uint", "size": 4, "description": "Associated entity serial" },
|
||||
{ "name": "layer", "type": "byte", "size": 1, "description": "Effect layer" },
|
||||
{ "name": "unknown3", "type": "short", "size": 2, "description": "Unknown" }
|
||||
],
|
||||
"source": {
|
||||
"file": "Projects/Server/Network/Packets/OutgoingEffectPackets.cs",
|
||||
"line": 58
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue