From efb55753c680578cf2d68eabf5e5465b7ec9b86c Mon Sep 17 00:00:00 2001
From: Striven <sg.striven@cutecat.club>
Date: Wed, 10 Sep 2025 20:22:37 +0000
Subject: [PATCH] Add Register and GetDatacenters methods

---
 00_packet_dumps/C2S-CloudServersProtocol__GetDatacenters_V1 |    0 
 04_rendezvous/03_rendezvous_structure.md                    |   26 +++-
 00_packet_dumps/C2S-LoginProtocol__Register_V1              |    0 
 00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1        |    0 
 04_rendezvous/01_protocols/02_cloudserversprotocol.md       |   34 ++++++
 04_rendezvous/05_rmc_protocol.md                            |   58 +++++-----
 04_rendezvous/01_protocols/01_loginprotocol.md              |  152 ++++++++++++++++++-----------
 7 files changed, 175 insertions(+), 95 deletions(-)

diff --git a/00_packet_dumps/C2S-CloudServersProtocol__GetDatacenters_V1 b/00_packet_dumps/C2S-CloudServersProtocol__GetDatacenters_V1
new file mode 100644
index 0000000..6f68157
--- /dev/null
+++ b/00_packet_dumps/C2S-CloudServersProtocol__GetDatacenters_V1
Binary files differ
diff --git a/00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1 b/00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1
new file mode 100644
index 0000000..7ab25ad
--- /dev/null
+++ b/00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1
Binary files differ
diff --git a/00_packet_dumps/C2S-LoginProtocol__Register_V1 b/00_packet_dumps/C2S-LoginProtocol__Register_V1
new file mode 100644
index 0000000..4ef798a
--- /dev/null
+++ b/00_packet_dumps/C2S-LoginProtocol__Register_V1
Binary files differ
diff --git a/04_rendezvous/01_protocols/01_loginprotocol.md b/04_rendezvous/01_protocols/01_loginprotocol.md
index 7a2d9ee..47f996f 100644
--- a/04_rendezvous/01_protocols/01_loginprotocol.md
+++ b/04_rendezvous/01_protocols/01_loginprotocol.md
@@ -5,67 +5,62 @@
 
 ### Request
 
-##### Full Packet Example
+##### Example
 ```
 Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
-00000000  ED 0C 00 00 0E 00 4C 6F 67 69 6E 50 72 6F 74 6F  í.....LoginProto
-00000010  63 6F 6C 00 01 05 00 00 00 21 00 4C 6F 67 69 6E  col......!.Login
-00000020  50 72 6F 74 6F 63 6F 6C 3A 3A 4C 6F 67 69 6E 57  Protocol::LoginW
-00000030  69 74 68 54 6F 6B 65 6E 5F 56 31 00 01 00 00 00  ithToken_V1.....
-00000040  12 00 43 6C 69 65 6E 74 56 65 72 73 69 6F 6E 49  ..ClientVersionI
-00000050  6E 66 6F 00 01 00 06 00 54 49 43 4B 45 54 00 03  nfo.....TICKET..
-00000060  00 00 00 05 00 27 00 00 00 04 6E 02 7B 22 72 64  .....'....n.{"rd
-00000070  76 5F 64 65 62 75 67 22 3A 22 30 2E 30 2E 31 22  v_debug":"0.0.1"
-00000080  2C 22 72 64 76 5F 69 6E 74 72 6F 73 70 65 63 74  ,"rdv_introspect
-00000090  69 6F 6E 22 3A 22 31 2E 31 32 2E 30 22 2C 22 72  ion":"1.12.0","r
-000000A0  64 76 5F 6C 6F 67 69 6E 5F 71 75 65 75 65 22 3A  dv_login_queue":
-000000B0  22 30 2E 30 2E 34 22 2C 22 72 64 76 5F 6D 61 74  "0.0.4","rdv_mat
-000000C0  63 68 6D 61 6B 69 6E 67 22 3A 22 33 2E 31 36 2E  chmaking":"3.16.
-000000D0  30 22 2C 22 72 64 76 5F 70 6C 61 79 65 72 73 74  0","rdv_playerst
-000000E0  61 74 73 32 22 3A 22 32 2E 31 2E 33 22 2C 22 72  ats2":"2.1.3","r
-000000F0  36 5F 73 65 73 73 69 6F 6E 22 3A 22 30 2E 30 2E  6_session":"0.0.
-00000100  35 22 2C 22 72 36 61 7A 75 72 65 73 61 73 22 3A  5","r6azuresas":
-00000110  22 30 2E 31 2E 31 22 2C 22 72 36 63 6C 6F 75 64  "0.1.1","r6cloud
-00000120  73 65 72 76 65 72 73 22 3A 22 30 2E 38 2E 32 22  servers":"0.8.2"
-00000130  2C 22 72 36 63 6F 6D 6D 65 72 63 65 22 3A 22 30  ,"r6commerce":"0
-00000140  2E 33 2E 31 22 2C 22 72 36 63 6F 6E 66 69 67 22  .3.1","r6config"
-00000150  3A 22 32 2E 30 2E 35 22 2C 22 72 36 64 79 6E 61  :"2.0.5","r6dyna
-00000160  6D 69 63 73 68 6F 70 22 3A 22 31 2E 30 2E 30 22  micshop":"1.0.0"
-00000170  2C 22 72 36 65 6E 64 67 61 6D 65 22 3A 22 30 2E  ,"r6endgame":"0.
-00000180  37 2E 30 22 2C 22 72 36 66 65 61 74 73 6F 66 61  7.0","r6featsofa
-00000190  72 6D 73 22 3A 22 30 2E 38 2E 30 22 2C 22 72 36  rms":"0.8.0","r6
-000001A0  66 6C 65 65 74 22 3A 22 30 2E 31 2E 30 22 2C 22  fleet":"0.1.0","
-000001B0  72 36 6B 61 72 6D 61 22 3A 22 31 2E 34 2E 31 22  r6karma":"1.4.1"
-000001C0  2C 22 72 36 6D 61 74 63 68 6D 61 6B 69 6E 67 22  ,"r6matchmaking"
-000001D0  3A 22 35 2E 30 2E 39 22 2C 22 72 36 70 65 6E 61  :"5.0.9","r6pena
-000001E0  6C 74 69 65 73 22 3A 22 30 2E 35 2E 30 22 2C 22  lties":"0.5.0","
-000001F0  72 36 70 6C 61 79 65 72 70 72 6F 66 69 6C 65 22  r6playerprofile"
-00000200  3A 22 32 2E 35 2E 32 22 2C 22 72 36 70 6C 61 79  :"2.5.2","r6play
-00000210  65 72 73 74 61 74 69 73 74 69 63 73 22 3A 22 32  erstatistics":"2
-00000220  2E 30 2E 32 33 22 2C 22 72 36 72 65 63 6F 22 3A  .0.23","r6reco":
-00000230  22 31 2E 30 2E 30 22 2C 22 72 36 72 65 77 61 72  "1.0.0","r6rewar
-00000240  64 73 22 3A 22 30 2E 31 35 2E 30 22 2C 22 72 36  ds":"0.15.0","r6
-00000250  73 65 61 73 6F 6E 73 22 3A 22 31 31 2E 30 2E 30  seasons":"11.0.0
-00000260  22 2C 22 72 36 73 65 72 76 69 63 65 61 6C 69 61  ","r6servicealia
-00000270  73 65 73 22 3A 22 30 2E 33 2E 37 22 2C 22 72 36  ses":"0.3.7","r6
-00000280  73 65 73 73 69 6F 6E 6D 61 6E 61 67 65 72 22 3A  sessionmanager":
-00000290  22 30 2E 31 33 2E 31 22 2C 22 72 36 73 74 6F 72  "0.13.1","r6stor
-000002A0  65 22 3A 22 30 2E 38 2E 30 22 2C 22 72 36 75 62  e":"0.8.0","r6ub
-000002B0  69 73 65 72 76 69 63 65 73 22 3A 22 31 2E 30 2E  iservices":"1.0.
-000002C0  30 22 2C 22 73 61 6E 64 62 6F 78 64 61 74 61 22  0","sandboxdata"
-000002D0  3A 22 30 2E 30 2E 30 22 7D 00 08 00 70 72 75 64  :"0.0.0"}...prud
-000002E0  70 3A 2F 00                                      p:/.
+00000000  6E 02 7B 22 72 64 76 5F 64 65 62 75 67 22 3A 22  n.{"rdv_debug":"
+00000010  30 2E 30 2E 31 22 2C 22 72 64 76 5F 69 6E 74 72  0.0.1","rdv_intr
+00000020  6F 73 70 65 63 74 69 6F 6E 22 3A 22 31 2E 31 32  ospection":"1.12
+00000030  2E 30 22 2C 22 72 64 76 5F 6C 6F 67 69 6E 5F 71  .0","rdv_login_q
+00000040  75 65 75 65 22 3A 22 30 2E 30 2E 34 22 2C 22 72  ueue":"0.0.4","r
+00000050  64 76 5F 6D 61 74 63 68 6D 61 6B 69 6E 67 22 3A  dv_matchmaking":
+00000060  22 33 2E 31 36 2E 30 22 2C 22 72 64 76 5F 70 6C  "3.16.0","rdv_pl
+00000070  61 79 65 72 73 74 61 74 73 32 22 3A 22 32 2E 31  ayerstats2":"2.1
+00000080  2E 33 22 2C 22 72 36 5F 73 65 73 73 69 6F 6E 22  .3","r6_session"
+00000090  3A 22 30 2E 30 2E 35 22 2C 22 72 36 61 7A 75 72  :"0.0.5","r6azur
+000000A0  65 73 61 73 22 3A 22 30 2E 31 2E 31 22 2C 22 72  esas":"0.1.1","r
+000000B0  36 63 6C 6F 75 64 73 65 72 76 65 72 73 22 3A 22  6cloudservers":"
+000000C0  30 2E 38 2E 32 22 2C 22 72 36 63 6F 6D 6D 65 72  0.8.2","r6commer
+000000D0  63 65 22 3A 22 30 2E 33 2E 31 22 2C 22 72 36 63  ce":"0.3.1","r6c
+000000E0  6F 6E 66 69 67 22 3A 22 32 2E 30 2E 35 22 2C 22  onfig":"2.0.5","
+000000F0  72 36 64 79 6E 61 6D 69 63 73 68 6F 70 22 3A 22  r6dynamicshop":"
+00000100  31 2E 30 2E 30 22 2C 22 72 36 65 6E 64 67 61 6D  1.0.0","r6endgam
+00000110  65 22 3A 22 30 2E 37 2E 30 22 2C 22 72 36 66 65  e":"0.7.0","r6fe
+00000120  61 74 73 6F 66 61 72 6D 73 22 3A 22 30 2E 38 2E  atsofarms":"0.8.
+00000130  30 22 2C 22 72 36 66 6C 65 65 74 22 3A 22 30 2E  0","r6fleet":"0.
+00000140  31 2E 30 22 2C 22 72 36 6B 61 72 6D 61 22 3A 22  1.0","r6karma":"
+00000150  31 2E 34 2E 31 22 2C 22 72 36 6D 61 74 63 68 6D  1.4.1","r6matchm
+00000160  61 6B 69 6E 67 22 3A 22 35 2E 30 2E 39 22 2C 22  aking":"5.0.9","
+00000170  72 36 70 65 6E 61 6C 74 69 65 73 22 3A 22 30 2E  r6penalties":"0.
+00000180  35 2E 30 22 2C 22 72 36 70 6C 61 79 65 72 70 72  5.0","r6playerpr
+00000190  6F 66 69 6C 65 22 3A 22 32 2E 35 2E 32 22 2C 22  ofile":"2.5.2","
+000001A0  72 36 70 6C 61 79 65 72 73 74 61 74 69 73 74 69  r6playerstatisti
+000001B0  63 73 22 3A 22 32 2E 30 2E 32 33 22 2C 22 72 36  cs":"2.0.23","r6
+000001C0  72 65 63 6F 22 3A 22 31 2E 30 2E 30 22 2C 22 72  reco":"1.0.0","r
+000001D0  36 72 65 77 61 72 64 73 22 3A 22 30 2E 31 35 2E  6rewards":"0.15.
+000001E0  30 22 2C 22 72 36 73 65 61 73 6F 6E 73 22 3A 22  0","r6seasons":"
+000001F0  31 31 2E 30 2E 30 22 2C 22 72 36 73 65 72 76 69  11.0.0","r6servi
+00000200  63 65 61 6C 69 61 73 65 73 22 3A 22 30 2E 33 2E  cealiases":"0.3.
+00000210  37 22 2C 22 72 36 73 65 73 73 69 6F 6E 6D 61 6E  7","r6sessionman
+00000220  61 67 65 72 22 3A 22 30 2E 31 33 2E 31 22 2C 22  ager":"0.13.1","
+00000230  72 36 73 74 6F 72 65 22 3A 22 30 2E 38 2E 30 22  r6store":"0.8.0"
+00000240  2C 22 72 36 75 62 69 73 65 72 76 69 63 65 73 22  ,"r6ubiservices"
+00000250  3A 22 31 2E 30 2E 30 22 2C 22 73 61 6E 64 62 6F  :"1.0.0","sandbo
+00000260  78 64 61 74 61 22 3A 22 30 2E 30 2E 30 22 7D 00  xdata":"0.0.0"}.
+00000270  08 00 70 72 75 64 70 3A 2F 00                    ..prudp:/.
 ```
 
+_[Full Request Packet](../../00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1)_
+
 > [!NOTE]
 > While this is a real packet sent, the ticket has been replaced with a dummy for security reasons. The normal ticket is a base64-encoded [JWT](../../03_ubisoft_services/04_initial_login_flow.md#ticket).
 
 ##### Parsing
-| Name                | Description                                                         | Type                                             |
-|---------------------|---------------------------------------------------------------------|--------------------------------------------------|
-| Token               | Ticket obtained via UbiServices, identifying the connecting client. | [`String`](../03_rendezvous_structure.md#string) |
-| Client Version Info | Information about the client version                                | [`ClientVersionInfo`](#client-version-info)      |
-| Diagnostic URL      | Unknown.                                                            | [`String`](../03_rendezvous_structure.md#string) |
+| Name                | Description                                                         | Type                                                                |
+|---------------------|---------------------------------------------------------------------|---------------------------------------------------------------------|
+| Token               | Ticket obtained via UbiServices, identifying the connecting client. | [`String`](../03_rendezvous_structure.md#structure-string)          |
+| Client Version Info | Information about the client version                                | [`ClientVersionInfo`](#client-version-info)                         |
+| Diagnostic URL      | Unknown.                                                            | [`Station URL`](../03_rendezvous_structure.md#structure-stationurl) |
 
 ### Successful Response
 
@@ -73,10 +68,51 @@
 > TODO: Example
 
 ##### Parsing
-| Name                 | Description                                                        | Type                                             |
-|----------------------|--------------------------------------------------------------------|--------------------------------------------------|
-| User PID             | ID of the user profile that the connected client is identified as. | [`UUID`](../03_rendezvous_structure.md#uuid)     |
-| Protocol URL         | Unknown.                                                           | [`String`](../03_rendezvous_structure.md#string) |
-| Required Redirection | Unknown exactly. Presumably self-explanatory.                      | `bool`                                           |
+| Name                 | Description                                                        | Type                                                                |
+|----------------------|--------------------------------------------------------------------|---------------------------------------------------------------------|
+| User PID             | ID of the user profile that the connected client is identified as. | [`UUID`](../03_rendezvous_structure.md#structure-uuid)              |
+| Protocol URL         | Unknown.                                                           | [`Station URL`](../03_rendezvous_structure.md#structure-stationurl) |
+| Required Redirection | Unknown exactly. Presumably self-explanatory.                      | `bool`                                                              |
 
 ## Method: `Register`
+Currently unknown exactly what this method does, although it is called after receiving a successful response from the [LoginWithToken method](#method-loginwithtoken).
+
+### Request
+##### Example
+```
+Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
+00000000  04 00 00 00 2F 00 70 72 75 64 70 3A 2F 61 64 64  ..../.prudp:/add
+00000010  72 65 73 73 3D 30 30 30 2E 30 30 30 2E 30 30 2E  ress=000.000.00.
+00000020  30 30 30 3B 70 6F 72 74 3D 39 31 30 33 3B 73 69  000;port=9103;si
+00000030  64 3D 31 35 00 2E 00 70 72 75 64 70 3A 2F 61 64  d=15...prudp:/ad
+00000040  64 72 65 73 73 3D 30 30 30 30 30 30 30 30 30 30  dress=0000000000
+00000050  30 30 30 3B 70 6F 72 74 3D 39 31 30 33 3B 73 69  000;port=9103;si
+00000060  64 3D 31 35 00 2D 00 70 72 75 64 70 3A 2F 61 64  d=15.-.prudp:/ad
+00000070  64 72 65 73 73 3D 30 30 30 30 30 30 30 30 30 30  dress=0000000000
+00000080  30 30 3B 70 6F 72 74 3D 39 31 30 33 3B 73 69 64  00;port=9103;sid
+00000090  3D 31 35 00 2D 00 70 72 75 64 70 3A 2F 61 64 64  =15.-.prudp:/add
+000000A0  72 65 73 73 3D 30 30 30 30 30 30 30 30 30 30 30  ress=00000000000
+000000B0  30 3B 70 6F 72 74 3D 39 31 30 33 3B 73 69 64 3D  0;port=9103;sid=
+000000C0  31 35 00                                         15.
+```
+
+_[Full Request Packet](../../00_packet_dumps/C2S-LoginProtocol__Register_V1)_
+
+> [!NOTE]
+> While this is a real packet sent, local IP addresses have been replaced with dummies for privacy reasons. It is currently unknown how the IP addresses are produced.
+
+##### Parsing
+| Name         | Description | Type                                                                                                                             |
+|--------------|-------------|----------------------------------------------------------------------------------------------------------------------------------|
+| Station URLs | Unknown.    | [`List`](../03_rendezvous_structure.md#structure-listt)`<`[`Station URL`](../03_rendezvous_structure.md#structure-stationurl)`>` |
+
+### Response
+
+> [!NOTE]
+> TODO: Example
+
+##### Parsing
+| Name          | Description                                   | Type                                                                |
+|---------------|-----------------------------------------------|---------------------------------------------------------------------|
+| Connection ID | Unknown exactly. Presumably self-explanatory. | `u32`                                                               |
+| Url Public    | Unknown.                                      | [`Station URL`](../03_rendezvous_structure.md#structure-stationurl) |
\ No newline at end of file
diff --git a/04_rendezvous/01_protocols/02_cloudserversprotocol.md b/04_rendezvous/01_protocols/02_cloudserversprotocol.md
index e69de29..4a10848 100644
--- a/04_rendezvous/01_protocols/02_cloudserversprotocol.md
+++ b/04_rendezvous/01_protocols/02_cloudserversprotocol.md
@@ -0,0 +1,34 @@
+## Overview
+
+## Method: `GetDatacenters`
+Fetches a list of available datacenters to the client. Currently unknown exactly what the datacenters are for and whether they contain actual URLs.
+
+### Request
+
+##### Example
+_[Full Request Packet](../../00_packet_dumps/C2S-CloudServersProtocol__GetDatacenters_V1)_
+
+##### Parsing
+The request data is empty for this method.
+
+### Successful Response
+
+> [!NOTE]
+> TODO: Example
+
+##### Parsing
+| Name        | Description                                    | Type                                                                                               |
+|-------------|------------------------------------------------|----------------------------------------------------------------------------------------------------|
+| Datacenters | A list of datacenters available to the client. | [`List`](../03_rendezvous_structure.md#structure-listt)`<`[`Datacenter`](#structure-datacenter)`>` |
+
+## Structure: `Datacenter`
+
+> [!NOTE]
+> TODO: Example
+
+##### Parsing
+| Name     | Description | Type                                                       |
+|----------|-------------|------------------------------------------------------------|
+| String 1 | Unknown.    | [`String`](../03_rendezvous_structure.md#structure-string) |
+| String 2 | Unknown.    | [`String`](../03_rendezvous_structure.md#structure-string) |
+| String 3 | Unknown.    | [`String`](../03_rendezvous_structure.md#structure-string) |
\ No newline at end of file
diff --git a/04_rendezvous/03_rendezvous_structure.md b/04_rendezvous/03_rendezvous_structure.md
index 40e5a33..79a188a 100644
--- a/04_rendezvous/03_rendezvous_structure.md
+++ b/04_rendezvous/03_rendezvous_structure.md
@@ -2,7 +2,7 @@
 
 ## Common Structures
 
-### `Buffer`
+### Structure: `Buffer`
 
 ##### Example
 ```
@@ -18,7 +18,7 @@
 
 The length of the data is `4`, with the bytes being: `.{ 1, 2, 3, 4 }`.
 
-### `String`
+### Structure: `String`
 
 ##### Example
 ```
@@ -27,13 +27,13 @@
 ```
 
 ##### Parsing
-| Name   | Description                                                 | Type                |
-|--------|-------------------------------------------------------------|---------------------|
-| Buffer | The UTF-8 encoded, null-terminated string data as a buffer. | [`Buffer`](#buffer) |
+| Name   | Description                                                 | Type                          |
+|--------|-------------------------------------------------------------|-------------------------------|
+| Buffer | The UTF-8 encoded, null-terminated string data as a buffer. | [`Buffer`](#structure-buffer) |
 
-Strings in RendezVous are null-terminated [buffers](#buffer) in UTF-8 encoding.
+Strings in RendezVous are null-terminated [buffers](#structure-buffer) in UTF-8 encoding.
 
-### `List<T>`
+### Structure: `List<T>`
 
 ##### Example
 ```
@@ -48,6 +48,16 @@
 | Number of Items | The number of individual items in the list. | `u32`                |
 | Items           | The items in the list.                      | `T[Number of Items]` |
 
-### `UUID`
+### Structure: `StationURL`
+
+> [!NOTE]
+> TODO: Example
+
+##### Parsing
+| Name | Description             | Type                          |
+|------|-------------------------|-------------------------------|
+| URL  | The URL of the station. | [`String`](#structure-string) |
+
+### Structure: `UUID`
 
 > TODO
\ No newline at end of file
diff --git a/04_rendezvous/05_rmc_protocol.md b/04_rendezvous/05_rmc_protocol.md
index 4a3d5a4..ece0ff4 100644
--- a/04_rendezvous/05_rmc_protocol.md
+++ b/04_rendezvous/05_rmc_protocol.md
@@ -15,12 +15,12 @@
 ## Base Packet Format
 
 ##### Parsing
-| Name          | Description                                                                                                                                                 | Type                                            |
-|---------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------|
-| Packet Length | The total number of bytes in the packet, not including the length itself.                                                                                   | `u32`                                           |
-| Protocol Name | The protocol service on the server that is responsible for managing this request                                                                            | [`String`](./03_rendezvous_structure.md#string) |
-| Is Request?   | Whether or not this packet is for a _request_.                                                                                                              | `bool`                                          |
-| ...           | See [Request Packet Format](#request-packet-format) or [Response Packet Format](#response-packet-format) for parsing the packet depending on `Is Request?`. | ...                                             |
+| Name          | Description                                                                                                                                                 | Type                                                      |
+|---------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------|
+| Packet Length | The total number of bytes in the packet, not including the length itself.                                                                                   | `u32`                                                     |
+| Protocol Name | The protocol service on the server that is responsible for managing this request                                                                            | [`String`](./03_rendezvous_structure.md#structure-string) |
+| Is Request?   | Whether or not this packet is for a _request_.                                                                                                              | `bool`                                                    |
+| ...           | See [Request Packet Format](#request-packet-format) or [Response Packet Format](#response-packet-format) for parsing the packet depending on `Is Request?`. | ...                                                       |
 
 ## Request Packet Format
 
@@ -46,13 +46,13 @@
 ```
 
 ##### Parsing
-| Name           | Description                                                                                                                               | Type                                                                              |
-|----------------|-------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|
-| ...            | See [Base Packet Format](#base-packet-format) for parsing the prologue of a request packet.                                               | ...                                                                               |
-| Call ID        | The nonce token for this call to identify the response associated with this request.                                                      | `u32`                                                                             |
-| Method Name    | The method to call on the server.                                                                                                         | [`String`](./03_rendezvous_structure.md#string)                                   |
-| Class Versions | Version information about the data in the request                                                                                         | [`List`](./03_rendezvous_structure.md#list)`<`[`ClassVersion`](#class-version)`>` |
-| Request Data   | Raw data to pass to the request handler, see the respective [protocol and method specification](#known-protocols) to write and read this. | `<remaining bytes>`                                                               |
+| Name           | Description                                                                                                                               | Type                                                                                         |
+|----------------|-------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------|
+| ...            | See [Base Packet Format](#base-packet-format) for parsing the prologue of a request packet.                                               | ...                                                                                          |
+| Call ID        | The nonce token for this call to identify the response associated with this request.                                                      | `u32`                                                                                        |
+| Method Name    | The method to call on the server.                                                                                                         | [`String`](./03_rendezvous_structure.md#structure-string)                                    |
+| Class Versions | Version information about the data in the request                                                                                         | [`List`](./03_rendezvous_structure.md#structure-listt)`<`[`ClassVersion`](#class-version)`>` |
+| Request Data   | Raw data to pass to the request handler, see the respective [protocol and method specification](#known-protocols) to write and read this. | `<remaining bytes>`                                                                          |
 
 ### `ClassVersion`
 Example:
@@ -62,10 +62,10 @@
 00000010  6E 66 6F 00 01 00                                nfo...
 ```
 
-| Name           | Description                                       | Type                                            |
-|----------------|---------------------------------------------------|-------------------------------------------------|
-| Structure Name | The name of the structure to assign a version to. | [`String`](./03_rendezvous_structure.md#string) |
-| Version        | The version of the structure.                     | `u16`                                           |
+| Name           | Description                                       | Type                                                      |
+|----------------|---------------------------------------------------|-----------------------------------------------------------|
+| Structure Name | The name of the structure to assign a version to. | [`String`](./03_rendezvous_structure.md#structure-string) |
+| Version        | The version of the structure.                     | `u16`                                                     |
 
 ## Response Packet Format
 
@@ -90,19 +90,19 @@
 ### Successful Response Format
 
 ##### Parsing
-| Name          | Description                                                                                                                                | Type                                            |
-|---------------|--------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------|
-| ...           | See [Response Packet Format](#response-packet-format) for parsing the prologue of a successful response packet.                            | ...                                             |
-| Call ID       | The nonce token for the call to associate the response to the request.                                                                     | `u32`                                           |
-| Method Name   | The method that was called by the client.                                                                                                  | [`String`](./03_rendezvous_structure.md#string) |
-| Response Data | Raw data to pass to the response handler, see the respective [protocol and method specification](#known-protocols) to write and read this. | `<remaining bytes>`                             |
+| Name          | Description                                                                                                                                | Type                                                      |
+|---------------|--------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------|
+| ...           | See [Response Packet Format](#response-packet-format) for parsing the prologue of a successful response packet.                            | ...                                                       |
+| Call ID       | The nonce token for the call to associate the response to the request.                                                                     | `u32`                                                     |
+| Method Name   | The method that was called by the client.                                                                                                  | [`String`](./03_rendezvous_structure.md#structure-string) |
+| Response Data | Raw data to pass to the response handler, see the respective [protocol and method specification](#known-protocols) to write and read this. | `<remaining bytes>`                                       |
 
 ### Unsuccessful Response Format
 
 ##### Parsing
-| Name            | Description                                                                                                        | Type                                            |
-|-----------------|--------------------------------------------------------------------------------------------------------------------|-------------------------------------------------|
-| ...             | See [Response Packet Format](#response-packet-format) for parsing the prologue of an unsuccessful response packet. | ...                                             |
-| Error Namespace | The category of error that occurred.                                                                               | [`String`](./03_rendezvous_structure.md#string) |
-| Error Code      | The code of the error in the specified namespace                                                                   | `u16`                                           |
-| Call ID         | The nonce token for the call to associate the response to the request.                                             | `u32`                                           |
\ No newline at end of file
+| Name            | Description                                                                                                        | Type                                                      |
+|-----------------|--------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------|
+| ...             | See [Response Packet Format](#response-packet-format) for parsing the prologue of an unsuccessful response packet. | ...                                                       |
+| Error Namespace | The category of error that occurred.                                                                               | [`String`](./03_rendezvous_structure.md#structure-string) |
+| Error Code      | The code of the error in the specified namespace                                                                   | `u16`                                                     |
+| Call ID         | The nonce token for the call to associate the response to the request.                                             | `u32`                                                     |
\ No newline at end of file

--
Gitblit v1.10.0