The Allure of the Thin Client

For a couple of decades various companies have been trying to get us back to the thin client model of computing.  Oracle has suggested this loudly more than a few times and Google ponders it now and again, with things like Stadia being based on the idea.  Also, if you work for a big company I assure you that your IT department has wet dreams about taking away all your laptops and desktops and making you work on some sort of thin client appliance.  IT at my company keeps pushing Citrix virtual desktops as the solution to every problem.

I say “back to” because I am old enough to remember when dumb terminals and terminal emulators were a mainstay of computing.  In addition to my time spent in the computer lab in college, the online games I played back in the 80s and into the mid-90s, things like Stellar Emperor or Gemstone on GEnie, MegaWars III on CompuServe, and Sonjourn/Toril MUD, were all built on that model.

Star Trek in vt52 emulation

As personal computers came along and started growing in computing power, much of the heavy lifting was put on that end of the equation.  Air Warrior rendered its very primitive visuals on the player end, and shooters and action games like Marathon and Diablo made the user’s system do the graphical work while just data about inputs and positioning were shared.   This meant that in the low bandwidth of the time… I played Air Warrior on a 2400bps modem… the back and forth between client and server was kept to a minimum.

So the end user client became fat.  Eventually so much data was stored at the user end by the late 90s that EverQuest had a little test module app that let you run around a mini-zone to test your 3D card, but you could rename many of the game maps and run around the main, if empty, world if you knew what you were doing.  You couldn’t zone or do much, but if you wanted to explore it was a boon, and you were not even connected to Sony while you did it.  And that is the way that many MMORPGs and other online games went, keeping data on the server and letting the end user machine do the graphical work.

For video game developers there are many benefits to going with a thin client, of keeping all that data on their servers.

For starters, the downloads and patching at the user end are kept to a minimum.  This has often been viewed as a point of friction that keeps players from trying out new games.  The holy grail is for a player to just be able to play without any sort of download, something CCP has been experimenting with recently with EVE Online and their EVE Anywhere browser beta.  If you can just play the game on any computer, then your potential market is greatly expanded.

It also makes updates easy, since things only have to get pushed as far as the servers.  Very little need be pushed to the player’s machine.  New content just appears or is unlocked without a download.  You also get all your settings and configurations as you move from device to device.

It is also a major boon for security.  If all the key files are on the company’s secure servers, then secrets can be kept.  We are familiar with every new pet, item, mount, or NPC being spoiled for us in WoW by the race to datamine any pre-patch update.  And, of course, addons, illicit or benign, and hacks are kept at bay.  This all falls under Raph Koster’s admonishment that “the client is in the hands of the enemy.”  Overall the environment is more secure.

Finally, all the end user issues that come from the wide variety of PC configurations, a huge problem for many applications, are largely eliminated.  A thin client stops caring about processors and video cards and operating systems and the like.  Your game can theoretically run on somebody’s TV or refrigerator.

All in all there is a lot of upside.  Control! Security! Ease of access!

Sign me up today!

So why isn’t every new online game in a thin client in the cloud?

Since I used the word “cloud” there, I am going to take a moment to point out that cloud computing is not the same thing, or required for, a thin client, though when people who should know keep conflating the two things I get how you might be confused on that.  Thin clients are as old as computing.  See my reference to dumb terminals at the top of this post.  And cloud computing is, simply put, a scalable server architecture with redundancy built in… though, again, some things that get referred to as “the cloud” are better labeled “somebody else’s computer” and not used as examples of the technology.  Talking about cloud computing as though that means any remote computer is a simplification that renders the term meaningless.  If that is your frame, then every online game is “cloud” and there is nothing special about it.

Anyway, why is Google’s Stadia something of an outlier rather than the norm for the industry, at least when it comes to 3D rendered world-based games?  (Because you kind of have to count early RuneScape, Club Penguin, Star Wars: The Clone Wars Adventures, Nation Geographic Adventures, and all those Cartoon Network games if you don’t put a barrier somewhere.  So I am speaking of high end games where some level of realistic graphic fidelity is a requirement.)

And maybe Stadia is a bad example in that it is attempting to be a virtual console that can play titles that were not otherwise designed for such an environment, but if you take it off the list we don’t have a lot of other big name examples.  Well, at least no successes.  A few companies have tried to do what Stadia is doing in the past and have ended up failing.  But given that it is common as shit unless you want render a ton of polygons, why isn’t already a common thing?

Part of the issue is likely due to the cost of the infrastructure.

The problem is that if you’re going to take over all the rendering functions of the remote device, you essentially have to do all the processing that the end user’s PC or console was going to do.  If you want to run that all yourself or you want to use somebody else’s data center, that still means a lot of extra hardware.  The company basically has to pay to run your client rather than letting you run it on your own hardware.

For example, EVE Online has a minimum system requirement of a 2.0 GHz dual core processor and a modest GPU.  If it went entirely thin client, if EVE Anywhere was the only way to access New Eden, you would have to have the equivalent of 20,000 minimum spec PCs in processing power on hand just about all the time, scaling up to 35,000 or even 40,000 at prime time on weekends.

You can probably get away with less processing power for most operations, but you would most assuredly want to put more processing power behind GPU support unless you want the whole game to run in potato mode for everybody all the time.

In a modern cloud architecture where you can bring capacity online easily and only pay for what you are using at a given time, you can keep the costs down somewhat, but everybody playing is incurring a cost, and somebody has to pay for it.  I don’t think it will be like my days back in college where your online account had an allocated budget to spend on processing time (which inevitably got squandered on Rogue), but the company is going to have to find some way to pay for using their processing power rather that your own.  Expect to pay more.

And, while the company saves on bandwidth when it comes to things like pushing patches to every client, the need to pipe high quality video at an appropriate resolution and quality will more than offset that.

Meanwhile, latency and connection quality issues will become a much more visible, something that Google’s Stadia demonstrated.  These are issues in current games like WoW, but you often don’t see it because the client with all the assets and world data will keep you walking, running, riding, or flying along while it tries to catch up after any data blip.  But if you lose connectivity for a bit and far end is only routing video to you, everything stutters or stops quite noticeably.  And even when the is able to get to you but the network traffic is slow, you’ll see your video quality degrade.

Also, if you live some place with restrictive bandwidth caps you’ll find streaming all that video might put you in danger of exceeding them.  You need high speed and lots of bandwidth to play a thin client game at the quality level you’re used to with an equivalent fat client title.  But you can play the thin client title on your refrigerator, so there is that.

But, if the game decides to take full advantage of the potential platform independence aspect of a thin client, if they’re going to support your high end desktop PC with the 34″ ultra wide screen monitor AND that refrigerator screen, there is likely going to have to be some sort of compromise on quality and UI.  So even if bandwidth and network hiccups aren’t dragging down your quality, the game itself, optimized to some happy medium, might not deliver the same satisfying, high definition experience that you would get if your own gaming rig was doing the work rather than some standardized system on a remote server.  Oh, and I keep using the term “thin client,” but for most uses you can substitute in “web browser,” though a light app is also possible. (Though with that comes the temptation to fatten it up.)

Finally, if the thin client game shuts down… see MetaPlace… you have nothing left but memories and credit card bills.  All of the major pirate /private server projects to restore online games that have been closed rely heavily on people being able to get a hold of a copy of the fat client.  All the graphics and a lot of the data is stored there, which is how so many of these rudimentary projects get stood up so quickly.  The world is in the client, you just need to get a system with the right responses going to get basic walking around the world functionality running.

The thin client idea is an attractive proposition for the dev side.  It simplifies a lot of things for them, gives them better security, and hands them all the control.  Done right in a cloud environment, it could even solve the first day server load issues if they can scale successfully.

But somebody is going to pay for the additional cost, your experience may be degraded if you do not have an ideal internet connection, if the studio wants to run their title across platforms and devices you may find the experience and interface less than you desire, and the whole thing becomes a virtual world that can disappear, never to be seen again, as fast as any virtual good.

7 thoughts on “The Allure of the Thin Client

  1. Yeebo

    That was a great read! I like the idea of a thin client because I don’t enjoy having to replace my hardware every few years or the rigmarole of downloading, installing and updating huge clients. However if Stadia is anything to go by it’s no contest: games run and look a lot better on a halfway decent gaming rig than anything I can get through the internet. I have an okie dokie BB connection here, better than a lot of rural Americans even have access to. The other issue of scaling up processing power to accommodate more users was one I had never ever thought about. Considering what it’s actually doing, Stadia is kind of impressive.

    Liked by 1 person

  2. UltrViolet

    Random thoughts on a rainy morning: Having played with a free trial of Stadia a bit lately, the best pro-consumer use-case I can think of for this wacky thin client aka. game streaming technology is for the distribution of game demos. It’s incredibly convenient to click on a game title you’ve never heard of and start playing it 30 seconds later, just to see if it’s any good or not. Once you decide you like it, then you can go buy it on Steam or whatever your preferred hardware is for your competitive gaming needs.

    I also like the idea of getting a free streaming license with every physical game purchase, somewhat like buying a CD on Amazon gets you MP3s and streaming access for free. That way you can still kind of play your game on your mobile phone while you’re backpacking in the Antarctic if you really think that’s something that would work out for you. (Or more realistically, grind for gear upgrades on an old junky laptop while watching television or visiting relatives.)

    Overall I think you’re correct that thin clients aren’t great for the recipient, but I also think realistically we’re beyond the point of being able to pretend that a Netflix-style streaming game revolution isn’t approaching. Stadia as a technology platform is pretty dern good for most gaming needs. It wouldn’t surprise me if most mainstream (ie. non-competitive, non-aficionado) gamers with broadband are playing mainly by some kind of stream technology in five years, and it becomes increasingly hard to find hardware-based game releases.

    Like

  3. Wilhelm Arcturus Post author

    @Yeebo – There are upsides for the end user certainly. But they also get to bear the burden of most of the downsides directly, though I guess the company bears them indirectly if their product ends up being sub-par, as Google is finding out with Stadia.

    One thing that is amazing is that Google isn’t doing well with it, but a couple of start ups were trying to do what Google is doing now 10+ years ago. I remember seeing OnLive being pushed as a project at GDC way back when. If tech and broadband aren’t quite there now, back then this must have seemed like crazy talk.

    @UltrViolet – The problem with the free streaming license is that, unlike your music purchase, the streaming side has to dedicate processing power to running your game, which is not free. One of the gripes about Stadia is that people have to re-buy titles they already have, but without that nothing would be paying for the back end systems running the games.

    As for being great/not great, they are what they are and come with trade offs. I am, in part, a little grumpy about about certain game designers talking up the benefits… and conflating the technologies and misusing terms… without much acknowledgement of the costs. Raph Koster going on about all the amazing things they can do with cloud base processing without even a nod to the fact that the processing isn’t free is irksome. You could simulate an immensely complex virtual world with enough processing power, but you would have to charge so much to play it that you’d never be able to populate that world.

    But Raph is also clearly years away from any sort of game. He is just out stumping for investor money and probably hopes Moore’s Law will bail him out when they actually have to make something.

    Liked by 1 person

  4. kiantremayne

    Thin client looks like a First World solution to me – it relies on the gamer having a stable, unmetered high bandwidth connection and the increased cost to support each active user makes the F2P model of having masses of players subsidised by a handful of whales less attractive. To offset the increased server infrastructure costs you’re probably looking for a subscription model, even if it’s a Netflix-style sub for a service rather than each individual game. It could work, but it would need tentpole content to bring subscribers in in the first place.

    It’s also the polar opposite of the peer to peer architecture the DreamWorld guys claim will deliver their gaming nirvana.

    Liked by 1 person

  5. Wilhelm Arcturus Post author

    @kiantremayne – I’m not saying that the DreamWorld peer to peer idea doesn’t have some merit at its root, but the idea that they’re going to run an MMO that basically runs on player hardware pretty much yadda yaddas over some pretty sticky issues to deal with. Raph is worried about the client being in the hands of the enemy, think about a situation where the server side is as well. That hacks and abuse would be rampant… or would be if I believed DreamWorld was ever going to be a thing.

    Liked by 1 person

  6. kiantremayne

    Oh agreed, a P2P design has merits, basically its pros and cons are the cons and pros of the thin client approach. A P2P MMO would save the devs a fortune in infrastructure costs, would be very resilient and because the entire game is already in the hands of the players would be a boon to the “private server” community (a plus for some players, maybe not so much for the publishers).

    On the flip side, the problems just start with the security nightmares. All of which can be worked through by smart people willing to make the necessary trade-offs, but as you say the DreamWorld guys just seem to handwave them away. Which kind of plays into the Silicon Valley stereotype of a couple of guys with great hair and a big idea looking for venture capital with a promise that “we’ll hire nerds to do the piddly little details”

    Liked by 1 person

  7. rkoster

    Great post.

    I do think we should make the distinction between the thin client that is a video renderer — Stadia — and other kinds of thin client, which are actually far more common.

    As an example, the browser you are reading this in is a thin client. A browser like Firefox or Chrome is one sort of thin client where rendering happens on the client, and even client side scripting; a browser like Opera Mini, which renders the page remotely and just sends you basically pictures, is another sort.

    Metaplace worked like Chrome. Stadia works like Opera.

    Like

Voice your opinion... but be nice about it...

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s