NEX is based on Rendez-Vous, a multiplayer networking library developed by Quazal. Communications between the game server and game client use a series of messages, called RMC. Responsibilities (authentication, matchmaking, UGC, etc.) are organized into separate protocols, with each protocol having a series of methods representing specific actions a server/client can make.
Each protocol is assigned a unique protocol ID, with multiple ranges of protocol IDs for different use cases.
| Range | Name | Description |
|---|---|---|
| 1-99 | Core | Protocols designed and provided by Quazal. These protocols perform critical operations all game servers could need. Developers can extend the functionality of these protocols by adding/modifying protocol methods, but the protocols themselves are never outright replaced by a given game for any custom purposes. |
| 100+ | Developer | Protocols unique to a specific game. A developer creating multiple games may share these protocols between games, such as Nintendo with NEX, but that is not guaranteed. As a rule of thumb, all protocols with IDs 100+ should be assumed to be game-specific. |
| 200+ | Nintendo reserved | Nintendo appears to have added their own range of “reserved” protocol IDs on top of the developer range. This range seems to allow developers to add game-specific protocols on top of the common protocols provided by NEX. Similar conventions may exist in other titles, but this is not guaranteed. As a rule of thumb, all protocols with IDs 100+ should be assumed to be game-specific. |
Core protocols
Not all protocols are provided by Nintendo/NEX, but may be seen in Ubisoft games as they always use the original Quazal Rendez-Vous library.
| ID | Protocol | Provided by Nintendo |
|---|---|---|
| 1 | Remote log device | Yes |
| 3 | NAT traversal | Yes |
| 10 | Ticket granting | Yes |
| 11 | Secure connection | Yes |
| 12 | Back end management | No |
| 14 | Notification events | Yes |
| 16 | Simple authentication | No |
| 17 | Siege | No |
| 18 | Health | Yes |
| 19 | Monitoring | Yes |
| 20 | Friends | Yes |
| 21 | Match making | Yes |
| 23 | Messaging | Yes |
| 24 | Persistent store | Yes |
| 25 | Account management | Yes |
| 26 | Competition | No |
| 27 | Message delivery | Yes |
| 28 | Client settings | No |
| 29 | Ubi account management | No |
| 30 | Geo localization | No |
| 31 | News | No |
| 32 | News admin | No |
| 33 | Ubi news | No |
| 35 | Privileges | No |
| 36 | Tracking 3 | No |
| 39 | Localization | No |
| 40 | Localization admin | No |
| 42 | Game session | No |
| 43 | Game session admin | No |
| 44 | Sub account management | No |
| 45 | IP to location | No |
| 46 | IP to location admin | No |
| 47 | Ubi friends | No |
| 48 | Skill rating | No |
| 49 | Uplay win | No |
| 50 | Match making (extension) | Yes |
| 51 | Title storage | No |
| 53 | User storage | No |
| 55 | Player stats | No |
| 60 | Spark | No |
| 71 | Offline game notifications | No |
| 72 | User account management | No |
| 84 | Siege admin | No |
Unknown protocols
These protocols do not have known protocol IDs, and as such we do not know whether they are game-specific or belong to the core protocols. Information about these protocols was obtained by scanning a games DDL information.
| ID | Protocol | Provided by Nintendo | Notes |
|---|---|---|---|
| ? | Web notifications storage | No | |
| ? | Title storage admin | No | |
| ? | User storage admin | No | |
| ? | Challenge Helper | No | Possibly protocol ID 105 based on here and here |
| ? | GameSessionEx | No | Possibly protocol ID 123 based on here |
| ? | TrackingExtension | No | Possibly protocol ID 100 based on here. It also seems like there may be multiple versions of this protocol, such has here |
Nintendo protocols
| ID | Protocol |
|---|---|
| 100 | Nintendo notification events |
| 101 | Friends (3DS) |
| 102 | Friends (Wii U) |
| 109 | Matchmake extension |
| 110 | Utility / Storage manager |
| 112 | Ranking |
| 115 | Data store |
| 116 | Debug |
| 117 | Subscription |
| 118 | Rating |
| 119 | Service item |
| 120 | Matchmake referee |
| 121 | Subscriber |
| 122 | Ranking 2 |
| 123 | AA user |
| 124 | Screening |
Game-Specific
| ID | Game | Protocol |
|---|---|---|
| 200 | Pokemon Bank | Shop |
| 200 | Rayman Legends | OLS storage |
| 201 | Super Smash Bros. Ultimate | Tournament |
Internal protocols
These protocols seem to be used internally by the servers. Likely for their inter-server communications. Many of these can only be observed through the Debug protocol. However some games implement subsets of these protocols.