Jump to content
McKay Development

How to Decode out_of_date_subscribed_caches from GC clientWelcome Message?


Recommended Posts

Posted (edited)

I'm currently trying to decode the out_of_date_subscribed_caches from the CS2 GC clientWelcome message. However, I don’t know where to find the definitions or type_ids needed to parse the object data. I noticed that Node-GlobalOffensive is only parsing type_id 1.

I want to retrieve the current XP of the account as well as additional information. Therefore, I would like to parse all type_ids if possible.

Here is the out_of_date_subscribed_caches:

[
  {
    objects: [
      {
        object_data: [
          new Uint8Array([8, 5, 24, 1, 32, 144, 250, 241, 198, 6, 40, 2]),
        ],
        type_id: 2,
      },
      {
        object_data: [
          new Uint8Array([8, 246, 220, 169, 198, 6, 16, 0, 24, 238, 165, 128, 128, 128, 128, 128, 128, 240, 1, 24, 197, 185, 213, 236, 172, 1, 24, 191, 128, 196, 169, 128, 128, 128, 128, 240, 1, 24, 199, 185, 213, 236, 172, 1]),
        ],
        type_id: 4,
      },
      {
        object_data: [
          new Uint8Array([8, 238, 146, 176, 198, 6, 16, 200, 1, 24, 224, 93, 24, 224, 93, 24, 224, 93, 24, 224, 93, 24, 224, 93]),
        ],
        type_id: 6,
      },
      {
        object_data: [
          new Uint8Array([8, 0, 101, 144, 66, 211, 104, 104, 131, 130, 128, 128, 6, 112, 5, 120, 5]),
        ],
        type_id: 7,
      },
      {
        object_data: [
          new Uint8Array([8, 161, 159, 128, 128, 128, 128, 128, 128, 240, 1, 16, 188, 197, 224, 214, 6, 24, 133, 128, 128, 128, 12, 32, 161, 31, 56, 4, 64, 24, 72, 8, 152, 1, 1]),
          new Uint8Array([8, 164, 128, 244, 131, 128, 128, 128, 128, 240, 1, 16, 188, 197, 224, 214, 6, 24, 133, 128, 128, 128, 12, 32, 36, 56, 1, 64, 24, 72, 8, 98, 8, 8, 6, 26, 4, 0, 0, 250, 66, 152, 1, 4]),
          new Uint8Array([8, 197, 185, 213, 236, 172, 1, 16, 188, 197, 224, 214, 6, 24, 1, 32, 13, 56, 4, 64, 0, 72, 24, 98, 9, 8, 149, 2, 26, 4, 1, 0, 0, 0, 98, 8, 8, 6, 26, 4, 0, 96, 159, 68, 98, 8, 8, 7, 26, 4, 176, 248, 62, 68, 98, 8, 8, 8, 26, 4, 221, 253, 49, 62, 152, 1, 1]),
          new Uint8Array([8, 199, 185, 213, 236, 172, 1, 16, 188, 197, 224, 214, 6, 24, 1, 32, 196, 10, 56, 4, 64, 0, 72, 24, 98, 9, 8, 149, 2, 26, 4, 1, 0, 0, 0, 98, 8, 8, 113, 26, 4, 175, 6, 0, 0, 98, 9, 8, 233, 1, 26, 4, 9, 0, 0, 0, 152, 1, 1]),
        ],
        type_id: 1,
      },
    ],
    version: "29496881091084074",
    owner_soid: {
      type: 1,
      id: "76561XXXXXXXX",
    },
  },
]

 

Edited by FadingSky
  • FadingSky changed the title to How to Decode out_of_date_subscribed_caches from GC clientWelcome Message?
Posted

They're likely to be protobuf objects that are defined in the CS2 protobufs. I don't have any source off-hand to map type_ids to protobuf definitions; your best bet is likely to just try parsing data using various definitions and see what looks right.

  • 1 month later...
Posted

type_id=4 is the armory pass process and redeemable_balance, the protobuf definition is below:

message CSOAccountXpShop {
    optional uint32 generation_time = 1;
    optional uint32 redeemable_balance = 2;
    repeated uint32 xp_tracks = 3;
}

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...