- 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>
55 lines
2.4 KiB
JSON
55 lines
2.4 KiB
JSON
{
|
|
"category": "Targeting",
|
|
"packets": [
|
|
{
|
|
"id": "0x6C",
|
|
"name": "Target Response",
|
|
"description": "Client responds to a target cursor request.",
|
|
"direction": "incoming",
|
|
"isDynamic": false,
|
|
"size": 19,
|
|
"fields": [
|
|
{ "name": "packetId", "type": "byte", "size": 1, "value": "0x6C", "description": "Packet identifier" },
|
|
{
|
|
"name": "type",
|
|
"type": "enum",
|
|
"enumType": "sequential",
|
|
"size": 1,
|
|
"description": "Target type",
|
|
"values": [
|
|
{ "value": 0, "name": "Object", "description": "Targeting a specific object (mobile/item)" },
|
|
{ "value": 1, "name": "Location", "description": "Targeting a location/tile" }
|
|
]
|
|
},
|
|
{ "name": "targetId", "type": "int", "size": 4, "description": "Target cursor ID to match request" },
|
|
{
|
|
"name": "flags",
|
|
"type": "enum",
|
|
"enumType": "sequential",
|
|
"size": 1,
|
|
"description": "Target flags",
|
|
"values": [
|
|
{ "value": 0, "name": "Neutral", "description": "Neutral targeting" },
|
|
{ "value": 1, "name": "Harmful", "description": "Harmful action" },
|
|
{ "value": 2, "name": "Beneficial", "description": "Beneficial action" },
|
|
{ "value": 3, "name": "Cancel", "description": "Targeting canceled" }
|
|
]
|
|
},
|
|
{ "name": "targetSerial", "type": "uint", "size": 4, "description": "Serial of targeted object (0 for ground)" },
|
|
{ "name": "x", "type": "short", "size": 2, "description": "Target X coordinate (-1 if canceled)" },
|
|
{ "name": "y", "type": "short", "size": 2, "description": "Target Y coordinate (-1 if canceled)" },
|
|
{ "name": "unknown", "type": "byte", "size": 1, "description": "Unknown (typically 0)" },
|
|
{ "name": "z", "type": "sbyte", "size": 1, "description": "Target Z coordinate" },
|
|
{ "name": "graphic", "type": "ushort", "size": 2, "description": "Graphic ID of targeted tile (0 for land)" }
|
|
],
|
|
"related": [
|
|
{ "id": "0x6C", "relationship": "request", "note": "Target Request packet that initiated this" }
|
|
],
|
|
"notes": "If x == -1 && y == -1 && serial is invalid, user pressed Escape to cancel targeting.",
|
|
"source": {
|
|
"file": "Projects/UOContent/Network/Packets/IncomingTargetingPackets.cs",
|
|
"line": 28
|
|
}
|
|
}
|
|
]
|
|
}
|