Along with the incoming wave of indie multiplayer games like TowerFall, Nidhogg and Samurai Gunn, there comes an undercurrent of disgruntlement.

In the comments at the bottom of every review of TowerFall, there's someone complaining about the absence of an online multiplayer mode. From the comments on Polygon's own review:

Sorry, but with no online play, no interest from me. It's simply amazing that the dev couldn't understand that the lack of this simple feature is necessary in this day and age for multiplayer. Party play in a room is just an [added] bonus.

Or from one commenter at GameSpot:

offline multiplayer only? that's annoying… some are online-only, this is offline-only... get your sh!t together devs... make both in one package!

This is an attitude shared by most reviewers, too, like Chris Carter in his review of Samurai Gunn over at Destructoid.

Sadly, there's no online multiplayer to be found — not even peer to peer, so you're stuck hooking up controllers to your PC and inviting some buddies over. So unless you really love the concept of an arena action platformer and/or have local friends on hand, maybe Samurai Gunn isn't for you.

I look at these reviews and the comments below them with a sense of frustration, because I, too, have a horse in this race. Just like TowerFall and Samurai Gunn, our forthcoming project, Sportsfriends, will be a strictly local multiplayer game. So I wanted to take a moment to explain not just why these games don't have online multiplayer, but why you shouldn't even want them to have online modes.

But first, I should acknowledge one thing: As I said to Polygon's Ben Kuchera two weeks ago, I know that not everyone has friends nearby who are able or willing to play video games. If that's you, we can't hope to sell you a game that doesn't have single-player or online modes. What I hope to do here is to explain why we developers are making these games online-free. It basically boils down to two things: game design, and lag.

Overcoming lag

Though modern video game netcode is hideously complex, the problem it seeks to solve is simple enough: Even in the absolute best-case scenario, when we have a dedicated server and everyone on it has a ping in the teens, it still takes a lot of time for your computer to communicate with the server, and for the server to communicate with the other players.

As a result, your computer is always getting information that is a few frames out of date, even if your opponent is on a fast connection and located on a computer nearby. Much of the time, your computer does not agree with your opponent's computer about what's going on in the game. This is known as "lag."

Lag is not the kind of problem that can be eliminated by clever programming; it's just a fact about how fast you can send messages to the server. At most, developers can write code that makes the problem less noticeable for the player. So for the past two decades, programmers have toiled to find new ways around this fundamental problem. Basically, there are three kinds of workarounds: prediction, lag compensation and smoke and mirrors.

Prediction attempts to solve the problem by showing you where your computer expects your enemy to be based on previous frames. In games like Forza 5, it takes time to change the direction your car is moving in, so your computer can make a pretty good guess about where the other players' cars will be in the future.

Good prediction helps to keep your copy of the game in sync with the server, and with the computer your opponent is playing on. But of course, we can't predict when someone is going to press the jump button to dodge an incoming arrow in TowerFall, or in any other twitchy, fast-paced action game.

Lag compensation is how the server tries to guess what you were seeing on your computer when you pressed a button on your controller. When your computer tells the server you fired your gun in Battlefield 4, the server rewinds time a little bit so it can guess what you were looking at when you clicked your mouse. If you were aiming at an enemy on your screen, it awards you a hit, even if you were aiming at the wrong place according to the server or your opponent's computer.

Of course, nobody notices these discrepancies, because it's really hard to see whether or not your enemy's gun barrel is pointed at you or slightly to one side of you, especially when there's simulated blood and screen shake and blurring all over the place. We just accept that we got shot, cry a little bit and move on. Lag compensation works really well in first-person shooters for this reason.

In a game like TowerFall, though, you have a pretty good idea of whether an arrow should hit you, or whether a stomp should connect. If it looks like it's going to miss on your computer, and then you die because of something that only happened on your opponent's computer, that's going to feel broken and unfair:

Finally, many games work around the lag problem using smoke and mirrors. What I mean by this is that they're designed from the ground up so that you feel as though your game is in sync with the other players on the server, even when it isn't.

In a real-time strategy game like StarCraft 2, you don't notice the lag because you're clicking to give people orders, and it feels pretty natural if it takes a few frames before someone follows your orders. Unless you're the world's most unreasonable general, you're going to let it slide if a quarter-second passes before your soldiers start marching. This is a big part of why RTS games have been so popular online.

In games like SpeedRunners, Diablo 3 or Trackmania, you don't notice lag because the players can't directly interact with each other, only with the game world and with computer-controlled enemies, whose actions can be predicted perfectly by your computer.

You can't crash into other cars in Trackmania, you can't hit other players in Diablo 3 and you can't touch other players in Speedrunners. You can harpoon other players in Speedrunners, but here they solve the lag problem by allowing the harpoon to magically curve in mid-air:



(video via Gamasutra)

Some games have minimized the effects of lag by simply slowing down the action, giving the server more time to catch up with player's actions and reactions. Both Street Fighter 4 and Super Smash Bros. Brawl were designed to play significantly slower than the previous games in their respective series, which served to make lag less noticeable when playing online.

These are all wonderful games (apart from Diablo 3, anyway), but the reason they are good is that they are designed from the ground up with netplay in mind. As a game designer, if you want players to be able to dodge an arrow at the last second, or to stomp their enemies on the head like they do in TowerFall, you're designing a game that won't play well even over a LAN, much less over the messy, noisy collection of networks that make up the internet. There's literally no way to eliminate the effects of lag, and you'll wind up with game-breaking problems like Dark Souls' infamous PvP "lag stab":

When we started working on Sportsfriends, we decided very early in the process not to add an online mode. Part of what we were worried about was the time it would take us to develop a good networking system, of course — just look at Nidhogg, which took three and half years to go from local-only to online.

But even if we had spent years tweaking our online code, it would still have been impossible to make our games fun to play online. Good online games are conceived from the ground up with the limitations of the internet in mind.

Designing for the couch

The original Wii Sports could easily have had an online mode — technical and financial hurdles would not have stood in the way. Nintendo had enormous programming muscle, and they had motion controls that were extremely unreliable and slow, so any lag would have been totally unnoticeable. But even though Nintendo decided to go online-free with that game, it became a worldwide sensation and ultimately the second best-selling title of all time.

The reason for this is that Wii Sports makes the most of what is great about local multiplayer. It lets you laugh at your friends striking silly poses. You find yourself teaching your grandmother or your kid sister how to play. It ropes people in as they walk through the living room.

When you get together to play games with friends, the space you're in becomes a ritual space, like the stage at a concert or the altar at a wedding. It's a space where you can trash-talk your friends or howl in defeat, where you can trick people, where you can laugh at their expense and dance on their grave.

It's a space where you have permission to look foolish in front of your family members. Importantly, it's a space where you can look up at your opponent's face, lock eyes and dare them to make the first move before your split-second counter-attack.

The best local games aren't just offline versions of online games — they are designed to intensify these social dimensions of gameplay. When Samurai Gunn's 'Showdown' tiebreakers bring a close match to a freakishly tense climax, where the winner is determined by a single-frame decision to slash or not to slash, that's a design choice that wouldn't work online. Or when a match of TowerFall ends and goes into a replay, and it plays back the weird hooting noises everyone was making during the round, that's something that only makes sense in person.

Just like Matt Thorson and Beau Blyth did with TowerFall and Samurai Gunn, respectively, and just like Nintendo did with Wii Sports, we designed Sportsfriends to be an activity you do with other people around you, as opponents and teammates but also as teachers and spectators. Part of that means you need to be able to hear the reactions of the winners, as well as the losers, and to hear the encouragement and jeers of your friends.

You need to be able to hand off your controller to a friend when you lose, and high-five your teammates when you win. You need to be able to sit down and start having fun without having to read a wiki, or practice for 20 hours or register an online account.

I grew up playing games on the couch and in the arcade, and all of the best, most intense experiences I have had with video games took place with other people in the room.

As a designer, I'm looking to recreate the sense of occasion and ritual and importance that I have felt playing local multiplayer games. As a player, I'm always looking for games that are built for that from the ground up. And so, even when I'm alone in my apartment with nobody to play with, I never, ever wish that I could play TowerFall online.

Bennett Foddy is a professor teaching game design at NYU Game Center, and is working on the forthcoming console and computer title Sportsfriends. You may know him from his browser games at Foddy.net, such as QWOP and GIRP.