Online Play is a functionality of the Nintendo 3DS to play games online with other people.
Connection
First a connection to nasc.nintendowifi.net is established and the resource /ac is requested with the POST method to get the actual address of the game server and a ticket for authentication on the game server.
A typical request to nasc.nintendowifi.net/ac has this format:
Header:
POST https://nasc.nintendowifi.net/ac HTTP/1.1 Host: nasc.nintendowifi.net X-GameId: 00003200 User-Agent: CTR FPD/000F Content-Type: application/x-www-form-urlencoded Content-Type: application/x-www-form-urlencoded Content-Length: 841
Body:
gameid=MDAwMDMyMDA%2A&sdkver=MDAwMDAw&titleid=MDAwNDAxMzAwMDAwMzIwMg%2A%2A&gamecd=LS0tLQ%2A%2A&gamever=MDAxNA%2A%2A&mediatype=MA%2A%2A&makercd=MDA%2A&unitcd=Mg%2A%2A&macadr=MTEyMjMzNDQ1NTY2&bssid=MTEyMjMzYWFiYmNj&apinfo=MDQ6MDAwMDAwMDAwMA%2A%2A&fcdcert=<base64 encoded fcdcert>&devname=<base64 encoded name of the console (utf-16)>&servertype=TDE%2A&fpdver=MDAwRg%2A%2A&devtime=MjEwMTAxMjAyNjAx&lang=MDE%2A®ion=MDI%2A&csnum=<base64 encoded serial number of the 3DS system wihtout check number>&uidhmac=<base64 encoded of ?>&userid=<base64 encoded Nex [[Principal ID]]>&action=TE9HSU4%2A&ingamesn=
Key | Value | Value decoded | Notes |
---|---|---|---|
gameid | MDAwMDMyMDA* | 00003200 | |
sdkver | MDAwMDAw | 000000 | |
titleid | MDAwNDAxMzAwMDAwMzIwMg** | 0004013000003202 | |
gamecd | LS0tLQ** | ---- | |
gamever | MDAxNA** | 0014 | |
mediatype | MA** | 0 | |
makercd | MDA* | 00 | |
unitcd | Mg** | 2 | |
macadr | MTEyMjMzNDQ1NTY2 | 112233445566 | MAC address of the console. Only the digits |
bssid | MTEyMjMzYWFiYmNj | 112233aabbcc | |
apinfo | MDQ6MDAwMDAwMDAwMA** | 04:0000000000 | |
fcdcert | |||
devname | Name of the console in UTF-16 | ||
servertype | TDE* | L1 | |
fpdver | MDAwRg** | 000F | |
devtime | MjEwMTAxMDkyMDMx | 210101092031 | |
lang | MDE* | 01 | |
region | MDE* | 01 | |
csnum | Q0VGMTIzNDU2Nzg* | CEF12345678 | Serial number of the device without the check digit |
uidhmac | MGFmODZmYmQ* | 0af86fbd | |
userid | MTIzNDU2Nzg5MA** | 1234567890 | Nex Principal ID |
action | TE9HSU4* | LOGIN | |
ingamesn | empty | empty |
Typical response to the above request:
Header:
HTTP/1.1 200 OK NODE: pd42wfiap02 Content-Type: text/plain;charset=ISO-8859-1 Content-Length: 252 Date: Tue, 01 Jan 2021 09:20:55 GMT Server: Nintendo Wii (http)
Body:
locator=MzQuMjExLjIzNS4xMzU6NjAwMDA*&retry=MA**&returncd=MDAx&token=<Token for authentication on the game server>
Key | Value | Value decoded | Notes |
---|---|---|---|
locator | MzQuMjExLjIzNS4xMzU6NjAwMDA* | 34.211.235.135:60000 | IP address and port of the game server |
retry | MA** | 0 | |
returncd | MDAx | 001 | |
token | Token for authentication on the game server. This token cannot be verified by the Nintendo 3DS |