Difference between revisions of "Wiimmfi"

From Custom Mario Kart
Jump to navigation Jump to search
(→‎Games ready to test: The Last Story is on the list on the enabled games website, so I thought it should be here too. Please remove if there was a reason for its exclusion.)
Line 46: Line 46:
 
* Pro Evolution Soccer 2010
 
* Pro Evolution Soccer 2010
 
* Pro Evolution Soccer 2011
 
* Pro Evolution Soccer 2011
 +
* The Last Story
  
 
It seems that DS games also need a patch to replace ''https'' requests by ''http''. [http://www.mediafire.com/download/s5ucc79m6xzrtis/SslPatcher_v1.4.zip Here] you can find a patcher that should work with all DS games.  
 
It seems that DS games also need a patch to replace ''https'' requests by ''http''. [http://www.mediafire.com/download/s5ucc79m6xzrtis/SslPatcher_v1.4.zip Here] you can find a patcher that should work with all DS games.  

Revision as of 15:10, 17 May 2014

Wiimmfi-300.png

Nintendo has announced that the Nintendo Wi-Fi Connection service will be discontinued on May 20, 2014. This will impact all DS and Wii games with online features, including Mario Kart Wii. Wiimm had been analysing the Mario Kart Wii network traffic since November 2012 and had already written an helper tool named mkw-ana. And so he decided together with other people to create the Wii-Server Project to replace Nintendo's servers for Mario Kart Wii and perhaps for other games.



State of the Project

The tester team around Wiimm already played versus and battle in rooms, in regions and worldwide. They played standard Mario Kart Wii and Wiimms MKW-Fun. The latter is based on CTGP-R v1.02.

On Sunday, different players met >90 minutes in region 125 (MKW-Fun 2014-04) without any problems. For Mario Kart Wii, the custom server is very stable now. The only problem may be the total number of players — time will show.

Before playing on the new server, the game images must be patched to exchange the domain and to replace https by http access. There are 2 patchers available:

Game Patcher

To play Wii games using the custom server, the games must be patched. There are 2 patchers for USB-Loader, one for Mario Kart Wii and one for other games:

For Riivolution users, MrBean35000vr is on the way to create a channel, that will patch the strings on the fly.

Confirmed games

The following games can be played using the custom servers:

  • Mario Kart Wii
  • Animal Crossing: City Folk/Let's Go to the City!
  • Super Smash Bros. Brawl

Don't forget that the custom server runs in test mode and the development is not finished.

Games ready to test

The following games are enabled and waiting for tests:

  • Animal Crossing: Wild World
  • Mario & Sonic at the London 2012 Olympic Games
  • Mario & Sonic at the Olympic Games
  • Mario & Sonic at the Olympic Winter Games
  • Mario Kart DS (NTSC-U-patch, PAL-patch)
  • Mario Strikers Charged (PAL+JAP)
  • Pokemon Battle Revolution Wii
  • Pokémon Diamond (NTSC-U-patch
  • Pokémon Pearl (NTSC-U-patch)
  • Pro Evolution Soccer 2008
  • Pro Evolution Soccer 2009
  • Pro Evolution Soccer 2010
  • Pro Evolution Soccer 2011
  • The Last Story

It seems that DS games also need a patch to replace https requests by http. Here you can find a patcher that should work with all DS games.

Here you can find always a list of enabled games.

Updates

2014-05-11 14:30 UTC
  • Some of the users had created new profiles while connected to the custom servers. These Profiles are invalid now and you should remove them.
  • Henceforth, new profiles are stored permanently, even on a server update.
  • Mario Kart Wii: Meeting of non-friends works now much better and faster. The solution was to insert a "sleep(1/2 sec)" at the right place.

Maintenance Time

The wiimmfi-server is running in test mode. There is a second server for the active development. And so major updates must be done frequently.

The maintenance is set between 15:00 and 16:00 UTC (17–18h CET) at every day. In this time the server may be stopped for updates and other things without further announcement. Don't be astonished if you are kicked or if login is not possible during this period. This time will also used to insert new retrieved friend codes.

Implementation

Wiimm decided to implement the code in PHP as a fast solution and to find out the protocol details. From the beginning it was clear that it must be rewritten in C or C++ for performance reasons. While developing, there were some other issues, so one of the servers is already implemented in C.

Server NASWII/NAS

Server NASWII is the https based login server. NAS is an old NDS implementation for http. Both can be interchanged. The server is implemented using APACHE2 and PHP5.

At the moment, only logins are accepted with old and new profiles. Complete new savegames send a request to get their unique console nickname from the server. This is not implemented yet.

Server GPCM

If entering the WFC, the Wii connects to the Server GPCM using TCP. The connection is closed, when leaving WFC. The server is used for general maintenance and for message exchange between the clients.

It is implemented as PHP script. Because of interprocess communication (transferring messages) an re-implementation in C is planned. Currently the custom server does not support all kinds of messages.

Server GPSP

Server GPSP is used to retrieve information about friends. The Wii connects and disconnects frequently using TCP. We use Nintendos GPSP server to retrieve the profile_id and nick pairs.

Server GPSP is fully implemented as PHP script.

Server MASTER

Server MS

Server NATNEG

Server NATNEG is used to establish a connection between two players both being behind NAT. The clients only communicate with this server when they try to connect to another player.

Server SAKE

Server GAMESTATS

Using old profiles

For each profile, there exists a profile id and nick name pair. Only the Wii of the user and the server database knows both of them. At login, the Wii sends the nick name and the server answers with the related profile id. If the profile id is wrong, the game aborts the login.

If you want to use your old profile with the new custom servers, you must use the Web Formula to register it. The server will then try to retrieve your related nickname. This retrieving works only, if you have registered friends, and at least one friend has registered your profile.

This data retrieving only works until 18th May, 2014. After this date, there will be a homebrew app (thanks to Maschell) which reads the necessary data out of the save game and adds it to our server, but this only works for Mario Kart Wii. You can download the app here. Simply start it and all your MKWii profiles will get transmitted to our server.

If you want to use one of your old profiles, please use one of them during your first connection. It may lead to problems if your first connection is done with a new profile.

Friend Code Market

It seems that there are many people who are playing online, but have never added any friends. For those people without friends, there exists a Friend Code Market:

It is also possible to exchange your friend codes in other forums or at the discussion page.

Links

Project forum @ Wii-Homebrew.com
Other forums