gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > Nintendo WiFi Interview

#51640 - cybereality - Mon Aug 22, 2005 4:18 pm

The following interview was taken off of http://portables.p-nintendo.com/ (french site, but they had an english translation). It discusses some of the workings of the new Nintendo WiFi service and may be of some help to anyone attempting to crack the code. It is not clear what additional hardware/drivers are needed to hook your DS up to this service, but he makes it sound like its just plug-n-play, which should help if we plan on making networked applications in the future. Here is the interview, enjoy:

-----------------------------------------------------------------------------------

Jim Merrick replaced David Gosen after his resignation, in August last year. His role is central: he takes care of european marketing, after all he's Head of European Marketing, but he also spends a lot of time on the setup of the Nintendo Wi-Fi Connection service. He really was the best person to talk to, so here we go with the full transcript of an interview which isn't really like any other...

Jim Merrick, Head of European Marketing

Puissance Nintendo : How does it work between Nintendo and the third-party publishers, if they want to use the Nintendo Wi-Fi Connection Service. It will be free for the players, but will it be free for them to bring their games to the service?

Jim Merrick : Yes, it is free. They have the option to charge for their service if they choose to do so. It depends on the game architecture : something like Mario Kart doesn't require servers since the DS speak directly to each other when the match-making is done.

It's very low-cost to operate. But a Massive Multi-Player Persistant world-type of game is a very expensive thing to operate: they may decide to charge for something like that, it's entirely their option. But we will not take a percentage of what they charge. That's their business.

PN: Does it mean they will own their own network-infrastructure?

JM: Yes, that's right. But to use the match-making has no cost associated.

PN: Talking about match-making, how does it really work? We're quite interested in that, especially since Mario Kart DS will use this feature!

JM: We don't know exactly, we haven't finished the game yet. The essence is, first of all, that you can choose to play only with your friends, and friends we define as people you know in the real world. So there's a couple of different ways you can build up your buddy-list. One of the first ways is to personally interact it : I have my DS, you have yours, and we sort of exchange our contact information and add each other to our buddy list through the LAN. So when I go online, I know who you are and how to reach you. Nothing to worry about like screen name or things like that. Then if you have a friend with whom you can't meet personally but want to add to your buddy-list, there's of course a way to do that online.

So you can restrict your play only to people you know, or you can go and say I wanna play against people in Europe and I don't care about the skill-level, or I want to play against people around the world who have similar skills to mine. Anyway you wanna go. We know from our research consumers are concerned about the fact that if you're not the first player on the game, you get online and there's already someone being an expert. It's not so much fun to lose again, and again, and again... It's up to you to choose how you want to compete online, that's it.

PN: We know that the registration mechanism will be very easy, how will you ensure that the friend you intend to add is actually really your friend?

JM: There is no user identification or password that you enter. But each DS and each user on the DS is uniquely identified on the system. So it's very much like giving to someone your mobile number. We generate a kind of one-time password: say "Add me to your buddy-list, here is my thing". A number, a password, or something like that. When they go online, they find you and ask you to be added to their list. It's really like sharing your phone number with somebody.

PN: Does it also require each user to have a different name or nickname? Can you have more than one Jim on the NWC?

JM: No, you can have as many as you want. It's one of the criterias. If you want to go to America On Line, because their namespace is horrible, I can't be Jim, I'll have to be JimSomething. So we do want to have duplicate names. We know people want to be called Mario when playing Mario Kart, or Tom Nook when playing Animal Crossing. And what the developers have asked for is the ability to have names in context of the game. So you might be Mario while racing a Mario Kart game, and Tom while playing Animal Crossing, so you don't have to pick one name for all games. But underline there is a single identity which is used and we will allow you to connect that to your account on nintendo-europe.com or if you're in the US nintendo.com, so it can be linked together there. And you can look at your buddy-list, look at your high-scores, and compare, all through the webinterface.

PN: While we're at webinterfaces, will we also be able to browse the web from the DS when it gets online?

JM: It's certainly possible, of course, but what's interesting to us is to make sure online is a natural extension of the game. So you don't go to a completely different user interface saying now I'm on GameSpy and I'm looking for somebody. It just depends on how it looks like in each game. In Mario Kart, you get there, set up a tournament and find somebody to play with, but you never really see a user selection on the screen. It's still visually part of the race track, the kart in front of you... Animal Crossing is a different type of a game. You don't really want people you don't know coming into your village and chumping down your trees, turning up your house. It's a very personal thing, so you go to the train station, you buy a ticket to get to somebody else's village taking the train. It's very much in the context of each game, even though we have a server somewhere which manages everything: we mask that from the user.

PN: Will the launch of the service be worldwide?

JM: Yes, and we'd better have WiFi Connection Service up and running when the game launched, you know!

Jim Merrick, Head of European Marketing

PN: Will the registration be per system or per game?

JM: We do use the term profiles. Profile defines different WiFi connections or locations. At home you might have a profile that uses WEP encryption and doesn't need a username or password. And you might have to have, if you play at work, another profile with a username and password. It's not for Nintendo, it's for your connection to the Internet. We also have a profile for Nintendo free hotspots that we'll put at retail locations, shopping malls and so on. Once those profiles are set up, it will detect them automatically, but it just needs to know if it's your home SSID to define, it has to use this WEP key in this environment. In terms of you picking up a username, the first time you connect to WiFi Connection Service, DS will automatically generate a userID that you will never see, you don't need to, but there is one created which creates the account for you on the servers. As far as you're concerned, you just get on and play the game.

PN: Is it the same number you give to your friends in order to appear on their buddy-list?

JM: No, it's an easier number, it's not the same number. The unique identifier for that DS, for that player, is complex. It uses the MAC Address, the time, just to make sure it is unique, because it is generated offline. So we have to know it has to be unique. That one is a bit complicated, but it's OK because you will never see it. When you want to add somebody to your buddy-list, you ask your system to give you a unique password or key that you'll give to your friend.

PN: So you'll have some servers on the network taking care of this stuff?

JM: What happens is the following: on your system it will generate a password. You can do that when both are without a WiFi Connection. The next time you go online, you get the request from your friend who also went online at some stage, and that's it. It will wait for a certain period of time. Basically every time you connect via WiFi, we have to poll the server and check if there's anybody willing to add me to their buddy-list. It's very transparent.

PN: Which detail can you give about the Nintendo hotspots you're willing to install at retail stores?

JM: We will have some available at launch, but I don't know how many. Right now, we're talking to retailers. Some are very enthusiastic about the ideas, others don't want consumers standing around in the store playing games but not buying. Some hotspots will be installed somewhere inside the mall but not at a retail location.

We're doing a lot of different things at the same time. Like we have in the booth the DS download service, we're adding those as well. But then do we install our own DSL line, or do we use the connection of the retailer? It really depends on the retailer. We don't really need much bandwitdh, so it's ok to use the existing network connection, but we're discussing this with the retailers.

PN: At E3, we had a great surprise called DS Speak, what's happening with this project?

JM: Voice over IP is a very interesting idea, and there's a lot you can do with it. I don't think the DS makes a very good telephone. It was a technical demo and how we might incorporate that in games in the future, I don't know. But I see it as something we'd like to bring into a game, where communication plays a fundamental part of the game. We don't want to get into the IP Phone type of business.

The problem with such a technology, and we saw it with XBox live, is that it takes so much power out of the system, while developers always want to use each once of the power for the gameplay. So it's hard to give up memory, processor and bandwidth in order to do voice.

PN: Mario Kart DS is a 60 frames per second game, when played local. Will online gaming going to affect performance?

JM: In terms of the graphic framerate, it will be the same, but there is the communication framerate to take into consideration. And that's dynamic: it's going to depend on the latency of the people you are playing against, which can be highly variable. If I find somebody who is only two hubs away, it will be easy and fine, but somebody in Tokyo via the whole world, then we have a latency with everybody. You have to balance the latency between all players.

In our games, we have to do some kind of error-handling and predicting. It's a good example with Mario Kart: if the kart is moving in this direction, it will probably keep moving into that direction: maybe we miss a packet of information, but each DS continues to draw that kart going into that direction till it receives a new TCP packet with the correct information. It works, the same applies to items.

PN: What is happening with Animal Crossing, now with a 2006 release date?

JM: In Europe, it has always been 2006, so there's no change for us. What's important to me in Europe is the delay between the launch in Japan, in the US and in Europe. The strength of this franchise is not that strong in Europe because of it was soooo late. People lost interest and Nintendo lost credibility taking so long to bring that game. We won't make that mistake again. It's a huge amount of text to localize, but we already have teams working on localization.

PN: To summarize, which games will use the WiFi Connection Service?

JM: Mario Kart, then Tony Hawk might be second, followed by Animal Crossing as third, and there's a number of projects that we haven't announced yet.

PN: Great! That's it from us, many thanks for your time, and enjoy the show!

JM: You're welcome !

#51654 - TJ - Mon Aug 22, 2005 7:03 pm

None of this helps to crack the DS WiFi.

It doesn't matter if their are official games using WiFi or not, that still doesn't change anything in the homebrew world.

#51710 - The 9th Sage - Tue Aug 23, 2005 3:29 am

TJ wrote:
None of this helps to crack the DS WiFi.

It doesn't matter if their are official games using WiFi or not, that still doesn't change anything in the homebrew world.


Hm, now I'm right in thinkiing that a DS with FlashMe installed is still unique right? That it still has that unique ID (these partly being, I'm assuming, the reason you had to register for the beta firmware testing period)?

If not, this could cause some trouble. O_o
_________________
Now with 20% More Old Man from Zelda 1 than ever before!

#51712 - cybereality - Tue Aug 23, 2005 3:35 am

TJ wrote:
None of this helps to crack the DS WiFi.

It doesn't matter if their are official games using WiFi or not, that still doesn't change anything in the homebrew world.


Well the interview alone doesn't provide enough tech info to crack anything. But if you were really serious about cracking the code, you could use Mario Kart as a basis for something. For example logon to the NiFi for the first time and packet-sniff everything it was sending Nintendo. Then do the same on a brand new DS. You can check for the difference in the two dumps and that small difference would be the Nintendo ID or DS MAC address or whatever. Obviously there would be a lot more to it, and I'm no expert, but I'm sure it could help somebody.

// cybereality

#51715 - The 9th Sage - Tue Aug 23, 2005 3:59 am

cybereality wrote:
TJ wrote:
None of this helps to crack the DS WiFi.

It doesn't matter if their are official games using WiFi or not, that still doesn't change anything in the homebrew world.


Well the interview alone doesn't provide enough tech info to crack anything. But if you were really serious about cracking the code, you could use Mario Kart as a basis for something. For example logon to the NiFi for the first time and packet-sniff everything it was sending Nintendo. Then do the same on a brand new DS. You can check for the difference in the two dumps and that small difference would be the Nintendo ID or DS MAC address or whatever. Obviously there would be a lot more to it, and I'm no expert, but I'm sure it could help somebody.

// cybereality


Ah...are you thinking a PSO type of exploit or something?
_________________
Now with 20% More Old Man from Zelda 1 than ever before!

#51719 - TJ - Tue Aug 23, 2005 4:24 am

Quote:
But if you were really serious about cracking the code, you could use Mario Kart as a basis for something.


If you mean dumping the game and trying to reverse anything from it, that isn't going to happen. Everything in the DS libs has been reverse engineered without any material from Nintendo, software or otherwise. Anything else would be of questionable legality.

And the DS MAC is already clearly visible.

There is nothing that can be sniffed from the DS that will change anything in the homebrew scene, for homebrew purposes, the registers need to be mapped out, and a TCP/IP stack needs to be adapted to the TX and RX functions of the hardware.

#51722 - cybereality - Tue Aug 23, 2005 4:43 am

Like I said before, I am not expert on low-level stuff like TCP registers. I am just an indy game designer that would like to have wifi access on my DS (for muliplayer online DS games). I wasn't suggesting anyone rip code from the ROM dump. I was just saying that it may be useful to see how Mario Kart accesses the network by capturing the actually information it sends over the wifi. The 9th Sage had it right. It could be more of a PSO Gamecube exploit but on the DS. So the DS would think it was connecting to Ninendo's server but actually just a program on your computer. But like I said, I'm no expert so I dont know if this is even doable, just that it is possible. Also, I thought that the interview would be of interest to people on the board.

#51898 - Shoxz - Wed Aug 24, 2005 11:09 am

No mention of a USB thing that we can connect with? :(
_________________
-Shoxz,
Webdesigner
PHP, HTML, and VB programmer

Also known as Unreal, and Kez.

#51908 - cybereality - Wed Aug 24, 2005 2:00 pm

Quote:
PN: Will the registration be per system or per game?

JM: We do use the term profiles. Profile defines different WiFi connections or locations. At home you might have a profile that uses WEP encryption and doesn't need a username or password. And you might have to have, if you play at work, another profile with a username and password. It's not for Nintendo, it's for your connection to the Internet. We also have a profile for Nintendo free hotspots that we'll put at retail locations, shopping malls and so on. Once those profiles are set up, it will detect them automatically, but it just needs to know if it's your home SSID to define, it has to use this WEP key in this environment. In terms of you picking up a username, the first time you connect to WiFi Connection Service, DS will automatically generate a userID that you will never see, you don't need to, but there is one created which creates the account for you on the servers. As far as you're concerned, you just get on and play the game.


The above answer leads me to believe that the Nintendo WiFi service is just special software/drivers you install and does not require any special hardware attachment. Since it is setup for malls and retail locations there has to be some sort of plug-and-play technology. I think if there was a special USB dongle, he would have mentioned it and how easy it would be to use.

Seeing as people already have wireless booting homebrew, it doesn't seem to hard for Nintendo to do the same on their own system. That still doesn't mean it will be easy to get the DS online, just that all the hardware we need is already available. I guess we'll see.

#51936 - TJ - Wed Aug 24, 2005 9:11 pm

There is nothing to see.

Since E3 2004, Nintendo said the DS was completely WiFi compatible, all you need is a WiFi router, and you get online.

There is no special hardware or "drivers".

#51948 - tepples - Wed Aug 24, 2005 9:53 pm

It's most likely that the UDP/IP stack is built into each separate game. If that's the case, you'll need to start the DS with a supported game in order to use a wireless Internet connection. But then it opens up a whole bunch of possible buffer overflows (to homebrew execution like the Agent Under Fire and MechAssault hacks for Xbox) if some game is released with one or more missing buffer length checks, even if it isn't a Phantasy Star Online-caliber hole.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#51956 - Spaceface - Thu Aug 25, 2005 1:05 am

Shoxz wrote:
No mention of a USB thing that we can connect with? :(
This annoyed me too.. they talked about hotspots, not about home connectivity.. you don't want to look for other people standing at the accesspoints worlwide, right.. anyone knows more bout this?

#51958 - Chris2fur - Thu Aug 25, 2005 2:20 am

Spaceface wrote:
Shoxz wrote:
No mention of a USB thing that we can connect with? :(
This annoyed me too.. they talked about hotspots, not about home connectivity.. you don't want to look for other people standing at the accesspoints worlwide, right.. anyone knows more bout this?


Like he said up above, all you'll need to us your DS online at home is an 802.11 wireless access point. You can pick one up at most electronics stores to tie into your existing home network (or to create a new wireless one).

#51961 - deltro - Thu Aug 25, 2005 2:31 am

This is going to kick ass, but I prefer the idea of MP:H online through Tunneling. >__>