From 9d7ca0fde8022bacf992c7b8c0053d1e28f4248b Mon Sep 17 00:00:00 2001
From: Striven <sg.striven@cutecat.club>
Date: Sat, 13 Sep 2025 22:58:13 +0000
Subject: [PATCH] Refactor the docs structure

---
 04_rendezvous/01_rmc_protocols/loginprotocol.md |   50 +++++++++++++++++++++++++++-----------------------
 1 files changed, 27 insertions(+), 23 deletions(-)

diff --git a/04_rendezvous/01_protocols/01_loginprotocol.md b/04_rendezvous/01_rmc_protocols/loginprotocol.md
similarity index 76%
rename from 04_rendezvous/01_protocols/01_loginprotocol.md
rename to 04_rendezvous/01_rmc_protocols/loginprotocol.md
index 8c889d2..8215209 100644
--- a/04_rendezvous/01_protocols/01_loginprotocol.md
+++ b/04_rendezvous/01_rmc_protocols/loginprotocol.md
@@ -1,7 +1,9 @@
-## Overview
+# RendezVous: RMC Protocols: LoginProtocol
+
+The Login Protocol is common among Ubisoft games and is responsible for authenticating users by their [UbiServices ticket](../../03_ubisoft_services/02_accessing_ubiservices.md#getting-a-ticket). Additionally, it provides the server with information about the user's client and game information, and the server can re-direct the client to a more appropriate server.
 
 ## Method: `LoginWithToken`
-Authenticates with the server using a [UbiServices](../../03_ubisoft_services/02_accessing_ubiservices.md) ticket. See [Initial Login Flow](../../03_ubisoft_services/04_initial_login_flow.md) for information on how to obtain one.
+Authenticates with the server using a [UbiServices ticket](../../03_ubisoft_services/02_accessing_ubiservices.md#getting-a-ticket). See [Initial Login Flow](../../03_ubisoft_services/04_initial_login_flow.md) for information on how to obtain one.
 
 ### Request
 
@@ -50,17 +52,18 @@
 00000270  08 00 70 72 75 64 70 3A 2F 00                    ..prudp:/.
 ```
 
-_[Full Request Packet](../../00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1)_
+> [!TIP]
+> This is just the request data portion of a full packet. Check out a [full request packet dump](../../00_packet_dumps/C2S-LoginProtocol__LoginWithToken_V1) for this call.
 
-> [!NOTE]
+> [!IMPORTANT]
 > 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#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) |
+| Name                | Description                                                         | Type                                                     |
+|---------------------|---------------------------------------------------------------------|----------------------------------------------------------|
+| Token               | Ticket obtained via UbiServices, identifying the connecting client. | [`String`](../03_structure.md#structure-string)          |
+| Client Version Info | Information about the client version                                | [`ClientVersionInfo`](#client-version-info)              |
+| Diagnostic URL      | Unknown.                                                            | [`Station URL`](../03_structure.md#structure-stationurl) |
 
 ### Successful Response
 
@@ -68,11 +71,11 @@
 > 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#structure-uuid)              |
-| Protocol URL         | Unknown.                                                           | [`Station URL`](../03_rendezvous_structure.md#structure-stationurl) |
-| 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_structure.md#structure-uuid)              |
+| Protocol URL         | Unknown.                                                           | [`Station URL`](../03_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).
@@ -96,15 +99,16 @@
 000000C0  31 35 00                                         15.
 ```
 
-_[Full Request Packet](../../00_packet_dumps/C2S-LoginProtocol__Register_V1)_
+> [!TIP]
+> This is just the request data portion of a full packet. Check out a [full request packet dump](../../00_packet_dumps/C2S-LoginProtocol__Register_V1) for this call.
 
-> [!NOTE]
+> [!IMPORTANT]
 > 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)`>` |
+| Name         | Description | Type                                                                                                       |
+|--------------|-------------|------------------------------------------------------------------------------------------------------------|
+| Station URLs | Unknown.    | [`List`](../03_structure.md#structure-listt)`<`[`Station URL`](../03_structure.md#structure-stationurl)`>` |
 
 ### Response
 
@@ -112,7 +116,7 @@
 > 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
+| Name          | Description                                   | Type                                                     |
+|---------------|-----------------------------------------------|----------------------------------------------------------|
+| Connection ID | Unknown exactly. Presumably self-explanatory. | `u32`                                                    |
+| Url Public    | Unknown.                                      | [`Station URL`](../03_structure.md#structure-stationurl) |
\ No newline at end of file

--
Gitblit v1.10.0