Play Emulated Arcade Games Online

Can’t find four friends to crowd around your home arcade cabinet? Look online for team play.

One of the few arcade features that consoles, PC ports, and emulation can’t always provide is socialization. It’s fun to have the high score in a shooter, to take on all comers in a fighter, and to enter battle with three friends in a quarter-eating adventure game. You can recreate the games, but unless you have your own arcade cabinet ( [Hack #58] ) or an appropriate emulator ( [Hack #10] ) and can convince your friends to play along, you might think you’re stuck.

Fortunately, the clever Kaillera bridging software can play emulated titles online.

Introducing the Kaillera Middleware

As the word “middleware” suggests, there’s a key difference between Kaillera and the other retro emulators we’ve discussed. Kaillera software actually interfaces with existing emulators to allow multiplayer arcade games—not originally playable over any network—to play online. However, to make this work, the emulator developers must have incorporated Kaillera into their software.

The main Kaillera-enabled emulator is a MAME variant named MAME32k. It’s available with the Kaillera client itself on the site’s download page (http://www.kaillera.com/download.php). This is sufficient to play games. If you want to host games, you’ll need a completely different Kaillera server. The server is a standalone application also available from the download page. In general, the client is embedded in the emulator in some way, but the server always stands alone.

Fortunately, as with many FPS games, you may be able to find a public server without having to run your own. The front page of Kaillera.com lists several such servers (see Figure 1-11). The biggest servers can hold up to 100 people. You may wish to host your own server for ping, ease of use, and privacy issues, however—but it’s up to you.

Listing the servers in Kaillera

Figure 1-11. Listing the servers in Kaillera

The Kaillera site also has a fairly decent visual explanation of how to start up a game and to find the gaming partner of your dreams; see its screenshots page (http://www.kaillera.com/shots.php). The whole process is fairly self-explanatory, presuming you understand the basic network gaming concept that the lower the ping, the more likely you are to have a smooth game.

Troubleshooting Kaillera Play

The designers of these old games never designed in Internet play, and in many cases, the games predated the modern Internet. You’ll likely run into several similar problems. Fortunately, the Kaillera page has a quality FAQ (http://www.kaillera.com/faq.php) that explains many of the more common problems. Let’s highlight a few of the less obvious ones:

  • Lag is always an issue in online gaming.

  • Some of the largest Kaillera users are in the East, particularly China and Hong Kong, so the FAQ makes a good point about trying to play on a server over very long distances. However, Kaillera uses UDP, not TCP/IP. Lost packets are gone forever, but the lack of nondelivery acknowledgement in UDP tends to reduce lag. From a practical point of view, try to pick low-ping servers to play on, ideally within the same continent as yourself (see Figure 1-11). Keep your Connection setting on Good to send out enough packets to prevent a choppy connection.

  • Desynchronization can be a major problem.

  • This slightly more serious problem occurs when network packets are dropped or possibly corrupted. Without in-game error checking, Player 1 may correctly press the A button to pick up a power-up and receive 1,000 points, but the packet that explains this never actually reaches Player 2. Now both players have encountered divergent behavior. One good way to check for desync is by comparing the scores, according to the FAQ. Both players should see the same point values because they’re playing the same game.

  • The Kaillera server comes with optional Unix flavoring.

  • If you’re having trouble starting the Kaillera server, bear in mind that there’s a version that runs as a Unix/Linux daemon: ./kaillerasrv. You can treat it as a standard Unix utility. For example, to count the number of visitors, pipe the output to a log, and then type this at the prompt:

                grep connected kaillerasrv.log -c

If you’re not quite that elite, there’s also a Windows version available from the Kaillera download page (http://www.kaillera.com/download.php).

Selected Kaillera-Compatible Emulators

MAME32k is the first and most obvious emulator that uses Kaillera (think anything from great old titles like Rampage, through later ’80s games such as Arkanoid, right up to ’90s cult titles such as Cadillacs And Dinosaurs, plus many, many more), but there are several other cool alternatives in various stages of development. The following sections describe the highlights.

Kawaks

Though much more contemporary in terms of the material it emulates, and with some MAME overlap, Kawaks is often the most popular emulator over the entire Kaillera server sets. It handles Neo Geo and Capcom CPS2 games, although these games are sometimes commercially available elsewhere; it’s often a little shady in copyright terms. Still, it’s excellent software, especially for one-on-one fighting titles such as the King Of Fighters series, classic Street Fighter II variants, and newer one-on-one fighters such as Garou. See http://kawaks.retrogames.com/.

NESten

This fairly simple, vanilla NES emulator for Windows comes with Kaillera built in, so you can play some of your favorite Nintendo games against others over the Internet. This isn’t just neat, it’s spectacularly good; who can resist a little Duck Hunt or even a little Tengen Tetris? Download it from http://tnse.zophar.net/NESten.htm.

WinUAE Kaillera

This marvelous software allows Commodore Amiga fans to get their game on in a multiplayer fashion, thanks to an adaptation of the popular WinUAE Amiga emulator—think of amazing old titles like Sensible Soccer, IK+, and Speedball. Unfortunately, a second release has seen years of delay, at least at the time of writing. The available version is still an excellent start. Find out more at http://kaillera.abime.net/.

Bliss

On the wild side of cool, Bliss allows you to play multiplayer Intellivision games over a network with the help of Kaillera! Who’da thunk that such an old console would ever work online? Maybe you’d better boot up some of the entertaining sports titles such as Intellivision Football, or crazier Tron-style fare such as Snafu, and blast through them multiplayer-style. Learn how at http://bliss.emuviews.com/.

Stats, Damned Stats, and Kaillera Stats

One of the coolest things about the Kaillera web site is the statistics page (http://www.kaillera.com/stats.php), which shows the top-played titles in several different genres. This is surprisingly useful because it displays the titles that work best online over moderate connections.

As for highlights of this information, Taito’s marvelous Bubble Bobble sits atop the most played Platform Games chart, despite being over 15 years old. The tremendously addictive Puyo Puyo installments top the Puzzle Games chart, with the Neo Geo’s great Magical Drop 3 shortly behind. It’s also notable that the Adventure Games chart includes the classic Capcom brawler Dungeons and Dragons: Shadow of Mystara, an oft-neglected title so popular that the Taiwanese IGS PGM arcade console is producing gameplay clones even now. Finally, there’s even a Quiz game chart for general knowledge-style questions, headed by the SNK title Quiz King Of Fighters.

All these games are worth checking out, although the usual caveats about intellectual property and trying to acquire legal ROMs apply. See [Hack #1] for more.

Get Gaming Hacks now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.