How to play NDS Games ONLINE! (NO Modification, Original Hardware AND Emulator!)

Discussion in 'NDS - Tutorials' started by PRAGMA, Nov 7, 2018.

  1. PRAGMA
    OP

    PRAGMA GBAtemp Advanced Maniac

    Member
    11
    Dec 29, 2015
    Ireland
    127.0.0.1
    Credits

    shutterbug200 - The exploit "nds-constraint"
    Kaeru Team - The Custom Server that takes advantage of the exploit (Any custom server would probably work)
    Me - Tutorial

    Estimated Time of Completion of Tutorial

    Less than 10 minutes

    Requirements

    1. DeSmuME supported Device and a Rom OR Original Hardware and a Game Cartridge (flashcards and even dsimenu++ work!)
      Original Hardware requires a WEP supported Wi-Fi Connection (WPA2 is what your using right now, If you need a WEP Wi-Fi connetion, read in Preparation.
    2. If your using DeSmuME you need to install WinPcap: https://www.winpcap.org/install/default.htm

    Preparation


    • The only Preparation Original Hardware needs is a Wi-Fi Connection itself.
      But you cant just fire up settings click "ThanosCarWifi" and pop in your pass which is of course "AllThingsBalancedAsTheyShouldBe".
      This is because NDS only support WEP connections (some games but barely any support WPA which is still ancient).
      So your gonna have to custom up a connection.

      What I do is with an android phone I just make a Hotspot set to "Open" in HotSpot Spettings and then connect via the NDS.
      Once connected, most newer phones let you add a device to a Whitelist/"Allowed Devices" list thats handled by MAC Address.
      So simply connect -> whitelist -> settings -> Allow only Whitelisted Devices. Done.

      Now you have a "Open" supported Wi-Fi connection that no one can abuse.

    • Requirements:
      1. Possibly Ethernet rather than Wi-Fi
      2. NDS "firmware.bin" and "biosnds7.bin" and "biosnds9.bin" files from a DS System (They may be available online, I cant link you)
      Steps:
      1. Download the LATEST DeSmuME and when I mean Latest I mean latest commit (not latest version on the website):
        http://desmume.org/download/ (Nightly Builds, scroll down a bit, download the newest one - top of the list, make sure you get x64 if your system is 64bit).
      2. Extract it somewhere, I recommend "Program Files" if your willing to:
        Right Click the .exe, Properties -> Compatibility -> "Run this program as an administrator" near the bottom -> OK
        This is because without running as admin, it often has trouble with Read/Write permissions.
        Doing this allows all your shortcuts to it and such to run as admin without having to right click run as admin.
      3. Open the Emulator and click Config -> Wifi Settings (These settings may work different for you)
        Tick "Enable WiFi Emulation"
        Change it from Adhoc to Infrastructure.
        Change the Bridge Adapter to whatever device you have your settings on. (Do note, I have Ethernet, you MAY need Ethernet for this)
        Click OK.
      4. Now you need to place the firmware and bios files next to the DeSmuME.exe file.
      5. Click Config -> Emulation settings
        Tick "Use external BIOS images" and in the fields just set them to "biosnds9.bin" and "biosnds7.bin" by typing, no need to browse files.
        Tick "Use external firmware image" and again, just type "firmware.bin" but also tick "Boot from firmware (like the NDS)".
        Cool enough with these done you also get the original DS Menu and improved game performance :D


    Using a Custom Server with NO Modification w/nds-constraint

    1. Open your game and get to a point where you can enter Wi-Fi Connection Settings. (Pokemon Games require you to get into your house and save and then you can actually do settings).
    2. Click Connection Settings, Connection 1, and just setup your router (Emulator will have "SoftAP" with no password automatically pop up). It will try testing the connection once setup, it WILL fail here as the DS is trying to connect to the official servers and notes how its gone.
    3. Once it fails back out to "Connection Settings" and click on Connection 1, Scroll down to Auto-Obtain DNS and set it to No and edit the Primary DNS to 178.62.43.212 and the Secondary DNS to either your ISP's DNS, or Googles DNS: 8.8.8.8 or Cloudflare's new DNS (Recommended): 1.1.1.1 - Secondary DNS doesn't actually matter that much, if it ends up using Secondary DNS then the custom server in Primary DNS is dead or down.
    4. Save Settings, you can test it now if you wish.

    Done! Play online!
    Spread this tutorial so we can get a big player base, revive Mario Kart :P


    Explain mister!

    Why this is different to other tutorials and why people are talking about Custom Servers for the Nintendo DS all of a sudden is because of nds-constraint being found.
    In a very summed down tl-dr, it basically bypasses a check on connections made between the server and the nintendo ds that makes sure its from Nintendo and not spoofed by a Third Party (Research MiTM).
    Previously before this bypass was found, to be able to use Custom Servers people had to patch every single game they wanted to run. I believe this can be done by patching the rom files with third party software (Flashcards only in this case) or for original cartridges use an Action Replay code which for me anyway, never really worked, seems to have been way too specific to each game and region.

    Because of nds-constraint, we dont have to do anything except change the DNS so that we can change the DNS Resolve for lets say "wfc.nintendo.com" to "wfc.wiimfii.com".
    Then wfc.wiimfii.com would go ahead and use the nds-constraint exploit to bypass the check on Nintendo DS games.

    This is huge, you really should realize how big this is.
    It's now possible to play any game online (aslong as its supported by the server) without modifying roms, cartridges or consoles apart from changing ONE setting.

    Proof - Mystery Gift via/WFC is running right now on Pokemon SoulSilver

    [​IMG]
    [​IMG]
    [​IMG]
     
    Last edited by PRAGMA, Nov 11, 2018
  2. Ekam3284

    Ekam3284 Member

    Newcomer
    1
    Oct 8, 2016
    India
    Realy Love this

    just hoping would this work with Twloader on the 3ds :nds::yay3ds:
     
  3. PRAGMA
    OP

    PRAGMA GBAtemp Advanced Maniac

    Member
    11
    Dec 29, 2015
    Ireland
    127.0.0.1
    If its original TWL code, most likely would, im pretty sure this works with 3DS's native TWL Mode.
    EDIT: It does I did it and played couple games, maybe 10 or so!
     
    Last edited by PRAGMA, Nov 7, 2018
  4. Ekam3284

    Ekam3284 Member

    Newcomer
    1
    Oct 8, 2016
    India
    thanks for the guide
     
  5. Valery0p

    Valery0p GBAtemp Fan

    Member
    2
    Jan 16, 2017
    Italy
    IIRC Desume had very important de-sync issues in the past, expecially with real consoles on MKDS. IDK if something changed recently, but I suggest to use Melonds instead, it's confirmed that it works better with real NDSes
     
  6. PRAGMA
    OP

    PRAGMA GBAtemp Advanced Maniac

    Member
    11
    Dec 29, 2015
    Ireland
    127.0.0.1
    Playing a bunch of games of MKDS with ppl worldwide on my n2DS XL haha
     
  7. FEF1

    FEF1 Advanced Member

    Newcomer
    2
    Aug 22, 2018
    United Kingdom
    Aberdare
    Quick question, my DSIXL 25th Mario anniversary edition supports WPA2 encryption, would this work with that, or would I have to use my phone with WEP connection?
     
  8. KleinesSinchen

    KleinesSinchen GBAtemp Regular

    Member
    2
    Mar 28, 2018
    Germany
    WPA2 will NOT work for old DS-games
    https://www.nintendo.com/consumer/wfc/en_na/wep-wpa.jsp
     
  9. FEF1

    FEF1 Advanced Member

    Newcomer
    2
    Aug 22, 2018
    United Kingdom
    Aberdare
  10. Sophie-bear

    Sophie-bear The Coolest Bear Around

    Member
    4
    Jan 4, 2017
    United States
    I was able to make a functioning Wi-Fi Hotspot with WEP using Ubuntu (18.04 in my case). I haven't found a way to do it in recent versions of Windows, though.
     
  11. FEF1

    FEF1 Advanced Member

    Newcomer
    2
    Aug 22, 2018
    United Kingdom
    Aberdare
    I meant with a Android phone. Thanks for that bit info, though.
     
  12. Sophie-bear

    Sophie-bear The Coolest Bear Around

    Member
    4
    Jan 4, 2017
    United States
    Oh sorry. You probably can't unless you have a phone with multiple (Wifi) network adapters in it, which I'm not sure even exist.
     
  13. FEF1

    FEF1 Advanced Member

    Newcomer
    2
    Aug 22, 2018
    United Kingdom
    Aberdare
    Oh well, thanks for the reply anyway. Will figure something out.
     
  14. DarkMeowstic

    DarkMeowstic Member

    Newcomer
    2
    Aug 30, 2015
    Italy
    SO finally I can come back to the Wi-Fi Plaza??
     
  15. Plstic

    Plstic Guru Meditation Error

    Member
    6
    Apr 21, 2010
    United States
    Milwaukee WI
    I wouldn't even recommend desmume anymore.
     
  16. PRAGMA
    OP

    PRAGMA GBAtemp Advanced Maniac

    Member
    11
    Dec 29, 2015
    Ireland
    127.0.0.1
    Mobile Hotspots use Wi-Fi atleast in Oreo
     
  17. elenarguez

    elenarguez Member

    Newcomer
    1
    Jun 14, 2018
    Spain
    I dont work on my DS with Mario Kart, I don't know what I do wrong :(
    EDIT: Fixed, works, Mario Kart freezes at the time of trying to connect online :(
     
    Last edited by elenarguez, Nov 8, 2018
  18. DanTheManMS

    DanTheManMS aka Ricochet Otter

    Member
    4
    Jun 2, 2007
    United States
    Georgia
    This is really cool, glad the server is online. Interestingly my retail version of the MKDS cartridge freezes whenever I try to connect to WFC, but the rom on my Supercard DS One-i works. I initially hooked it up to an AT&T mobile phone's hotspot, but then remembered that due to NAT restrictions it's hard to play multiplayer games that way, so I switched to a T-Mobile phone hotspot and suddenly I was able to start finding players. Played a few games of Mario Kart and lost horrendously lol.
     
  19. vergil2012

    vergil2012 Member

    Newcomer
    2
    Mar 24, 2018
    Germany
    So with this method I can download DLCs which were not available since Nintendo shut down their servers (for example: Heroes of Mana, Pokemon Conquest > Downloadable Missions)?
     
  20. Hambrew

    Hambrew Member

    Newcomer
    1
    Oct 9, 2018
    United States
    I tried running through the steps on my 3DS running DSiMenu++, but I found out my own Wi-Fi was already compatible with the WFC setup, HOWEVER, My password for the router was declared wrong for no reason. I don't HAVE a phone, so I tried setting up a hotspot on my Windows 8.1 PC, and that TOTALLY worked. Then I tried it on the 3DS itself via System Settings, and that didn't work as well. In fact, it wasn't seen by the 3DS at ALL, unlike it runnning DSiMenu++! As I said, I have no phone to setup a hotpot for my 3DS, let alone running DSiMenu++, yet my Wi-Fi was detected
     
Loading...