Wiimmfi-Project (en)

Aus Wiiki
Wechseln zu: Navigation, Suche
Wiimmfi-Projekt

Wiimmfi-dark.svg Wiimmfi-light.svg

Flag-uk.svg   English language pages
Wiimmfi Project
Concepts
Software


As of February 27th, 2014 Nintendo announced that the »Nintendo Wi-Fi Connection« service will shut down on May 20th, 2014[1]. The reason behind this was that Gamespy was shutting down servers on command of IGN, who bought Gamespy in August 2014[2]. Nintendo WFC was mainly hosted by Gamespy's servers, which unfortunately also suffered the downfall. Affected titles are: all Wii and DS games, including Mario Kart Wii.


Project history

Wiimm, who was very interested in Mario Kart Wii, started to analyze the network traffic online. He luckily did this 15 months before the announcement of Nintendo for shutting the service down, in the month of November, 2014. Using all the network analyses Wiimm developed a tool called mkw-ana, a hex dumper which detects network protocol details and prints them in a human-readable format.

Since then, he made complete network and video dumps during his MKW online races, in an effort to develop more detail in the analyzer he made. His goal was to ready his very own server in case Nintendo Wi-Fi Connection ever shut down.

Only a few days after Nintendos announcement, the "Wii-Server-Project[3] was founded, which was later renamed to the »Wiimmfi-Projekt«.

Because of the existing knowledge and analysis, the Wiimmfi-Team was able to set this replacement server up by May 2012. This server was fortunately running well from the start, so everyone could use it.

Wiimmfi-Project

Not only the server is involved in the Wiimmfi-Project, but also useful tools / programs are. These allow the Wiimmfi-team to better shape the project. Some are available to the public so they can use it to better understand things or to report people breaking rules on the community of Wiimmfi. Some examples of such tools running in the background:

mkw-ana
The tool mkw-ana is at the top of the list, because it is the first tool made. This tool simplifies the analysis of made network dumps by simplifying the contents and printing them out in a human-readable format. Although it was designed to be used only for Mario Kart Wii, it too is helpful at analyzing other games.
Main servers
The main server is composed of six different servers, all having access to the same database. Each game uses all of these servers. This servers are:
  • NAS: Login server
  • GPCM: Each wii has a GPCM-process, which manages the whole communication part.
  • GPSP: This server contains information about friends and friend relations.
  • MASTER: This server receives matchmaking information from the clients and puts it into the database.
  • MS: This server is used by the clients for matchmaking. It's the opposite of MASTER.
  • NATNEG: This server is used to do NAT Negotiation, which is necessary when both players are behind a NAT server.
Sub servers
Some games do need other servers for data or statistic exchange, for example:
  • SAKE: Exchange of small data files, e.g. Miis or ghost data.
  • GAMESTATS: Manages game statistics.
  • DLS1: Server for game-updates.
  • RACE: Mario-Kart-specific server for rankings and competitions.
Competitions

After a long time of development, Wiimmfi now finally supports MKWii competitions / tournaments. Click on this link for a tutorial on how to patch your Wii to download competitions from Wiimmfi:
Wiimmfi MKWii competition service
This page will also tell you if a competition is running (and if not, when the next one will start), and you can view rankings of previous competitions.

wiimmfi.de
wiimmfi.de is not only the main domain for the game servers, but also an information- and settings portal. It shows statistics about server usage, and one can set up how their client behaves on the server. (e.g. the OPENHOST setting).
Registered users can login at the portal and set up their preferences and actions depending on their rights.

Gamespy Retrieving Tool

For each profile (save file with friend code), there is a profile ID and a nickname pair. Only the Wii console of the user and the server database knows both of them. When logging in, the Wii sends the nickname: the server then answers with the related profile id. If the profile id is incorrect, the game aborts the login and prints error 60000.

The old Gamespy servers were queried a long time to get those pairs. As you can only get pairs of your friends, and not your own pair, friend lists also had to be managed.

Until the Gamespy shutdown at July 25, information was collected from 1 534 291 consoles: 2 908 513 nicknames and 14 074 595 friendships.

web formula
This Web formula was made to put basic data into the Gamespy Retrieving Tool. It works like this: when one friend code comes in to the database, information about its friends, friends of those friends and so on kept getting collected and collected, expanding the database.

Wiipid Extractor
The Wiipid Extractor is a Homebrew application on the Wii, which reads the PID and Nickname from all game save files on the Wii console. This data will then be sent to the database. This is now the only way to transmit an unknown profile to the server - besides linking your console to your WHB account and manually setting the friend code on https://wiimmfi.de/assign-console

Wiimmfi Game patcher
The Wiimmfi game patcher allows you to modify your game so it can connect to the Wiimmfi server rather than the NWFC server. There are two different Wiimmfi game patchers: The Image patcher which patches an entire dumped disk image, or the Homebrew application which patches a game in the disk drive.

Dolphin Emulator users

If you are looking to play on Wiimmfi with Dolphin, you will need to dump your Wii's internal memory (NAND) to the Dolphin emulator. A guide will be made soon: Using Dolphin on Wiimmfi

Notice:

The Dolphin Emulator can slow down mid-race. This adds up to that person's delay, which often results in them getting a higher place in the scoreboard as they won the race earlier and his time is shorter than other players. This is a problem and a very unfair advantage: people who continuously slow down in FPS will be banned.

Updates and Maintenance

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 time is set between 16:30 and 17:30 UTC at every day. In this time the server may be stopped for updates and other things without further announcement. Don't be surprised if you are kicked or if login is not possible during this period. This time will also used to insert new retrieved friend codes.

An overview about other (planned) Maintenance times is here.

Links

References

  1. Nintendo: Discontinuation of the »Nintendo Wi-Fi Connection«
  2. Wikipedia: Gamespy's shutdown
  3. WHB-Forum: »Wii-Server-Projekt« alias »Wiimmfi-Projekt«