runejs/refactored-client-435

Conversion to message-based packet encoding/decoding system

Jameskmonger opened this issue · 3 comments

  • write the core of the system

  • convert all outbound messages

    • chat
      • chat message #96
      • private message #96
      • commands #107
      • accept trade (96) #115
      • accept duel (68) #115
      • chat modes (32) #127
      • chat commands (248)
    • console commands #107
    • interactions
    • magic
      • on player (221) #112
      • on npc (253) #112
      • on object (225) #112
      • on world item (168) #112
      • on widget item (21) #112
    • use item
      • on player (110) #113
      • on npc (208) #113
      • on object (24) #113
      • on world item (172) #113
      • on widget item (40) #113
    • examines
      • on npc (247) #117
      • on object (148) #117
      • on world item (151?) #117
      • on widget item (151?) #117
    • friend/ignore
      • add to friends list (114) #116
      • remove from friends list (255) #116
      • add to ignore list (251) #116
      • remove from ignore list (28) #116
    • walking (73, 89, 236) #145
    • widgets
      • click button (64) #128
      • click "please wait..." option (132) #128
      • confirm appearance change (231) #128
      • numeric input (238) #120
      • name input (86) #126
      • report abuse submit (202) #126
      • drag item on widget (83) #128
      • drop item (29) #128
      • maybe closing widgets (176) #128
    • misc
      • click flashing tab icon (44) #129
    • anticheats? telemetry? who knows.. some of this stuff was in 317 and earlier
      • 121
      • 178
      • 13
      • 210
      • 160
      • 216
      • clicking something? is this an anticheat too? (234)
      • sending camera position? (58)
      • idle checker? (216)
    • unknown group, possibly cs2 related
      • 111
      • 9
      • 193
      • 53
      • 94
      • 213
      • 46
      • 130
      • 157
      • 84

  • convert all inbound messages
    • updating
      • player updating #105
        • refactor appearance block to be structured
      • npc updating (128) #125
      • reset actor animations (27) #132
      • set local player position (129) #134
      • clear local player destination (233) #138
    • region loading
      • standard (166) #118
      • constructed (23) #118
      • "clear map chunk" ? (64) #118
      • reference position (254) #118
    • cameras and cutscenes (7, 255, 253, 234) #137
    • varps/varbits (222, 2, 14, 72) #130
    • cs2 (240)
    • widgets
      • set widget to hidden (115) #126
      • containers
        • update items in container (12) #122
        • clear items in container (174) #122
        • update specific items on widget (214) #122
      • set model (250) #120
      • set npc chathead (160) #120
      • set player chathead (210) #120
      • set widget item model (120) #120
      • set widget text (110) #120
      • set widget text color (231) #120
      • move widget child (3) #120
      • set scroll position (182) #120
      • animate widget model (24) #120
      • rotate widget model (142) #120
      • set widget model rotation speed (117) #120
      • show widgets:
        • on screen (118) #120
        • on tab and screen (84) #120
        • unknown permanent chatbox widget (185)
        • fullscreen (195) #120
        • chatbox (208) #120
        • tab overlay (237) #120
        • tab widget (140) #120
        • walkable widget? (56) #120
        • set report abuse widget (130) #126
        • close all widgets (180) #120
      • inputs
        • "enter amount" input (132) #120
        • "enter name" widget (124) #120
    • bulk packets #146
      • main coordinator (63) #146
      • play sound at position (9) #140
      • spawn ground item (175) #139
      • spawn ground item [exclude some players] (19) #139
      • update ground item amount (99) #139
      • remove ground item (74) #139
      • rotate/animate object (49) #144
      • spawn landscape object (241) #144
      • remove landscape object (143) #144
      • projectile (1) #143
      • player to object transformation (229) #141
      • render gfx (202) #142
    • sound
      • play song #94
      • play sound #94
      • play quick song #94
    • chat
      • chatbox message #96
      • private message #96
      • friend log in/out #96
      • chat mode settings #96
      • update ignore list (211) #123
    • console #107
    • misc
      • log out #106
      • carry weight #106
      • run energy #106
      • skill level/xp #106
      • player options (223) #123
      • system update (116) #119
      • set current open tab (6) #119
      • minimap state (235) #119
      • multi combat (48) #119
      • flash sidebar icon (88) #123
      • set hint icon (186) #133
    • unknown
      • anticheat or something? (58)

TODO add more as I find them

Could you also list unknown packets, and the ids for the known ones? could help figuring out the rest?

@Promises good suggestion. I've listed all outgoing opcodes for any packets which aren't done. Some of them are in the list, others I don't know what they do yet.

The main piece of this work is done 🎉

I'll leave this ticket open for now as there are some nice-to-haves left (cs2, anticheat etc).