kinnay / NintendoClients

Python package to communicate with Switch, Wii U and 3DS servers
MIT License
537 stars 63 forks source link

Animal crossing example documentation #130

Open damartcode opened 1 month ago

damartcode commented 1 month ago

Do you happen to have the documentation for the Animal Crossing protocol, or did you just reverse the single finding island with Dodo code feature?

Also, do you have a documentation on the setup you use on capturing the traffic to avoid getting banned?

kinnay commented 1 month ago

There isn't much documentation about AC:NH currently. It uses a combination of NEX and a custom HTTP API. If you want to find out something specific, I would recommend inspecting the traffic.

Capturing traffic should be safe. My own setup is as follows: 1) Use exefs_patches to disable CA verification. 2) Run Charles on a laptop and enable SSL proxying. 3) Configure the IP address and port of the Charles proxy in the system settings on the Nintendo Switch.

Any other proxy that can intercept SSL traffic should work just as well though.

Some servers, such as dauth, require a device certificate. In this case, you have two options:

1) If you want to capture the traffic to these servers: configure Charles to use your device certificate in the connection with these servers. 2) If you don't care about the traffic: add the servers to the SSL blacklist, such that Charles does not try to intercept the communication with these servers.