Display your 3DS game status on Discord!
This README will be split into two sections:
By using this app, you agree to the terms listed in TERMS.md.
This project connects to a self-hosted API (or one provided by me) and fetches data received by mimicking a real 3DS connecting to the friends service and receiving friend data.
I'd like to thank:
- kinnay and his NintendoClients
- NintendoClients is what this program uses to pretend to be a real 3DS.
- hax0kartik and his 3dsdb
- 3dsdb is an open-source project that includes data about games on the eShop. A modified version of it is used to retrieve the game's name and icon url.
- HEYimHeroic and her mii2studio
- mii2studio is a command line tool written in Python that allows the user to convert between various versions of Nintendo Mii formats. I have created a modified version of it internally to convert CFSD (really,
MiiData
) to Mii Studio code.
- mii2studio is a command line tool written in Python that allows the user to convert between various versions of Nintendo Mii formats. I have created a modified version of it internally to convert CFSD (really,
- jaames and his mii-qr.py
- mii-qr.py is a Python script that converts from the encrypted QR code format to normal CFSD. For whatever reason, a direct connection to the friends service on the 3DS returns a QR code, so this is insanely useful. Thank you.
- qwerty for her pypresence
- pypresence is a useful Python module that allows developers to connect their games to Discord via Python. It is how 3DS-RPC sends Rich Presence data to Discord.
- StartBootstrap for their startbootstrap-sb-admin
- startbootstrap-sb-admin is a template using bootstrap which is how I created the friends network website!
*Until this project has an official release, it is recommended to follow the directions written here.
Download the app from the latest release and run!
Once ran, the app will ask for you to add a friend on your Nintendo 3DS. This is for the express purpose of pulling your currently playing Nintendo game.
-
Open Discord and 3DS-RPC
-
Add the bot's friend code provided
-
Enter your own friend code
- Profit!
- Each update is around every ~30 seconds (keep in mind, the backend is updating at a different rate than the client, so this may vary). They are automatic, but it may take upwards of one minute after the program begins. To make certain that everything is in order, check your 3DS' friends list to verify the bot account has added you back.
If none of the below Qs and As help with your problem, feel free to file an issue. Alternatively, you can join the 3DS-RPC Discord server for a better back-and-forth method of communication with me!
Q: Whenever I play a game, 3DS-RPC won't change from the home screen!
A: Firstly, try waiting ~30 seconds, as the application has a fairly slow response time. Secondly, make sure that you've enabled "Show friends what you're playing?" on your 3DS' friends app.
Please don't DDoS me...