Back to legacygamers.net
WARPGATE

Network

CNetwork, CPacket handlers, PacketCrypto, CSocketManager, CNetworkSession, packet registration

Functions 1,037Code 316 KBAddresses 0x00452C20 to 0x00D9E1A0Group Network
1,037 functions
AddressSizeNameDescription
0x00452C20122register_zone_packet_handler_58DStatic init: registers zone server packet 0x58D handler via vtable
0x00452CA0122register_zone_packet_handler_58CStatic init: registers zone server packet 0x58C handler via vtable
0x00453270122register_zone_packet_handler_617Static init: registers zone server packet 0x617 handler via vtable
0x00453840122register_zone_packet_handler_58EStatic init: registers zone server packet 0x58E handler via vtable
0x004538C0122register_zone_packet_handler_58FStatic init: registers zone server packet 0x58F handler via vtable
0x00453940122register_zone_packet_handler_590Static init: registers zone server packet 0x590 handler via vtable
0x004546D0122register_char_packet_handler_1974Static init: registers char server packet 0x1974 handler via vtable
0x00454CA0122register_char_packet_handler_1976Static init: registers char server packet 0x1976 handler via vtable
0x00455270122register_zone_packet_handler_4A9Static init: registers zone server packet 0x4A9 handler via vtable
0x004552F0122register_zone_packet_handler_4A8Static init: registers zone server packet 0x4A8 handler via vtable
0x00455370122register_zone_packet_handler_4CAStatic init: registers zone server packet 0x4CA handler via vtable
0x004553F0122register_char_packet_handler_196FStatic init: registers char server packet 0x196F handler via vtable
0x00455470122register_char_packet_handler_14A6Static init: registers char server packet 0x14A6 handler via vtable
0x004554F0122register_char_packet_handler_14ADStatic init: registers char server packet 0x14AD handler via vtable
0x00455570122register_char_packet_handler_14ACStatic init: registers char server packet 0x14AC handler via vtable
0x004555F0122register_char_packet_handler_14A5Static init: registers char server packet 0x14A5 handler via vtable
0x00455670122register_char_packet_handler_14ABStatic init: registers char server packet 0x14AB handler via vtable
0x00455C40122register_char_packet_handler_1973Static init: registers char server packet 0x1973 handler via vtable
0x00455CC0122register_char_packet_handler_197AStatic init: registers char server packet 0x197A handler via vtable
0x00455D40122register_char_packet_handler_1971Static init: registers char server packet 0x1971 handler via vtable
0x00455DC0122register_char_packet_handler_1972Static init: registers char server packet 0x1972 handler via vtable
0x00455E40122register_char_packet_handler_1970Static init: registers char server packet 0x1970 handler via vtable
0x00456410122register_char_packet_handler_1975Static init: registers char server packet 0x1975 handler via vtable
0x004569E0122register_char_packet_handler_1977Static init: registers char server packet 0x1977 handler via vtable
0x004575D0122register_char_packet_handler_196EStatic init: registers char server packet 0x196E handler via vtable
0x00457650122register_char_packet_handler_1775Static init: registers char server packet 0x1775 handler via vtable
0x004576D0122register_char_packet_handler_1776Static init: registers char server packet 0x1776 handler via vtable
0x00457750122register_char_packet_handler_196DStatic init: registers char server packet 0x196D handler via vtable
0x00457D20122register_zone_packet_handler_496Static init: registers zone server packet 0x496 handler via vtable
0x00457DA0122register_zone_packet_handler_497Static init: registers zone server packet 0x497 handler via vtable
0x00457E20122register_zone_packet_handler_494Static init: registers zone server packet 0x494 handler via vtable
0x00457EA0122register_zone_packet_handler_495Static init: registers zone server packet 0x495 handler via vtable
0x00457F20122register_zone_packet_handler_49AStatic init: registers zone server packet 0x49A handler via vtable
0x00457FA0122register_char_packet_handler_1456Static init: registers char server packet 0x1456 handler via vtable
0x00458020122register_char_packet_handler_1771Static init: registers char server packet 0x1771 handler via vtable
0x004580A0122register_char_packet_handler_1966Static init: registers char server packet 0x1966 handler via vtable
0x00458120122register_char_packet_handler_1458Static init: registers char server packet 0x1458 handler via vtable
0x004581A0122register_char_packet_handler_1459Static init: registers char server packet 0x1459 handler via vtable
0x00458220122register_char_packet_handler_145BStatic init: registers char server packet 0x145B handler via vtable
0x004582A0122register_char_packet_handler_1452Static init: registers char server packet 0x1452 handler via vtable
0x00458320122register_char_packet_handler_1455Static init: registers char server packet 0x1455 handler via vtable
0x004583A0122register_char_packet_handler_1454Static init: registers char server packet 0x1454 handler via vtable
0x00458420122register_char_packet_handler_1453Static init: registers char server packet 0x1453 handler via vtable
0x004584A0122register_char_packet_handler_145DStatic init: registers char server packet 0x145D handler via vtable
0x00458520122register_char_packet_handler_145CStatic init: registers char server packet 0x145C handler via vtable
0x00458AF0122register_zone_packet_handler_5AEStatic init: registers zone server packet 0x5AE handler via vtable
0x00458B70122register_zone_packet_handler_5AFStatic init: registers zone server packet 0x5AF handler via vtable
0x00458BF0122register_zone_packet_handler_5B0Static init: registers zone server packet 0x5B0 handler via vtable
0x00458C70122register_zone_packet_handler_5ADStatic init: registers zone server packet 0x5AD handler via vtable
0x00458CF0122register_char_packet_handler_312Static init: registers char server packet 0x312 handler via vtable
0x00458D70122register_char_packet_handler_313Static init: registers char server packet 0x313 handler via vtable
0x00458DF0122register_char_packet_handler_315Static init: registers char server packet 0x315 handler via vtable
0x00458E70122register_char_packet_handler_314Static init: registers char server packet 0x314 handler via vtable
0x00458EF0122register_char_packet_handler_316Static init: registers char server packet 0x316 handler via vtable
0x00458F70122register_char_packet_handler_317Static init: registers char server packet 0x317 handler via vtable
0x00458FF0122register_char_packet_handler_319Static init: registers char server packet 0x319 handler via vtable
0x004595C0122register_zone_packet_handler_567Static init: registers zone server packet 0x567 handler via vtable
0x00459640122register_zone_packet_handler_568Static init: registers zone server packet 0x568 handler via vtable
0x004596C0122register_login_packet_handler_128Static init: registers login server packet 0x128 handler via vtable
0x00459740122register_login_packet_handler_127Static init: registers login server packet 0x127 handler via vtable
0x004597C0122register_char_packet_handler_1555Static init: registers char server packet 0x1555 handler via vtable
0x00459840122register_char_packet_handler_154BStatic init: registers char server packet 0x154B handler via vtable
0x004598C0122register_char_packet_handler_1553Static init: registers char server packet 0x1553 handler via vtable
0x00459940122register_char_packet_handler_1552Static init: registers char server packet 0x1552 handler via vtable
0x004599C0122register_char_packet_handler_1551Static init: registers char server packet 0x1551 handler via vtable
0x00459A40122register_char_packet_handler_1550Static init: registers char server packet 0x1550 handler via vtable
0x00459AC0122register_char_packet_handler_154CStatic init: registers char server packet 0x154C handler via vtable
0x00459B40122register_char_packet_handler_154FStatic init: registers char server packet 0x154F handler via vtable
0x00459BC0122register_char_packet_handler_1554Static init: registers char server packet 0x1554 handler via vtable
0x00459C40122register_char_packet_handler_1581Static init: registers char server packet 0x1581 handler via vtable
0x00459CC0122register_char_packet_handler_1556Static init: registers char server packet 0x1556 handler via vtable
0x00459D40122register_char_packet_handler_154DStatic init: registers char server packet 0x154D handler via vtable
0x00459DC0122register_char_packet_handler_154EStatic init: registers char server packet 0x154E handler via vtable
0x0045A460122register_zone_packet_handler_4B3Static init: registers zone server packet 0x4B3 handler via vtable
0x0045A4E0122register_zone_packet_handler_4C6Static init: registers zone server packet 0x4C6 handler via vtable
0x0045A560122register_zone_packet_handler_4B4Static init: registers zone server packet 0x4B4 handler via vtable
0x0045A5E0122register_zone_packet_handler_4B2Static init: registers zone server packet 0x4B2 handler via vtable
0x0045A660122register_zone_packet_handler_4C4Static init: registers zone server packet 0x4C4 handler via vtable
0x0045A6E0122register_zone_packet_handler_4C5Static init: registers zone server packet 0x4C5 handler via vtable
0x0045A760122register_zone_packet_handler_4C1Static init: registers zone server packet 0x4C1 handler via vtable
0x0045A8B0122register_char_packet_handler_148CStatic init: registers char server packet 0x148C handler via vtable
0x0045A930122register_char_packet_handler_1493Static init: registers char server packet 0x1493 handler via vtable
0x0045A9B0122register_char_packet_handler_148FStatic init: registers char server packet 0x148F handler via vtable
0x0045AA30122register_char_packet_handler_1488Static init: registers char server packet 0x1488 handler via vtable
0x0045AAB0122register_char_packet_handler_1487Static init: registers char server packet 0x1487 handler via vtable
0x0045AB30122register_char_packet_handler_148EStatic init: registers char server packet 0x148E handler via vtable
0x0045ABB0122register_char_packet_handler_1968Static init: registers char server packet 0x1968 handler via vtable
0x0045AC30122register_char_packet_handler_1969Static init: registers char server packet 0x1969 handler via vtable
0x0045ACB0122register_char_packet_handler_1490Static init: registers char server packet 0x1490 handler via vtable
0x0045AD30122register_char_packet_handler_1492Static init: registers char server packet 0x1492 handler via vtable
0x0045ADB0122register_char_packet_handler_1967Static init: registers char server packet 0x1967 handler via vtable
0x0045AE30122register_char_packet_handler_1489Static init: registers char server packet 0x1489 handler via vtable
0x0045AEB0122register_char_packet_handler_1491Static init: registers char server packet 0x1491 handler via vtable
0x0045AF30122register_char_packet_handler_148DStatic init: registers char server packet 0x148D handler via vtable
0x0045B500122register_char_packet_handler_196CStatic init: registers char server packet 0x196C handler via vtable
0x0045B580122register_char_packet_handler_1774Static init: registers char server packet 0x1774 handler via vtable
0x0045B600122register_char_packet_handler_196BStatic init: registers char server packet 0x196B handler via vtable
0x0045B680122register_char_packet_handler_196AStatic init: registers char server packet 0x196A handler via vtable
0x0045B700122register_char_packet_handler_1772Static init: registers char server packet 0x1772 handler via vtable
0x0045B780122register_char_packet_handler_1773Static init: registers char server packet 0x1773 handler via vtable
0x0045BE20122register_zone_packet_handler_3F6Static init: registers zone server packet 0x3F6 handler via vtable
0x0045C3F0122register_zone_packet_handler_54AStatic init: registers zone server packet 0x54A handler via vtable
0x0045C470122register_zone_packet_handler_541Static init: registers zone server packet 0x541 handler via vtable
0x0045C4F0122register_zone_packet_handler_542Static init: registers zone server packet 0x542 handler via vtable
0x0045C570122register_login_packet_handler_120Static init: registers login server packet 0x120 handler via vtable
0x0045C5F0122register_login_packet_handler_123Static init: registers login server packet 0x123 handler via vtable
0x0045C670122register_char_packet_handler_1525Static init: registers char server packet 0x1525 handler via vtable
0x0045C6F0122register_char_packet_handler_1522Static init: registers char server packet 0x1522 handler via vtable
0x0045C770122register_char_packet_handler_1524Static init: registers char server packet 0x1524 handler via vtable
0x0045C7F0122register_char_packet_handler_151CStatic init: registers char server packet 0x151C handler via vtable
0x0045C870122register_char_packet_handler_1523Static init: registers char server packet 0x1523 handler via vtable
0x0045C8F0122register_char_packet_handler_1526Static init: registers char server packet 0x1526 handler via vtable
0x0045C970122register_char_packet_handler_151BStatic init: registers char server packet 0x151B handler via vtable
0x0045C9F0122register_char_packet_handler_1520Static init: registers char server packet 0x1520 handler via vtable
0x0045CA70122register_char_packet_handler_157DStatic init: registers char server packet 0x157D handler via vtable
0x0045CAF0122register_char_packet_handler_1527Static init: registers char server packet 0x1527 handler via vtable
0x0045CB70122register_char_packet_handler_151EStatic init: registers char server packet 0x151E handler via vtable
0x0045CBF0122register_char_packet_handler_151FStatic init: registers char server packet 0x151F handler via vtable
0x0045CC70122register_char_packet_handler_151DStatic init: registers char server packet 0x151D handler via vtable
0x0045CCF0122register_char_packet_handler_1578Static init: registers char server packet 0x1578 handler via vtable
0x0045CD70122register_char_packet_handler_1579Static init: registers char server packet 0x1579 handler via vtable
0x0045CDF0122register_char_packet_handler_1521Static init: registers char server packet 0x1521 handler via vtable
0x0045CE70122register_char_packet_handler_157CStatic init: registers char server packet 0x157C handler via vtable
0x0045DFB0122register_zone_packet_handler_573Static init: registers zone server packet 0x573 handler via vtable
0x0045E030122register_zone_packet_handler_571Static init: registers zone server packet 0x571 handler via vtable
0x0045E0B0122register_login_packet_handler_122Static init: registers login server packet 0x122 handler via vtable
0x0045E130122register_login_packet_handler_12AStatic init: registers login server packet 0x12A handler via vtable
0x0045E1B0122register_login_packet_handler_126Static init: registers login server packet 0x126 handler via vtable
0x0045E230122register_char_packet_handler_1566Static init: registers char server packet 0x1566 handler via vtable
0x0045E2B0122register_char_packet_handler_1577Static init: registers char server packet 0x1577 handler via vtable
0x0045E330122register_char_packet_handler_1574Static init: registers char server packet 0x1574 handler via vtable
0x0045E3B0122register_char_packet_handler_157BStatic init: registers char server packet 0x157B handler via vtable
0x0045E430122register_char_packet_handler_156CStatic init: registers char server packet 0x156C handler via vtable
0x0045E4B0122register_char_packet_handler_156BStatic init: registers char server packet 0x156B handler via vtable
0x0045E530122register_char_packet_handler_157AStatic init: registers char server packet 0x157A handler via vtable
0x0045E5B0122register_char_packet_handler_1576Static init: registers char server packet 0x1576 handler via vtable
0x0045E630122register_char_packet_handler_1575Static init: registers char server packet 0x1575 handler via vtable
0x0045E6B0122register_char_packet_handler_1568Static init: registers char server packet 0x1568 handler via vtable
0x0045E730122register_char_packet_handler_156AStatic init: registers char server packet 0x156A handler via vtable
0x0045E7B0122register_char_packet_handler_1569Static init: registers char server packet 0x1569 handler via vtable
0x0045E830122register_char_packet_handler_1573Static init: registers char server packet 0x1573 handler via vtable
0x0045E8B0122register_char_packet_handler_156EStatic init: registers char server packet 0x156E handler via vtable
0x0045E930122register_char_packet_handler_156FStatic init: registers char server packet 0x156F handler via vtable
0x0045E9B0122register_char_packet_handler_156DStatic init: registers char server packet 0x156D handler via vtable
0x0045EA30122register_char_packet_handler_1572Static init: registers char server packet 0x1572 handler via vtable
0x0045EAB0122register_char_packet_handler_1571Static init: registers char server packet 0x1571 handler via vtable
0x0045EB30122register_char_packet_handler_1570Static init: registers char server packet 0x1570 handler via vtable
0x0045EBB0122register_char_packet_handler_1567Static init: registers char server packet 0x1567 handler via vtable
0x0045EC30122register_char_packet_handler_1564Static init: registers char server packet 0x1564 handler via vtable
0x0045F2D0122register_zone_packet_handler_56EStatic init: registers zone server packet 0x56E handler via vtable
0x0045F350122register_zone_packet_handler_56DStatic init: registers zone server packet 0x56D handler via vtable
0x0045F3D0122register_zone_packet_handler_56AStatic init: registers zone server packet 0x56A handler via vtable
0x0045F450122register_zone_packet_handler_56CStatic init: registers zone server packet 0x56C handler via vtable
0x0045F4D0122register_zone_packet_handler_569Static init: registers zone server packet 0x569 handler via vtable
0x0045F550122register_zone_packet_handler_570Static init: registers zone server packet 0x570 handler via vtable
0x0045F5D0122register_zone_packet_handler_56FStatic init: registers zone server packet 0x56F handler via vtable
0x0045F650122register_zone_packet_handler_56BStatic init: registers zone server packet 0x56B handler via vtable
0x0045F6D0122register_login_packet_handler_11FStatic init: registers login server packet 0x11F handler via vtable
0x0045F750122register_login_packet_handler_11EStatic init: registers login server packet 0x11E handler via vtable
0x0045F7D0122register_char_packet_handler_1562Static init: registers char server packet 0x1562 handler via vtable
0x0045F850122register_char_packet_handler_155EStatic init: registers char server packet 0x155E handler via vtable
0x0045F8D0122register_char_packet_handler_1563Static init: registers char server packet 0x1563 handler via vtable
0x0045F950122register_char_packet_handler_155DStatic init: registers char server packet 0x155D handler via vtable
0x0045F9D0122register_char_packet_handler_155AStatic init: registers char server packet 0x155A handler via vtable
0x0045FA50122register_char_packet_handler_155CStatic init: registers char server packet 0x155C handler via vtable
0x0045FAD0122register_char_packet_handler_1559Static init: registers char server packet 0x1559 handler via vtable
0x0045FB50122register_char_packet_handler_157FStatic init: registers char server packet 0x157F handler via vtable
0x0045FBD0122register_char_packet_handler_157EStatic init: registers char server packet 0x157E handler via vtable
0x0045FC50122register_char_packet_handler_1560Static init: registers char server packet 0x1560 handler via vtable
0x0045FCD0122register_char_packet_handler_1561Static init: registers char server packet 0x1561 handler via vtable
0x0045FD50122register_char_packet_handler_1580Static init: registers char server packet 0x1580 handler via vtable
0x0045FDD0122register_char_packet_handler_155BStatic init: registers char server packet 0x155B handler via vtable
0x0045FE50122register_char_packet_handler_155FStatic init: registers char server packet 0x155F handler via vtable
0x00460420122register_zone_packet_handler_555Static init: registers zone server packet 0x555 handler via vtable
0x004604A0122register_zone_packet_handler_550Static init: registers zone server packet 0x550 handler via vtable
0x00460520122register_zone_packet_handler_554Static init: registers zone server packet 0x554 handler via vtable
0x004605A0122register_zone_packet_handler_553Static init: registers zone server packet 0x553 handler via vtable
0x00460620122register_zone_packet_handler_551Static init: registers zone server packet 0x551 handler via vtable
0x004606A0122register_zone_packet_handler_552Static init: registers zone server packet 0x552 handler via vtable
0x004607F0122register_char_packet_handler_1537Static init: registers char server packet 0x1537 handler via vtable
0x00460870122register_char_packet_handler_1531Static init: registers char server packet 0x1531 handler via vtable
0x004608F0122register_char_packet_handler_152DStatic init: registers char server packet 0x152D handler via vtable
0x00460970122register_char_packet_handler_1538Static init: registers char server packet 0x1538 handler via vtable
0x004609F0122register_char_packet_handler_1535Static init: registers char server packet 0x1535 handler via vtable
0x00460A70122register_char_packet_handler_1532Static init: registers char server packet 0x1532 handler via vtable
0x00460AF0122register_char_packet_handler_152FStatic init: registers char server packet 0x152F handler via vtable
0x00460B70122register_char_packet_handler_1536Static init: registers char server packet 0x1536 handler via vtable
0x00460BF0122register_char_packet_handler_152CStatic init: registers char server packet 0x152C handler via vtable
0x00460C70122register_char_packet_handler_152AStatic init: registers char server packet 0x152A handler via vtable
0x00460CF0122register_char_packet_handler_1534Static init: registers char server packet 0x1534 handler via vtable
0x00460D70122register_char_packet_handler_1530Static init: registers char server packet 0x1530 handler via vtable
0x00460DF0122register_char_packet_handler_152BStatic init: registers char server packet 0x152B handler via vtable
0x00460E70122register_char_packet_handler_1533Static init: registers char server packet 0x1533 handler via vtable
0x00460EF0122register_char_packet_handler_152EStatic init: registers char server packet 0x152E handler via vtable
0x004614C0122register_zone_packet_handler_556Static init: registers zone server packet 0x556 handler via vtable
0x00461540122register_zone_packet_handler_557Static init: registers zone server packet 0x557 handler via vtable
0x004615C0122register_zone_packet_handler_558Static init: registers zone server packet 0x558 handler via vtable
0x00461640122register_zone_packet_handler_561Static init: registers zone server packet 0x561 handler via vtable
0x00461790122register_char_packet_handler_1548Static init: registers char server packet 0x1548 handler via vtable
0x00461810122register_char_packet_handler_1582Static init: registers char server packet 0x1582 handler via vtable
0x00461890122register_char_packet_handler_153BStatic init: registers char server packet 0x153B handler via vtable
0x00461910122register_char_packet_handler_1544Static init: registers char server packet 0x1544 handler via vtable
0x00461990122register_char_packet_handler_153DStatic init: registers char server packet 0x153D handler via vtable
0x00461A10122register_char_packet_handler_153CStatic init: registers char server packet 0x153C handler via vtable
0x00461A90122register_char_packet_handler_1545Static init: registers char server packet 0x1545 handler via vtable
0x00461B10122register_char_packet_handler_1546Static init: registers char server packet 0x1546 handler via vtable
0x00461B90122register_char_packet_handler_1583Static init: registers char server packet 0x1583 handler via vtable
0x00461C10122register_char_packet_handler_1542Static init: registers char server packet 0x1542 handler via vtable
0x00461C90122register_char_packet_handler_153FStatic init: registers char server packet 0x153F handler via vtable
0x00461D10122register_char_packet_handler_1540Static init: registers char server packet 0x1540 handler via vtable
0x00461D90122register_char_packet_handler_1541Static init: registers char server packet 0x1541 handler via vtable
0x00461E10122register_char_packet_handler_1547Static init: registers char server packet 0x1547 handler via vtable
0x004623E0122register_zone_packet_handler_4ECStatic init: registers zone server packet 0x4EC handler via vtable
0x00462460122register_zone_packet_handler_4EBStatic init: registers zone server packet 0x4EB handler via vtable
0x004624E0122register_zone_packet_handler_4EEStatic init: registers zone server packet 0x4EE handler via vtable
0x00462560122register_zone_packet_handler_4E9Static init: registers zone server packet 0x4E9 handler via vtable
0x004625E0122register_zone_packet_handler_4E8Static init: registers zone server packet 0x4E8 handler via vtable
0x00462660122register_zone_packet_handler_4EFStatic init: registers zone server packet 0x4EF handler via vtable
0x004626E0122register_char_packet_handler_14F0Static init: registers char server packet 0x14F0 handler via vtable
0x00462760122register_char_packet_handler_14EEStatic init: registers char server packet 0x14EE handler via vtable
0x004627E0122register_char_packet_handler_14F2Static init: registers char server packet 0x14F2 handler via vtable
0x00462860122register_char_packet_handler_14E8Static init: registers char server packet 0x14E8 handler via vtable
0x004628E0122register_char_packet_handler_14ECStatic init: registers char server packet 0x14EC handler via vtable
0x00462960122register_char_packet_handler_14E7Static init: registers char server packet 0x14E7 handler via vtable
0x004629E0122register_char_packet_handler_14F4Static init: registers char server packet 0x14F4 handler via vtable
0x00462A60122register_char_packet_handler_1979Static init: registers char server packet 0x1979 handler via vtable
0x00462AE0122register_char_packet_handler_14EBStatic init: registers char server packet 0x14EB handler via vtable
0x00462B60122register_char_packet_handler_14EFStatic init: registers char server packet 0x14EF handler via vtable
0x00462BE0122register_char_packet_handler_14E9Static init: registers char server packet 0x14E9 handler via vtable
0x00462C60122register_char_packet_handler_14EAStatic init: registers char server packet 0x14EA handler via vtable
0x00463300122register_char_packet_handler_14D0Static init: registers char server packet 0x14D0 handler via vtable
0x00463380122register_char_packet_handler_14D6Static init: registers char server packet 0x14D6 handler via vtable
0x00463400122register_char_packet_handler_14D2Static init: registers char server packet 0x14D2 handler via vtable
0x00463480122register_char_packet_handler_1978Static init: registers char server packet 0x1978 handler via vtable
0x0065470040PacketType__get_type_id_0x101Virtual method returning packet type ID 0x101
0x0065473040PacketType__get_type_id_0x102Virtual method returning packet type ID 0x102
0x0065476040PacketType__get_type_id_0x103Virtual method returning packet type ID 0x103
0x0065479040PacketType__get_type_id_0x104Virtual method returning packet type ID 0x104
0x006547C040PacketType__get_type_id_0x105Virtual method returning packet type ID 0x105
0x006547F040PacketType__get_type_id_0x106Virtual method returning packet type ID 0x106
0x0065482040PacketType__get_type_id_0x107Virtual method returning packet type ID 0x107
0x0065485040PacketType__get_type_id_0x108Virtual method returning packet type ID 0x108
0x0065488040PacketType__get_type_id_0x109Virtual method returning packet type ID 0x109
0x006548B040PacketType__get_type_id_0x10aVirtual method returning packet type ID 0x10a
0x006548E040PacketType__get_type_id_0x10bVirtual method returning packet type ID 0x10b
0x0065491040PacketType__get_type_id_0x10cVirtual method returning packet type ID 0x10c
0x0065494040PacketType__get_type_id_0x10dVirtual method returning packet type ID 0x10d
0x0065497040PacketType__get_type_id_0x10eVirtual method returning packet type ID 0x10e
0x006549A040PacketType__get_type_id_0x10fVirtual method returning packet type ID 0x10f
0x006549D040PacketType__get_type_id_0x110Virtual method returning packet type ID 0x110
0x00654A0040PacketType__get_type_id_0x111Virtual method returning packet type ID 0x111
0x00654A3040PacketType__get_type_id_0x112Virtual method returning packet type ID 0x112
0x00654A6040PacketType__get_type_id_0x113Virtual method returning packet type ID 0x113
0x00654A9040PacketType__get_type_id_0x202Virtual method returning packet type ID 0x202
0x00654AC040PacketType__get_type_id_0x203Virtual method returning packet type ID 0x203
0x00654AF040PacketType__get_type_id_0x81Virtual method returning packet type ID 0x81
0x00654B2040PacketType__get_type_id_0x82Virtual method returning packet type ID 0x82
0x00654F4022PacketCrypto__copy_init_vtableCopy constructor initializing vtable ptr and member from source
0x00654F6068PacketCrypto__scalar_deleting_destructor_00654f60Scalar deleting destructor, frees 8 bytes if flag set
0x00654FB049PacketCrypto__invoke_callbackInvokes function pointer with 8 args from param pairs
0x00654FF0401PacketHashMap__rehash_00654ff0Rehashes unordered_map buckets using FNV-1a on 2-byte keys
0x00655190401PacketHashMap__rehash_00655190Rehashes unordered_map buckets using FNV-1a on 2-byte keys
0x0065534095PacketHashMap__insert_nodeInserts node into hash bucket, updates first/last bucket pointers
0x006553A022PacketCrypto__copy_init_vtable_006553a0Copy constructor initializing vtable ptr and member from source
0x00655470539PacketHashMap__erase_rangeErases range of entries from hash map, frees 0x38-byte nodes
0x006556F0527PacketHashMap__clear_or_shrinkClears hash map; if size < buckets/8, removes nodes; else full clear
0x00655900299PacketCrypto__init_encrypted_entryCreates encrypted hash map entry with MT PRNG and XOR key schedule
0x00655A30357PacketCrypto__verify_auth_hashVerifies authentication via XXH3-128 hash, supports 3 auth modes
0x00655BA0189PacketCrypto__generate_session_keyGenerates random session key, stores encrypted with crypto state
0x00655C60268PacketCrypto__fill_random_bytesFills buffer with random bytes using PRNG bounded range
0x00655D70102PacketHashMap__find_by_short_keyFinds entry in hash map by short (2-byte) key using FNV-1a hash
0x00655F00615PacketCrypto__init_key_scheduleInitializes 24-round LCG key schedule and masks, sets up crypto state
0x00656170504PacketHashMap__emplace_entryInserts or finds entry in packet hash map, rehashes if load factor exceeded
0x006563E0230PacketCrypto__generate_random_rangePacketCrypto: generate random range
0x006564D0182PacketCrypto__create_shared_obj_AAllocates 0x5c-byte shared object with vtable at 0110d4f0, refcount=1
0x00656590182PacketCrypto__create_shared_obj_BAllocates 0x5c-byte shared object with vtable at 0110d504, refcount=1
0x00656650182PacketCrypto__create_shared_obj_CAllocates 0x48-byte shared object with vtable at 0110d518, refcount=1
0x00656710185PacketCrypto__create_shared_obj_DAllocates 0x10c-byte shared object with vtable at 0110d4dc, refcount=1
0x006567D0196PacketCrypto__create_shared_obj_EAllocates 0x30-byte shared object with vtable at 0110d4c8, zeroed fields
0x006568E0153PacketCryptoA__constructorConstructs crypto object A with base class init, sets vtable chain
0x00656980153PacketCryptoB__constructorConstructs crypto object B with base class init, sets vtable chain
0x00656A20157PacketCryptoC__constructorConstructs crypto object C with base class init, zeroed 12-byte data
0x00656AC0153PacketCryptoD__constructorConstructs crypto object D with base class init, memset 0xd0 data bytes
0x00656BC0175PacketCryptoBase__constructorBase class constructor: sets vtable and zeroes 11 member fields
0x00656DF0135PacketCryptoE__init_fieldsInitializes 8 zero fields plus enabled flag (field[8]=1)
0x00656E8091PacketCryptoD__destructor_clear_0xd0Destructor: zeroes 0xd0-byte data at offset 4, calls base dtor
0x00656EE091PacketCryptoBase__destructor_clear_0x20_00656ee0Destructor: zeroes 0x20 bytes at offset 4, calls base dtor
0x00656F4091PacketCryptoBase__destructor_clear_0x20_00656f40Destructor: zeroes 0x20 bytes at offset 4, calls base dtor
0x0065700067PacketHashMap__free_sentinel_nodeFrees 0x50-byte sentinel node if allocated
0x00657050131PacketHashMap__destroy_all_nodes_0x50Destroys hash map: frees bucket vector then all 0x50-byte nodes
0x006570E0131PacketHashMap__destroy_all_nodes_0xcDestroys hash map: frees bucket vector then all 0xc-byte nodes
0x0065729078PacketHashMap__free_sentinel_node_00657290Frees 0x50-byte sentinel node if allocated
0x00657330103PacketHashMap__destroy_node_list_0x50Walks linked list freeing each 0x50-byte node including sentinel
0x006573A0103PacketHashMap__destroy_node_list_0xcWalks linked list freeing each 0xc-byte node including sentinel
0x0065753065PacketHashMap__destructor_wrapperDestructor wrapper: delegates to destroy_all_nodes_0x50
0x0065758091PacketCryptoBase__destructor_clear_0x20_00657580Destructor: zeroes 0x20 bytes at offset 4, calls base dtor
0x006575E091PacketCryptoBase__destructor_clear_0x20_006575e0Destructor: zeroes 0x20 bytes at offset 4, calls base dtor
0x006577B091PacketCryptoBase__destructor_clear_0x20_006577b0Destructor: zeroes 0x20 bytes at offset 4, calls base dtor
0x00657840346PacketCrypto__encrypt_payload_xorEncrypts packet payload with MT PRNG-derived XOR key, 6 bytes per round
0x00657CD0129PacketCryptoD__scalar_deleting_destructorScalar deleting destructor: zeroes 0xd0 data, frees 0xd4 bytes if flagged
0x00657D60126PacketCryptoBase__scalar_deleting_destructor_0x24Scalar deleting destructor: zeroes 0x20 data, frees 0x24 bytes if flagged
0x00657DE0126PacketCryptoBase__scalar_deleting_destructor_0x24_00657de0Scalar deleting destructor: zeroes 0x20 data, frees 0x24 bytes if flagged
0x00657E60184PacketCryptoA__scalar_deleting_destructorScalar deleting destructor: clears vector+0x20 data, frees 0x50 bytes
0x00657F20184PacketCryptoB__scalar_deleting_destructorScalar deleting destructor: clears vector+0x20 data, frees 0x50 bytes
0x00657FE0184PacketCryptoC__scalar_deleting_destructorScalar deleting destructor: clears vector+0xc data, frees 0x3c bytes
0x006580A0187PacketCryptoE__scalar_deleting_destructorScalar deleting destructor: clears vector+0xd0 data, frees 0x100 bytes
0x0065816036PacketCryptoSharedA__vptr_deleting_destructorSets vtable to 0110d4f0 and frees 0x5c bytes if flagged
0x0065819036PacketCryptoSharedB__vptr_deleting_destructorSets vtable to 0110d504 and frees 0x5c bytes if flagged
0x006581C036PacketCryptoSharedC__vptr_deleting_destructorSets vtable to 0110d518 and frees 0x48 bytes if flagged
0x006581F039PacketCryptoSharedD__vptr_deleting_destructorSets vtable to 0110d4dc and frees 0x10c bytes if flagged
0x0065822036PacketCryptoSharedE__vptr_deleting_destructorSets vtable to 0110d4c8 and frees 0x30 bytes if flagged
0x00658250126PacketCryptoBase__scalar_deleting_destructor_0x24_00658250Scalar deleting destructor: zeroes 0x20 data, frees 0x24 bytes if flagged
0x006582D0126PacketCryptoBase__scalar_deleting_destructor_0x24_006582d0Scalar deleting destructor: zeroes 0x20 data, frees 0x24 bytes if flagged
0x00658350126PacketCryptoBase__scalar_deleting_destructor_0x24_00658350Scalar deleting destructor: zeroes 0x20 data, frees 0x24 bytes if flagged
0x006583D0618PacketCrypto__decrypt_and_verifyDecrypts packet using XOR key from hash map, verifies via external call
0x00658B90719PacketCrypto__parse_encrypted_headerParses encrypted packet header, validates via XXH3/XXH32, supports 4 modes
0x00658E90263PacketCrypto__decrypt_payload_xorDecrypts packet payload using XOR with key schedule, 6 bytes per round
0x00658FC049PacketCrypto__get_version_infoReturns 8-byte version info from encrypted header if version < 2
0x0065900067PacketCrypto__init_global_stateInitializes global packet crypto state via external thunk call
0x00659B6057PacketCrypto__init_thunk_00659b60SEH wrapper calling external thunk at 027a9e96
0x0065A2A0401PacketHashMap__rehash_0065a2a0Rehashes unordered_map buckets using FNV-1a on 2-byte keys
0x0065A550527PacketHashMap__clear_or_shrink_0065a550Clears hash map; if size < buckets/8, removes 0x50 nodes; else full clear
0x0065A760442PacketCrypto__invert_key_scheduleGenerates inverse key schedule for decryption from encryption keys
0x0065A920220PacketCrypto__expand_key_16to52Expands 16-byte key into 52-entry subkey array via bit rotation
0x0065AA7017PacketCrypto__thunk_0065aa70PacketCrypto: thunk 0065aa70
0x0065ACF057PacketCrypto__seh_wrapper_0065acf0SEH wrapper calling external thunk at 021c43f1
0x0065AFC017PacketCrypto__thunk_0065afc0PacketCrypto: thunk 0065afc0
0x0065B10015PacketCrypto__thunk_0065b100Simple thunk calling external packed function at 01adbb26
0x0065B1B017PacketCrypto__thunk_0065b1b0PacketCrypto: thunk 0065b1b0
0x0065B2E015PacketCrypto__thunk_0065b2e0Simple thunk calling external packed function
0x0065B38063PacketCrypto__seh_wrapper_0065b380PacketCrypto: seh wrapper 0065b380
0x0065B54063PacketCrypto__seh_wrapper_0065b540SEH wrapper calling external packed function
0x0065B77017PacketCrypto__thunk_0065b770PacketCrypto: thunk 0065b770
0x0065B86015PacketCrypto__thunk_0065b860Simple thunk calling external packed function
0x0065B94017PacketCrypto__thunk_0065b940PacketCrypto: thunk 0065b940
0x0065BA3015PacketCrypto__thunk_0065ba30Simple thunk calling external packed function
0x0065BB1029PacketCrypto__copy_helper_0065bb10PacketCrypto: copy helper 0065bb10
0x0065BBD029PacketCrypto__copy_helper_0065bbd0Memory copy or small helper function
0x0065BC9017PacketCrypto__thunk_0065bc90PacketCrypto: thunk 0065bc90
0x0065C03017CPacketStream__thunk_0065c030Simple thunk calling external packed function
0x0065C23017CPacketStream__thunk_0065c230CPacketStream: thunk 0065c230
0x0065C44016CPacketStream__ctor_baseCPacketStream base constructor: sets vtable pointer and initializes first member to 0
0x0065C4507CPacketStream__set_vtableSets CPacketStream vtable pointer (used during construction/destruction transitions)
0x0065C46036CPacketStream__scalar_deleting_dtorCPacketStream scalar deleting destructor: resets vtable, optionally frees 8-byte object
0x0065C5F0194CPacketStream__ctorCPacketStream constructor: sets vtable, initializes two linked-list structures with sentinel nodes (allocates 8 bytes each)
0x0065C6C0201CPacketStream__destroy_node_list_16Destroys a CPacketStream node list: frees all nodes (0x10 bytes each), frees backing array, frees sentinel node
0x0065C790201CPacketStream__destroy_node_list_12Destroys a CPacketStream node list: frees all nodes (0xC bytes each), frees backing array, frees sentinel node
0x0065C86093CPacketStream__dtorCPacketStream destructor: sets vtable, then destroys both internal node lists (12-byte and 16-byte variants)
0x0065C8C0114CPacketStream__scalar_deleting_dtor_fullCPacketStream scalar deleting destructor: sets vtable, destroys both node lists, optionally frees 0x2C-byte object
0x00732BF036CNetworkSessionBase__scalar_deleting_dtorScalar deleting destructor for the abstract CNetworkSession base class (vtable has purecall). Sets vtable to purecall table, then optionally frees the 4-byte object. Used as the base class destructor within CAsyncWorkThread's inheritance chain.
0x00734930103CIPAddressTree__FreeNodesRecursively frees nodes in an IP address BST. Traverses right subtree first, then frees current node (0x24 bytes) and moves to left child.
0x007349A021CIPAddress__constructor_from_uintConstructor for CIPAddress from a uint32 IP value. Sets vtable and stores the IP address.
0x007349C0137CIPAddress__constructor_from_stringConstructor for CIPAddress from a string. Sets vtable, copies the string, calls inet_addr() to convert to uint32, stores result.
0x00734A6067CIPAddressTree__FreeRootFrees the root node of the IP address tree (0x24 bytes) if non-null.
0x00734AB0111CIPAddressTree__FreeAllFrees all nodes in the IP address BST. Iterates through the tree freeing children, then frees the header node.
0x00734B3078CIPAddressTree__destructorDestructor variant 1 for CIPAddressTree. Frees root node if present.
0x00734B8078CIPAddressTree__destructor2Destructor variant 2 for CIPAddressTree. Frees root node if present.
0x00734BE036CIPAddress__scalar_deleting_destructorScalar deleting destructor for CIPAddress. Sets vtable and optionally frees memory (8 bytes).
0x007350E0451CConnectionManager__StoreIPAddressThread-safe IP address storage using a BST. Lazily initializes a global tree (DAT_0138d3e0). Looks up the current thread ID in the tree, inserts if not found. Converts the in_addr to string via inet_ntoa and stores it (16-byte buffer). Registers atexit cleanup.
0x007355F0146CSocketManager__constructorConstructor for CSocketManager. Sets vtable, initializes socket count and tree. Allocates BST sentinel node (0x18 bytes). Initializes a CRITICAL_SECTION for thread safety.
0x00735850107CSocketManager__destructorDestructor for CSocketManager. Sets vtable, deletes the CRITICAL_SECTION, then frees all socket tree nodes.
0x00735920128CSocketManager__scalar_deleting_destructorScalar deleting destructor for CSocketManager. Deletes critical section, frees tree, optionally frees memory (0x28 bytes).
0x007359A0230CSocketManager__CreateGlobalInstanceCreates the global CSocketManager singleton (DAT_0138d3ec). Allocates 0x28 bytes, initializes BST and critical section. Returns 1 on success, 0 on failure.
0x00735A9027CSocketManager__DestroyGlobalInstanceDestroys the global CSocketManager singleton. Calls virtual destructor with delete, nulls the global pointer.
0x00735AB0267CSocketManager__RegisterSocketRegisters a socket in the manager's BST. Enters critical section, searches for existing socket by ID, inserts new node if not found. Node stores socket ID and callback pointer. Returns 1 if inserted, 0 if already exists.
0x00735BC0156CSocketManager__DispatchCallbackDispatches a callback for a registered socket. Enters critical section, looks up socket by ID, if found calls the stored callback with 3 params. Returns 1 if dispatched, 0 if not found.
0x00735C60158CSocketManager__UnregisterSocketUnregisters a socket from the manager. Enters critical section, finds socket by ID and callback pointer match, removes the BST node and frees it (0x18 bytes).
0x00736340191CMessageQueue__constructorConstructor for CMessageQueue. Sets vtable, initializes circular buffer (linked list head, 8 bytes), initializes CRITICAL_SECTION, creates a semaphore with max count 0x7FFFFFFF for signaling message availability.
0x0073640077CMessageQueue__ClearQueueClears all messages from the queue. Frees the circular buffer and the list head node (8 bytes).
0x00736460137CMessageQueue__destructorDestructor for CMessageQueue. Sets vtable, closes the semaphore handle, deletes the critical section, frees the circular buffer and list head.
0x007364F0160CMessageQueue__scalar_deleting_destructorScalar deleting destructor for CMessageQueue. Calls destructor and optionally frees memory (0x38 bytes).
0x00736590186CMessageQueue__DequeueDequeues a message from the circular buffer. Enters critical section, reads the oldest entry (3 dwords: type, param1, param2), decrements count. Sets success flag in result. Returns empty result if queue is empty.
0x00736660220CMessageQueue__EnqueueEnqueues a message into the circular buffer. Enters critical section, grows buffer if full, allocates slot entry (12 bytes) if needed, stores 3 params (type + 2 data), increments count, signals the semaphore.
0x007369B023CNetworkSession__constructorConstructor for CNetworkSession. Sets vtable, increments global session counter (DAT_0138d3f0), assigns session ID.
0x007369D07CNetworkSession__destructorDestructor for CNetworkSession. Just sets the vtable pointer.
0x007369E036CNetworkSession__scalar_deleting_destructorScalar deleting destructor for CNetworkSession. Sets vtable and optionally frees memory (8 bytes).
0x0076EC20153PacketCrypto__generate_key_pairGenerates a 9-byte packet encryption key pair. First 5 bytes are random (generated via std::_Random_device + PacketCrypto__generate_random_range). Bytes 5-8 are derived by XORing the input 4-byte key (param_2) with cascading XORs of the random bytes.
0x0076ECC0153PacketCrypto__generate_key_pair_bGenerates a 9-byte packet encryption key pair. Identical to generate_key_pair - second copy for a different calling context.
0x0076ED6068PacketCrypto__extract_key_from_pairExtracts the original 4-byte key from a 9-byte key pair by reversing the XOR cascade. Computes key[i] = pair[5+i] ^ pair[i+1] ^ pair[i] for i=0..3. This is the inverse of generate_key_pair.
0x00C7C1C0189CNetworkSession__ctorConstructor for CNetworkSession (extends CNetSocket). Calls CNetSocket base init (vtable, 3 network buffers at 0xA000 each), then sets CNetworkSession vtable and initializes extra field at offset 0x6c to 0. Object size: 0x70 bytes.
0x00C7C370133CNetworkSession__scalar_deleting_dtorScalar deleting destructor for CNetworkSession (extends CNetSocket). Resets vtable to CNetSocket base, destroys 3 CNetworkBuffer objects in reverse order. If param_2 bit 0 is set, frees the 0x70-byte object allocation (4 bytes larger than base CNetSocket).
0x00C7CC3037CNetworkSession__is_socket_readyChecks if the socket is ready for communication. Returns true if socket FD is -1 (not connected) or if both FUN_00c7ca40 and FUN_00c7cb30 return true (socket is readable/writable).
0x00C7CC6047CNetworkSession__update_connection_statusUpdates connection status flag at field 0x20. If socket FD != -1, checks readability and writability. Sets field 0x20 to 0 if both pass (connected OK), 1 if either fails (connection error).
0x00C7CC9075CNetworkSession__read_from_bufferReads data from the network buffer. If param_3 is true (exact mode), reads exactly param_2 bytes and returns param_2 on success or 0 on failure. If param_3 is false (best-effort mode), reads up to param_2 bytes (clamped to available data) and returns actual bytes read.
0x00C7CDB014CNetworkSession__alloc_recv_bufferAllocates a single receive buffer of 0xa000 (40960) bytes via FUN_00c7f060.
0x00C7CDC044CNetworkSession__alloc_triple_bufferAllocates three 0xa000 (40960) byte buffers via FUN_00c7f060 calls. Used for triple-buffered network I/O.
0x00C7CDF057CNetworkSession__send_dataSends data over the network socket. If socket FD is -1, does nothing. If field 0x18 is set (async mode), just calls FUN_00c7f0e0. Otherwise calls FUN_00c7f0e0 followed by FUN_00c7cb30 (flush/wait). param_2=data, param_3=length.
0x00C7CE3050CNetworkSession__send_data_timedSends data with timing. Calls timeGetTime() first (for timing/latency tracking), then sends data via FUN_00c7f0e0 and flushes via FUN_00c7cb30. Only if socket FD != -1.
0x00C7CEC012CNetworkSession__recv_dataReceives data from network socket by calling FUN_00c7f160. Wrapper for the receive operation.
0x00C7D7D0293CNetworkSession__get_singletonThread-safe singleton accessor for CNetworkSession. On first call, constructs the CNetSocket base (vtable, socket state, 3 network buffers at 0xA000 each), then upgrades vtable to CNetworkSession. Registers atexit cleanup handler. Returns pointer to global singleton at 0x016fdc98.
0x00C7DFA064CNetworkSession__flush_pending_packetsFlushes all pending packets from a linked list. Iterates the list at field [0], for each node: computes offset using magic value 0x40004, calls FUN_00c7df30 to send node data (at node+8) with flag=1. Continues until list wraps back to head.
0x00C7DFE066CNetworkSession__flush_pending_packets_indirectSimilar to flush_pending_packets but accesses the list through an indirect pointer at field [8] and write pointer at field [0x10]. Iterates linked list nodes and sends each via FUN_00c7df30.
0x00C7E0B093CNetworkSession__hook_send_functionHooks a send function by following JMP chains, finding a signature pattern via FUN_00c7e030, then patching a CALL (0xE8) instruction at offset+6 and a JMP (0xE9) at offset+11. Uses VirtualProtect to make code writable. Stores hook entry point in field [0x10].
0x00C7E110151CNetworkSession__init_packet_hooksInitializes packet hooks for the network session. Resets two linked lists (at fields [0] and [8]) using FUN_00c7d930. Then hooks FUN_00c7df30 by following JMP chains, finding the code signature, and patching CALL+JMP instructions. Stores hook addresses. Uses VirtualProtect for code modification.
0x00CEA5104001CNetwork__serialize_entity_data_packetsSerializes entity data into network packets for replay/save. Iterates through entity list, building sub-packets (0xD6 for type 1 entities, 0xD9 otherwise) with serialized entity data. Also serializes equipment (0xC9), player appearance (0xDA), buff/debuff timers (0xCB), pet/homunculus (0xCC), and status effects (0x191). Wraps all in packet header 10000 and terminates with 0x2711.
0x00CEB4C01053CNetwork__serialize_ground_item_packetsSerializes ground item data into network packets. Iterates through ground item list, computing screen coordinates from 3D positions using map dimensions. Builds sub-packets (0xCD) with item position data (screen x/y, type info). Wraps in header 17000, terminates with 0x4269.
0x00CEBA00427CNetwork__parse_status_change_streamParses status change/buff data stream (header 19000, matching build_status_change_packet_list). Iterates sub-packets: 0x4A43 extracts status effect data (type, time remaining, 5 values) and stores in global buffer (DAT_014a6938). Also calls CTimerBarMgr__add_timer for timed effects. Sets DAT_0173ad3e=1 on completion. Terminates on 0x4A39.
0x00CEBBB0593CNetwork__parse_guild_emblem_data_streamParses guild emblem data stream (header 13000, matching build_guild_emblem_packet_list). Dispatches sub-packets: 0x32CA calls CNetwork__save_emblem_to_file (emblem BMP data), 0x32CB calls SpriteAction__parse_action_data (serialized tree), 0x32CC stores guild ID in local, 0x32CD sets guild emblem version via virtual call and stores in DAT_016d44a8. Terminates on 0x32C9.
0x00CEBE20269CNetwork__parse_hotkey_data_streamParses hotkey bar data stream (header 14000, matching build_hotkey_sync_packets). Reads sub-packets and copies hotkey data (0x36BB) into object at offset 0x24C. Terminates on sub-packet type 0x36B1. Returns -1 if empty or wrong header.
0x00CEBF30453CNetwork__parse_npc_chat_data_streamParses NPC chat/speech bubble data stream (header 15000, matching build_npc_chat_sync_packets). Processes sub-packet 0xCF by allocating 19-byte buffer and calling CNetwork__recv_npc_spawn_v1 for NPC spawn setup. Terminates on 0x3A99. Returns -1 if empty or wrong header.
0x00CEC1001174CNetwork__dispatch_entity_subpacketsDispatches entity sub-packets from a stream (header 10000). Large switch on sub-packet type: 0xC9=equipment, 0xCA=inventory, 0xCB=debuffs, 0xCC=pet/homunculus, 0xCD=unknown, 0xD0/D2/D4/D5/D6/D7/D8/D9=various entity data, 0xDA=player appearance with string, 0x191=status effect. Terminates on 0x2711.
0x00CEC6A0651CNetwork__parse_ground_item_streamParses ground item stream (header 17000). Processes sub-packets: 0xCD copies 16 bytes and calls FUN_00d41250 for item placement, 0xCE copies 97 bytes and calls FUN_00d40730 for detailed item data. Terminates on 0x4269. Returns -1 if empty or wrong header.
0x00CECAB072CNetwork__send_disconnect_requestSends a disconnect/logout request to the server. Builds packet with type 0x7D, sends via CNetworkSession__send_data_timed, then resets network receive buffer and calls stub_005e7970. Only executes if DAT_016f7144 != 1 (not already disconnecting).
0x00CECE30672CNetwork__save_emblem_to_fileSaves guild/party emblem data to a temporary file. Extracts emblem name from stream, builds path as '{path}/tmpEmblem/{name}'. If file doesn't already exist (checked via CFileStream), writes raw emblem data to file via fopen/fwrite/fclose. Returns 1 on success, 0 if input stream is empty.
0x00CEFCA0125CNetwork__send_item_identify_requestSends an item identify request packet (0x149) to the server. Checks if item ID is in identify blacklist first. Only sends if DAT_016d3b14 != 3 (not in identify mode). Packet contains item ID, action type 2, and a 10 param.
0x00CF0E30467CNetwork__send_chat_message_packetSends a chat message packet (type 0x1D5) to the server. Validates the message is non-empty, formats the player name prefix via snprintf_wrapper, validates item links via CItemLink__validate_and_parse_link (skips send if link is invalid). Builds the packet with header 0x1D5, message length, and message body. Uses stack allocation for small messages (<=0x400), heap for larger. Sends via CNetworkSession__send_data_timed.
0x00CFD3D596CNetwork__send_job_sprite_count_packetSends packet 0xB19 containing job sprite count to the server via CNetworkSession.
0x00D04460147CNetwork__refine_data_record_copy_ctorCopy constructor for a 0x158-byte refine/upgrade data record. Copies 0x60 bytes of plain DWORD fields, then deep-copies an embedded CShopItem at offset 0x60. Used when duplicating item refine data entries in vectors.
0x00D0450067CNetwork__packet_buffer_dtor_0xc_aDestructor for a packet data buffer. Frees a 0xC-byte (12 bytes) heap allocation at this+4 if non-null. Uses SEH frame for exception safety. One of several similar buffer destructors varying only in allocation size.
0x00D0455067CNetwork__packet_buffer_dtor_0xc_bDestructor for a packet data buffer. Frees a 0xC-byte heap allocation at this+4 if non-null. Identical to dtor_0xc_a.
0x00D045A067CNetwork__packet_buffer_dtor_0xc_cDestructor for a packet data buffer. Frees a 0xC-byte heap allocation at this+4 if non-null. Identical to dtor_0xc_a.
0x00D045F067CNetwork__packet_buffer_dtor_0x24_aDestructor for a packet data buffer. Frees a 0x24-byte (36 bytes) heap allocation at this+4 if non-null.
0x00D0464067CNetwork__packet_buffer_dtor_0x28_aDestructor for a packet data buffer. Frees a 0x28-byte (40 bytes) heap allocation at this+4 if non-null.
0x00D0469067CNetwork__packet_buffer_dtor_0x24_bDestructor for a packet data buffer. Frees a 0x24-byte (36 bytes) heap allocation at this+4 if non-null.
0x00D046E067CNetwork__packet_buffer_dtor_0x20_aDestructor for a packet data buffer. Frees a 0x20-byte (32 bytes) heap allocation at this+4 if non-null.
0x00D0473067CNetwork__packet_buffer_dtor_0x20_bDestructor for a packet data buffer. Frees a 0x20-byte (32 bytes) heap allocation at this+4 if non-null.
0x00D0478067CNetwork__packet_buffer_dtor_0x18Destructor for a packet data buffer. Frees a 0x18-byte (24 bytes) heap allocation at this+4 if non-null.
0x00D047D067CNetwork__packet_buffer_dtor_0x28_bDestructor for a packet data buffer. Frees a 0x28-byte (40 bytes) heap allocation at this+4 if non-null.
0x00D0482067CNetwork__packet_buffer_dtor_0x1cDestructor for a packet data buffer. Frees a 0x1c-byte (28 bytes) heap allocation at this+4 if non-null. Uses SEH frame for exception safety.
0x00D079A01741CNetwork__handle_whisper_responseHandles whisper message responses from the server. Switch on param_2: case 0 = successful whisper send (decrypts message, formats "[To name] : msg" or "[To name] >> msg", dispatches to chat UI and log), case 1/2/3 = error codes (player offline/blocked/etc, formats error messages with msg IDs 0x94/0x95/0x96), default = unknown error with extended formatting. Checks valid player name and map name for different display formats.
0x00D08110594CNetwork__handle_buyingstore_purchaseHandles a buying store purchase event. Looks up the item by slot, creates a UI window (type 0x101), dispatches UI notification, formats a chat message with item name and count (msg ID 0xE7), notifies vending windows. Checks field 0x175C and plays steal sound effect if applicable. Handles shop window state transitions.
0x00D08390565CNetwork__handle_map_server_changeHandles a map server change packet. Extracts the new map name (from packet+0x1C as UTF-16) and server address (from packet+2 as UTF-16), converts to std::string, then calls handle_map_server_connect to initiate the server transition.
0x00D08670425CNetwork__handle_vending_item_soldHandles notification that an item was sold from the player's vending shop. Looks up item by ID string, gets item class/level info, creates UI window (type 0x102), dispatches UI notifications. Updates both shop windows (buyer and seller sides). Plays steal sound effect if sound enabled. Checks field 0x175C for shop state transition.
0x00D089101428CNetwork__main_packet_dispatch_loopMain network packet receive and dispatch loop. Checks connection state, reads packets from the network socket, dispatches them via a jump table indexed by (packet_id - 0x73) for IDs in range 0x73-0xC44. Handles: hourly play-time warnings (encrypted TLS strings), replay recording (mode 2), replay playback (mode 7), and connection loss detection. The jump table at 0x00d14aa4 contains 0xBD2 entries covering all known packet handlers.
0x00D0C8521CNetwork__create_window_and_process_packet_loopWARNING (jumptable): Unable to track spacebase fully for stack
0x00D0CB7F1CNetwork__parse_favorite_items_and_process_packetsWARNING (jumptable): Unable to track spacebase fully for stack
0x00D0E1831CNetwork__dispatch_chat_and_process_packetsWARNING (jumptable): Unable to track spacebase fully for stack
0x00D17D301009CNetwork__handle_connection_refusedHandles connection refused/disconnect reason packets. Disconnects the network socket, then switches on reason code (byte at param_2+2): 0=banned(msg 3), 1=server full(msg 4), 2=already logged in(msg 5), 3=outdated client(msg 0xF1), 4=banned(msg 0x108), 5=wrong version(msg 0x131), 9/10=service messages, 0xF=maintenance(msg 0x243), 0x6E/0x71/0x73=additional error codes. Default case formats a generic error. Shows dialog box and transitions to disconnected state.
0x00D18BD0318CNetwork__recv_character_stats_updateReceives and stores character stat update packets. param_3=0: copies 0xFC bytes (63 dwords) to global player stats at DAT_01732ae8, plus additional fields at +0xFC through +0x109. param_3=1: copies to secondary stats buffer at DAT_01732be4. Notifies the player entity window via virtual call 0x8F with the stat delta.
0x00D18D10580CNetwork__apply_status_bitmask_effectsApplies visual effects based on status bitmask changes. Initializes two lazy maps on first call: bitmask-to-msgstring and packet-to-msgstring. Iterates the bitmask map, checking each bit against param_2. For each matching bit, calls handle_character_appearance_data to apply/remove the visual effect. Also checks a secondary map for specific status IDs. Skips status IDs 0x377/0x378/0x379.
0x00D18F60158CNetwork__send_equipment_card_dataIterates the equipment card data map at this+0x1F0 and sends card information to the UI window (DAT_014a684c). For each entry with a non-zero card count (short at +0x1A), dispatches a virtual call 0x1E5 with card slot, card count, item type, and option values.
0x00D19000906CNetwork__insert_or_update_entity_recordInserts or updates an entity record in a red-black tree map keyed by entity ID. If the key doesn't exist, allocates a new 0x218-byte node via CPacketManager__complex_handler and inserts it. Copies extensive entity data from param_3: 7 strings, multiple short/int fields covering stats, appearance, position etc. Total record size ~0x200 bytes with strings and vectors.
0x00D19390514CNetwork__recv_ranking_list_displayHandles received ranking list packet. Looks up ranking type by short at param_1+2 in a lazily-initialized ranking type map. Displays top 10 entries formatted as rank/name/points. Each entry is 0x18 bytes (name) + 4 bytes (points) at param_1+0xF4. Shows player's own ranking points at end.
0x00D195D0265CNetwork__recv_quest_result_message_00d195d0Handles quest/item result message packet. Type 0 (short at +2): stores global data (DAT_01738258/5c/01733d28) and refreshes item display. Type 2: msgstring 0x998. Type 3: msgstring 0x9a1. Type 4: msgstring 0x9b9. Default: msgstring 0x996. Non-zero types display message in chat with color 0xFF.
0x00D196E0236CNetwork__recv_quest_result_messageHandles quest result message packet. Switches on result type (short at +2): type 0 stores quest data (DAT_01738258/5c/01733d28) and refreshes display. Type 1: msgstring 0x997. Type 3: msgstring 0x9b9. Default: msgstring 0x996. Non-zero types display the message in chat with color 0xFF.
0x00D197F0231CNetwork__recv_item_search_result_messageHandles item search/town info result packet. Type 0 (short at +10): stores data, toggles/creates window 0x113. Type 2: displays msgstring 0xbd7. Default: displays msgstring 0x996 error.
0x00D198F0561CNetwork__recv_skill_ranking_listProcesses skill/ranking list from packet. Iterates items checking skill IDs (guillotine/rune), builds ranking records with item names. Creates UI windows 0xA0 and 0xA1 to display results.
0x00D19B30935CNetwork__recv_character_flags_and_featuresReceives character flags and feature unlocks. Extracts bit flags from dword at +4, stores each flag via CReportManager (IDs 7-0x14, 0x28-0x29). Checks job class for specific features (Guillotine Cross 0xFCF, Soul Reaper 0x1082, Hyper Novice 0x108F/0x1091/0x10CE). If feature flag 0x29 not set, shows msgstring 0x94D. Sends response packet 0x447.
0x00D19EF073CNetwork__recv_entity_timer_effectHandles entity timer effect packet. Looks up entity by ID (offset +2) via CBGMManager. If found, calls entity virtual method at vtable+8 with event type 0x52 and timer duration (offset +10, multiplied by 1000 for milliseconds). Applies a timed visual/status effect to the entity.
0x00D19F40304CNetwork__recv_skill_list_packetHandles received skill list packet. Parses variable-length list: packet length at offset +2, each entry is 0xF bytes. Builds a vector of skill records, then calls process_skill_list_packet with the packet type (short at offset 0) and the accumulated vector. Cleans up the vector after processing.
0x00D1A330484CNetwork__recv_whisper_message_headerReceives whisper message header packet. Extracts sender name from param_1+0x21 (length from short at param_1+2), builds message buffer with sender/content, and delegates to CNetwork__process_whisper_message (FUN_00d1a520) for display and logging.
0x00D1A5204462CNetwork__process_whisper_messageProcesses an incoming whisper message. Handles both sent and received whispers. Checks if sender is a valid player name, map name, or forbidden name. For valid whispers: displays in chat, handles item links, creates tooltip entries, manages chat log recording. For self-messages (sent whispers): prepends '[Friend]' tag. Supports XOR-decrypted packet comparison for server messages.
0x00D1B690509CNetwork__recv_buyingstore_item_listReceives buying store item list from server. Iterates items (count at param_1+4), creating shop item entries. Each item is 8 bytes (item ID at +8, price at +0xC). Items are added to per-type linked lists indexed by short at param_1+6 (up to 11 types). Uses CItemInfoMgr for item lookups and CItemDesc for name resolution.
0x00D1B890503CNetwork__recv_map_change_with_replayHandles map change packet with replay/BGM state management. Stops replay if playing (state 2->3), pauses if recording (state 7->8). Syncs server tick, extracts position from 3 packed bytes, builds RSW filename, sets next map name, flushes network socket. If ping logging enabled, writes server/IP/map/time to PingLog.txt and clears ping history list.
0x00D1BA90392CNetwork__recv_map_change_simple_00d1ba90Handles simple map change packet (no replay state management). Syncs server tick, extracts position from 3 packed bytes, builds RSW filename, sets next map name, flushes network socket. If ping logging enabled, writes server/IP/map/time to PingLog.txt and clears ping history list. Simpler variant of recv_map_change_with_replay.
0x00D1C100304CNetwork__recv_search_store_resultHandles search store (buying store) result packet. Case 0: success - dispatches chat message with msg 0x40 (yellow), opens search store window with item data. Case 1: shows msg 0x41 (red error). Case 2: shows msg 0x42 (red error). Sets field 0xfc to 0 and 0x3fc to 1 on success.
0x00D1C230117CNetwork__recv_item_composition_resultHandles item composition (combine) result. Gets message text from string table based on success/fail flag at offset+2. Message IDs 0x97 or 0x98. Displays result in green (0x32ff) chat message.
0x00D1C6402478CNetwork__recv_mail_item_listProcesses mail item list packet. Handles two types (0 and 1): parses item entries with ID, type, amount, card slots, builds tooltip strings via CItemDB. Stores items into mail data vectors via CNetwork__recv_mail_data. Type 1 also triggers auction data recv and NPC dialog. Type 2/3: shows error messages (0x9EF, 0x718).
0x00D1CFF0567CNetwork__recv_barter_item_listProcesses barter/extended vending item list packet. Loops through items (0xB byte records), extracts item data, builds item info structs. Opens 3 UI windows (0xB1, 0xB2, 0xB3) and sends setup messages. Sets field 0x24C to 1 when complete.
0x00D1D2F0358CNetwork__recv_vending_resultHandles vending operation result. Case 0: closes vending window (0x2D), refreshes item list in window 0x29, sets field 0x93 to 1. Case 1: closes shop windows (0x28, 0x2B, 0x2C), shows dialog box with msg 0xA4F. Case 3: closes all shop windows, shows error msg 0xC9D in red.
0x00D1D460267CNetwork__recv_auction_result_00d1d460Handles auction result packet. Parses result type from offset +2 and displays appropriate success/error messages via CUIWindowMgr chat dispatch. Updates auction-related UI windows and global state based on the operation result code.
0x00D1D57030CNetwork__recv_deal_status_notificationHandles deal status notification. Simple 30-byte function that reads a short value from the packet and dispatches it to the trade window. Minimal processing - just forwards the deal status code to the UI system.
0x00D1D6901CNetwork__handle_party_chat_messageCNetwork: handle party chat message
0x00D1D9D0373CNetwork__recv_character_renameProcesses character rename response. Extracts new name string from packet (offset 6 to 0x1E), sets it on the sprite via SpriteAction__set_node_string_field_0. If the renamed character ID matches the local player (DAT_01733648), updates the local display name and refreshes UI.
0x00D1DB50798CNetwork__recv_instance_map_changeHandles instance map change packet. Type 3: extracts map name from packet (offset 8-0x20), builds string, calls handle_map_change_notification with map ID from offset 4. Type 4: gets message text and calls handle_map_change_notification. Manages STL string construction/destruction for map name.
0x00D1DE70307CNetwork__recv_map_change_simpleHandles simple map change packet. Extracts map name string (offset 6-0x1E) and map ID (offset 2), then calls handle_map_change_notification.
0x00D1DFB01044CNetwork__recv_player_spawn_dataProcesses full player spawn/appearance data packet with 4 name strings (offsets 6-0x1E, 0x1E-0x36, 0x36-0x4E, 0x4E-0x66). Builds complete node data and inserts into sprite system via SpriteAction__insert_full_node_data with entity ID from offset 2.
0x00D1E3D0573CNetwork__recv_player_update_dataProcesses player update data packet. Extracts 2 name strings (offset 0xA-0x22 and 0x22+), entity ID from offset 2. Inserts into sprite system. If entity matches local player (DAT_01733648), updates display name and refreshes UI.
0x00D1E610415CNetwork__recv_stat_info_debugDisplays debug stat information in chat. Shows STR/AGI/VIT/INT/DEX/LUK values and their standard variants in alternating yellow/orange colors. Also shows attPower, refiningPow, MAX HP/SP/weight, itemdefPow, plusdefPow, mdefPow, plusMdefPow, hit/avoid/flee values.
0x00D1F400307CNetwork__recv_equip_item_resultHandles equip item result packet. Case 0: success - looks up item by slot (param_3), sets equip position (param_4) and param_5, then calls CShop__equip_item_to_slot to apply. Sets timer to timeGetTime()-2000 at offset 0x104. Case 1: error msg 0x7A1 (equip failed/rejected, red text font 7). Case 2: error msg 0x174 (already equipped, red text font 7).
0x00D1F57040CNetwork__recv_quest_display_updateHandles a packet system update by calling CPacketSystem__method_0067b800 with dword at +2 and byte at +6, then calls the SEH wrapper.
0x00D1F5A0463CNetwork__recv_inventory_item_addedHandles inventory item added notification. Parses item data: item index (offset 2), amount (offset 4), item ID (offset 8), card slots, refine level, and flags. Builds item info struct and adds to inventory via FUN_00dd7b80.
0x00D1F770511CNetwork__recv_cart_item_addedHandles cart item added notification. Parses item data from packet: index (offset 2), count (offset 7), item ID (offset 6), card slots, flags. If index is 0 calls FUN_00dffd20 (clear/init). Otherwise builds item info and copies to cart via CShopItem__copy_construct + FUN_00e00320.
0x00D1F970559CNetwork__recv_cart_item_added_with_optionsHandles cart item added with item options. Same as recv_cart_item_added but includes option data (offsets 0x1E-0x36). Parses up to 5 item options with ID+value pairs. Counts non-zero options and stores them in a compact array before adding to cart.
0x00D1FDA0461CNetwork__recv_storage_item_addedHandles storage item added notification. Parses item data: index (offset 2), amount (offset 4), item ID (offset 8), card slots, refine level, flags. Builds item info struct and adds to storage via FUN_00dd72c0.
0x00D1FF70526CNetwork__recv_storage_item_added_with_optionsHandles storage item added with item options. Same as recv_storage_item_added but includes option data (offsets 0x20-0x38). Parses up to 5 item options with ID+value+param fields. Counts non-zero option slots and builds compact option array before adding to storage.
0x00D20180545CNetwork__recv_storage_item_added_v3Storage item added v3 - includes item options, grade byte (offset 0x39), and extended data. Parses item info, card slots, refine, options (up to 5), and grade field. Adds to storage via FUN_00dd72c0.
0x00D203B0245CNetwork__recv_item_pickup_to_storageHandles item pickup result by adding the item to storage/cart collection. Constructs item info struct from packet: item index (offset +2), amount (offset +4), item ID (offset +8), identify flag (+0xc), refine (+0xd), equip flag (+0xe), 4 card slots (+0xf/+0x13/+0x17/+0x1b). Passes constructed struct to CItemCollection__add_or_update_cart_item.
0x00D204B0528CNetwork__recv_inventory_item_added_with_optionsInventory item added with options. Parses item data with up to 5 item options (ID+value pairs from offsets 0x20-0x38). Includes bound flag at offset 0x38. Adds to inventory via FUN_00dd7b80 with flag=1.
0x00D206C0547CNetwork__recv_inventory_item_added_v3Inventory item added v3 - includes item options, grade byte (offset 0x39), and extended data. Like recv_inventory_item_added_with_options but with additional grade field. Adds to inventory via FUN_00dd7b80.
0x00D20900758CNetwork__recv_guild_member_infoProcesses guild member information packet. Extracts member name (offset 0xF, 24 chars), performs town info search, copies trade data strings. Compares member ID with local player. If different player and flag==1, sends window message 0x40. Otherwise checks if guild name changed and opens guild UI.
0x00D20C00750CNetwork__recv_quest_infoProcesses quest info packet. Parses quest header with timestamps (start/expire dates via localtime32), quest objectives with item/monster IDs. Handles special quest objective types (0x1099=msg 0xDE6, 0x109A=msg 0xDE7, 0x287B=RSW map name lookup). Opens quest window (0x8F) with msg 0x55E.
0x00D20EF0748CNetwork__recv_quest_info_v2Quest info v2 packet handler. Similar to recv_quest_info but with different record size (0x2A vs 0x2E per objective) and 64-bit quest counts. Same quest objective type handling and UI setup.
0x00D21220486CNetwork__recv_broadcast_messageHandles broadcast/announce message from server. Variable-length packet (size at offset 2). Copies message data, performs town info search if needed. If chat logging option (0x94) is disabled, displays in chat with purple color (0xFF9DFF) and font 5. Optionally logs to chat file.
0x00D21410109CNetwork__recv_map_loadedHandles map loaded notification packet. Reads entity ID from offset +2 and checks against current/secondary map IDs. Sets global flags DAT_01737c4c and DAT_01737ce8 when the loaded entity matches the current or secondary map. Dispatches notification to the game system to confirm the map has finished loading for the specified entity.
0x00D21480186CNetwork__recv_hotkey_list_00d21480Receives hotkey/shortcut list packet. Contains 7 int slots (offsets 2-0x1E). Counts non-zero entries, then sends each non-zero hotkey ID to window 99 via message 0x1F.
0x00D2154098CNetwork__recv_booking_resultHandles booking result packet. Reads a result code from offset +2 and dispatches appropriate success/error message via CUIWindowMgr. Displays booking operation outcome to the player through the chat system.
0x00D215B0602CNetwork__recv_achievement_listReceives achievement list packet. Clears existing report data. Parses variable-length entries (0x1F bytes each): converts ID to string, extracts status flags, level/score data. Creates TownNpcInfo entries and appends to report storage. Opens windows 0x14E and 0x14F.
0x00D21810440CNetwork__recv_achievement_list_v2Achievement list v2 with smaller record size (0x19 bytes per entry). Same logic as recv_achievement_list but with different field layout and 64-bit achievement counts. Opens achievement windows 0x14E and 0x14F.
0x00D219D0503CNetwork__recv_npc_chat_messageHandles NPC overhead chat message. Variable-length packet (size at offset 2, text at offset 0x20). Performs town info search on message text. Checks entity via ret_zero and game settings (0x72 for NPC chat filter, 0x94 for log filter). Displays in purple (0x9B00FF) or sends to entity bubble. Logs to chat file if enabled.
0x00D21BD0124CNetwork__recv_entity_class_changeHandles entity class change packet. Reads entity ID (offset +2) and new class byte (offset +0x1E). If entity is local player, stores class byte to DAT_0173355c. Otherwise looks up entity via CBGMManager, updates entity+0xfb with new class. If class differs from local player's class, creates dialog bubble. If same class, unregisters existing dialog window.
0x00D21C5094CNetwork__recv_entity_position_update_00d21c50Handles entity position update packet. Reads entity ID (offset +2) and new X/Y coordinates. Looks up entity and updates its position on the map. Compact packet format for simple position corrections without full movement data.
0x00D21D00118CNetwork__recv_skill_use_resultHandles skill use result packet. Reads skill ID, target ID, and result code from the packet. Dispatches the skill result to the game system, handling success/failure display for skill casting outcomes.
0x00D21EB01CNetwork__handle_whisper_message_with_linksCNetwork: handle whisper message with links
0x00D223F03306CNetwork__recv_chat_message_complexComplex chat message handler. Parses variable-length chat text, detects message type by first 4 chars (lowercase compared against multiple prefixes). Handles regular chat, whisper, party, guild messages. Processes item links, word wrapping, chat logging. Supports '#' and ':' delimiters for sender/channel separation. Town info search for special text.
0x00D230E0259CNetwork__recv_colored_chat_messageReceives server chat message with explicit color. Variable-length text starts at offset 9. Color from offset 5 (DWORD), font/type from offset 4 (byte). Dispatches to chat window if text is non-empty.
0x00D231F0910CNetwork__recv_item_pickup_notificationHandles item pickup notification. Builds item info and tooltip, uses xor_decrypt_buffer for obfuscated Lua function name. Calls Lua function to process pickup. Builds tooltip string with message 0x1108/0x1109 (based on flag), displays in yellow (0xFFFF). Also adds tooltip entry to tooltip manager.
0x00D235801519CNetwork__recv_item_exchange_notificationHandles item exchange/trade notification. Parses item data with variable-length name string. Type 0: builds old+new item tooltips with msg 0x65C. Type 1: copies additional string data. Type 2: shows msg 0x74C (item created). Handles refine count display with msg 0xF91. Shows in yellow (0xFFFF) chat and adds tooltip entry.
0x00D23B70676CNetwork__recv_item_refine_notificationHandles item refine/upgrade notification with card slot data. Builds card data string (24 bytes from offset 8), gets old and new item tooltips. Shows msg 0x65C (item exchanged) with tooltip text. Displays in yellow (0xFFFF) and adds tooltip entry to tooltip manager.
0x00D23E20719CNetwork__recv_item_upgrade_notificationHandles item upgrade notification with two item data blocks (offsets 4-0x1F and 0x20-0x3F). Builds tooltips for both old and new items, shows msg 0x65C. Displays in yellow (0xFFFF) with tooltip entry.
0x00D240F0675CNetwork__recv_item_created_notificationHandles item creation notification. Builds card data and item tooltip, shows msg 0x74C (item created). Displays in yellow (0xFFFF). Adds tooltip entry to tooltip manager list. Uses linked list insertion for tooltip entries.
0x00D243A0138CNetwork__recv_quest_timer_listReceives quest timer list from server. Sets server time offset via CEmotionMgr__set_server_time_offset and timezone via CEmotionMgr__apply_timezone_to_item_timers. Parses variable-length list of quest timers (7 bytes each: 2-byte quest ID + 1-byte active flag + 4-byte expire time). For each active timer, calls CEmotionMgr__add_or_update_item_timer. Schedules timed UI events (types 5 and 6).
0x00D24430124CNetwork__recv_entity_speech_bubbleHandles entity speech bubble display. Copies text string (80 chars max from offset 6). Looks up entity by ID (offset 2) via CBGMManager__find_map_by_id_no_cache, sends text to entity via virtual method 8 with message 0x8D.
0x00D244B0354CNetwork__recv_damage_displayHandles damage number display packet. Looks up entity in damage tree by ID (offset 2). If found, updates existing entry with new position (offsets 6,8) and decay timer (0x78). If not found, creates new tree node with damage data. Uses binary tree for entity damage tracking.
0x00D246B0340CNetwork__recv_storage_item_listReceives storage item list. Parses 0x22-byte records per item: item ID, index, type, amount, card slots (4x DWORD), refine, flags, and equip info. Builds item info structs and adds each to storage via FUN_00dd72c0. Calls FUN_00dff080 (storage refresh) at end.
0x00D24810363CNetwork__recv_storage_item_list_v2_00d24810Storage item list v2 with 0x26-byte records. Same as recv_storage_item_list but with additional fields: grade (2 bytes) and extra parameter (2 bytes). Adds to storage via FUN_00dd72c0.
0x00D24980331CNetwork__recv_storage_item_list_basicBasic storage item list with 0x1E-byte records. Minimal item data: item ID, index, type, amount, card slots, refine, flags. No grade or extra params. Adds to storage via FUN_00dd72c0.
0x00D24AD0355CNetwork__recv_storage_item_list_v3_00d24ad0Storage item list v3 with 0x25-byte records. Extended data: includes bitfield flags byte (bound, favorite, trade restriction bits), grade, extra params. Adds to storage via FUN_00dd72c0.
0x00D24C40682CNetwork__recv_storage_item_list_v4Storage item list v4 with 0x29-byte records. Extended format with bound/favorite/trade restriction flags (bitfield byte), equip info, grade, refine. Adds to storage via FUN_00dd72c0.
0x00D24EF0731CNetwork__recv_storage_item_list_with_optionsStorage item list with item options. 0x43-byte records including up to 5 item options (ID+value pairs). Also includes bound/favorite/trade flags. Most complete storage item format. Adds to storage via FUN_00dd72c0.
0x00D251D0315CNetwork__recv_storage_equip_listStorage equip list (0x20-byte records). Equipment items with card slots, refine, bound/favorite flags, expire time. Adds to storage via FUN_00dd72c0.
0x00D25310325CNetwork__recv_storage_equip_list_v2Storage equip list v2 (0x22-byte records). Same as equip list but with larger record size for additional fields. Adds to storage via FUN_00dd72c0.
0x00D25460329CNetwork__recv_storage_equip_list_basicBasic storage equip list (0x1C-byte records). Minimal equip data: item ID, index, amount, equip slot, card slots, refine flag. Adds to storage via FUN_00dd72c0.
0x00D255B0325CNetwork__recv_storage_equip_list_v3Storage equip list v3 (0x20-byte records). Like basic but includes expire time field. Adds to storage via FUN_00dd72c0.
0x00D25700301CNetwork__recv_storage_equip_list_minimalMinimal storage equip list (0x0C-byte records). Smallest equip format with no card slots (zeroed). Only item ID, index, amount, equip, and refine. Adds to storage via FUN_00dd72c0.
0x00D25850206CNetwork__recv_item_identify_result_00d25850Handles item identify result. Calls FUN_00dda510 with item index. Looks up item name by ID (offset 4), shows msg 0x4EA with item name in yellow (0xFFFF). Also dispatches secondary message (type 0x13).
0x00D25920337CNetwork__recv_item_expiration_notificationHandles item expiration/rental duration notification. Looks up item name by ID (offset 2). Calculates remaining duration in minutes from seconds (offset 6). If minutes > 0, shows msg 0x4E8 with item name and minutes remaining. If seconds < 60, shows msg 0x4F6 with seconds remaining. If exactly 1 minute left, also shows warning msg 0x4E9 (item about to expire). All displayed in yellow (0xFFFF).
0x00D25AC0454CNetwork__recv_npc_dialog_textHandles NPC dialog text packet. Inserts NPC ID into rb-tree mapping. Extracts text string (variable length from offset 0x11), position data (offsets 0xC-0x10), and display type (offset 0x10). Truncates text to 60 chars max. Sends to window 0x1C via message 0x22.
0x00D25C90191CNetwork__recv_entity_speed_updateUpdates entity movement speed. Calculates speed as (byte_at_offset8 + 4) * 45. If entity is local player, updates speed at the sprite offset 0x4C. Otherwise looks up entity and sets field 0x13. Sends message 100 with position (short at offset 6).
0x00D25D50318CNetwork__recv_trade_partner_infoProcesses trade partner information. Looks up partner name, sets trade state flags, shows msg 0x610 with partner name in yellow (0xFFFF) font 0xC. Updates trade tracking state and notifies trading window (0x3C).
0x00D264E0253CNetwork__init_map_uiInitializes map UI after loading. If main windows exist, sends messages 0x20 and 0x3F to reset them. Otherwise resets field 0x24C to 0, stores map ID at 0x2DC, and closes windows 0x10, 0x11, 0xE2. Handles both primary and secondary window sets.
0x00D26860239CNetwork__recv_quest_complete_00d26860Handles quest completion notification. Looks up quest data from packet system by ID (offset 2), copies quest string, updates quest tree, and shows msg 0x64B in yellow (0xFFFF) font 0x13.
0x00D26950241CNetwork__recv_item_deleteHandles item deletion from inventory. If auto-looting active (DAT_01457ad8), shows msg 0xAAE in teal and sends window message 0x125 + closes window 0x108. Calls FUN_00dda510 to remove item. Clears field 0x2D0, sets dirty flag 0x5CE. Handles equip bonus removal if item was equipped.
0x00D26A50176CNetwork__recv_equip_arrowHandles arrow/ammo equip notification. Builds item info struct from packet data (index at offset 2, amount at offset 4), calls FUN_00dda690 to update equipped ammo. Sets dirty flag at offset 0x5CE.
0x00D26B00176CNetwork__recv_equip_itemHandles equipment equip notification. Builds item info struct (index at offset 2, amount at offset 4), calls FUN_00ddace0 to process equipment change. Sets dirty flag at offset 0x5CE.
0x00D26BB0342CNetwork__recv_warp_responseHandles warp/teleport response. Extracts map name (offsets 6-0x1E). Cases 0/1: opens warp window, stores warp target. Case 2: error msg 0x750 (red). Case 3: error msg 0x751 (red). On successful warp (map matches current), resets trade state, clears status, shows msg 0x54 (yellow), closes windows, notifies UI.
0x00D26E50477CNetwork__recv_devotion_targetsHandles Devotion skill target list. If effects enabled (option 8), first clears 5 existing devotion effects (msg 0x6D with effect 0xE8). Then processes 5 target IDs from packet (offsets 6-0x1A). For each non-zero target, creates a Devotion visual effect (0xE8) linking caster to target. Includes NaN overflow check.
0x00D270B0360CNetwork__recv_entity_deathHandles entity death notification. Sends messages 0x54 (clear target), 0x57 (clear buffs), 0x53 (stop animation) to the entity. If entity state == 8, calls virtual method 0x3C (death animation). For non-local player entities, also removes effect 0x45A.
0x00D274201598CNetwork__recv_npc_shop_dataHandles NPC shop data packet. Resets field 0xFC. Looks up NPC entity, extracts shop strings. If NPC is valid and matches current shop target, parses item list (0x1C bytes/entry) into linked list with name/ID pairs. Sends item list to window 0x1C via messages 0x2B, 0x22, 0x2C. Updates shop state fields 0x3C8-0x404.
0x00D27A60579CNetwork__recv_equip_change_notificationHandles equipment change notification. If local player: looks up equipped item tooltip, shows msg 0x514 (equipped item name). For other entities: based on equip slot type (2=shadow, 0x10=costume, 0x20=shadow2, 0x100=4th slot), shows msg 0x515 with appropriate slot name message. All displayed in red (0xFF) font 0xD.
0x00D27EC0496CNetwork__recv_inventory_equip_listReceives inventory equipment list. 0x22-byte records. Clears existing inventory, parses each item with ID, index, type, amount, card slots, refine, flags. Checks if item is equipped via atoi on item name string. Handles both equipped (FUN_00dd6d70) and unequipped (FUN_00dd7030) items. Notifies UI via CUIWindowMgr__notify_language_change.
0x00D280B0554CNetwork__recv_inventory_equip_list_v2Inventory equip list v2 with 0x26-byte records. Like recv_inventory_equip_list but includes grade and extra fields. Also handles shadow/costume equipment via FUN_00e1d9b0 check and FUN_00e07150.
0x00D282E0487CNetwork__recv_inventory_equip_list_basicBasic inventory equip list with 0x1E-byte records. Smallest equipment format. Same logic as recv_inventory_equip_list but with fewer fields per entry.
0x00D284D0558CNetwork__recv_cart_equip_listReceives cart equipment list with 0x26-byte records. Offset 0x2D into packet has stat data for cart (STR/AGI/VIT/INT/DEX/LUK, weight). Sets global cart stat fields (DAT_01737fb0-DAT_01737fd0). Handles shadow equipment via FUN_00e1d9b0. Opens/creates cart window 0x8B.
0x00D28700581CNetwork__recv_cart_equip_list_v2Cart equip list v2 with 0x29-byte records. Same structure as recv_cart_equip_list but with additional fields per item. Also includes bound/favorite flags. Same cart stat parsing and window 0x8B creation.
0x00D289501355CNetwork__recv_inventory_item_list_v1Packet handler for inventory item list (version 1, stride 0x43). Parses each item entry: type, ID, card slots, refine, equip location, bonus info. Calls CItemInfoMgr, CItemDesc, ItemBonus. Updates player stats (weight, stats, etc.) at global 01737fb0+. Notifies UI via CUIWindowMgr.
0x00D28EA01364CNetwork__recv_inventory_item_list_v2Packet handler for inventory item list (version 2, stride 0x43, offset 0x2f). Nearly identical to v1 but with slightly different header offset and includes DAT_01737fd4 field. Parses item entries with slots, refine, bonuses.
0x00D294001380CNetwork__recv_inventory_item_list_v3Packet handler for inventory item list (version 3, stride 0x44). Same structure as v1/v2 but with different field offsets per item entry. Includes DAT_01737fd4 field like v2.
0x00D29990145CNetwork__recv_emotion_expansion_resultHandles emotion expansion result packet. Reads the result of an emotion/emote expansion operation. Updates the available emote list with newly unlocked emotes and refreshes the emote selection panel.
0x00D29A30814CNetwork__recv_shop_cart_list_v1Packet handler for shop/cash shop cart item list (version 1). Clears existing carts, iterates items with nested sub-items (card slots). Builds cart entries via CShopManager. Refreshes shop windows 0x155 and 0x156 after loading.
0x00D29D60533CNetwork__recv_shop_cart_list_v2Packet handler for shop/cash shop cart item list (version 2). Simpler variant with 0x1A stride per item. Clears carts, parses items with sub-items, builds cart entries via CShopManager. Refreshes shop windows 0x155/0x156.
0x00D29F80159CNetwork__recv_emotion_use_resultHandles emotion use result packet. Checks result byte at offset+6: 0=success (shows success msg, activates quest), 1=fail (expansion fail), 2=fail (skill level too low). Shows appropriate EMSG_EMOTION messages. Resets flag at this+0x284.
0x00D2A02066CNetwork__recv_storage_access_resultHandles storage access/operation result packet. Switch on type at +2: case 1 = storage error (msg 0x6CD, clears storage list, closes windows 0xAE/0xAF). Case 2 = weight check dialog (calculates remaining weight capacity). Case 9 = error msg 0x705 (red). Case 10 = error msg 0xC9D (clears storage, closes windows). All error cases clear chat first.
0x00D2A1F0153CNetwork__recv_refine_resultHandles refine/upgrade result packet. Type 3: shows message 0x6CF (refine success). Type 4: shows message 0x6D0 (refine failure). Calls virtual method at vtable+0x18 with param 0x28, then refreshes a window.
0x00D2A290441CNetwork__recv_enchant_resultHandles enchant result packet. Type 5: shows msg 0x39. Type 6: builds item tooltip and shows formatted msg 0x6D3 with item name. Type 7: shows msg 0x6D1. Refreshes windows 0xB1, 0xB2, 0xB3 after processing.
0x00D2A4501344CNetwork__recv_item_pickup_resultHandles item pickup result packet. Two packet types (0x1A3 and 0x22F). On success (byte=0): shows item obtained message 0x24F with item tooltip. On failure: shows error messages 0xA12 or 0xCD1 with item name and level. For 0x22F success, also triggers BGM map effect.
0x00D2A990210CNetwork__recv_msg_string_with_argsHandles message string packet with variable arguments. Gets message text by ID, counts %s format specifiers (DBCS-aware), then formats with 0-3 string arguments from packet data. Dispatches result as white (0xFFFFFF) chat message. Shows 'unknown argument list' on >3 args.
0x00D2AB70987CNetwork__recv_friend_listHandles friend list packet. Iterates entries (32 bytes each), formats friend names, checks online status via util_0060b420. If offline, creates string entry via FUN_00d06bd0. Adds each friend via FUN_00dd6f10. Refreshes friend list display via FUN_00dff060.
0x00D2AF5064CNetwork__recv_friend_info_updateHandles friend info update packet. Reads friend character ID (offset +2) and online status (offset +6). Updates the friend's online/offline status in the local friend list data structure. Refreshes the friend list UI if it is currently open.
0x00D2AFA0952CNetwork__recv_party_member_listHandles party member list packet. Parses leader name, performs string search via CTownInfoMgr. Iterates members (0x2E stride each), parsing AID, name, map name, online/offline flags. Adds each member via FUN_00dd70b0. Sets DAT_01737a9c if current player is leader with level 0. Refreshes party display.
0x00D2B360600CNetwork__recv_character_status_infoHandles character status info packet. Parses 3 name strings (character name, party name, guild name) with CTownInfoMgr search. Sets extensive global status data at DAT_016d4460+: base stats, job info, exp, level. Compares guild name to check if same guild. Updates packet stream and refreshes all status windows.
0x00D2B5C0323CNetwork__recv_skill_listHandles skill list packet. Clears existing skill data, iterates skill entries (0x25 stride). For each: constructs CSkillEntry, parses skill ID, level, range, upgradable flag. Gets skill name and AP cost. Special handling for skill IDs 10000-10019. Updates skill point count from param_2+4. Refreshes skill windows.
0x00D2B710828CNetwork__recv_storage_item_list_v1Handles storage/cart item list v1 (0x29-byte entries). Optionally shows title string via UITextWidget word wrap. Parses each item: type, ID, amount, equip slots, refine, cards, enchant flags, identify/broken flags. Calls FUN_00dd7b80 to add each item to storage list. Refreshes storage view.
0x00D2BA50924CNetwork__recv_storage_item_list_v2Storage/cart item list v2 with 0x43-byte entries. Parses title string, then iterates items with full card slots, refine, enchant flags, options. Adds each to storage via FUN_00dd7b80.
0x00D2BDF0504CNetwork__recv_storage_item_list_v3Storage/cart item list v3 with 0x22-byte entries. Parses title string, then simpler item entries with basic card data, identify/broken flags. Adds each to storage via FUN_00dd7b80.
0x00D2BFF0156CNetwork__recv_map_change_notifyHandles map change notify packet. Reads new map name and coordinates from the packet. Initiates the map transition sequence: saves current map state, shows loading screen, and begins loading the new map data.
0x00D2C090241CNetwork__recv_entity_position_updateHandles entity position update packet. Reads entity ID and new X/Y/direction from the packet. Updates the entity's position on the map and adjusts its facing direction. Used for smooth position corrections from the server.
0x00D2C190187CNetwork__recv_exp_updateHandles exp update packet. Reads experience type (base/job) and amount from the packet. Updates the player's experience counter and refreshes the exp bar display. Handles both absolute and delta exp updates.
0x00D2C25084CNetwork__recv_exp_update_v2Handles exp update packet variant 2. Reads exp type (offset +2) and exp amount (offset +4) as compact values. Updates the corresponding experience counter (base or job) and refreshes the exp bar display. Simpler version of the main exp update handler.
0x00D2C2B0211CNetwork__recv_hunting_listHandles hunting list packet. Reads a list of hunting mission targets with monster IDs and kill counts. Populates the hunting mission tracking UI with current progress and remaining kills for each target.
0x00D2C390341CNetwork__recv_hotkey_listHandles hotkey list packet. Reads the player's hotkey bar configuration from the server. Each entry contains skill/item ID, type flag, and shortcut key binding. Populates all hotkey bar slots with the saved configuration.
0x00D2C4F0222CNetwork__recv_play_time_remainingHandles play time remaining packet. Reads the remaining allowed play time in minutes/hours. Displays a warning message when approaching the time limit. Used for play time restriction systems in certain regions.
0x00D2C5D0535CNetwork__recv_equip_item_listHandles equipped item list packet (0x25-byte entries). Clears equip data. For each item: parses type, ID, amount, card slots, identify/broken/enchant flags, refine, options. Checks if item is equipped via FUN_00e1df60. Sets DAT_01733688 for equipped items. Adds to equip list or places in storage. Notifies UI.
0x00D2C7F01167CNetwork__recv_equip_item_list_v2Handles equipped item list v2 (0x29-byte entries with card slot array). Clears equip data. Parses each item with type, ID, refine, card slots, enchant flags, options. Handles equipped items (sets DAT_01733688), adds to equip list or places in storage. Applies item bonuses via ItemBonus__add_equip_bonus. Notifies UI.
0x00D2CC801215CNetwork__recv_equip_item_list_v3Handles equipped item list v3 (0x43-byte entries with full card slot array). Clears equip data, parses each item with type, ID, refine, 5 card slots, enchant flags, options. Processes equipped items, applies bonuses via ItemBonus__add_equip_bonus. Notifies UI.
0x00D2D1401247CNetwork__recv_equip_item_list_v4Handles equipped item list v4 (0x44-byte entries). Same structure as v3 but with different field layout and stride. Full card slot array, enchant flags, options, bonuses. Notifies UI.
0x00D2D620328CNetwork__recv_cart_item_list_v1Handles cart item list v1 (32-byte entries). Clears cart data via FUN_00dd8450. Parses each item with type, ID, amount, card slots, identify/broken flags. Adds to cart via FUN_00dffba0. Notifies UI.
0x00D2D770343CNetwork__recv_cart_item_list_v2Handles cart item list v2 (0x22-byte entries). Clears cart data. Parses each item: type, ID, amount, card data, identify/broken flags. Adds to cart via FUN_00dffba0. Notifies UI.
0x00D2D8D0179CNetwork__recv_item_identify_resultHandles item identify result packet. Reads the identified item's slot index and new item data. Updates the inventory entry with full item stats now that identification is complete. Refreshes the item tooltip and inventory display.
0x00D2D9901CNetwork__disconnect_and_confirm_dialogCNetwork: disconnect and confirm dialog
0x00D2DA10320CNetwork__recv_item_sold_notificationHandles item sold notification. Builds item tooltip string, formats sale message 0x6D2 with item name, quantity, and total price (quantity * unit price). Dispatches as chat message. Updates item count via FUN_00dda510.
0x00D2DB5040CNetwork__recv_npc_removeHandles NPC remove packet. Simple 40-byte handler that reads an NPC/entity ID from the packet and calls the entity manager to remove it from the game world. Used when an NPC despawns or a temporary entity is cleaned up.
0x00D2DB80330CNetwork__recv_npc_spawn_v1Handles NPC spawn packet v1. Parses NPC data: AID (offset+2), class ID (offset+6, converted to string), position (x,y at offset+0xB/0xD), direction bytes, move speed. Finds existing NPC or creates new 400-byte NPC object. Calls virtual method at vtable+8 with mode 4.
0x00D2DCD0338CNetwork__recv_npc_spawn_v2Handles NPC spawn packet v2 (extended). Similar to v1 but with additional fields: extra data at offset+0xA/0xC/0x13. Sets local_24=1 (extended mode). Parses AID, class, position, direction. Creates NPC if not found.
0x00D2DE30330CNetwork__recv_npc_spawn_v3Handles NPC spawn packet v3 (another variant). Similar to v1/v2 with slightly different field offsets: position at offset+0xB/0xD, direction at offset+0xF/0x10, speed at offset+0x11. Sets local_24=1. Creates NPC if not found.
0x00D2DF801372CNetwork__recv_item_obtained_v1Handles item obtained packet v1. Clears pending item list. Result 0: new item added to inventory, shows 'obtained' message (msg 0x99, yellow), updates item info window 0x3A. Result 3: existing item quantity updated, adjusts by existing count, shows message. Other results: calls show_item_obtain_error. Special handling for item 0x25F and equip types 10/16/17/19.
0x00D2E4F01499CNetwork__handle_item_obtain_packetHandles item obtain/pickup network packet. Parses item data, adds to selling or inventory list, builds tooltip, shows chat message (yellow, msg 0x99), updates item window (0x3A) and equipment window (0x133). Handles equip type flags and error cases.
0x00D2EAE01623CNetwork__recv_item_obtained_v2Handles item obtained packet v2. Same structure as v1 but with different string building for the existing-item case: uses separate string construction and copy instead of format_string_vsnprintf. Adjusts quantity by existing amount when item already exists. Updates item info window 0x3A.
0x00D2F150129CNetwork__show_item_obtain_errorShows item obtain error messages based on error code. 1/6: msg 0x35 (weight limit). 2: msg 0x34 (inventory full). 4: msg 0xDC. 5: msg 0x117. 7: msg 0x58A. 9: msg 0xF90. Dispatches as red (0xFF) chat message.
0x00D2F2001751CNetwork__recv_item_obtained_v3Handles item obtained packet v3 (from parameters, not packet buffer). Processes new items (result 0) and existing items (result 3). Shows obtained message, updates item info window 0x3A and bonus UI window 0x133. Handles item 0x25F reset and equip type 10/16/17/19 flagging.
0x00D2F8F02081CNetwork__recv_item_obtained_v4Handles item obtained packet v4 (extended with card slot arrays). Same logic as v1/v2 but with full card/option data parsed from packet. Builds card slot count array from slot data. Shows obtained message, updates item info window 0x3A and bonus UI 0x133. Handles equip type flags.
0x00D301302181CNetwork__recv_item_obtained_v5Handles item obtained packet v5 (most extended). Same as v4 but with additional fields: grade byte at offset+0x42, enchant level at offset+0x43. Full card slot array, option data, grade info. Handles new item (result 0) and existing (result 3) cases with all UI notifications.
0x00D309D02467CNetwork__recv_item_obtained_v6Handles item obtained packet v6 (extended variant, 2467 bytes). Similar pattern to v4/v5 with item parsing, card slots, options, grade data. Processes new and existing items, shows obtained message, updates UI windows.
0x00D31390451CNetwork__recv_item_use_notificationHandles item use notification from another player. Looks up entity by AID (param_1+2), skips if self. Shows message 0x4FC ('PlayerName used ItemName') in yellow (0xFFFF00) chat with flag 9. Builds item tooltip from item class ID at offset+6.
0x00D31560359CNetwork__recv_item_consumedHandles item consumed/used packet. Resets sale mode flag at this+0x114. Looks up item, if found and quantity>0 shows message 0x649 ('Used ItemName x Quantity'). Updates item count via FUN_00dda510. Resets field at this+0x2D0.
0x00D316D068CNetwork__recv_status_param_updateHandles status parameter update packet. Reads a stat type ID (short at offset +2) and new value (int at offset +4). Updates the corresponding player stat in the global character data. Notifies the stats window to refresh the display.
0x00D31930122CNetwork__recv_identify_item_listHandles identify item list packet. Reads a list of unidentified items in the player's inventory. Opens the item identification selection window where the player can choose which item to identify.
0x00D319B0132CNetwork__recv_identify_item_list_v2Handles identify item list v2 packet. Extended version of the identify item list that includes additional item data fields. Opens the identification selection window with enhanced item preview information.
0x00D31A40233CNetwork__recv_item_composition_failedHandles item composition failure notification. Lists failed materials as comma-separated item names. Uses CItemDesc to get item names, formats with message 0x827, shows in red (0xFF) chat.
0x00D31B30401CNetwork__recv_whisper_messageHandles incoming whisper message. Copies sender name, compares with own name. If same: refreshes windows 0x1E. If different: gets chat window 0x1C, sets whisper data, updates sender name. Shows message 0xB4 (regular whisper) or 0xB5 (GM whisper) based on flag at offset+0x1C.
0x00D31CD0380CNetwork__recv_whisper_send_resultHandles whisper send result packet. Gets recipient name, opens chat window 0x1C, copies sender/recipient strings. Sends update message 0x22 and reply data 0x2C. Shows message 0xB3 ('Whispered to Name'). Dispatches as type 5 (whisper) chat.
0x00D31E50139CNetwork__recv_guild_info_basicHandles guild info basic packet. Reads basic guild information: guild ID, guild level, number of members, max members. Stores the data in guild info globals and refreshes the guild window display.
0x00D31EE0234CNetwork__recv_guild_creation_resultHandles guild creation result. Result code at offset+2: 0=success (opens guild window 0x89), 1=error msg 0x542, 2=error msg 0x543, 3=error msg 0x544. Also stores guild member count from offset+6 in DAT_01737fa8 and updates guild state flag DAT_01737f80.
0x00D31FD0103CNetwork__recv_guild_position_listHandles guild position list packet. Reads a list of guild position/rank entries with position ID, name, and permissions. Populates the guild position management UI with the available ranks.
0x00D32040136CNetwork__recv_guild_position_change_resultHandles guild position change result. Reads result code (short) at offset+2. Non-negative: success, stores in DAT_01737fa0, opens guild window 0x89 with refresh. Negative: failure, closes guild window, shows error msg 0x541 in yellow-green (0x64FFFF).
0x00D320D0449CNetwork__recv_guild_noticeHandles guild notice/bulletin board packet. Sets this+0x24C=1 (guild data loaded). Closes and reopens guild notice window 0x11. Parses notice text from offset+8 (length = packet_len-9), splits by newline separator (DAT_010dd83c). Sends each non-empty line to window via message 0x1B. Sends emblem version via message 0x1C with value from offset+4. Also notifies DAT_01457870 window with message 0x20.
0x00D322A0289CNetwork__recv_guild_full_infoHandles full guild info packet. Stores guild ID (offset+2), finds guild by ID, populates guild globals: member stats (offsets+6 through +0x14), guild name (offset+0x16), positions (+0x2E through +0x50), alliance data. Sets guild state flag DAT_01737ce8=1. Refreshes navigation display multiple times.
0x00D323D065CNetwork__recv_guild_stat_updateHandles guild stat update by type. Switch on short at offset+2: types 5-8 update alliance/enemy guild IDs (DAT_01737ca4/ca8/cb4/cb8), types 0x29/0x31/0x35/0xA5/0xBD/0xBE update member counts and various guild parameters. Each update triggers refresh_navigation_display. Only processes if DAT_01737ce8 (guild loaded flag) is set.
0x00D325F0552CNetwork__recv_cart_equip_item_listHandles cart equipped item list packet (0x25-byte entries with header offset 0x2D). Resets equip descriptions and item slots. Parses each entry: type, item ID, amount, card slots (4x4 bytes), identify/broken/enchant flags, refine level, option data. Equips items to regular or shadow slots. Stores guild stats from header (offsets 0x04-0x2C) in DAT_01737fb0-01737fe8. Opens/refreshes equipment window 0x8B.
0x00D32830175CNetwork__recv_server_message_displayHandles server message display packet. Reads message ID (short at offset+2). Color-codes by ID range: 0x4C5/0x4C6/0x757/0x758/0x886 = red (0xFF), 0xD93/0xD94 = with flag 0x17, others = white (0xFFFFFF). Dispatches via CUIWindowMgr as both type 1 (normal) and type 0x13 (system) chat messages.
0x00D328E0151CNetwork__recv_server_message_display_v2Handles server message display v2 packet. Same pattern as recv_server_message_display but reads an additional 4-byte value from offset+4 as color override. Dispatches message by ID (offset+2) as both normal (type 1) and system (type 0x13) chat messages.
0x00D32980135CNetwork__recv_skill_levelup_notificationHandles skill level up notification. Reads skill ID (short at offset+2) and message ID (int at offset+4). Gets skill name via CSkillManager__GetSkillNameById, formats with message text, displays as pink (0xFFCDCD) chat message with flag 0x0B (skill notification type). Format: "[SkillName] : [Message]".
0x00D32A10363CNetwork__recv_server_message_with_itemHandles server message with item name formatting. Reads message ID (short at offset+2). Special case for ID 0xCCE: looks up item by class ID (offset+4) via CItemDesc, builds item name string, formats with message text. Other IDs: formats message with int param from offset+4. Displays as cyan (0xFFFF) chat message if non-empty.
0x00D32B80116CNetwork__recv_guild_emblem_versionHandles guild emblem version packet. Reads guild ID and emblem version number. Compares with locally cached version to determine if the emblem needs to be re-downloaded from the server.
0x00D32C00361CNetwork__recv_item_forging_resultHandles item forging/crafting success result. Reads item ID (int at offset+2), converts to string via itoa. Gets item tooltip via CItemDB, formats with messages 0x8F (item name format) and 0x90 (forging success message). Displays as yellow (0xFFFF00) chat message. Clears pending chat first.
0x00D32D70159CNetwork__recv_item_forging_failedHandles item forging failure notification. No packet data needed. Formats messages 0x91 (material name) and 0x92 (failure text) into a combined string. Displays as yellow (0xFFFF00) chat message. Clears pending chat first.
0x00D32E10479CNetwork__recv_guild_storage_item_listHandles guild storage item list packet. Clears vending display, storage list, and guild storage. Parses 0x0B-byte entries (from offset+0x0C): item class, type, amount, name index, flags. Adds each item to guild storage via CItemCollection. Opens guild storage window 0xB0 with refresh (msg 0x17) and capacity info (msg 0x77 with value from offset+8). Sets field at this+0x24C=1.
0x00D32FF0345CNetwork__recv_cart_item_list_v3Handles cart non-equip item list v3 (0x1C-byte entries). Clears non-equipment selling state. Parses each entry: item type, ID, amount, card slots (4x4 bytes), identify flag. No card data zeroed. Adds items to list type 0x1710. Notifies UI via CUIWindowMgr__notify_language_change.
0x00D33150338CNetwork__recv_cart_item_list_v4Handles cart non-equip item list v4 (0x20-byte entries). Same structure as v3 but with additional 4-byte field per entry (at offset+9 words). Clears non-equipment selling state, parses items, adds to list type 0x1710. Notifies UI.
0x00D332B0319CNetwork__recv_cart_item_list_v5Handles cart non-equip item list v5 (0x0C-byte entries, minimal). Clears non-equipment selling state. Parses each entry with zeroed card slot data (local_f0-uStack_e4 = 0) since this compact format has no card info. Adds items to list type 0x1710. Notifies UI.
0x00D333F0264CNetwork__recv_item_added_to_cartHandles item added to cart notification. Looks up item by slot index (short at offset+2) via CShop__find_item_in_linked_list_by_slot. If found, builds item tooltip string and formats with message 0x530 (cart add notification). Displays in cyan-ish (0x6EFFFF) chat.
0x00D33500877CNetwork__recv_entity_state_updateHandles entity state update with monster talk and pet interaction. Parses: entity ID (param_2), coordinates (param_3/4), speed (param_5/6, defaults 0x5A0 if 0), state byte (param_9), job class (param_7, skip if -30000). For player entity: checks pet hunger/intimacy, triggers pet emotion with 25% chance and 60s cooldown. For NPCs/monsters: fetches random monster talk line by job ID and displays as chat (0xFAFAFA). Updates entity state via virtual call type 0x0B.
0x00D33870252CNetwork__recv_entity_position_update_v2Handles entity position update v2 packet. Parses entity ID (offset+2), coordinates (offsets+6, +10), speed values (offsets+0x0E, +0x10 with defaults 0x1B0 and 0x120), state byte (offset+0x16), position short (offset+0x14), job class (offset+0x12, skip if -30000). Looks up entity or player object, dispatches state update type 0x0B via virtual call.
0x00D33980107CNetwork__recv_entity_walk_dataHandles entity walk/movement data packet. Reads walk parameters: direction pair (offset+2, +4), speed values (offsets+6, +10) divided by 10. Updates walk display via DAT_01457974 window (type 0x37 message). Stores in DAT_0173356c-01733578 globals.
0x00D339F0737CNetwork__recv_entity_chat_messageHandles entity chat message packet. Reads variable-length text (max 0x169 bytes after 8-byte header) from packet. Looks up entity by ID (offset +4) via CBGMManager. Applies string search filtering via CTownInfoMgr. In normal mode: dispatches colored chat based on DAT_016d3b10 level (5=yellow 0xFFFF00, 10=blue 0x1D8DFF, else cyan 0xFFFF). In shop mode (DAT_014578fc): uses dark gray (0x222222) channel 5. Sends to entity chat bubble and appends to chat log file if logging enabled.
0x00D33CE0607CNetwork__recv_entity_whisper_chatHandles entity whisper/direct chat packet. Reads variable-length text (max 0x169 bytes) from offset +8, with entity ID at offset +4. If entity is player (matches DAT_01733c3c): green chat (0xC8FF, type 3) with player chat bubble. For other entities: clears overhead message first, then light red chat (0xC8C8FF, type 3) with that entity's chat bubble. Appends to chat log if enabled.
0x00D33F40243CNetwork__recv_item_deal_notificationHandles item deal notification packet. Formats message using item equip name (from location at offset +0x1A), amount (int at offset +0x1E), player name (string at offset +2), and message template 0x78A. In shop mode: dark gray (0x222222) channel 5. Otherwise: yellow (0xFFFF00) channel 1, suppressed if chat options 0x72 or 0x94 are enabled. Appends to chat log if enabled.
0x00D34040523CNetwork__recv_exp_gain_notificationHandles experience gain/loss notification packet. Only processes if entity ID (offset +2) matches player. Formats EXP messages using templates 0x64D (gain type 1), 0x64E (gain type 2), 0x64F (positive), or 0x650 (negative) based on amount (offset +6) and type (offset +10). Dispatches as chat with color: green-pink (0xBE58BE) if type at offset +0x0C is 1, otherwise cyan (0xFFFF). Message style 0x12.
0x00D3425063CNetwork__recv_entity_byte_field_updateHandles entity byte field update packet. If entity ID (offset +2) matches player, stores byte from offset +6 into global DAT_01733568. Otherwise looks up entity by ID via CBGMManager and stores short from offset +6 into entity field +0xFC.
0x00D34290144CNetwork__recv_entity_event_0x22_dispatchHandles entity event 0x22 dispatch packet. Validates entity ID (offset +2), looks up entity via CBGMManager, dispatches virtual event type 0x22 with two int parameters from offsets +6 and +10 (sign-extended). Also notifies UI window manager (event type 6, subtype 0x22) and sends event to grid window with the entity ID and both parameters.
0x00D34320154CNetwork__recv_entity_event_0x22_short_paramsHandles entity event 0x22 dispatch with short parameters. Checks entity ID (offset +2) is not on secondary map. Looks up entity, dispatches event 0x22 with two short parameters from offsets +6 and +8. Also notifies UI window manager (event 6, subtype 0x22) and sends to grid window.
0x00D343C0285CNetwork__recv_player_status_mode_changeHandles player status mode change packet. Reads status type (short at offset +2) and updates game state. Types: 5,6 = walking state; 0x12,8 = combat state + enable option 0xE5; 0x13 = special state; 0x0B,0x0C = no state change. Checks nested entry conditions. Updates entity status effect visuals unless DAT_0173ad3e is set. For statuses 5-9, 0xB, 0xE, 0x11-0x13, 0x19, 0x1F-0x20, marks entity field 0xFD as needing refresh.
0x00D34600155CNetwork__recv_entity_position_update_00d34600Handles entity position update packet. Extracts server tick (int at offset +0x0C) and 6-byte packed position data (offset +6) containing x, y coordinates and direction. Looks up entity by ID (offset +2) via CBGMManager, adjusts server tick drift, and dispatches position update event (type 0) to the entity.
0x00D346A01259CNetwork__recv_entity_spawn_walkingHandles entity spawn (walking) packet. Spawns or updates a walking entity. Parses entity data: AID (offset +2), job/class (offset +0x0E), gender override, position from 6-byte packed data (offset +0x36), speeds, levels, equipment slots, hair/clothes colors, guild emblem info, state flags. For existing entities: event 0x7B (update). For new: creates CSkillUnit for skill indicators or CEntity by sprite type. For pet type (0x2E): loads pet accessory ACT. Creates chat bubbles for Doram/special classes. Finalizes via large packet data handler.
0x00D34B901290CNetwork__recv_entity_spawn_idle_with_typeHandles entity spawn (idle with type byte) packet. Similar to walking spawn but with type byte at offset +2 and entity data at offset +3. Parses full entity data: job class, gender, position (6-byte packed at offset +0x3B), stats, equipment, guild info. Stores 2 bytes at entity offset 0x210 from packet +0x43. Type 0x07 triggers pet accessory loading. For existing entities: event 0x7B. For new: CSkillUnit or CEntity. Creates chat bubbles for Doram classes. Handles map tracking flags.
0x00D350A01413CNetwork__recv_entity_spawn_with_nameHandles entity spawn with name string packet. Extended spawn handler with variable-length name (offset +5, length = packetSize - 0x4B). Parses full entity data with position packed at offset +0x3F. Stores 2 additional shorts at entity offsets 0x210 and 0xFC. For existing entities: event 0x7B. For new: CSkillUnit or CEntity. Pet type triggers accessory loading. Creates chat bubbles for Doram classes.
0x00D356301208CNetwork__recv_entity_spawn_movingHandles entity spawn (moving) packet. Spawns or updates a moving entity. Parses entity data: AID (offset +2), job class (offset +0x0E), gender (offset +0x31), position (6-byte packed at offset +0x32), server tick (offset +0x16). For existing entities: event 5 (moving update). For new: CSkillUnit or CEntity by sprite type. Loads equipment costume overlay for NPC/monster job ranges. For pet type (0x2E): loads pet accessory. Creates Doram chat bubbles. Finalizes via large packet data handler.
0x00D35AF01241CNetwork__recv_entity_spawn_moving_with_nameHandles entity spawn (moving) with name and type byte packet. Extended moving spawn with variable-length name, type byte at offset +4. Type 0x00 = skill unit (CSkillUnit), 0x07 = pet with accessory, 0x08 = current map entity, 0x09 = secondary map. For skill units: event 0x7C (existing) or 0x79 (new). For others: event 3 (existing moving) or 4 (new moving). Loads equipment costume overlay for NPC/monster ranges. Creates Doram chat bubbles.
0x00D35FD01254CNetwork__recv_entity_spawn_idle_baseHandles entity spawn (idle, base format) packet. Spawns or updates an idle entity. Parses entity data: AID (offset +2), job class (offset +0x0E), gender (offset +0x31), position (6-byte packed at offset +0x32). For existing entities: event 0x7C (idle update). For new: CSkillUnit or CEntity with event 0x79. Creates skill effect 0x158 for new skill units. Loads pet accessory for type 0x2E. Creates Doram chat bubbles. Tracks position changes via field 0x2E4.
0x00D364C01265CNetwork__recv_entity_spawn_idle_extHandles entity spawn (idle) with extended fields packet. Same as base idle spawn but with additional 2-byte field at entity offset 0x210 (from packet +0x3B). Job class at offset +0x10, gender at +0x35, position at +0x36. For existing: event 0x7C. For new: CSkillUnit or CEntity with event 0x79. Skill effect 0x158 for skill units. Pet accessory, Doram chat bubbles, position tracking.
0x00D369C01286CNetwork__recv_entity_spawn_idle_ext2Handles entity spawn (idle) with extended fields v2 packet. Like ext but also stores entity offset 0xFC from packet +0x3D and offset 0x210 from packet +0x3B. Job class at +0x10, gender at +0x35, position at +0x36. For existing: event 0x7C. For new: CSkillUnit or CEntity with event 0x79. Skill effect 0x158, pet accessory, Doram chat bubbles, position tracking.
0x00D36ED01262CNetwork__recv_entity_spawn_moving_compactHandles entity spawn (moving, compact format) packet. Compact moving entity spawn with job at offset +0x0E, gender at +0x2D, position packed at +0x2E. For existing: event 3 (moving update). For new: CSkillUnit or CEntity with event 4 (new moving). Loads equipment costume overlay for NPC/monster/homunculus job ranges. Skill effect 0x158 for skill units. Pet accessory, Doram chat bubbles. Finalizes via large packet data handler.
0x00D373C0581CNetwork__recv_player_own_chatHandles player's own chat message packet. Reads variable-length text (max 0x169 bytes) from offset +4, with packet length at offset +2. In normal mode (DAT_014578fc == 0): displays as green chat (0xFF00, type 1) and sends to player entity chat bubble. In shop mode: displays as dark green (0x7800) on channel 5. Appends to chat log if enabled.
0x00D37610140CNetwork__recv_player_position_updateHandles player position update packet. Reads server tick (int at offset +2) and 6-byte packed position data (offset +6) containing x/y coordinates and direction. Adjusts server tick drift, then dispatches position update event (type 0) to the player entity via its vtable.
0x00D376A034CNetwork__recv_entity_action_0x3fHandles entity action dispatch (event 0x3F) packet. Reads entity ID (offset +2), two shorts (offsets +6 and +8), and dispatches via vtable +0x18 with event code 0x3F. Small 34-byte handler for triggering entity-specific actions.
0x00D376D048CNetwork__recv_entity_action_0xaaHandles entity action dispatch (event 0xAA) packet. Skips if entity ID (offset +2) matches player (DAT_01733c3c). Otherwise dispatches via vtable +0x18 with event code 0xAA, passing entity ID and two short parameters from offsets +6 and +8.
0x00D377001CNetwork__handle_entity_weight_change_packetCNetwork: handle entity weight change packet
0x00D37A101166CNetwork__recv_entity_spawn_named_typed_extHandles entity spawn with name, type byte, and extended fields packet. Extended spawn with variable-length name (offset +5, length = packetSize - 0x45). Type byte at +4: 0x00 = skill unit, 0x07 = pet, 0x08 = current map, 0x09 = secondary map. Stores extra fields: entity offset 0xFC, 0x210, and byte at +0x40. For type 0x00: event 0x7C (existing) or 0x79 (new). For others: event 3/4 (moving). Equipment costume overlay, Doram chat bubbles, position tracking.
0x00D37EA01158CNetwork__recv_entity_spawn_idleProcesses entity spawn (idle state) packet. Complex handler that parses entity appearance data: job class, hair, equipment, position, speed, direction, gender, etc. Creates new entity objects (CSkillUnit for ground skills, regular entity otherwise). Handles mount/pet display, loads ACT resources, sets up entity position and visual state. Checks for guild emblems and NPC movement patterns.
0x00D383301152CNetwork__recv_entity_spawn_idle_extra_byteHandles entity spawn (idle) with extra byte field packet. Entity spawn with job at offset +0x10, gender at +0x35, position at +0x36, plus additional byte at offset +0x3B. For existing: event 0x7C. For new: CSkillUnit or CEntity with event 0x79. Pet accessory, Doram chat bubbles, position change tracking.
0x00D387B01165CNetwork__recv_entity_spawn_idle_with_fcHandles entity spawn (idle) with FC field packet. Entity data at standard offsets with additional short stored at entity offset 0xFC (from packet +0x3E). For existing: event 0x7C. For new: CSkillUnit or CEntity with event 0x79. Pet accessory loading, Doram chat bubbles, position change tracking via field 0x2E4.
0x00D38C401305CNetwork__recv_entity_spawn_moving_with_typeHandles entity spawn (moving) with type byte packet. Entity data at offset +3 with type byte at +2. Job at +0x0F, gender at +0x2E, position at +0x2F. Type byte 0x07 = pet with accessory, 0x09 = type check. For existing: event 3. For new: CSkillUnit or CEntity with event 4. Equipment costume overlay for NPC/monster ranges. Doram chat bubbles. Large packet data handler finalization.
0x00D39160628CNetwork__recv_entity_spawn_moving_compact_typedHandles entity spawn (moving, compact, typed) packet. Compact moving spawn with type byte at offset +2, entity data at +3. For existing entities: event 3. For new: creates CEntity by sprite type with event 4. Equipment costume overlay for NPC/monster job ranges. Stores 2 bytes at entity offset 0x210 from packet +0x2A.
0x00D393E052CNetwork__recv_ui_window_event_0x37Handles UI window event packet. Creates window type 0x21 via CGameObject__create_window_by_type, then sends event 0x37 with short parameter from offset +2 and sub-type short from offset +4 to update the window.
0x00D39420259CNetwork__recv_server_tick_syncHandles server tick synchronization packet. If ping logging enabled (DAT_0171f100), writes to PingLog.txt with timestamp and tick difference. On first tick (field 0x454 == 0): calls sync_server_tick_offset for initial time base. On subsequent ticks: calls adjust_server_tick_drift. Increments tick counter, sets connection alive flag (field 0x270), computes running ping average.
0x00D39530139CNetwork__recv_entity_vanish_00d39530Handles entity vanish/death packet. Processes entity removal by vanish type (offset +6). Type 0: standard removal (event 99 + packet 0x0D). Type 1: full death with cleanup events 0x1C/0x0D, pet emotion on owner death, clears TLS fields (status effects, UI states), refreshes equipment/party/BG windows, shows dialog for mode 4. Type 2: teleport out with effect 0x13A, clears mail/auction. Type 3: effect 0x130 unless hidden. Default: removes actor via CBGMManager.
0x00D39AB044CNetwork__recv_entity_talk_bubbleHandles entity talk bubble update packet. Looks up entity by ID (offset +2) via CBGMManager. If found, calls virtual function at vtable +0x48 with data value from offset +7 to update the entity's overhead talk bubble display.
0x00D39AE0205CNetwork__recv_colored_chat_from_entityHandles colored chat message from entity packet. Copies variable-length text (packetSize - 0x0C bytes) from offset +0x0C into buffer. Dispatches as chat type 1 with color from offset +8. Looks up entity by ID (offset +4) and sends text as chat bubble (event 7) with color. Appends to chat log if enabled.
0x00D39BB0507CNetwork__recv_item_list_displayHandles item list display packet. Parses variable-length packet with 19-byte (0x13) entries. For each: extracts item ID (4 bytes), card slots (8 bytes), option data, flags. Converts item ID via itoa, looks up description via CItemDesc, adds to item collection. Creates/refreshes UI windows 0xFE and 0xFF (equipment/inventory) with events 0x24 (refresh) and 0x17 (update).
0x00D39DB0367CNetwork__recv_item_list_smallHandles item list (small format) packet. Parses variable-length packet with 15-byte (0x0F) entries. For each: extracts 8-byte item identifier, 2-byte field, 1-byte flag. Clears deal/inventory lists first, processes each through itoa and CItemCollection__add_item_from_string_id. Refreshes UI windows 0xFE and 0xFF with events 0x24/0x17.
0x00D39F20382CNetwork__recv_trade_buy_notificationHandles trade/buy notification packet. Result type (short at offset +4): 0 = yellow msg 0x36, 1 = red msg 0x37, 2 = red msg 0x38, 3 = red msg 0xDD, 9 = red msg 0x794, 0xFFFF = red msg 0xBE3. If item data follows (10-byte entries from offset +6): creates trade window 0x100, processes items through CShopItemList, calculates scroll position. If no items: sends packet 0x124 to server.
0x00D3A1E0728CNetwork__recv_map_changeHandles map change packet. Stores skill level data from offsets +0x12/+0x14 into globals. Reads 16-byte map name from offset +2. Manages EffectMap state transitions (2->3 close UI, 7->8). If same map as current (DAT_01733c44): reinitializes map/cursor with fade-out. If different: sets character name, records timestamp, sets next map name, creates loading window with msg 0x79, sets timeout 0xB9, resets inventory expansion. Clears selling items and removes event queue entries 200/0xC9/4.
0x00D3A4C0367CNetwork__recv_map_server_connectHandles map server connect packet. Reads 16-byte map name string from offset +2. Builds STL string, then calls handle_map_server_connect to process the connection with the new map name.
0x00D3A630232CNetwork__recv_storage_openHandles storage open packet. Checks if player is trading (field 0x308) - if so, sends packet 0x51 to reject. Reads storage capacity (byte at offset +2, clamped 2-5) into DAT_01733580. Clears storage items. If not in shop/vending/party: creates storage window (type 0xAE) with submit button. Otherwise shows dialog msg 0x24B and sends packet 0x10E to reject.
0x00D3A72070CNetwork__recv_npc_dialog_openHandles NPC dialog open packet. Validates entity ID (offset +2) exists via CBGMManager, or allows ID 0. Creates NPC dialog window (type 100) and sends event 0x1C with entity ID to initialize the dialog.
0x00D3A77043CNetwork__recv_npc_close_dialogHandles NPC close dialog packet. Stores byte from offset +4 into DAT_01738218 and short from offset +2 into DAT_0173821e. Creates follow-up UI window via CGameObject__create_window_by_type.
0x00D3A7A01CNetwork__handle_player_status_change_packetCNetwork: handle player status change packet
0x00D3A8081CNetwork__handle_player_status_change_altWARNING (jumptable): Unable to track spacebase fully for stack
0x00D3A8251CNetwork__handle_player_status_change_switchWARNING (jumptable): Unable to track spacebase fully for stack
0x00D3B65050CNetwork__recv_entity_option_updateHandles entity option update packet. Looks up entity by ID (offset +2). If found and type field (short at offset +6) equals 4, calls entity virtual function at vtable +0xA0 with value from offset +8 to update a specific entity option/property.
0x00D3B69026CNetwork__recv_item_buy_resultHandles item buy result packet. Result code (short at offset +2): 0/1 = success (processes item data), 2 = dialog with msg 0x724, 3 = dialog with msg 0x725. For success cases: falls through to process a large item-related packet handler.
0x00D3B730182CNetwork__recv_minimap_openHandles minimap/navigation open packet. If result (short at offset +2) is non-zero: shows dialog with msg 0x795 (if result==2) or msg 0x722. If result is 0 (success): records tick count, creates window 0xA4, finds window 0xA8 and rebuilds map filter tree, clears TLS field.
0x00D3B7F0211CNetwork__recv_party_alarm_dataHandles party alarm data packet. Allocates buffer, copies variable-length data (entry size 0x30 bytes) from offset +5. Sets DAT_017381b5 flag. Finds party alarm window (type 0xA9). If no entries: shows dialog msg 0x723 and clears count. Otherwise calls CPartyAlarmMgr__notify_party_alarm with data, count, and flag byte from offset +4. Refreshes window.
0x00D3B8D052CNetwork__recv_party_member_removeHandles party member remove packet. Removes entry by key (entity ID from offset +2) via CryptoManager__remove_entry_by_key. Finds and refreshes party alarm window (type 0xA9) via vtable +0x98.
0x00D3B91077CNetwork__recv_party_member_updateHandles party member update packet. Passes 12 consecutive 4-byte values from packet (offsets +2 through +0x2E) to CPartyAlarmMgr__process_party_member_update for full member data update (ID, stats, equipment, position, etc.). Finds and refreshes party alarm window (type 0xA9).
0x00D3B96056CNetwork__recv_party_alarm_pendingHandles party alarm pending processing packet. Passes entity ID (offset +2) and data pointer (offset +6) to CPartyAlarmMgr__process_pending_alarms. Finds and refreshes party alarm window (type 0xA9).
0x00D3B9A064CNetwork__recv_message_toggle_notificationHandles message toggle notification packet. Reads toggle state byte from offset +2 into DAT_01737f70. Displays message 0x52E (if state is 0/off) or 0x52D (if state is 1/on) as cyan (0x64FFFF) chat message.
0x00D3B9E081CNetwork__recv_friend_party_invite_resultHandles friend/party invite result packet. Large switch on result code (int at offset +0x36) with 14 cases (0-0xD). Cases 0,7,8,0xC: format message with player name from packet. Case 0: uses msg 0xDAD (if DAT_01737a9c==1) or 0xDAA. Case 1: msg 0xDAE/0xDAB. Cases 2-6,0xA-0xD: direct message display with red (0xFF) color. Case 9: msg 0xDA6 + handler call. All display via CUIWindowMgr__dispatch_chat_message.
0x00D3BCE091CNetwork__recv_charselect_slot_entryHandles character select slot entry packet. Reads slot index (int at offset +2), account ID (int at offset +6), character name (24-byte string at offset +10), and two short values at offsets +0x22 and +0x24. Passes all data to CPartySearchWnd__add_entry_to_list (likely misnamed - this is a generic list population function) to populate the character select screen UI.
0x00D3BD40441CNetwork__recv_trade_request_item_listHandles incoming trade request with item list. Only processes if DAT_01457864 is 0 and trade window (0x13E) is not open. Clears deal/inventory lists. If DAT_017381ac == 1, shows error message in red. Otherwise parses variable-length packet with 13-byte (0x0D) entries from offset +0x0C: each contains an 8-byte item identifier, a 4-byte value, and a 1-byte flag. Stores trade partner data from offsets +4 and +8 into globals. Creates trade windows (types 0x16 and 0x17) with refresh events. Sets network trade state flag at offset 0x24C.
0x00D3BF00283CNetwork__recv_trade_result_notificationHandles trade result notification packet. Reads result code (short at offset +10) and displays corresponding message. Code 0/8: updates trade zeny values (offsets +2 and +6), refreshes shop window, shows success msg 0x36 in yellow or msg 0x716 in red for code 8. Code 1: msg 0x4CB (trade partner busy). Code 2: msg 0x4CC (trade cancelled). Code 3: msg 0x38 (trade failed). Codes 4-7,9: additional error messages. Dispatches formatted message as chat with appropriate color.
0x00D3C1C0464CNetwork__recv_trade_item_list_with_detailsHandles trade item list with detailed item info. Parses variable-length packet with 0x13-byte entries from offset +4. Each entry contains item data parsed into item descriptors. Adds each item to the collection via CItemCollection__add_item_from_desc_or_lookup. After processing, creates/refreshes two UI windows (types 0x16 and 0x17) with events 0x24 (refresh) and 0x17 (update).
0x00D3C390346CNetwork__recv_equipment_item_listHandles equipment item list packet. Parses variable-length packet with 13-byte (0x0D) entries starting at offset +4. For each item: extracts 8-byte item data, 4-byte slot info, and 1-byte flag. Converts item ID via itoa, looks up item info, and adds to collection via CItemCollection__add_item_from_desc_or_lookup. Creates/refreshes equipment (0x16) and inventory (0x17) windows.
0x00D3C4F056CNetwork__recv_item_operation_resultHandles item operation result notification. Reads result code byte from offset +2 and displays corresponding message with color coding. Code 0: yellow msg 0x36 (success). Code 1: red msg 0x37 (failed). Code 2: red msg 0x38. Code 3: red msg 0xDD. Code 9: red msg 0x794. Code 10: yellow msg 0xB65. Codes 0xB-0xE: additional result messages. After display, clears TLS fields to reset UI state.
0x00D3C710502CNetwork__recv_storage_item_list_with_shopHandles storage item list with shop lookup. Parses variable-length packet with 10-byte entries from offset +4. For each entry: reads 8-byte item identifier and 2-byte extra field. Looks up item by slot ID via CShop linked list. Copies item name (33-byte buffer), sets card slot data and flags, adds to collection via CItemCollection__add_item_from_desc_or_lookup with flag 1. Creates equipment window (0x16) and storage window (0x18).
0x00D3C910148CNetwork__recv_deal_close_resultHandles deal close result packet. Reads result code byte from offset +2. Code 0: yellow msg 0x36 (success). Code 1: red msg 0x39 (failed). After message display, clears deal/inventory lists and TLS fields to reset trade UI state.
0x00D3C9B0309CNetwork__recv_broadcast_announce_messageHandles broadcast/announce message packet. Formats message 0x4F7 with parameters from packet offsets +2, +6, +10. If DAT_016d3b10 == 0xC, also processes message 0x465. Creates tooltip entry and dispatches as chat message in light blue color (0x62B0FF). For non-tooltip mode (DAT_016d3b10 == 0), displays directly as chat.
0x00D3CAF0277CNetwork__recv_shop_item_window_listHandles shop/item window population packet. Creates window 0x5A and sends event 0x4B to initialize it. Iterates through variable-length list of short item IDs starting at offset +4. For each ID, looks up item via CShop__find_item_in_linked_list_by_slot and sends event 0x1F with item data. Finishes with event 0x3C to signal list complete.
0x00D3CC10470CNetwork__recv_npc_talk_with_emotionHandles NPC talk with emotion packet. Looks up entity by ID (offset +2). Reads an encoded value (int at offset +6) and decomposes it: remainder mod 10 determines behavior (2 = direct event dispatch type 0xA0 with global data), otherwise extracts talk line parameters by dividing by factors of 10. Calls get_random_pet_talk_line with the decomposed values, formats with color codes. If non-empty and not matching sentinel string, displays as chat bubble on entity and dispatches as chat message (color 0xFAFAFA) unless chat options 0x72/0x94 are enabled.
0x00D3CDF026CNetwork__recv_roulette_spin_resultHandles roulette spin result packet. Small 26-byte handler that processes the server's response to a roulette wheel spin attempt, indicating success or failure of the spin operation.
0x00D3CEC0546CNetwork__recv_bgm_sound_changeHandles BGM/sound change packet. Checks game settings option. Mode 0: formats and plays BGM. Mode 1: formats, plays BGM, and sets DAT_0138be7c+0x14 flag. Mode 2: reads BGM filename from network object offset 0x68, looks up map BGM, constructs and sets BGM filename via CSoundMgr. Clears flag on completion.
0x00D3D0F0495CNetwork__recv_bgm_play_requestHandles BGM play request packet. Checks game settings option 7. Constructs BGM filename by concatenating "bgm\\" prefix with packet data (offset +2) and ".mp3" suffix. Passes through CPacketManager handler, then plays via CSoundMgr__play_bgm. Sets DAT_0138be7c+0x14 = 1.
0x00D3D2F071CNetwork__recv_player_sit_stand_notificationHandles player sit/stand notification. Gets the player entity from network object offset 0xCC and dispatches event 0x52 (sit/stand animation) with the duration value from packet offset +6 multiplied by 1000 (converting seconds to milliseconds). Sets global DAT_01737b9e = 1 to flag the player state change.
0x00D3D390463CNetwork__recv_player_stats_update_aHandles player stats update (variant A). Reads map name via lua_util_sprintf (format depends on DAT_016d3b10). Populates many player stat globals (DAT_01737b*): base stats, HP/SP, level, job, map position, experience values, and misc fields from packet offsets. Calls refresh_minimap_display after each map-related update. Refreshes window DAT_01457a44 if present. Shows message 0x3FA when reaching level milestones (1, 5, 10).
0x00D3D560419CNetwork__recv_player_stats_update_bHandles player stats update (variant B). Similar to variant A but with different packet layout. Reads map name via snprintf_wrapper, sets same player stat globals. Uses different offsets for values. Triggers minimap refresh after position-related updates. Shows level milestone message 0x3FA at levels 1/5/10.
0x00D3D710505CNetwork__recv_player_stats_update_cHandles player stats update (variant C). Similar to variants A/B but includes additional UI rect and position fields. Sets player stat globals from packet, refreshes minimap. If DAT_01457a40 is set, also updates UI control rect (map bounds) and position fields. Uses 4-byte values for extended coordinate data instead of sign-extended shorts.
0x00D3D910453CNetwork__recv_player_stats_update_dHandles player stats update (variant D). Same global-writing pattern as variant A with lua_util_sprintf for map name. Populates player stat globals, refreshes minimap display, updates window if present. Shows level milestone message at levels 1/5/10.
0x00D3DAE0283CNetwork__recv_map_change_or_warp_infoHandles map change or warp info packet. Reads map name from offset +2. If map value at offset +0x1B < 10000: updates current map globals, refreshes existing map window (DAT_01457a0c) with wheel input and data. If >= 10000: subtracts 10000 and creates warp portal window (type 0xC) with portal coordinates, map name, and dispatches event 0x1D.
0x00D3DC00281CNetwork__recv_entity_status_tree_updateHandles entity status update via rb_tree. Inserts entity data (ID from offset +4, values from offsets +6/+8/+10/+12) into the rb_tree lookup structure. Handles sentinel value 9999 by replacing coords with 0xFFFF. Then iterates the entity linked list at network offset 0x1F0, dispatching event 0x1E5 with entity position data to window DAT_014a684c for each entity with non-zero status.
0x00D3DD20542CNetwork__recv_book_text_viewerHandles book/quest text viewer packet. Reads book ID (int at offset +2), converts to string, constructs book filename path ("book_%s.txt", with server-specific prefix if DAT_016d3b10 == 10). Opens the file via CFileStream. If file not found, shows red error message. If found, creates book viewer window (type 0x6A) with event 0x5E passing book ID and page count from offset +6.
0x00D3DF4040CNetwork__recv_item_reform_resultHandles item reform result packet. Resets network field 0xFC to 0. Reads result code byte from offset +2 and displays corresponding red (0xFF) message: code 0 = msg 0x43 (success), code 1 = msg 7, code 2 = msg 0x44, code 4 = msg 0x37, code 5 = msg 0x1B0, code 6 = msg 0x1B1, code 7 = msg 0x1B2. Clears overhead chat first for each case. All messages displayed as red text on channel 1.
0x00D3E0C01339CNetwork__recv_premium_status_infoHandles premium/cash shop status info packet. For DAT_016d3b10 == 3: shows timer format based on value at offset +2 (1=days remaining, 2=hours/min/sec countdown). Otherwise processes time-based status with bitfield flags at offset +2: bit 0x01=base package, 0x02=Exp UP, 0x04=Item UP, 0x08=Death Down, 0x10=Advanced Package, 0x20/0x40/0x80=additional status strings. Formats expiry time (dates or remaining time) and displays as white chat message.
0x00D3E600119CNetwork__recv_whisper_window_open_aHandles whisper/PM window open (variant A). Reads 24-byte character name from offset +10, stores account ID (offset +2) at network field 0x28C and character ID (offset +6) at 0x290. Creates whisper window type 0x69 with event 0x5B, passing character ID and name.
0x00D3E680119CNetwork__recv_whisper_window_open_bHandles whisper/PM window open (variant B). Same as variant A but creates window type 0x68 with event 0x5A. Reads 24-byte character name from offset +10, stores account ID (offset +2) at network field 0x28C and character ID (offset +6) at 0x290.
0x00D3E70037CNetwork__recv_shop_pending_order_removalHandles shop pending order removal packet. Reads order ID from packet offset +6 and removes it from the shop pending order list via CShopManager__remove_pending_order_by_id. If removal succeeds, triggers a refresh notification (event 0x17) on window DAT_01457948.
0x00D3E730190CNetwork__recv_npc_dialog_with_paramsHandles NPC dialog with parameters packet. Checks option 0x88 (if enabled, dispatches event 0x32 with type 4 directly). Otherwise copies 24 bytes of packet data (offsets +2 through +0x19) into local struct, creates NPC dialog window (type 0x20) with event 0x32, passing struct data plus additional params from offsets +0x1A and +0x1E.
0x00D3E7F0187CNetwork__recv_npc_dialog_simpleHandles simple NPC dialog packet. Same structure as the parameterized variant but creates window 0x20 with event 0x32 using zeroed extra parameters. Checks option 0x88 for shortcut mode. Copies 24 bytes of packet data into local struct.
0x00D3E8B0617CNetwork__recv_character_status_displayHandles character status display packet. Reads 3 status values from offsets +2, +6, +7 into globals DAT_01737ad8/adc/ae0. For each value (0=off, 1=on, 2=special), formats a status line using message table entries (0x11F-0x125, 0x2E2, 0x5FF) combined with labels (0x123 prefix, 0x124/0x125 categories). Dispatches each non-empty line as yellow (0xFFFF) chat message with style 0xC. Refreshes window DAT_0145798c.
0x00D3EB20175CNetwork__recv_party_or_friend_invite_windowHandles party/friend invite window packet. Reads 24-byte character name from offset +10. Checks option 0x88 and vector lookup (DAT_01733c3c). If option disabled and not in vector: creates invite window type 0x6D with event 0x5F, passing IDs from offsets +2 and +6 plus name. Otherwise dispatches event 0xAF directly via global callback.
0x00D3EBD0345CNetwork__recv_player_search_whisper_setupHandles player search/whisper setup packet. Reads 24-byte character name from offset +6. Checks via CTownInfoMgr__is_search_incomplete if further lookup needed, performs string search if so. Creates player info/whisper window (type 0x23) with event 0x38, passing ID from offset +2 and the character name.
0x00D3ED30143CNetwork__recv_unequip_item_resultHandles unequip item result packet. Sets timestamp (timeGetTime - 2000) at network offset 0x108. If result code (offset +6) == 0 and equip slot (offset +4) != 0: validates equip location and unequips item at that slot. If result code == 1: shows error message 0x7A1.
0x00D3EDC093CNetwork__recv_unequip_item_forcedHandles forced unequip item packet. Sets timestamp (timeGetTime - 2000) at network offset 0x108. If result code (offset +6) != 0 and equip slot (offset +4) != 0: validates equip location flag and unequips item. No error message variant - this is a forced server-side unequip.
0x00D3EE20264CNetwork__recv_equip_item_slot_resultHandles equip item to slot result. Sets timestamp (timeGetTime - 2000) at network offset 0x104. If result code (offset +8) == 0: looks up item by slot ID (offset +2), reads equip location (offset +4) and display slot (offset +6), equips item via CShop__equip_item_to_slot. If result code == 1: shows error message 0x7A1.
0x00D3EF30268CNetwork__recv_equip_item_result_with_errorHandles equip item result with additional error handling. Sets timestamp (timeGetTime - 2000) at network offset 0x104. Result code (offset +8): 0 or 2 = shows error message 0x174. 1 = looks up item by slot ID (offset +2), equips to slot with location data from offsets +4 and +6.
0x00D3F040137CNetwork__recv_disconnect_and_return_to_loginHandles disconnect and return to login screen. Performs full game state cleanup: resets navigator, replay state, map counter (DAT_016fc564), and map resources. If byte at offset +2 == 1: deactivates UI events (counters 5, 6, 7), gets effect manager singleton, disconnects network socket, sets game mode to 5 (login), and sets next map to "login.rsw".
0x00D3F0D096CNetwork__recv_navigation_window_dataHandles navigation/memo window data packet. Creates window type 0x1C. Copies 24 bytes of data from packet offsets +6 through +0x1D into local struct. Dispatches event 0x2E with the struct data and an ID from offset +2.
0x00D3F130482CNetwork__recv_entity_speech_bubble_with_treeHandles entity speech bubble with tree update. Inserts entity mapping (offset +8 -> offset +4) into rb_tree via rb_tree_uint_to_uint_insert_or_find. Looks up entity by ID (offset +4). Parses variable-length string data from offset +0x11 (length = packet size - 0x11). Limits string to 60 chars. Dispatches event 0x20 to entity with the speech text.
0x00D3F320123CNetwork__recv_window_0x13e_open_or_fallbackHandles window 0x13E open or fallback. Checks TLS field 0x13E status. If not set: creates window type 0x13E with event 0x78 passing values from offsets +2 and +6. If window creation fails, constructs packet 0x844 and sends it as fallback. If TLS field is set, does nothing (window already open).
0x00D3F3A053CNetwork__recv_collection_resultHandles collection result packet. Finds trade/collection window (type 0x13E). If found, dispatches event 0x7A with two 4-byte parameters from packet offsets +2 and +6, updating the collection status display.
0x00D3F3E0821CNetwork__recv_trade_transaction_result_extendedHandles trade/transaction result with extended error handling. Large switch on result code (short at offset +6). Code 0/8: dispatches to window 0x13E with event 0x7A (code 8 also shows msg 0x716). Codes 9-12: specific error messages (0x798-0x79B). Codes 0x12F/0x130: formats map entry names with error messages 0xF64/0xF65 and shows in error dialog box. Default/unknown codes: shows error msg 0x39. All messages displayed as red chat text.
0x00D3F76035CNetwork__recv_status_parameter_change_messageHandles status parameter change message. Maps status parameter type (int at offset +2) to message ID: 0x15=0x379 (STR), 0x16=0x37A (AGI), 0x17=0x37B (VIT), 0x18=0x37C (INT), 0x19=0x37D (DEX), 0x1C=0x37E, 0x1D=0x37F, 0x1E=0x380, 0x1F=0x381, 0x20=0x382, 0x28=0x393. Displays the parameter change notification as chat in light purple (0x9B9BFF) with style 8.
0x00D3F84028CNetwork__recv_minimap_marker_positionReceives two short values from the packet (offsets +2 and +4) and stores them in DAT_01738220 and DAT_01738224. These globals are read by CEffect3DPlayer__render_all_markers_on_minimap for marker positioning, and written by UIShopWnd__handle_buy_item. Likely sets a position for an NPC/shop minimap marker.
0x00D3F860210CNetwork__recv_npc_script_dialog_textHandles NPC script/dialog text packet. Sets network fields 0x24C=1 and 0x2DC from offset +4. Copies variable-length text data (packet size - 9 bytes) from offset +9. For Korean locale (DAT_016d3b10 == 10), prepends charset identifier. Creates NPC dialog window (type 0xE2) with event 0x1A, passing text and NPC ID. Validates text length < 0x803.
0x00D3F940217CNetwork__recv_npc_dialog_text_type_bHandles NPC dialog text (type B). Sets network fields 0x24C=1 and 0x2DC from offset +4. Creates window type 0x10 (different from variant A's 0xE2). Copies variable-length text data (packet size - 8 bytes) from offset +8. For Korean locale, prepends charset identifier. Dispatches event 0x1A with text and NPC ID. Validates text length < 0x803.
0x00D3FA20848CNetwork__recv_inventory_item_list_0xb5_aHandles inventory/item list for window 0xB5 (variant A). Parses 0x8E-byte item records. If flag at offset +4 is set, clears existing list. Sets globals from offsets +5 and +6. For each item record: copies raw data, extracts item class/level, counts card slots (up to 5), copies card data and random option data. Inserts into STL vector (0x158-byte records). Dispatches event 0x3C with 0xB8 to window 0xB5 when complete.
0x00D3FD70771CNetwork__recv_inventory_item_list_0xb5_bHandles inventory/item list for window 0xB5 (variant B). Parses 0x8D-byte item records (1 byte smaller than variant A). Same structure: optional list clear, global updates, item record parsing with class/level, card slots, and random option data. Uses 0x158-byte vector records. Dispatches event 0x3C with 0xB8 to window 0xB5.
0x00D4008054CNetwork__recv_window_0xb5_event_updateHandles simple event update for window 0xB5. Finds window type 0xB5 and dispatches event 0x3C with flag 1 and the byte value from packet offset +2. Lightweight update handler for the inventory/item list window system.
0x00D400C093CNetwork__recv_trade_window_open_and_clearHandles trade window open and UI state clear. Sets network field 0x24C=1. Creates window type 0x19 with event 0x1C, passing value from offset +2. Clears TLS fields 0x16 and 0x17 to reset trade-related UI state.
0x00D40120562CNetwork__recv_clan_join_leave_notificationHandles clan join/leave notification packet. Reads clan name string at offset +2, then checks two flag bytes at +0x1A and +0x1B to select one of 6 message IDs (0xD3D-0xD42) representing different join/leave/acceptance outcomes. Clears chat first, concatenates clan name with the selected message, and displays it as yellow chat text (0xFFFF). Six possible outcomes based on 2x3 flag combinations.
0x00D40360401CNetwork__recv_clan_member_status_notificationHandles clan member status change notification. Reads two flag bytes at offsets +2 and +3 to select message IDs 0xC2-0xC6 (join/leave/online/offline/etc.). Concatenates the CNetwork string member name at +0x118 with the selected message and displays as yellow chat text (0xFFFF). Six possible outcomes based on two flag byte combinations. Not a member list - it's a single member status change event.
0x00D40500159CNetwork__recv_clan_leave_resultHandles clan leave result packet. Reads two flag bytes at offsets +2 and +3 to select message IDs 0xD63-0xD66. Clears chat first, then displays the appropriate result message. Four possible outcomes based on flag byte combinations.
0x00D405A042CNetwork__recv_timer_controlHandles timer/countdown control packet. Reads type byte (0-3) at offset +2 and duration at offset +3. Type 0 = set absolute timer, Type 1 = start countdown from now, Type 2 = start countup from now (negative duration), Type 3 = set computed timer value. Updates global timer state (DAT_01732dd4=type, DAT_01732ddc=deadline, DAT_01732de4=active flag).
0x00D4068024CNetwork__recv_skill_update_triggerSimple handler that triggers CSkillMgr__update_or_remove_skill to refresh skill state. 24-byte function with no parameters parsed from the packet.
0x00D406A0140CNetwork__recv_entity_remove_by_idHandles entity removal by ID. Searches the entity ID array for the ID at packet offset +2. If found, removes the entity via CBGMManager__remove_actor_by_map_id and dispatches event 0xD. If not found, calls CBGMManager__remove_item_by_id instead. Uses memcpy to compact the array after removal.
0x00D40730561CNetwork__recv_entity_spawn_or_updateHandles entity spawn or update packet. Two modes: if byte at +0x10 is set, creates a new CGameEntity (0x560 bytes), dispatches events 0x16 and 0x75 with item data. Otherwise looks up existing entity via CBGMManager__find_item_by_id, manages a linked list for bargain sale items, and may create a smaller CGameEntity (0x440 bytes) with ctor_with_param. Dispatches event 0x2D for existing entities.
0x00D40970592CNetwork__recv_entity_item_spawnHandles entity/item spawn packet. Similar to recv_entity_spawn_or_update but checks packet type byte at +0x10 against 0xB0 for new entity creation (0x560 byte CGameEntity). For other types, manages linked list of entities and creates 0x440-byte entities via CGameEntity__ctor_with_param. Stores map ID at entity offset 0x104*4.
0x00D40BC0639CNetwork__recv_entity_item_spawn_extendedExtended entity/item spawn handler. Like recv_entity_item_spawn but with additional item type range validation for non-0xB0 types: accepts item IDs 0x2D-999, 0x3E9-0xF9E, and 0x4E35-0x7CFF. Uses nothrow operator_new for 0x440-byte entity allocation.
0x00D40E40689CNetwork__recv_entity_item_with_ground_spawnHandles entity/item creation with ground item spawn support. Three paths: type 0xB0 creates full 0x560-byte CGameEntity. Type 0x126 spawns a ground item via CGameMode__spawn_or_register_ground_item with position data. Other types manage entity linked list and create 0x440-byte entities with item type range validation.
0x00D41100325CNetwork__recv_entity_create_or_notifyEntity creation or notification handler. For non-0xB0 types, delegates to CNetwork__recv_rodex_mail_notify with 9 fields from the packet. For 0xB0 type with packet length >= 0x1B, creates a 0x560-byte CGameEntity and dispatches events 0x16 and 0x75 with item data from offset +0x1B.
0x00D41250401CNetwork__recv_entity_attachment_updateHandles entity attachment/item update. Reads item ID, type, coordinates, and flags from packet. Manages entity linked list (add/remove by ID). Looks up entity via CBGMManager__find_item_by_id, creates 0x440-byte entity if not found (for items >= type 0x2D). Stores map ID at entity offset 0x104*4 and dispatches event 0x2D with item data.
0x00D413F0464CNetwork__recv_entity_notify_with_ground_itemHandles entity notification with item type routing. For type 0x126, spawns ground item via CGameMode__spawn_or_register_ground_item. For other types, manages entity linked list (add/remove based on flag byte), looks up or creates entities via CBGMManager__find_item_by_id / CGameEntity__ctor_with_param, validates item type ranges (0x2D-999, 0x3E9-0xF9E, 0x4E35-0x7CFF), stores map ID, and dispatches event 0x2D.
0x00D415C0969CNetwork__recv_status_change_timerHandles status change timer packet. Receives skill/status ID, start time, and duration. Iterates two global linked lists of timer bar entries (DAT_017326cc and DAT_017326d4) matching by skill ID. Creates CTimerBar instances for matching entries and adds them to temporary lists. If no existing timer tracking entry exists in DAT_01737a78, creates one via CPacket__handle_rodex_mail_list. Uses CKafraServiceInfo to store timer bar data.
0x00D419901753CNetwork__recv_status_change_timer_updateHandles status change timer update packet. Similar to recv_status_change_timer but also handles existing timer entries in DAT_01737a78. For entries already tracked, destroys old sub-lists and recreates timer bars with updated durations. For new entries, creates timer bars and adds tracking entries. Processes both DAT_017326cc and DAT_017326d4 timer lists.
0x00D420701301CNetwork__recv_skill_cooldown_listHandles skill cooldown list packet. Parses a variable-length list of skill IDs with their remaining cooldown durations. Updates the skill hotbar to show cooldown timers/greyout for skills currently on cooldown. Iterates through each entry applying the cooldown state.
0x00D42590552CNetwork__recv_skill_cooldown_updateHandles skill cooldown update packet. Parses variable-length list of 6-byte entries (skill ID + duration). For each entry, creates a new timer tracking entry in DAT_01737a78 with the skill ID, computed deadline (timeGetTime + duration), and empty timer bar sub-lists. Cleans up temporary lists after each entry.
0x00D427C0103CNetwork__recv_ap_updateHandles AP (ability points) update packet. Reads current AP value and max AP from the packet. Updates the player's AP display globals and refreshes the AP gauge in the status bar UI.
0x00D42830131CNetwork__recv_job_change_effectHandles job change visual effect packet. Looks up entity by ID at offset +2 via CBGMManager__find_item_by_id. If found, checks if the entity's effective job ID is in the homunculus range (0x8B-0x99 inclusive) and dispatches event 0x77 (job change visual effect). Also checks specific 4th class job IDs (0x5174-0x5177) and dispatches the same event.
0x00D428F0371CNetwork__recv_skill_list_with_recordsHandles skill list packet with variable-length records. Parses header to get record count from (packet_length - 4) / 0x25. Each 0x25-byte record contains skill data fields. Builds a vector of 0x0F-byte entries from the records and passes to process_skill_list_packet along with the packet's skill set identifier at offset +0.
0x00D42A7046CNetwork__recv_single_skill_updateHandles single skill update packet. Passes 7 fields to handle_single_skill_update: skill ID (short at +2), level (short at +8), range (short at +10), type byte (at +0xE), upgradable flag (short at +0xC), SP cost (int at +4), and current level (short at +8).
0x00D42AA0381CNetwork__recv_skill_info_updateHandles skill info update packet. Reads packet type (0x10E, 0x239, or 0x29E) to determine which skill list to update. Gets existing skill entry by ID, copies its data, then updates with new values: level, range, type, upgradable flag, and AP amount. Calls the appropriate update function for the skill list type. Uses CSkillEntry for temporary storage.
0x00D42C20901CNetwork__recv_3d_sound_eventHandles 3D sound/BGM event packet. Three modes based on byte at +0x1A: Mode 0 = play positional 3D sound using resource name at +2, with position relative to camera entity. Mode 1 = add sound event with name string, timer duration, and position data to an internal event vector. Mode 2 = remove sound event by matching name string against the event vector.
0x00D42FB097CNetwork__recv_inventory_equipment_listHandles inventory/equipment item list packet. 4 modes via param_1: Mode 0 = inventory items (67-byte entries) with full data including card slots, options, equip location, class/level, identified/damaged/favorite flags. Checks elemental spirit equipment for savedata. Mode 1 = cart items, same parsing. Mode 2/3 = storage/guild storage items with favorite item handling. All modes parse up to 5 enchant option slots per item.
0x00D439401CNetwork__handle_inventory_list_packetCNetwork: handle inventory list packet
0x00D443F01CNetwork__parse_non_equip_item_listCNetwork: parse non equip item list
0x00D4458029CPacket__handle_equip_resultHandles equip result packet. If param_2 is 0 (success): case 0 notifies UI language change, case 1 calls equipment refresh, cases 2/3 invoke vtable method 0x94 with event 0x17 and set flag at offset 100. If param_2 is nonzero (failure), does nothing.
0x00D44600116CPacket__handle_inventory_reset_or_name_displayHandles inventory reset or name display packet. Switches on type byte at DAT_01720412+2: case 0 clears selling list, resets all equip slots, and resets all item slots. Case 1 clears cart list. Cases 2/3 extract a name string (up to 24 bytes) from the packet, create a window via CGameObject, compute string length, wrap/display it. Packet size field at DAT_01720412 determines data length (minus 5 byte header).
0x00D447601200CPacket__dispatch_unit_property_changeDispatches unit property change packet with int-sized values. Checks if target unit is the local player (DAT_01733c3c). For local player: applies property changes (position, class, guild, etc.) via switch on property type byte at offset 6, sets various DAT_017335xx globals. For other units: finds unit via CBGMManager and dispatches through vtable methods. Property types: 0=appearance/class, 1=weapon, 2=shield/garment, 3-6=various stats, 7=hair, 0xb=clear stats, 0xc-0xe=special properties.
0x00D44C90175CPacket__dispatch_unit_property_change_byteByte-sized variant of unit property change dispatch. Same structure as CPacket__dispatch_unit_property_change but reads single-byte values from packet offset 7 instead of int-sized values. Handles property types 0-8 for local player and dispatches to unit vtable for other entities.
0x00D44F2047CPacket__handle_char_select_responseHandles char select response packet. Gets game object via FUN_00a978d0(0x77), then calls vtable method 0x94 with event 0x5b and the result byte from packet offset 2.
0x00D44F50409CPacket__process_tooltip_packetProcesses tooltip/info packet for items/units. Switches on type byte at offset 0x1f: 0/1=format item name with message table entries 0x345-0x34E, 0xa/0xb=format with item description lookup, 0x14/0x15=special format messages 0x39f/0x4a6, 0x16=item class/level info message 0x4f1, 0x1e=message 0x409, 0x28=Target HP display. Builds formatted tooltip string and adds via TooltipMgr__add_tooltip_entry.
0x00D45560241CPacket__handle_unit_position_updateHandles unit position update packet with 4-byte coordinates. Reads x/y shorts from offsets 6/8, direction int from offset 10, and body direction byte from offset 0xe. For local player: updates position globals DAT_01733544-4c, notifies UI via vtable 0x94 event 0x3c, and triggers movement if DAT_01738254 < 1. For other units: finds via CBGMManager and dispatches position event 0x2b.
0x00D45660223CPacket__handle_unit_position_update_shortHandles unit position update packet with short-sized direction. Similar to CPacket__handle_unit_position_update but reads direction as short at offset 10 and body direction byte at offset 0xc. Updates same DAT_017335xx position globals for local player and dispatches event 0x2b to unit objects.
0x00D45740555CPacket__parse_player_stats_packetParses comprehensive player stats packet. Reads 12 byte stats (offsets 4-15) into DAT_01733cbc-ce8, then 13 short stats (offsets 0x10-0x2a) into DAT_01733c8c and DAT_01733cf0-d20. Calls thunk_to_00a969d0 after each stat update (likely UI refresh). Finally notifies stat window via vtable 0x94 event 0x23. Stats include STR/AGI/VIT/INT/DEX/LUK base and bonus, plus HP/SP/ATK/DEF/etc.
0x00D4597072CPacket__update_single_statUpdates a single player stat by stat ID. Cases 0x20-0x25 update bonus stats (STR-LUK bonus) at DAT_01733cd4-ce8. Cases 0xf7-0xfc update trait stats at DAT_0173a618-a644. Calls thunk_to_00a969d0 for UI refresh, then notifies stat window via vtable 0x94 event 0x23.
0x00D45E3087CPacket__dispatch_entity_direction_eventMedian-of-three pivot selection for introsort. Conditionally swaps 3 elements (param_1, param_2, param_3) so the median ends up at param_2. Compares 8-byte pairs by second field then first.
0x00D45E90358CPacket__parse_storage_equip_list_0x22Introsort partition for 8-byte pair elements. Picks median-of-three pivot, then partitions array into elements less than and greater than pivot. Returns partition boundaries via param_1 output.
0x00D46000379CPacket__parse_storage_equip_list_0x26Heap sift-down (push_heap helper) for 8-byte pairs. Promotes element at position param_2 up through the heap starting at parent index, maintaining heap property.
0x00D46180349CPacket__parse_storage_equip_list_0x1eCopies key-value pairs from a std::rb_tree (red-black tree) to a dynamically allocated vector of pairs. Traverses the tree in-order, counting nodes, allocates vector of appropriate size (8 bytes per pair), then copies each node's data.
0x00D462E0371CPacket__parse_storage_equip_list_0x25Full introsort implementation for 8-byte pair arrays. Uses quicksort with median-of-three pivot selection, falls back to heapsort when recursion depth exceeds limit, and insertion sort for small partitions.
0x00D46460536CPacket__parse_storage_equip_list_0x25_titledCRT snprintf_s wrapper. Calls __stdio_common_vsnprintf_s (secure variant) with 0x100 max buffer size. Returns formatted string length or -1 on error.
0x00D46680924CPacket__parse_cart_equip_list_with_titleParses cart/storage equip list with title string and 0x29-byte entries. Has card slot data, enchant flags, and title word-wrap. Skips items with ID 0x8000.
0x00D46A20876CPacket__parse_cart_equip_list_with_title_v2Parses cart/storage equip list with title string and extended 0x43-byte entries. Full card array, refine, enchant flags, options, grade data. Skips items with ID 0x8000.
0x00D46D90329CPacket__parse_storage_item_list_0x20Parses storage item list with 0x20-byte entries. Simpler item structure with identify flag, damage bits, and basic card/option data. No card count field (local_104=0).
0x00D46EE0504CPacket__parse_storage_item_list_0x20_titledParses storage item list with title header and 0x20-byte entries. Extracts and word-wraps title from offset 4, then parses items from offset 0x1c with same structure as parse_storage_item_list_0x20.
0x00D470E0504CPacket__parse_storage_item_list_0x22_titledParses storage item list with title header and 0x22-byte entries. Larger entry size than 0x20 variant, includes additional option data per item.
0x00D472E0345CPacket__parse_storage_item_list_0x1cParses storage item list with 0x1c-byte entries. Minimal item format with refine, item ID, amount, cards, class/level, and identify flag only.
0x00D47440339CPacket__parse_storage_item_list_0x20bParses storage item list with 0x20-byte entries (variant b). Similar to parse_storage_item_list_0x20 but includes local_a4 extra option field per item.
0x00D475A0319CPacket__parse_storage_item_list_0x0cParses storage item list with minimal 0x0c-byte entries. Smallest variant with just refine, item ID, amount, class/level, and identify flag. Card slots all zeroed (local_f0-e4 = 0).
0x00D4772059CPacket__handle_message_registration_with_timestampHandles a packet that registers a message with timestamp. Reads account ID (offset 2), sender ID as short (offset 6), and a value (offset 8). Gets current time via _time32 and forwards all to CNetwork__handle_vending_item_sold (which may itself be misnamed as this is a general message registration handler).
0x00D477601208CPacket__process_ranking_updateProcesses ranking update packet with 0x10-byte entries. For each entry: looks up via CPacketSystem, matches against up to 3 ranking slots by account ID pair, formats ranking message using msg 0x64a with name and scores, dispatches as chat message (color 0xffff, type 0x13). Cleans up string vectors afterward.
0x00D47C201208CPacket__process_ranking_update_v2Processes ranking update packet v2 with 0x0c-byte entries. Same logic as process_ranking_update but smaller entry size (matches by single int + zero check instead of two ints). Formats ranking messages and dispatches as chat.
0x00D480E0330CPacket__handle_skill_use_resultHandles skill use result packet. If target is local player: resets field 0x2cc. If success byte at offset 0xe is zero and skill ID is 0x19295, shows message 0x1071. If success, looks up skill by ID at offset 2, updates skill level by subtracting amount at offset 0xc. If skill 0x25f, resets field 0x5b4. Also calls FUN_00cdbeb0 for effect display on success.
0x00D48230260CPacket__handle_item_upgrade_resultHandles item upgrade result packet. If success byte at offset 6 is nonzero: looks up item by ID (offset 2), updates item level by subtracting upgrade amount (offset 4), checks grade info, and dispatches event 0x14 to unit. Resets field 0x2cc regardless.
0x00D48340185CPacket__handle_mvp_announceHandles MVP announce packet. If game state is 3 and local player is not in the MVP vector, looks up item name by ID (offset 2). Otherwise formats message using msg 0xb2 with the value at offset 2. Clears chat then dispatches as white chat message.
0x00D4840066CPacket__handle_npc_market_openHandles NPC market open packet. Sets flag at offset 0x24c to 1, stores NPC ID from offset 2 into field 0x2dc. Gets game object 0xe2 and dispatches event 0x19 to open market window.
0x00D4845063CPacket__handle_npc_shop_openHandles NPC shop open packet. Sets flag at offset 0x24c to 1, stores NPC ID from offset 2 into field 0x2dc. Gets game object 0x10 and dispatches event 0x19 to open shop window.
0x00D48490148CPacket__handle_npc_menuHandles NPC menu selection packet. Activates NPC dialog (FUN_00a8cf20 with 0x27), dispatches event 0x3b with menu ID (offset 2). Iterates 4 menu options (16 bytes each from offset 4), adding each non-empty string as event 0x1b. Appends 'cancel' option at the end.
0x00D48530481CPacket__handle_npc_input_dialogHandles NPC text input dialog packet. Zeroes a 24-byte buffer, formats input via snprintf_wrapper, builds STL string from packet data at offset 0x20 up to packet length, copies and processes the string, then calls FUN_00d1a520 to display the input dialog.
0x00D48720214CPacket__handle_party_member_listHandles party member list packet. Clears chat, computes member count from (packet_len - 4) / 0x18. Shows message 0xd43 or 0xd44 depending on count. Iterates members, copying 0x18-byte entries (name + status) and dispatching each as yellow (0xffff00) chat message.
0x00D4880032CPacket__handle_npc_close_or_nextHandles NPC close/next button packet. Forwards to FUN_00d18bd0 with type byte (offset 2), data pointer (offset 5), and value (offset 3) to process the NPC dialog flow control.
0x00D488201082CPacket__handle_warp_notificationHandles warp/teleport notification. Copies source name (offsets 2-0x19) and destination name (offsets 0x1a-0x41). Compares source with local player name - if same player, shows message 0x1ea and sends packet 0xac. Otherwise: removes NPC if DAT_016d44c0 set, formats warp info messages 0x172/0x173, performs string search on town info, adds warp to CTownInfoMgr list.
0x00D48C60952CPacket__handle_warp_notification_by_gidHandles warp notification by GID (game ID). Similar to handle_warp_notification but identifies sender by GID (offset 0x2a) instead of name. Compares GID against DAT_01733c40 for self-detection. On self: clears warp state, shows msg 0x1ea. On other: removes NPC by GID, formats warp messages, searches town info, adds to warp list.
0x00D490201253CPacket__handle_npc_service_listHandles NPC service list packet. Parses 0x28-byte entries from packet. For each: extracts service ID, flags, and name. Inserts into DAT_016d44fc tree by ID if not exists. Builds name string and updates node with service data (flags for type, availability, etc.) via CTownInfoMgr__update_service_node. Refreshes status windows when done.
0x00D49510131CPacket__handle_whisper_blockedHandles whisper blocked notification. Copies sender name from packet (offsets 2-0x29). Formats and displays message 0x16f with the sender name as a white chat message (color 0xffff, type 4).
0x00D495A0145CPacket__handle_warp_list_resultHandles warp list result packet. Switch on result code at offset 2: 0=success (clears NPC data, resets town info, activates mode 0x3b, shows msg 400), 1=shows msg 0x191 (white), 2=shows msg 0x192 (type 4).
0x00D4964098CPacket__handle_pet_status_messageHandles pet status message packet. Switch on status code at offset 2: 0=shows msg 0x356 (yellow 0xffff00), 3=shows msg 0x33e (white 0xffff), 4=shows msg 0x341 (white 0xffff). Other codes ignored.
0x00D496B018CPacket__set_npc_dialog_idSets the NPC dialog ID from packet value at offset 2 into global DAT_016d44a4. Simple 18-byte setter function.
0x00D496D0450CPacket__handle_card_compose_resultHandles card compose (insert) result. If success (byte offset 6 == 0): shows msg 0x1ed (yellow), looks up both items by ID (offsets 2 and 4), finds empty card slot in target item and inserts source card ID, updates item amounts. If failure (byte == 1): shows msg 0x1ee (red).
0x00D498A0260CPacket__handle_identify_resultHandles identify item result. If success (byte offset 4 == 0): shows msg 0x1eb (yellow), looks up item by ID (offset 2), marks as identified, refreshes display. If failure (byte == 1): shows msg 0x1ec (red).
0x00D499B0544CPacket__handle_refine_resultHandles refine/upgrade result packet. Looks up item by ID (offset 4), updates amount (offset 6). If world map window exists: sets display mode 2 with sub-modes 3/4/5/6 based on result code (offset 2). Otherwise: triggers skill effects 0x9a/0x9b based on result and refreshes item data.
0x00D49C7076CPacket__handle_repair_resultHandles repair item result. If success (byte offset 4 == 0): shows msg 0x32d (yellow). If failure (byte == 1): shows msg 0x32e (red).
0x00D49CC0913CPacket__handle_deal_notificationHandles trade/deal notification. Copies source name (offsets 2-0x19) and item name (offsets 0x1a-0x41). Compares source with local player name. If self: resets town info, activates mode 0x3b, shows msg 0x1e9, calls vtable 0xc4 to update display, sends packet 0xac. Otherwise: removes NPC, formats messages 0x16c/0x16d with names, searches town info, dispatches chat.
0x00D4A060976CNetwork__recv_guild_expulsion_notifyHandles guild expulsion notification. If the expelled member is the player (matches DAT_01733c40), clears guild skills, resets town data, clears TLS field, displays expulsion message (msg 0x1E9), and dispatches events. Otherwise, looks up expelled member name, formats messages using templates 0x16C and 0x16D, performs string search for related entries, dispatches chat messages, and removes entity display.
0x00D4A43026CPacket__handle_party_invite_resultHandles party invite result. Switch on result byte at offset 2: 0=msg 0x18a, 1=msg 0x18b, 2=msg 0x18c (yellow), 3=msg 0x18d, 4=msg 0x18e, 5=msg 0x6b5. Cases 0/1/3/4/5 show in white (0xffff), case 2 shows in yellow (0xffff00).
0x00D4A4D0132CPacket__handle_npc_field_update_listHandles NPC field update list packet. Parses 0x0c-byte entries (field ID, map ID, value). Updates NPC field via CTownInfoMgr__update_npc_field. If value is 0, sets current map ID. After processing: notifies minimap window (type 0x3d) with event 0x6a and refreshes status windows.
0x00D4A56096CPacket__handle_divorce_resultHandles divorce result. If result (offset 2) is 0: calls FUN_00c7d7d0/c830, sends packet type 2. If result is 1: shows msg 0x1f6 (red).
0x00D4A5C026CPacket__handle_adopt_resultHandles adopt/baby result. Switch on result byte at offset 2: 0=msg 0x1ef (yellow), 1=msg 0x1f0 (red), 2=msg 0x1f1 (red), 3=msg 0x6b6 (red).
0x00D4A650289CPacket__handle_enchant_effect_resultHandles enchant/upgrade effect result. Gets item class/level from offset 4. Switch on result type (offset 2): 0/1=skill effects 0x9a/0x9b (basic enchant success/fail), 2-7=advanced enchant effects (0x131/0x132/0x3f7-0x3fa). For types 2-7: first removes existing effect of same ID, then creates new one.
0x00D4AFA048CPacket__handle_guild_create_resultHandles guild creation result. Clears chat first. Switch on result byte at offset 2: 0=msg 0x17a (red), 1=msg 0x17b (red), 2=msg 0x17c (yellow), 3=msg 0x17d (red), 4=msg 0x82a (red).
0x00D4B050179CPacket__handle_item_drop_notificationHandles item drop/pickup notification. Gets item class/level from offset 6. Switch on type (offset 2): 0=msg 0x38f (item obtained, yellow), 1=msg 0x390 (item lost, via PTR_caseD color), 2=msg 0x391 (item stolen, blue 0xc8c8ff), 3=msg 0x392 (item destroyed, blue 0xc8c8ff). Formats with item tooltip string from CItemDB.
0x00D4B2C01CNetwork__handle_job_change_result_messageCNetwork: handle job change result message
0x00D4B4D0473CPacket__handle_friend_list_entryHandles friend list entry packet. If DAT_016d44bc is set: extracts friend name (offsets 10-0x21), searches town info, builds friend entry with account ID (offset 2), char ID (offset 6), name string. Calls FUN_00d53210 to add to friend list and refreshes status windows.
0x00D4B6B0183CPacket__handle_skill_hit_positionHandles skill hit with position info. Sets DAT_01733584 from offset 0xe (skill ID or target). Finds target unit by ID (offset 2) via CBGMManager, dispatches event 0x3d with x/y from offsets 6/8. Also dispatches event 0x3d to local player unit with offsets 10/0xc, and event 0x3c with the unit GID.
0x00D4B77019CPacket__set_skill_target_idSets skill target ID global DAT_01733584 from packet short at offset 2. Simple 19-byte setter.
0x00D4B790195CPacket__handle_skill_updateHandles skill update packet. Constructs a CSkillEntry from packet data: skill ID (offset 2), unknown (offset 4), level (offset 8), range (offset 10), SP cost (offset 0xc), attack range flag (offset 0x26). Gets skill name and AP amount. Calls CSkillMgr__update_or_add_skill, then sends event 0x71 to update skill UI.
0x00D4B8601391CPacket__handle_guild_info_packetHandles guild info packet. Parses 0x40-byte entries containing 3 string fields (name, title, role). For each entry: clears existing list, initializes strings, creates 0x54-byte list node with string data, inserts into global linked list (DAT_016d44ec/f0). Refreshes status windows after processing all entries.
0x00D4BDD01524CPacket__handle_guild_member_listHandles guild member list packet. Parses 0x2c-byte entries. For each member: extracts ID, resolves name via util_0060afb0, appends default name (msg 0x245) if empty. Creates 0x54-byte list node with member data and 3 string fields, inserts into global linked list (DAT_016d44ec/f0). Refreshes status windows after all entries processed.
0x00D4C3D01609CPacket__handle_guild_skill_listHandles guild skill list packet. Parses 0x44-byte entries. For each skill: extracts name string, checks util_0060b420 for map change, resolves display name. Creates list nodes with 3 string fields (skill name, description, category), inserts into global linked list (DAT_016d44ec/f0). Refreshes status windows after processing.
0x00D4CA20172CPacket__handle_effect_state_updateHandles visual effect state update on entities. If type (offset 6) is 2: removes effect by key. Otherwise: inserts/updates effect in rb-tree with position (offset 10), secondary value (offset 0xe), color (offset 0x13 OR'd with 0xFF000000 for alpha), type (offset 6), and timestamp from timeGetTime().
0x00D4CAD0114CPacket__handle_stat_update_with_capHandles stat update with cap/max value. Updates both current and max values for stats. Cases 0xd-0x12: STR-LUK base stats (DAT_01733cbc-cd0) with their caps (DAT_01733ca4-cb8). Cases 0xdb-0xe0: trait stats via FUN_00d18ab0 with caps (DAT_0173a600-a614). After update: initializes CDataTable if needed and recalculates ItemBonus dirty flags.
0x00D4CEE035CPacket__handle_friend_removeHandles friend removal packet. If DAT_016d44bc is set, removes friend from CTownInfoMgr warp list by account ID (offset 2) and char ID (offset 6).
0x00D4CF1051CPacket__handle_chat_timestampHandles chat/message timestamp registration. Gets sender ID (offset 2) and room/channel ID (offset 4), obtains current time via _time32, then forwards all to CNetwork__handle_buyingstore_purchase (note: that callee may be misnamed -- it likely handles timestamp registration for chat/messages, not buying store).
0x00D4CF5065CPacket__handle_unit_death_eventHandles unit death event. Finds unit by ID (offset 2) via CBGMManager and dispatches event 0x36 (death animation) to it. No-op if unit not found.
0x00D4CFA0136CPacket__handle_equipment_removal_and_costume_updateDispatches walk/movement event (0x13) to a unit. For local player, gets unit from session manager. For others, finds via CBGMManager. Passes x/y coordinates and body direction.
0x00D4D030281CPacket__handle_storage_type_notificationParses cart/storage item list with 0x22-byte entries. Creates window type 0x21, iterates items extracting refine, cards, item ID, amount, class/level, identify/damage flags. Calls CItemCollection__add_or_update_favorite_item per item.
0x00D4D150486CPacket__handle_broadcast_chat_messageParses cart/storage item list with 0x26-byte entries. Like v1 but with 2 extra option fields per item.
0x00D4D340106CPacket__handle_guild_emblem_dataParses cart/storage item list with 0x1e-byte entries (smallest variant). Basic item data only.
0x00D4D3B0592CPacket__handle_charselect_info_v2Parses cart/storage item list with 0x25-byte entries. Includes enchant bit flags (identify/damage/bound) and extra option values.
0x00D4D600767CPacket__handle_charselect_info_with_titleParses cart/storage item list with title string and 0x25-byte items. Extracts title from offset 4, word-wraps via UITextWidget, then parses items from offset 0x1c.
0x00D4D9001136CPacket__handle_charselect_infoCopy constructor for 0x100-byte records (CShopItem). Calls CShopItem__copy_construct for first 0xF8 bytes, then copies flag byte at offset 0xF8.
0x00D4DD701325CPacket__handle_whisper_messageSTL list emplace_back for 0x28-byte nodes. Allocates new node, copy-constructs a string member, sets an int field and zero flag, links at tail of doubly-linked list.
0x00D4E2A0321CPacket__handle_skill_listHandles skill list packet for card/enchant selection. Gets game object 0x4a and dispatches events: 0x4b (clear list), 0x4d (set source item from field 0x45c). Iterates (packet_len-4)/2 skill IDs, looks up each via FUN_00ddd5a0, dispatches event 0x1f with name string and data. Finishes with event 0x3c.
0x00D4E3F0277CPacket__handle_skill_list_altHandles an alternate skill list packet. Creates a window of type 0x49, sends initial control messages, then iterates through skill IDs in the packet, looking up each skill and adding it to the window's list.
0x00D4E510141CPacket__handle_cooking_ingredient_listHandles cooking/synthesis ingredient list. If packet has 0x10-byte entries: activates window 0x4f, iterates entries dispatching event 0x1f with item data. If empty (no entries): shows dialog box with msg 0x1a8 (no ingredients available).
0x00D4E5A0599CPacket__handle_npc_info_add_entryHandles adding a single NPC info entry to town info list. If DAT_016d44c0 is set: extracts 3 string fields (name, title, map), initializes list node with init_three_strings, trims string lengths, adds NPC via CTownInfoMgr__add_npc_to_list, recomputes NPC weights, and refreshes status windows. Previously misnamed as handle_auction_item_list.
0x00D4E800919CPacket__handle_npc_info_add_entry_v2Handles adding a single NPC info entry (v2 format) to town info list. If DAT_016d44c0 is set: initializes list node, extracts position/stat data from offsets 10-0x20, resolves class name via util_0060b420/handle_map_change_notification, builds name string, adds NPC to CTownInfoMgr, recomputes weights, refreshes UI. Previously misnamed as handle_auction_result.
0x00D4EBA0602CPacket__handle_npc_info_singleHandles a single NPC info packet. Parses NPC ID, class, position, name strings, and description from the packet. Gets cooldown message if needed, appends default description if empty, then adds the NPC to the town info list and recomputes weights.
0x00D4EE00887CPacket__handle_npc_info_list_0x68Handles a list-type NPC info packet with 0x68-byte entries. Clears the NPC list, then iterates each entry parsing NPC ID, class, position, name, and description strings. Adds each NPC to the town info list and recomputes weights at the end.
0x00D4F1801556CPacket__handle_npc_info_list_0x3aHandles a list-type NPC info packet with 0x3A-byte entries. Similar to the 0x68 variant but with smaller entry size. Includes XOR decryption for special NPC names matching a global ID, cooldown message lookup, and map change notification for unknown NPCs.
0x00D4F7A01343CPacket__handle_npc_info_list_0x50Handles a list-type NPC info packet with 0x50-byte entries. Parses each NPC's ID, class, position, name and description. Handles XOR decryption for special names, cooldown messages, and default description fallback. Adds all NPCs to town info and recomputes weights.
0x00D4FCE099CPacket__handle_quest_updateHandles quest update packet. Filters out skill IDs 0x505-0x507, 0x725-0x726 (specific quest skills that are handled elsewhere). For other quest updates: gets game object 0x4d and dispatches event 0x4f with the raw packet data.
0x00D4FD50884CPacket__handle_quest_listHandles quest list packet. Clears and rebuilds quest linked list (DAT_016d44e4/e8). Parses 0x20-byte entries: quest data at offsets -1/0, name string at offset 4. For each: processes Korean text search on name, creates 0x28-byte list node with quest data and name string. Inserts nodes into linked list. Refreshes status windows.
0x00D500D0277CPacket__handle_system_broadcastHandles system broadcast message. Builds STL string from packet data at offset 4 (length = packet_len - 4). Clears chat then dispatches the message as white (0xffff) chat.
0x00D501F0129CPacket__handle_guild_invite_acceptHandles guild invite acceptance notification. Copies guild name from packet (offsets 3-0x1a). If result byte (offset 2) is 0 (accepted): formats msg 0x183 with guild name and shows as yellow (0xffff00) chat message.
0x00D5028030CPacket__handle_deal_trade_resultHandles deal/trade result. Switch on result code (offset 2): 0=msg 500 (red, trade failed), 1=msg 0x1f5 (yellow, trade success), 2=msg 0x536 (yellow, trade cancelled), 3=msg 0x537 (yellow, resets field 0x2cc). Each message is dispatched both as regular chat and type 0x13.
0x00D503B0169CPacket__handle_produce_item_listHandles produce/craft item list. If packet has 0x17-byte entries: opens or refreshes window 0x6f, iterates entries dispatching event 0x1f with item ID (offset 2) and recipe data (offset 1). If empty: shows dialog msg 0x1a8 (nothing to produce).
0x00D5046065CPacket__handle_entity_display_updateHandles entity display update. Looks up entity by ID (offset 2) via CBGMManager. If found, gets game object 0x38 and dispatches event 0x1c with the entity ID to update its visual representation.
0x00D504B0199CPacket__handle_buying_store_openHandles buying store open request. Gets player entity mode field. If entity not in special state: clamps item count (offset 2) to range [3, 13], stores in DAT_0173357c, clears storage list, opens shop window 0x29 with submit button. If other shop windows (DAT_014578fc/f4) are open: shows error dialog msg 0x24b instead. Sends event 0x51 afterward.
0x00D50590640CPacket__handle_auction_item_list_v2Handles auction/buying store item list (v2 format with 0x3f-byte entries). Clears auction and mail item collections. For each entry: parses item data (ID, type, slots, cards at offsets), counts card slots (up to 5), adds via CItemCollection__add_or_update_auction_item. Opens windows 0x2b and 0x2c with item count data. Sets flag at this+0x24c.
0x00D50810656CPacket__handle_guild_storage_item_listHandles guild storage item list. If DAT_016f7144 set, notifies player entity. Clears guild storage list. Parses 0x39-byte entries: item data (ID, type, amount, equip info, cards). For each: counts card slots, adds via CItemCollection__add_or_update_guild_storage_item. If empty: sends event 0x28 and clears auction/mail windows 0x2b/0x2c.
0x00D50AA0304CPacket__handle_item_action_resultHandles item action result notifications. Special cases: type 6=msg 0x69f (blue), 7=msg 0x705 (red), 0xf=msg 0xe75 (red). For item-specific results: looks up item by ID (offset 2) via CShop__find_mail_item_by_slot, then switches on type (offset 6): 1=item identified (msg 0x37+0xe5), 2=item failed (msg 0x38+0xe5), 4=item amount (msg 0xf0), 5=item amount alt (msg 0x119), 8=item special (msg 0x756+0xe5). All item messages shown in blue (0x6464ff). Previously misnamed as handle_battleground_score.
0x00D50E40629CPacket__handle_friend_player_listHandles friend/player list packet. Parses 0x1c-byte entries. For each: extracts player name (offsets 4-0x1a), processes Korean text search, looks up in rb-tree (DAT_016d44fc) by account ID. If not found: creates new 0x2c-byte tree node and inserts. Trims name string length. Refreshes status windows after processing all entries.
0x00D510C0975CPacket__handle_ranking_listHandles ranking list packet. Clears and rebuilds ranking linked list (DAT_016d44d4). Parses 0x10-byte entries: account ID, bitfield flags (bits 0, 4, 8), score, name string. For each: looks up in rb-tree (DAT_016d44fc), creates node if missing, creates 0x38-byte list node with name/score/flags. Sorts final list via merge_sort_linked_list_by_key. Refreshes UI.
0x00D51490149CPacket__handle_produce_item_list_altHandles alternate produce/craft item list. Uses window type 0x6b (vs 0x6f in the primary version). Parses 0x17-byte entries, dispatches event 0x1f with raw entry data pointer. If no entries: shows dialog msg 0x1a8 (nothing to produce).
0x00D51530307CPacket__handle_npc_sprite_changeHandles NPC sprite/display change notification. Extracts NPC name string from offset 6 (18 bytes), processes Korean text search if applicable. Opens window type 0x48 and dispatches event 0x4a with entity ID (offset 2) and the processed name string.
0x00D51670307CPacket__handle_npc_info_dialogHandles an NPC info dialog packet. Extracts NPC data fields from packet, checks CTownInfoMgr for incomplete search, performs string search if needed, then creates a UI window (type 0x46) and dispatches event 0x49 with the NPC data.
0x00D517B030CPacket__handle_guild_emblem_versionHandles guild emblem version result packet. Switches on result type byte (param_1+2): type 0 shows success message (0x176) in yellow and clears TLS fields 0xd5/0xd6, types 1-4 show different error messages (0x177-0xa7f) in cyan.
0x00D51880294CPacket__handle_map_object_clear_and_refreshHandles a map object clear and refresh packet. Looks up object by map ID, sends event 0x62 to clear it. If the map matches the current map (DAT_01733c3c), also clears the main game object and resets fields at +0x24C/0x250. Then gets item node and refreshes the item collection window.
0x00D519B098CPacket__handle_attendance_rewardHandles attendance reward packet. Copies a 0x40-byte name string from packet+2, reads a result byte from packet+0x42 (0xFF mapped to -1), then dispatches virtual call with event code 100.
0x00D51A2098CPacket__handle_attendance_infoHandles attendance info packet. Copies a 0x10-byte string from packet+2, reads info byte from packet+0x12 (0xFF mapped to -1), then dispatches virtual call with event code 100.
0x00D51A90121CPacket__handle_pet_info_updateHandles pet info update packet. Copies a 0x50-byte pet name from packet+6, finds the pet object by ID (packet+2), then sends event 0x37 with the name string to update the pet's display name.
0x00D51B1071CPacket__handle_object_event_dispatchDispatches an event to a game object found by item ID. Looks up object via CBGMManager__find_item_by_id with packet+2, then sends event 7 with data from packet+6.
0x00D51B60213CPacket__handle_npc_position_updateHandles NPC position/visibility update packet. Calls CTownInfoMgr to update NPC position and visibility with coordinates and flags from the packet. Also resolves NPC name string and dispatches events 0x8C (name update) and 0xAB (remove if type==0).
0x00D51C40195CPacket__handle_npc_visibility_updateHandles NPC visibility update packet. Sets NPC visibility by ID via CTownInfoMgr, resolves name string, dispatches event 0x8C with name and visibility, and event 0xAB to remove if visibility is 0.
0x00D51D10163CPacket__handle_achievement_listHandles achievement list packet. Sets global achievement state vars (DAT_016d44a8-DAT_016d44d0) from packet data including flags and counts. Dispatches virtual call at vtable+0xC4. On first call, triggers events 0x6B with types 3 and 1 to initialize achievement UI.
0x00D51DC0155CPacket__handle_achievement_list_v2Handles achievement list variant (v2). Nearly identical to CPacket__handle_achievement_list - sets same global vars (DAT_016d44a8-DAT_016d44b4), dispatches vtable+0xC4, and initializes achievement UI events 0x6B on first call. Differs in not reading DAT_016d44d0.
0x00D51E60100CPacket__handle_cell_property_updateUpdates a cell property in the map grid. Reads x,y coordinates (short) from packet+2 and packet+4, validates they are within grid bounds (0x110/0x114), then writes the value (short from packet+6) to the cell at grid[y*width+x]+0x10.
0x00D5B3C01396CPacket__handle_skill_use_chat_notificationHandles skill use notification for chat display. Builds a chat message showing caster name (via buff lookup), target name (via sprite lookup), and skill name (via CSkillManager__GetSkillNameById). Uses message table entries 0x644, 0x64C, 0x658, 0x659 for formatting. Dispatches the formatted message to chat via CUIWindowMgr__dispatch_chat_message.
0x00D5E680453CPacket__handle_status_effect_timerHandles status/buff effect timer updates on an actor. Dispatches based on status ID: for IDs 0x39, 0x3E, 0x154B sets a timed flag with expiry via timeGetTime. For 0x105, 0x3F7 resets light effects. For 0x10C sets light effect with 1-second offset. For 0x191 initializes light + creates skill effect 0x192. For 0x14C4 initializes different light mode. For 0x8A9 dispatches 4 sequential vtable calls (visual property updates).
0x00D65FA01CNetwork__open_window_0x103CNetwork: open window 0x103
0x00D668401CNetwork__init_map_entry_and_alloc_recv_bufferCNetwork: init map entry and alloc recv buffer
0x00D679E01CNetwork__handle_refine_result_packetCNetwork: handle refine result packet
0x00D6BB10167CNetwork__recv_roulette_item_listReceives roulette item list packet. Iterates 42 (0x2A) items, calling CQuestSystemData__AddItemEntry for each. Then calls UIRouletteWnd__select_item_by_index to update the roulette UI. Creates roulette window (type 0x10D) if not already open.
0x00D6BBC0124CNetwork__recv_service_notification_resultReceives service notification result. For param_1 values 1 or 2, displays chat message from msg ID 0xF74 in white (0xFF) and notifies minimap window via virtual call. Always notifies minimap window at end.
0x00D6BC40255CNetwork__recv_report_event_packetReceives report event packet. If param_2==0 and report window (type 0x11C) exists, creates a CReportPacketEvent with timestamp and reactivates it via CUIEventManager. Otherwise shows error message (0xB41 for type 0, 0xB42 for type 1).
0x00D6BD4060CNetwork__recv_auto_loot_resultHandles auto loot result packet. Small 60-byte handler that reads the auto-loot toggle result and updates the client-side auto-loot state. Displays a confirmation or error message in chat.
0x00D6BE80276CNetwork__recv_item_reform_result_00d6be80Receives item reform result packet. Toggles UIRefineWnd right panel visibility. On success (param+0xB == 0), shows msg 0xA1F and looks up item via CQuestSystem rbtree by type (0/1/2 maps to offsets 0x20/0x28/0x30). On failure shows msg 0xA20 (type 1) or 0xA21 (type 2). Hides refine panel at end.
0x00D6BFA027CNetwork__recv_attendance_event_resultReceives attendance event result. Switch on param_1: cases 0/1/3 notify attendance window (type 0x154) with event 0x40 and different sub-params. Case 2 shows error message 0x9D5 in chat.
0x00D6C080441CNetwork__recv_cart_item_added_with_options_v2Cart item added with options v2. Parses item with up to 5 options (5 bytes each), plus extra data (expire at 0x37, grade at 0x3B). If index is 0, clears. Otherwise builds CShopItem and adds to cart.
0x00D6C240449CNetwork__recv_cart_item_added_v3Cart item added v3 with options and grade byte at 0x3D. Like v2 but with different field offsets (card slots start at 0xD, options at 0x1D). Adds to cart via CShopItem__copy_construct.
0x00D6C41065CNetwork__recv_equip_switch_resultHandles equip switch result packet. Small 65-byte handler that reads the result of an equipment swap operation and updates the inventory/equipment UI to reflect the new equipment state.
0x00D6C460164CNetwork__recv_refine_ui_dataHandles refine UI data packet. Reads refine-related item data and configuration from the packet. Populates the refine window with available items, success rates, and material requirements for the selected refine operation.
0x00D6C5101467CPacket__handle_quest_item_list_with_namesHandles quest item list with names. Iterates param_1+4 quest entries. For each: checks via CQuestMgr__set_ongoing_quest_display_flag, initializes CItemOptionDB entry, parses timestamp, type byte, up to 3 item slots with card IDs/options/names. Resolves special item IDs (0x1099/0x109A=msg, 0x287B=RSW map). Calls CQuestMgr__load_ongoing_quest_info_from_lua per entry. Notifies quest update at end.
0x00D6CAD01451CPacket__handle_quest_item_list_with_names_v2Quest item list with names variant v2. Same structure as 00d6c510 but with different item slot sizes (0xC stride vs 0xB). Iterates quest entries, parses items with card IDs, timestamps, names. Uses CQuestMgr for quest data management. Notifies quest update at end.
0x00D6D080162CNetwork__recv_char_preview_openHandles character preview open packet. Reads character preview data from the packet (equipment slots, appearance data) and opens the character preview window to display the specified character's appearance configuration.
0x00D6D13070CNetwork__recv_char_preview_updateHandles character preview update packet. Small 70-byte handler that receives updated character preview data (appearance changes) and refreshes the character preview display in the appropriate UI window.
0x00D6D180128CNetwork__recv_status_value_listHandles status value list packet. Receives a count and array of 4-byte values. Counts non-zero entries, then creates gauge bar window (type 99) and dispatches events: 0x1B with the first value (param_1+4), then 0x1F for each non-zero value in the array. Used for parameter/stat gauge updates.
0x00D6D20095CNetwork__recv_enchant_result_00d6d200Handles enchant result variant at 0x00d6d200. Small 95-byte handler that reads an enchant operation result code and updates enchant-related globals. Displays success/failure feedback through the enchant window UI.
0x00D6D260409CNetwork__recv_entity_highlight_effectReceives entity highlight/dim effect for PVP/duel. Reads two entity IDs (offsets +2 and +6) and mode flag (offset +10). Mode 0: clears highlight - resets entity colors to white (0xFF,0xFF,0xFF), clears status flags. Mode 1: applies dim highlight - darkens entities to (0x40,0x40,0x40), sets status flags, uses long duration (99999999) light effect for duel visual feedback.
0x00D6D400977CNetwork__recv_item_produce_notificationHandles item produce/craft notification packet with card data. Builds an item tooltip from the card data structure (4 card slots + additional fields). Gets item class/level info and builds tooltip string via CItemDB. Formats notification message using template 0xCC7 (success, when param_4 XOR 1 = 0) or 0xCC8 (failure) with the item name, amount, and tooltip. Adds entry to tooltip manager with light blue color (0x62B0FF) and displays as chat message in the same color.
0x00D6D7E0104CNetwork__recv_friend_status_changeHandles party member map change / friend list status change packet. Checks if entity IDs match the player's pet. If param_2 matches pet, removes param_1 from the ID tracking vector. Otherwise if param_3 does NOT match pet, adds param_1 as unique entry to the ID vector. Notifies the friend/party status window (DAT_014579a0) with event 0x3C to refresh the display.
0x00D6D850649CNetwork__recv_equip_item_with_optionsHandles equip item with options packet. Receives full item equip data including card slots and random options. Looks up item by slot index via CShop linked list, falling back to item-by-ID search and recently-sold item lookup. Sets refine level, amount, 4 card IDs (from params 4-7), and up to 5 enchant option slots (from params 8-12 with 5-byte entries: 4-byte option ID + 1-byte value). Counts active options by checking for non-zero values. Updates inventory via add_or_update_item or equipment slot update depending on lookup method. Notifies equipment window (type 0x0C) with event 0x18 to refresh.
0x00D6DAE0747CNetwork__recv_item_gained_with_cardsReceives item gained packet with card slots and options. Looks up item by slot ID (param_1+2), falling back to item by ID and recently sold items. Copies 4 card IDs from param_1+5, counts up to 5 enchant options from param_1+0x15 (5 bytes each: short ID + 3 bytes). Updates inventory list and notifies equipment window (type 0xC).
0x00D6DDD0282CNetwork__recv_item_option_updateHandles item option update packet. Reads item slot index and new random option values from the packet. Updates the specified item's random options (bonus stats) in the inventory/equipment display. Refreshes the item tooltip to show the new options.
0x00D6DEF0434CNetwork__recv_item_add_with_optionsReceives item add packet with full option data. Takes item slot, amount, 4 card IDs, up to 5 enchant options, and additional byte flags. Looks up item in linked list by slot, populates fields, calls add_or_update_item_in_list, and notifies equipment window (type 0xC) to refresh display.
0x00D6E1001CNetwork__notify_minimap_window_0x4bCNetwork: notify minimap window 0x4b
0x00D6E130172CNetwork__recv_remove_entity_effectHandles remove entity effect packet. Reads entity ID and effect ID from the packet and removes a specific visual effect from the entity's display, cleaning up the effect resources.
0x00D6E1E0600CPacket__handle_dialog_box_with_formatHandles a dialog box packet with formatted text. Gets two message strings from CMessageStringTable, optionally formats them with vsnprintf, then shows an extended dialog box via CGameObject__show_dialog_box_extended.
0x00D6E4401CNetwork__open_achievement_windowCNetwork: open achievement window
0x00D6E450202CPacket__handle_server_disconnect_dialogHandles server disconnect dialog. Shows message based on param_1: 0=msg 0xB35, 1=msg 0xB36 (both show dialog then disconnect), 2=opens window 0x167 and shows msg 0xB37. For cases 0/1, calls CEffectManagerEx, disconnects via CNetSocket, and signals game mode change to state 2.
0x00D6E520202CPacket__handle_server_disconnect_dialog_bServer disconnect dialog variant B. Same as 00d6e450 but opens window 0x11D instead of 0x167 for case 2. Shows messages 0xB35/0xB36/0xB37, disconnects and transitions game mode.
0x00D6E5F01CNetwork__handle_emblem_editor_errorCNetwork: handle emblem editor error
0x00D6E640163CNetwork__recv_navigation_mode_changeHandles navigation mode change packet. Reads navigation mode byte (param_1) and option flag (param_2). Stores mode in DAT_01737fac. Displays mode change message (msg 0x54E + mode) in cyan (0x64FFFF). Notifies minimap window (DAT_01457860) with event 0x3C. Sets game option 0xE7 (navigation display) to param_2 value. Displays second message (msg 0xBA2 + option) and syncs navigation window checkbox.
0x00D6E6F0176CPacket__handle_navigation_setting_changeHandles navigation setting change packet. Stores param_1 in DAT_01737fac, shows chat message from msg table (param_1+0x54E), sets game option 0xE7 via GameSettings, shows on/off message (0xBA2+param_2), syncs nav checkbox, calls FUN_00e48980.
0x00D6E7A0189CPacket__handle_navigation_setting_change_extendedExtended navigation setting change. Same as 00d6e6f0 but also calls FUN_00e48930 with param_4 in addition to FUN_00e48980(param_3).
0x00D6E860197CPacket__handle_navigation_setting_change_fullFull navigation setting change. Same as 00d6e7a0 but also stores param_5 into DAT_0173a760.
0x00D6E93027CNetwork__recv_navigation_toggleSimple 27-byte handler that calls toggle_navigation_option to toggle the navigation display on/off.
0x00D6E950123CNetwork__recv_gospel_effectHandles gospel effect packet. Reads effect type and parameter from the packet. Applies the gospel/basilica visual effect to the specified area or entity. Used for priest skill visual feedback in the game world.
0x00D6E9D029CNetwork__recv_status_message_textHandles status message text packet. Copies the string from packet offset +2 directly into the network object buffer at offset 0x294 using sprintf, overwriting the current status message text. This sets the status bar or loading screen text.
0x00D6E9F055CNetwork__recv_attendance_window_closeHandles attendance window close packet. Small 55-byte handler that processes a server command to close the attendance check-in window and clean up related UI state.
0x00D6EA3035CNetwork__recv_inventory_list_alignmentHandles inventory list alignment packet. Small 35-byte handler that reads sorting/alignment preferences for the inventory display and applies them to reorder the inventory grid layout.
0x00D6EA60150CNetwork__recv_minimap_scrollHandles minimap scroll packet. Reads X/Y scroll offset values from the packet and adjusts the minimap viewport position. Used for server-directed minimap panning (e.g., during cutscenes or quest guidance).
0x00D6EB0031CNetwork__recv_inventory_window_showHandles inventory window show packet. Small 31-byte handler that signals the client to display the inventory window. Forces the inventory UI to become visible.
0x00D6EB2031CNetwork__recv_inventory_window_hideHandles inventory window hide packet. Finds the inventory window (type 0x10) and if found, calls its virtual hide/close function (vtable offset +0x04) to hide it from screen.
0x00D6EB4041CNetwork__recv_character_appearanceHandles character appearance update packet. Reads entity ID (offset +2), appearance field type (short at offset +6), and 4 appearance data values (offsets +8, +0x0C, +0x10, +0x14). Calls CPacket__handle_character_appearance_data with mode 1, passing all values to update a single appearance attribute (hair style, hair color, cloth color, etc.) on the specified entity.
0x00D6EB7083CNetwork__recv_character_appearance_batchHandles character appearance batch update packet. Reads multiple appearance fields from the packet and applies them all at once. Used for bulk appearance changes (e.g., after stylist visit or costume equip).
0x00D6EBD060CNetwork__recv_navigation_position_updateHandles navigation position update packet. Reads updated navigation target coordinates from the packet. Moves the navigation arrow/waypoint indicator to the new position on the minimap and game world.
0x00D6EC101CNetwork__show_chat_message_0x79eCNetwork: show chat message 0x79e
0x00D6EC40107CNetwork__recv_entity_emotion_displayHandles entity emotion display packet. Reads entity ID (offset +2). If entity is the player, gets player entity directly; otherwise looks up via try_find_current_map_bgm. If entity found, dispatches event 0x90 (emotion display) with two short parameters from offsets +6 and +8 (emotion type and sub-type), which triggers the emotion bubble animation above the entity's head.
0x00D6ECB0681CPacket__handle_shop_item_listHandles shop item list packet. Parses item entries (24 bytes each) from packet, creates CShopItem objects for each, adds them to a linked list, then notifies the shop UI window (type 0x13E) to refresh.
0x00D6EF6022CNetwork__recv_grade_enchant_result_00d6ef60Handles grade enchant result variant packet. Small 22-byte handler that reads a grade enchant operation result and updates the enchant UI state.
0x00D6F0002156CPacket__handle_item_drop_notification_00d6f000Handles item drop notification packet. Parses item data, builds tooltip string, formats message using msg 0xE86 or 0xE87 depending on param+0x20 flag, adds tooltip entry, dispatches chat message with color 0x62B0FF.
0x00D6F870144CPacket__handle_refine_window_dataHandles refine window data packet. If item index is -1, shows error message 0xE88. Otherwise finds refine window (type 0x157) and calls CRefineWnd__set_item_data with parsed item fields.
0x00D6F900443CPacket__handle_buying_store_item_listHandles buying store item list packet. Parses entries of 0x32 bytes each from packet offset 0x1C. Builds each entry into a local struct (server info fields), pushes into a vector via STL_vector_insert_0x36_element. Passes the vector to CItemCollection__populate_buying_store for display in the buying store UI.
0x00D6FAC095CPacket__handle_town_info_listHandles town info list packet. Clears CTownInfoMgr's ID vector, then iterates through packet bytes adding each as a unique town ID.
0x00D6FB20424CPacket__handle_npc_sprite_spawnHandles NPC sprite spawn packet. Parses NPC data from packet, looks up NPC by ID. If not found, allocates new CItemSprite, constructs it, adds to sprite list. Then calls virtual init method with the NPC data string.
0x00D6FCD0462CPacket__handle_item_identify_result_00d6fcd0Handles item identify result packet. Looks up entity, builds item tooltip string, formats message with msg 0x4FC, and displays yellow chat message (0xFFFF00) with identify result.
0x00D6FEA0365CPacket__handle_enchant_window_openHandles enchant window open packet. If param_1 is 0, opens window type 0x15C with effect 0x648, creates enchant data. If param_1 is 3, shows error message 0xF08 in existing window.
0x00D70010900CPacket__handle_buy_sell_shop_itemsHandles buy/sell shop items packet. If param_4 is 1 (buy mode), clears item list, parses items (11 bytes each), opens buy window with RTDynamicCast. Otherwise opens sell mode with separate windows (0xB1, 0xB2, 0xB3). Sets shop timer and extends UI height.
0x00D703A0992CPacket__handle_equipment_item_listHandles equipment item list packet. Parses items (0x40 bytes each) with slots, enchants, and options. Copies each into a CShopItem, then calls CPacket__handle_char_delete_result with metadata.
0x00D707901107CPacket__handle_buy_sell_shop_items_extendedExtended buy/sell shop items. Similar to 00d70010 but items are 0x3F bytes each (with extra slot/enchant data). Buy mode uses window 0x2D, sell mode uses 0x2B/0x2C. Both set timers and manage equipment windows.
0x00D70BF02025CPacket__handle_reform_item_dataHandles reform item data packet. Parses entries with names, timestamps, and node data. Inserts into a red-black tree based on timestamp comparison. Optionally creates UIReformWnd. Complex memory management with STL strings and tree nodes.
0x00D713E0156CPacket__handle_exp_bar_updateHandles EXP bar update packet. Switch on type: 1=current exp (with %lld display), 2=base exp, 0x14=reset exp tracking, 0x16=max exp, 0x17=job exp. Updates global EXP tracking vars and rect fields.
0x00D7160086CPacket__handle_costume_change_requestHandles costume change request. Finds window 0x167, applies costume override via CCharRenderInfo, builds and sends packet 0xBC4 via CNetworkSession.
0x00D7166027CPacket__show_enchant_result_messageShows enchant result message in chat. Maps result codes 0-5 to message IDs 0xF9B-0xFA0 and displays them via CUIWindowMgr__dispatch_chat_message with white color (0xFFFF).
0x00D71720101CPacket__send_char_delete_requestSends character delete request packet. Sets DAT_017387e4=1, builds a packet (opcode 0x91) with character name, param_2, param_3, and sends via CNetwork__recv_mail_attachment.
0x00D71790308CPacket__handle_hotkey_list_updateHandles hotkey list update packet. Parses pairs of shortcodes from packet, inserts them into a vector, and notifies window 0xE3 to refresh. If list is empty, sends request packet 0x974.
0x00D718D0279CPacket__handle_entity_effect_toggleHandles entity effect toggle packet. Checks if option 8 is enabled, finds entity by ID, checks effect conditions via FUN_00df9710/FUN_00df9880, and creates/removes skill effect 0xE4 based on toggle state.
0x00D71A3096CPacket__handle_status_change_appearanceHandles status change appearance packet. Filters out specific status IDs (0x46-0x54, 0x1C6, 0x4ED-0x4EF), then calls CPacket__handle_character_appearance_data for all others with entity ID, flag, and appearance values.
0x00D71AB01124CPacket__handle_status_change_effectHandles status change effect packet. Large handler with jumptables for different effect IDs. Manages effect timers for wedding class, displays effect names/colors via chat messages, and creates visual effects on entities. Uses CEffect callback system for unknown IDs.
0x00D73960174CPacket__show_formatted_chat_messageShows formatted chat message. Gets message text by ID, formats with vsnprintf, dispatches to chat. Special case for msg 0xB92 adds icon type 0x16.
0x00D73A10222CPacket__handle_navigation_responseHandles navigation response packet. Reads navigation path string from packet+5, creates STL string from it, then calls CNavigator__process_navigation_request to process the navigation data.
0x00D73E0029CNetwork__recv_color_effect_on_entityHandles color effect on entity packet. Small 29-byte handler that reads an entity ID and a color value (RGB) from the packet. Applies a color tint/overlay effect to the specified entity's sprite rendering.
0x00D73E2060CNetwork__recv_special_visual_effectHandles special visual effect packet. Reads entity ID and visual effect parameters from the packet. Applies a special visual effect (glow, particle, screen flash, etc.) to or around the specified entity.
0x00D73E8C48CNetwork__recv_special_effect_0x9eHandles special effect 0x9E packet. Reads effect parameters from the packet and applies visual effect type 0x9E to the specified entity or location. Part of the special effect dispatch system.
0x00D73EC348CNetwork__recv_special_effect_0x152Creates skill visual effect 0x152 on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x152. Part of the special effect dispatch system.
0x00D73EFA48CNetwork__recv_special_effect_0x246Creates skill visual effect 0x246 on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x246. Part of the special effect dispatch system.
0x00D73F3148CNetwork__recv_special_effect_0x151Creates skill visual effect 0x151 on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x151. Part of the special effect dispatch system.
0x00D73F6848CNetwork__recv_special_effect_0x9bCreates skill visual effect 0x9B on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x9B. Part of the special effect dispatch system.
0x00D73F9F48CNetwork__recv_special_effect_0x9aCreates skill visual effect 0x9A on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x9A. Part of the special effect dispatch system.
0x00D73FD648CNetwork__recv_special_effect_0x131Creates skill visual effect 0x131 on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x131. Part of the special effect dispatch system.
0x00D7400D48CNetwork__recv_special_effect_0x132Creates skill visual effect 0x132 on an entity. Sets local var to 0 then calls CEntity__create_skill_effect with effect ID 0x132. Part of the special effect dispatch system.
0x00D74080559CNetwork__recv_exp_gain_displayHandles exp gain display packet. Only processes for the player entity (ID at offset +2 == DAT_01733c3c). Reads exp amounts (int at offset +6 and int at offset +10), type (short at offset +0x0E: 1=base, 2=job), and display mode (short at offset +0x10: 1=pink 0xBE58BE, else=cyan 0xFFFF). Formats message using templates 0xC94 (base exp) or 0xC9B (job exp) with the two amounts. Appends gain/loss suffix (msg 0x64F for positive, 0x650 for negative based on second amount). Displays as chat message with style 0x12 (special notification).
0x00D75840283CNetwork__recv_item_bonus_dataHandles item bonus data packet. Reads item bonus/stat modification data from the packet. Updates the player's equipment bonus display and total stat calculations. Used when equipping items or receiving buff-modified item stats.
0x00D77850465CNetwork__recv_entity_action_animationHandles entity action animation packet. Reads entity ID, action type, and animation parameters from the packet. Triggers the specified action animation on the entity (attack, cast, sit, stand, pick up item, etc.). Handles animation blending and direction facing for the action.
0x00D77A30435CPacket__handle_entity_appearance_updateHandles entity appearance update packet. Parses appearance data (hair, clothing, weapon, shield coords, etc). Finds entity by ID, calls virtual method 0x25, gets effective job ID. Uses FUN_00e1dd50/FUN_00dde5c0/FUN_00e09b50 for rendering update.
0x00D77BF0105CPacket__handle_banking_window_toggleHandles banking window toggle. If param+2 is 1, opens bank UI (window 0x106) and repositions window 0x133. Otherwise closes bank UI via FUN_00a8cf20.
0x00D77C6043CPacket__handle_buy_list_item_options_updateHandles buy list item options update. Calls CItemCollection__set_buy_list_item_options with entity ID and x,y coordinates from packet, then refreshes the associated window.
0x00D77C90466CPacket__handle_storage_item_listHandles storage item list packet. Parses items (0x22 bytes each) with item info, class/level, slot data. Adds items to storage via FUN_00dd76c0 if quantity > 0. Notifies storage windows 0xFE and 0xFF to refresh.
0x00D77E70411CPacket__handle_auction_item_list_00d77e70Handles auction item list. Opens window 0x100, parses items (0x1D bytes each) into CShopItem list. Adjusts window height based on count. Shows message 0xBE3 if param_1 is 0 (no results).
0x00D7801027CPacket__apply_entity_status_effect_flagsApplies entity status effect flags. Reads 4 dword fields from packet and passes them to CEntity__apply_status_effect_flags for visual status processing.
0x00D78060206CPacket__handle_enchant_window_showHandles enchant window show. Initializes global enchant state (DAT_01389904) if needed using stub_005f91d0. Validates enchant data, shows window 0x15C if valid, closes it otherwise.
0x00D78130219CPacket__handle_inventory_open_requestHandles inventory open request. Clamps slot count (min 2, max 5) into DAT_01733580. Checks if shop/vending/etc is active, shows error msg 0x24B if so. Otherwise opens inventory window 0xAE. Sends virtual command 299.
0x00D78210209CPacket__handle_equipment_open_requestHandles equipment open request. Clamps slot count (min 3, max 13) into DAT_0173357c. Checks if shop/vending is active, shows error msg 0x24B if so. Otherwise opens equipment window 0x29. Sends virtual command 0x129.
0x00D782F01248CPacket__handle_sell_item_list_extendedExtended sell item list handler. Parses items (0x40 bytes each) with full card/enchant data, copies to CShopItem array. Opens sell windows 0x2B/0x2C and sets trading state flag at param_1+0x24C.
0x00D787E01167CPacket__handle_buy_item_list_with_cardsHandles buy item list with card/enchant data (0x3A bytes per item). Parses items into CShopItem array. If empty, sends command 0x28 and closes shop windows. Otherwise populates buy window items. Checks DAT_016f7144 for auto-trade mode.
0x00D78C701730CPacket__handle_exp_distribution_infoHandles EXP distribution info packet. Parses entries (0xD bytes each) by type (0=base, 1=job, 2=death, 3=mvp). Converts int values to float percentages, formats 3 rows (base/job/death) into strings, builds tooltip, dispatches to chat UI.
0x00D7934070CPacket__handle_emblem_image_data_chunkHandles emblem image data chunk. Finds window 0x120, compares name string (4 chars), if match forwards emblem data to CEmblemViewWnd__receive_image_data_chunk.
0x00D7939053CPacket__open_or_create_window_0x122Opens or creates window type 0x122. If not already open, creates it and initializes via stub_006016c0.
0x00D793D068CPacket__open_window_0x12e_with_dataOpens window type 0x12E with data. Creates window if it doesn't exist, sends data via virtual method 0x94 with command 0x17.
0x00D7942028CPacket__set_global_timer_valueSets global timer value from packet. Stores param+2 into DAT_0173a5bc if positive.
0x00D7944030CPacket__handle_roulette_resultHandles roulette result. Case 0: selects item, resets quest fields, refreshes window. Cases 1-3: shows messages 0xA4C-0xA4E with color 0x6464FF (error/status messages).
0x00D7950057CPacket__refresh_card_list_windowRefreshes card list window. Finds window 0x127 and calls UICardListWnd__OnReceiveItemData to refresh the card list display.
0x00D79540106CPacket__handle_entity_remove_batchHandles batch entity removal. Iterates through entity IDs in packet, tries removing as actor (sends command 0xD), then as NPC (removes effects), then as item.
0x00D795B0174CPacket__handle_party_member_list_00d795b0Handles party member list packet. Parses entries (0x18 bytes each). If empty, shows error msg 0x1A8. Otherwise opens party window 0x6B and sends each member entry via command 0x1F.
0x00D7966048CPacket__handle_guild_window_actionHandles guild window actions. Complex switch on sub-command: creates/manages guild windows, handles tree operations, renders effects. Uses window types 0x2730.
0x00D79700380CNetwork__recv_roulette_resultHandles roulette result packet. Parses the full roulette spin outcome including prize item ID, prize category, and animation data. Updates the roulette window to display the winning result, triggers reward collection, and updates the player's remaining spins count.
0x00D79880225CPacket__handle_repute_info_listHandles repute info list packet. Lazily initializes reputation manager singleton (DAT_0138993c, 0x20 bytes) via CStringMapManager__ctor if null. Iterates through entries (4 dwords each), calling CReputeDB__set_info_entry_extra_data for each. Finalizes with CReputeDB__set_pause_flag_and_notify_window.
0x00D7997065CPacket__send_packet_0x0a2aSends a 10-byte packet with header 0x0A2A and one 4-byte parameter. Retrieves packet size via get_job_sprite_count, then sends via CNetworkSession__send_data_timed.
0x00D799C0302CPacket__handle_agit_conquest_dialogHandles Agit (WoE) conquest dialog packet. Calls Lua function "get_agit_name" via DAT_01738010, formats conquest progress dialog using msg 0xE30 with percentages (param_2, param_3) and shows it via CGameObject__show_dialog_box_extended. Only active when DAT_014579a0 is set.
0x00D79AF073CPacket__show_agit_result_messageShows agit (War of Emperium) result message. If param is 1, shows message 0x442. If param is 2, shows message 0xE31. Dispatches via CUIWindowMgr__dispatch_chat_message with color 0xFF.
0x00D79B4034CPacket__show_security_keypadShows security keypad window. Finds window type 0x167, if found calls CSecurityKeypadWnd__set_timer_and_refresh to activate it.
0x00D79B7052CPacket__show_password_input_statusShows password input status message. Finds window type 0x11D, calls vtable method 0x38 with param 1, then CPasswordInputWnd__set_status_message with the two parameters.
0x00D79BB0476CNetwork__process_packet_and_sendProcesses incoming packet string, trims last 4 chars, and if FUN_00e006e0 returns false, sends processed data back to server via CNetworkSession__send_data_timed. Includes intermediate processing calls FUN_00c7d7d0 (x2) and FUN_00c7c970.
0x00D79D90126CPacket__handle_enchant_resultHandles enchant result packet. Lazily initializes enchant manager singleton (DAT_0138d254, 0x38 bytes) via CEnchantMgr__ctor if null. Delegates to CEnchantMgr__handle_enchant_result with the two parameters.
0x00D79E10120CPacket__open_shop_window_0x13eOpens shop window 0x13E. Closes existing, creates new, sends commands 0xA4 and 0x78 with params. Falls back to command 0x143 on DAT_013495bc if creation fails.
0x00D79E90101CPacket__handle_achievement_resultHandles achievement result. If success (0), sends data to window 0x154 via command 0x40. If failure (1), shows message 0x9D1.
0x00D79F00201CPacket__handle_map_server_connect_nameHandles map server connect with name. Sets DAT_017387e4=1, creates STL string from name, calls handle_map_server_connect.
0x00D79FD0222CPacket__toggle_falcon_effectToggles falcon effect (status ID 0xB8). If enable (1), adds to effect vector with 999999 duration. If disable, removes from vector.
0x00D7A0B036CPacket__reset_chat_room_stateResets chat room state. If packet field is not 1 or 2, clears DAT_016fc588.
0x00D7A0E0149CPacket__handle_entity_chat_messageHandles entity chat message. Finds entity by ID (own char or other via CBGMManager), copies message data, calls virtual method 7 to display overhead chat.
0x00D7A180127CPacket__handle_channel_name_listHandles channel name list. Parses 16-byte name entries from packet. Opens window 0x134 and sends each non-empty name via command 0x22.
0x00D7A200240CPacket__handle_summon_spirit_ball_effectHandles summon spirit ball effect. For specific job IDs (0x1090, 0x1092, 0x10CF), checks entity state, removes/creates effect 0x4C9 on the entity, sets spirit ball count via piVar5[0x2C].
0x00D7A2F0919CNetwork__recv_special_popupHandles special popup packet. Creates and displays a server-triggered popup window with custom text, images, and buttons. Supports multiple popup types: announcements, event notifications, GM messages, and system alerts. Parses popup configuration including size, position, timeout, and button callbacks.
0x00D7A690570CNetwork__recv_cart_visual_effectHandles cart visual effect packet. Reads cart entity ID, effect type, and visual parameters from the packet. Applies or removes visual effects on the player's merchant cart (glow, sparkle, enchant aura, etc.). Updates the cart sprite rendering state.
0x00D7A920775CPacket__handle_job_specific_effectComplex job-specific effect handler. Creates/removes visual effects based on job class (Hunter/Sniper=0x275, Alchemist=0x1F8, etc.). Handles summoner spirits (0x99C), servant weapons (0x46F), elemental spirits (0x83D). Different behavior when riding vs standing.
0x00D7ABEE23CPacket__create_hunter_falcon_effectCreates hunter falcon visual effect (0x275) via CEntity__create_skill_effect. Part of job-specific effect handler.
0x00D7AE6076CPacket__handle_elemental_orbit_effectHandles elemental orbit effect. Finds entity by ID (own char or other), calls CEntity__set_elemental_orbit_effect with orbit params from packet.
0x00D7AF7047CPacket__handle_entity_remove_singleHandles single entity removal. Removes actor by map ID via CBGMManager, sends command 0xD on success.
0x00D7AFA0459CPacket__handle_ground_skill_unit_spawnHandles ground skill unit spawn. Receives achievement data, parses spawn params (position, type, etc). Creates CSkillUnit if entity not found, otherwise updates existing. Calls virtual method 0x79 (new) or 0x7C (existing).
0x00D7B170466CPacket__handle_skill_unit_spawnHandles skill unit spawn packet. Parses many parameters (job, gender, position, etc.), looks up existing entity via CBGMManager. If not found, creates new CSkillUnit via operator_new(0x4f8). Initializes the skill unit with parameters and calls its vtable method at offset 8.
0x00D7B390136CPacket__handle_skill_unit_update_timestampHandles skill unit timestamp update packet. Checks GameSettings option 8 (show skill effects). Looks up entity by ID (uses local player shortcut if matching DAT_01733c3c). Calls CEntity__update_timestamp_and_check_newer, and if newer, triggers CEntity__create_skill_effect(0x2a5).
0x00D7B42074CPacket__handle_cart_info_toggleHandles cart info toggle packet. Based on packet byte at offset 2 (0 or non-zero), sends message 0x50 to global window DAT_01457a14 with param 3 (cart off) or 7 (cart on).
0x00D7B47075CPacket__handle_cart_info_toggle_via_windowHandles cart info toggle via window manager. Finds window type 0xC4 via CUIWindowMgr, then sends message 0x50 with param 3 (off) or 7 (on) based on packet byte at offset 2.
0x00D7B4C0132CPacket__handle_repute_window_showHandles repute window show packet. Lazily initializes reputation manager singleton (DAT_0138993c, 0x20 bytes) via CStringMapManager__ctor if null. Delegates to CReputeDB__show_repute_window with the four parameters.
0x00D7B550131CPacket__handle_enchant_tree_updateHandles enchant tree update packet. Only processes if param_1 == 0x0A (enchant type). Lazily initializes enchant tree singleton at DAT_0138d254 (0x38 bytes) if null. Delegates to Ench__mgr_00683bc0.
0x00D7B5E094CPacket__handle_set_hotkey_row_stateHandles set hotkey row state packet. Based on byte at offset 2 (0, 1, or 2), sets one of three hotkey row values at DAT_01456e88+0x26C/0x270/0x274. Refreshes window 464 if DAT_01457ae4 is set.
0x00D898B0168CPacket__handle_npc_menu_listHandles NPC menu list packet. Calculates number of menu items from packet size ((size-6)/16). Opens NPC dialog window (type 0x27), sends item count message 0x3B, then iterates through 16-byte menu entries adding each non-empty string via message 0x1B. Appends 'cancel' option at end.
0x00D89960624CPacket__handle_item_identify_resultHandles item identify result packet. If status (offset 8) is 0 (success), builds item description string from identify data, shows yellow chat message (0xC8FF00) with item name and message 0xC47. Otherwise shows error message 0xBC1 (fail) or 0xBD9 (type 3).
0x00D89BD0133CPacket__handle_item_repair_resultHandles item repair result packet. If status (offset 2) is 0 (success), gets local player entity and sends repair action (0x89, 3) via DAT_013495bc vtable. Otherwise shows error message 0xBC1 (fail=1) or 0xBE0 (other).
0x00D89C6060CPacket__handle_town_info_search_resultHandles town info search result packet. Parses packet fields and delegates to CTownInfoMgr__handle_search_result_entry with NPC name (offset 0x2B), ID (offset 2), map name (offset 0x43), coordinates, and flags.
0x00D89CC0603CPacket__handle_town_npc_info_singleHandles single NPC town info packet. Only processes if DAT_016d44c0 is set. Parses NPC data (ID, map, coordinates, type, etc.), builds NPC name string with message 0x245 fallback if empty. Adds to CTownInfoMgr list, recomputes weights, and refreshes status windows.
0x00D89F20708CPacket__handle_town_npc_info_listHandles town NPC info list packet. Calculates NPC count from ((packet_size - 4) / 0x22). Clears existing NPC list, then iterates through 0x22-byte entries parsing NPC data. If NPC map matches DAT_01733c40, uses local map name. Adds each NPC to CTownInfoMgr, computes weights, refreshes windows.
0x00D8A1F098CPacket__handle_language_changeHandles language change packet. Calls three language setup functions with language code from param_2+2, notifies UI of language change, and calls two refresh functions.
0x00D8A260160CPacket__handle_item_buylist_flag_updateHandles item flag update packet. Looks up item by slot ID (param_1+2), if found calls CItemCollection__set_buy_list_item_flag with the flag byte (param_1+6), then refreshes the relevant window.
0x00D8A300342CPacket__handle_exp_gainHandles EXP gain packet. Gets local player entity. Supports 3 packet versions (param_3: 0=short val, 1=int val, else raw). For type 5 (base EXP): updates DAT_01737ba0, shows green (0xFF00FF00) effect 0x14B. For type 7 (job EXP): updates DAT_01737ba8, shows blue (0xFF0000FF) effect 0x14C.
0x00D8A460412CPacket__handle_item_refine_resultHandles item refine result packet. If status (offset 8) is 0 (success), builds item description and shows yellow chat (0xC8FF00) with message 0xC48. If status is 1, shows fail message 0xBC1 and updates item info. Other statuses are ignored.
0x00D8A600304CPacket__handle_item_identify_listHandles item identify list packet. Calculates item count from (packet_size - 4) / 6. Iterates through 6-byte entries, building item descriptions. Stops if item lookup returns 0. Updates item identified state based on FUN_00e1d9b0 check.
0x00D8A730161CPacket__handle_map_connect_dispatchMap connect packet dispatcher. Parses packet fields based on version (param_2: 0=short fields, 1=int fields+extra byte, else raw). Extracts account ID, character ID, coords, etc. and delegates to CPacket__handle_map_server_connect.
0x00D8CD60734CPacket__handle_map_server_connectHandles map server connect packet. Stores timestamp, parses account/character/entity IDs to globals. Decrypts map name via XOR, processes hotkey slots based on packet version (2-5: different hotkey sizes 0x20 or 0xA0). Sets service-type display options, screen mode. Transitions to game mode (state 6).
0x00D8D110152CPacket__handle_char_select_confirm_dialogHandles character select confirmation dialog. Shows message 0x2B3 dialog box. If user confirms (returns 0xBB), sends packet 0x1BF to server. Otherwise disconnects and returns to char select (state 3).
0x00D8D1F0281CPacket__handle_server_message_dialogHandles server message dialog packet. Extracts variable-length text from packet, shows it in dialog box (non-cancellable, centered). Sets disconnect flag and transitions to state 3.
0x00D8D330446CPacket__handle_timer_eventHandles timer event packet. Parses timestamp and duration from packet, converts to local time via _localtime32. Shows formatted date/time dialog using message 0x92C. Creates CUITimerEvent with duration*10M ticks (converted from seconds to 100ns units) and 3600000ms (1 hour) tick interval.
0x00D8D50033CPacket__handle_char_delete_result_extendedHandles character delete result packet. Large switch on status code (0-10). Status 0: success dialog (msg 0x4BE), shows inventory window. Status 2,4,7,8,9: confirmation dialogs with different messages, on OK sends action to server. Status 1,3,5,6,10: info-only dialogs. Status 0xB8 check for user confirmation.
0x00D8DB901370CNetwork__build_server_connection_stringBuilds server connection string with encrypted address/port. Reads server IP and port from PTR_DAT_01348f60/64/68. For service type 0xD, uses encrypted TLS strings (XOR decrypted) with different keys based on sub-type (1=iRO, 5=kRO, 6=jRO). Uses CUINavMap__lookup_group_value(0x12) to select between two encrypted address variants.
0x00D8EA40119CPacket__handle_char_server_connect_initHandles char server connect packet. Repackages packet fields into local struct (adjusting char slot count, copying auth token and server fields) and delegates to CCharMode__init_char_select_data.
0x00D8EDD038CPacket__handle_char_create_resultHandles character creation result. Switch on status (0-6,10): 0=success (msg 0x4BE, show inventory), 1/2=fail dialogs with confirm->send 0xB9, 3/4=fail dialogs with confirm->send 0x15F, 5/6/10=info dialogs with confirm->send 0xB9.
0x00D8EFC061CPacket__handle_email_verification_resultHandles email verification result. If param+4 == 1 (success), shows message 0x7E1 dialog (info only). No other handling.
0x00D8F00061CPacket__handle_email_verification_result_altAlternate email verification result handler. Identical to CPacket__handle_email_verification_result -- checks param+4==1, shows message 0x7E1.
0x00D8F570299CPacket__handle_char_rename_resultHandles character rename result. If status==0, shows confirmation dialog (msg 10). If confirmed (0xB8) or status!=0, shows rename prompt dialog with current name (msg 0x4BD). On OK (0xBB), sends packet 0x28F with char ID. On cancel, sends action 0x15F via DAT_01457a54.
0x00D8F6A0177CPacket__handle_char_move_resultHandles character move result. Status 0: success (msg 0x76F), refreshes char select page. Status 1: fail (msg 0x770), sets state 7. Other statuses ignored.
0x00D8F76083CPacket__handle_pincode_window_infoHandles pincode window info packet. Calculates entry count from (packet_size-4)/0x18. Zeros and copies 0x18-byte entries to DAT_01732e6c. Stores count in DAT_01738008.
0x00D8FA00328CPacket__handle_pincode_state_resultHandles pincode state result. Switch on status (0-8): 0/default=error (msg 0x718), 1=success (sets 0x1E0 flag), 2=wrong pin (0x71C), 3=pin expired (0x719), 4=new pin needed (0x71D), 5=invalid (0x71E), 6=restricted (0x941), 7=char select blocked (0x12D), 8=pin not set (0xBE4). Shows dialog and sets state 7 unless status 1.
0x00D8FC80438CPacket__handle_char_delete_cancel_resultHandles char delete cancel result. Status 0: error (msg 0x718). Status 1: success, finds char by ID and clears deletion timer (offset 0x4106). Status 2: wrong password (msg 0x719). Default: error (0x718). Shows dialog if message set.
0x00D8FE40594CPacket__handle_char_delete_accept_resultHandles char delete accept result. Status 1: success, finds char by ID and sets deletion timer (current_time + offset from packet+10). Status 0/default: error (0x718). Status 3: wrong pw (0x719). Status 4: too many attempts (0x71A). Status 5: restricted (0x71B). Status 6: denied (0xBA5). Status 7: unavailable (0xC14). Shows dialog.
0x00D900C0174CPacket__handle_char_slot_buy_resultHandles char slot buy result. Stores purchased slot ID at DAT_01737d1c. Status 0: success (msg 0x762). Status 1: fail (msg 0x766), sets state 7.
0x00D9017042CPacket__handle_char_slot_move_resultHandles char slot move result. Stores slot ID at DAT_01737d1c. Status 0: success (msg 0x763). Status 1: fail (0x767). Status 2: restricted (0x768). Status 3: unavailable (0x769). Status 1-3 set state 7 after dialog.
0x00D9029042CPacket__handle_char_slot_convert_resultHandles char slot convert result. Stores slot ID at DAT_01737d1c. Status 0: success (msg 0x761). Status 1-4: various fail messages (0x76A, 0x768, 0x769, 0x765), all set state 7.
0x00D903E0200CPacket__handle_char_slot_rename_resultHandles char slot rename result. Stores slot ID. Status 0: success (msg 0x76D), triggers page button click and sets DAT_01737d18=1. Status 1: fail (msg 0x76E), sets state 7.
0x00D904B0648CPacket__handle_char_page_list_resultHandles character page list result. Validates 0x14-byte entry alignment. Iterates through entries: for each with type 0, adds to vector at offset 0x6F68 (index + 4 ints of data). If any entries found, transitions to state 0x1E. Otherwise shows message 0x713 and sets state 7.
0x00D90740370CPacket__handle_login_server_listHandles login server list packet. Builds server name string from packet+2, calls FUN_00d929a0 with server data to populate server list.
0x00D908C0121CPacket__handle_login_ban_noticeHandles login ban notice. Reason byte: 0=msg 0x12D (or 0x12F for service type 0), 1=msg 0x54C, 2=msg 0x788, default=msg 0xC. Shows dialog and sets state 7.
0x00D90940116CPacket__handle_login_errorHandles login error packet. Disconnects, then switch on error code: default=msg 9 (unknown), 1=0xD0 (server full), 0x6F=0x749 (maintenance), 0x76/0x77=encrypted messages with state 6 transition. Otherwise sets state 3.
0x00D90B7058CPacket__handle_auth_errorHandles auth error packet. Switch on error code (0-5): different messages (0x546-0x554). Shows dialog, then transitions to state 3 if connected or 7 if not.
0x00D90C90104CPacket__handle_second_password_resultHandles second password (2nd auth) result. Large switch (0-11): 0=success, 1/2/3/4=password state changes (enter/set/change/delete), 5/6=restricted/unavailable, 7=need new password, 8=wrong password (with attempt count tracking, exit after limit), 9/10/11=encrypted URL dialogs with XOR decryption for external verification links.
0x00D911C01296CPacket__handle_second_password_result_v2V2 of second password result handler. Same structure as v1 but with different XOR keys for encrypted strings. Status 8 tracks failed attempts with 3-attempt limit (msg 0x773 on lockout, msg 0x764 with remaining attempts). Status 9/10/11 decrypt different TLS URL strings for external verification.
0x00D91700114CPacket__handle_char_update_entryHandles character entry update packet. Finds character by DAT_01737f4c match in entry array. Copies full 0xAF-byte entry data from packet, translates map name via FUN_00ddb7e0. Sets state to 7.
0x00D92DA0344CPacket__handle_login_disconnect_reasonHandles login disconnect with detailed reason. Switch on reason (1-9, 0x65, 100, 0x66): maps to different messages (0xC7C-0xC82, 0xC8E, 0xF47). Each reason uses different XOR-encrypted format strings for the dialog. Case 0x65 copies 20-byte token from packet. Formats final message with encrypted prefix, shows dialog, disconnects (state 3).
0x00D93473360CNetwork__disconnect_and_show_error_dialogDisconnects from server, decrypts XOR-encrypted TLS buffer (key 0x9903579B/0x5050567), formats error message (msg 0x1C1), and shows disconnect dialog. Sets game state to 3 (disconnected).
0x00D93800365CPacket__handle_login_disconnect_reason_simpleSimplified login disconnect handler. Maps reason byte (1-9) to message IDs (0xC7C-0xF47), default 0xC82. Disconnects, formats message with XOR-encrypted prefix string, shows dialog, transitions to state 3.
0x00D939D060CPacket__handle_char_disconnect_with_reasonHandles char disconnect with reason code. If reason != 0x12, disconnects first. Stores param_2+3 at offset 0x6F78, delegates to CCharMode__handle_disconnect_reason.
0x00D93A10244CPacket__handle_char_disconnect_with_nameHandles char disconnect with 20-byte name/token string. Copies 0x14 bytes from packet+6, delegates to CCharMode__handle_disconnect_reason with reason code from packet+2.
0x00D971E0555CPacket__handle_login_server_list_v2V2 login server list handler. Builds server name from packet+0x1C (0x80 bytes), builds formatted string, delegates to CCharMode__connect_to_char_server with server data from packet+2.
0x00D9A3501685CPacket__handle_premium_time_infoHandles premium time/subscription info packet. Complex handler for various account states: -2=msg 0x2A8, -3=msg 0x41C, -1=msg 0x2D5, 0=display time remaining (days/hours/minutes format from msgs 0x21D/0x2A7). Positive values show time with expiry (msg 0x215/0x2D6). Sets 90-second timer for display.
0x00D9A9F0488CPacket__handle_map_server_disconnectHandles map server disconnect with 30+ reason codes. Maps reason byte to message IDs (3-0xE33). Code 6 shows dialog with optional quit+URL open. Code 0x6B shows service-specific message. Formats message with encrypted prefix, shows dialog. Returns to state 3 or sends quit via DAT_013495bc.
0x00D9E18030CPacket__handle_set_max_base_levelSets max base level from packet. Only applies if value < 101 (0x65). Stores to DAT_0173a5f4.
0x00D9E1A028CPacket__handle_set_server_tickSets server tick counter from packet. Only applies if value > 0. Stores to DAT_0173a5bc.