Skip to content

Latest commit

 

History

History
61 lines (37 loc) · 2.24 KB

README.md

File metadata and controls

61 lines (37 loc) · 2.24 KB

Nintendo Badge Arcade server

An open-source implementation of the servers for Nintendo Badge Arcade.

Current status

Nintendo Badge Arcade uses NEX as a communication method between the game and the servers. The previous servers I made weren't using NEX. Instead, they were more like a patch to store the game saves locally.

Currently, I am working on implementing proper servers over NEX. You can find the current progress on the folders of this project:

  • badge-arcade-authentication contains the NEX authentication server.
  • badge-arcade-secure contains the NEX secure server.
  • original contains the original implementation.

How to use

This is the guide to self host the simplified AWS implementation.

First, installl the dependencies using npm under the original folder:

npm install .

When the server is installed, copy the example.config.json to config.json and personalize it to your needs.

After that, run the server using NodeJS:

node src/server.js

This will create the data folder, which will host the main data for each account.

Now, use a proxy server to redirect your traffic from your Nintendo 3DS to the server. If you will use mitmproxy, you can use the Python script available with the code (not before also customizing the script (not before also customizing the script):

mitmproxy -s badge-arcade.py --no-http2

Disclaimer: You may need to use a custom mitmproxy repository like mitmproxy-nintendo, which include the patches for mitmproxy to work under the 3DS.

What works

  • Connect to the servers
  • GET your saved data
  • POST new data
  • Handle creating new accounts

Internal workings

Documentation is being moved to 3dbrew. You can check out the website to see the internal workings.

Credits

Special thanks to:

  • The Pretendo Network team and the developers of all of the reverse-engineering tools.
  • The documentation of the NEX protocol made by kinnay.

The codebase of this project is based on Pretendo Network's BOSS servers.