summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rwxr-xr-xtools/protocol.py85
1 files changed, 79 insertions, 6 deletions
diff --git a/tools/protocol.py b/tools/protocol.py
index 86b625f..f7be6e5 100755
--- a/tools/protocol.py
+++ b/tools/protocol.py
@@ -4278,8 +4278,34 @@ def build_context():
Being adds/removes a persistent status effect.
''',
)
- # 0x0199 define='SMSG_PVP_MAP_MODE',
- # 0x019a define='SMSG_PVP_SET',
+ map_user.s(0x0199, 'map pvp status',
+ define='SMSG_PVP_MAP_MODE',
+ fixed=[
+ at(0, u16, 'packet id'),
+ at(2, u16, 'status'),
+ ],
+ fixed_size=4,
+ pre=[NOTHING],
+ post=[PRETTY],
+ desc='''
+ Send the map pvp status
+ ''',
+ )
+ map_user.s(0x019a, 'being pvp status',
+ define='SMSG_PVP_SET',
+ fixed=[
+ at(0, u16, 'packet id'),
+ at(2, block_id, 'block id'),
+ at(6, u32, 'rank'),
+ at(10, u32, 'channel'),
+ ],
+ fixed_size=14,
+ pre=[NOTHING],
+ post=[PRETTY],
+ desc='''
+ Send the pvp status
+ ''',
+ )
map_user.s(0x019b, 'being effect',
define='SMSG_BEING_SELFEFFECT',
fixed=[
@@ -4605,7 +4631,7 @@ def build_context():
at(0, u16, 'packet id'),
at(2, block_id, 'npc id'),
at(6, u16, 'command'),
- at(8, block_id, 'id'),
+ at(8, u32, 'id'),
at(12, u16, 'x'),
at(14, u16, 'y'),
],
@@ -4677,9 +4703,56 @@ def build_context():
Send mob walkpath data to client
''',
)
- # 0x0226 define='SMSG_MAP_MASK',
- # 0x0227 define='SMSG_MAP_MUSIC',
- # 0x0228 define='SMSG_NPC_CHANGETITLE',
+ map_user.s(0x0226, 'send map mask',
+ define='SMSG_MAP_MASK',
+ fixed=[
+ at(0, u16, 'packet id'),
+ at(2, u32, 'mask'),
+ at(6, u32, 'unused'),
+ ],
+ fixed_size=10,
+ pre=[NOTHING],
+ post=[PRETTY],
+ desc='''
+ Set map mask
+ ''',
+ )
+ map_user.s(0x0227, 'change map music',
+ define='SMSG_MAP_MUSIC',
+ head=[
+ at(0, u16, 'packet id'),
+ at(2, u16, 'packet length'),
+ ],
+ head_size=4,
+ repeat=[
+ at(0, u8, 'c'),
+ ],
+ repeat_size=1,
+ pre=[NOTHING],
+ post=[PRETTY],
+ desc='''
+ Change map music
+ ''',
+ )
+ map_user.s(0x0228, 'npc change title',
+ define='SMSG_NPC_CHANGETITLE',
+ head=[
+ at(0, u16, 'packet id'),
+ at(2, u16, 'packet length'),
+ at(4, block_id, 'npc id'),
+ at(8, u16, 'string length'),
+ ],
+ head_size=10,
+ repeat=[
+ at(0, u8, 'c'),
+ ],
+ repeat_size=1,
+ pre=[NOTHING],
+ post=[PRETTY],
+ desc='''
+ Change npc title
+ ''',
+ )
# TOC_LOGINCHAR
# login char