Saturday, May 5, 2012

The Uncheatable Puzzle Game

Puzzle games have become notorious for having the solution to every puzzle posted online. If you never have to think about a puzzle, but can just look up every answer, is that "cheating?"

Well, what's the point of playing a single-player puzzle game? If it's the pleasure of perceiving elegant (or at least correct) solutions to a series of puzzles, then looking up answers online is, in a way, cheating yourself of that pleasurable experience.

If on the other hand the point of playing a game is to win -- to conquer and get past challenges -- then looking up the answers to puzzles is not cheating at all; it's simply being efficient in reaching the "win" state.

The point here is that different people are going to approach games in different ways, and it's to be expected that they'll respond to any particular game based on their preferred style of play. Someone who enjoys exploring a complex problem-space will spend hours tinkering with just one puzzle in SpaceChem, while someone who enjoys simple and pleasantly repetitive activities will turn to YouTube a few times before deciding that it's a terrible game, not even really a game at all. (Of course it is a game; it's just not their preferred kind of game.)

So the first thing in designing a puzzle game is to understand that even if you design it for people who enjoy thinking about how to solve puzzles, it's going to be played by people who just want to win. And those latter folks are going to share the answers with the world to prove they won. This is why things like "thottbot" came into existence.

This means the puzzle game designer has a choice: build the game knowing that people will share the answers to every puzzle and hope that the people who enjoy solving puzzles won't be put off by that, or design the game's puzzles in such a way that the solution to each one is unique to that player at that moment.

People have been trying that first approach for a long time now. It doesn't work too well for keeping computer games interesting when it's so easy to share and read solutions.

The second approach is harder. It cuts way back on the number of puzzle types that you can imagine (or borrow from Martin Gardner's "Mathematical Recreations" column in Scientific American). It also has the downside -- a significant one for a commercial game -- that it excludes the "I just want to win" gamer almost entirely. They're not into puzzle games to start with; thinking and imagining and perceiving are not their preferred forms of fun, and when those are the only way to win they won't play.

If you as a game designer are OK with that, then how do you make a puzzle whose solution is unique to each player?

A starting point can be found in SpaceChem. Rather than defining a single perfect solution to each challenge, SpaceChem's "convert these inputs to those outputs" puzzle style allows for multiple ways to accomplish each goal. This means the player can either accept the first solution that meets the requirements, or keep thinking and looking for ways to solve the challenge using either the fewest number of symbols or the shortest number of cycles.

In a way, this design creates two games in one. One game is about finding any solution. This works for the "just want to win" players, who as soon as they beaten the current puzzle can move on to the next one until the whole game is finished. The other game is one of optimization, where the goal is to figure out an optimal solution. The "perception is fun" gamers can still enjoy this kind of puzzle even after the "win" gamer has moved on.

(In a way, this non-binary, "multiple solutions to challenges" design approach is also the theme behind the Looking Glass school of gameplay, as found in games like System Shock and Thief and Deus Ex. I believe this is why these games appeal to the thoughtful/imaginative player as well as the dextrous action gamer.)

SpaceChem's isn't quite the "unique solution for each gamer" kind of puzzle, though. "Win" gamers can still brute-force solutions, and they'll still upload to YouTube the most efficient solutions (in both cycles and symbols) for every challenge.

Something close enough to unique might be a puzzle design where the puzzles are procedurally generated, and where the number of possible puzzles is something like a hundred million or more. A game might consist of a set of 30 puzzles randomly selected from the full set of possible puzzles. Even working together, gamers will not figure out all the solutions and post them online. Of course, in this case you have to be sure that no one can figure out the procedural generation algorithm! (Good luck with that.)

Finally, there's the puzzle design where each puzzle really is unique to each player so that the solutions can't be looked up but must be solved personally. The "elapsed time since the start of play" puzzle in Fez comes close to this form. Taken to its final form, it might be possible to design a game where the kind of puzzle you get in one round depends on some elements of the puzzles presented in previous rounds.

Even for this kind of game, the solutions to the first few puzzles would still be posted online. (Actually, that might not be a bad thing as it would help new players ease into the game.) But the further into the game, the less likely it would be that someone else would have gotten the same puzzle, solved it, and posted the solution. In a way, this is really a variation on the "massive solution space" approach, but it does have the virtue of including the player's actions in the generation algorithm.

There are almost certainly other ways of designing a puzzle game so that each puzzle has more than one correct solution. The overall point is that if you really want puzzles that remain as much fun for the perceptive gamer as for the persistent player, then you need to find a puzzle design that emphasizes perceptiveness and creativity over persistence.

Wednesday, April 4, 2012

Programming the DCPU-16 Simulated Computer in Notch's New 0x10c Game

Notch (creator of the wonderful computer game Minecraft), has released the specs for the DCPU-16 simulated computer that will be programmable by players of his recently-announced space game 0x10c.

The DCPU-16 is interesting in a number of ways. ("Interesting" in the sense of "abstract symbol-systems that can represent other things are interesting." This may not apply to you.)

In capability it's stronger than the PDP-8 but not as advanced as the first commercial microprocessor, the Intel 4004. (Not completely unreasonable since the story of the game is that it uses 1988-era technology in some ways, although the 4004 was actually released in the early '70s.) The simulated CPU supports indexed addressing in all registers, rather than having separate accumulator and index registers as the old CPUs did, which is nice.

On the other hand, currently there's no support for interrupts, code/data share memory with the stack, and there's no support I can see yet for indirect addressing (as the Motorola 6809 and even the PDP-8 had). There's also only one conditional instruction, which just makes coding more tedious. A macro facility may help there, however.

Naturally, some industrious souls have already written simple emulators for this imaginary processor. :)

Other than some promised "engineering," the rest of the game (fly through space, shoot people) sounds pretty conventional. The ability to do things to ships through clever programming of a simple computer, though -- that elevates this new game to something potentially remarkable.

Monday, February 27, 2012

Joining the Team

Since writing the previous entries on the Storybricks system, I've been invited to join the Storybricks team as Community Manager.

Since I'm now affiliated with Storybricks in a direct way, I wanted to be sure to point out here that this site is my personal game design blogging site. All of the opinions expressed here are my own and don't represent any official positions of the Storybricks organization.

From time to time I may have some thoughts on game design or the game industry that I feel I need to unleash. :) When that happens, again, those will just be my personal views, and they should not be considered to reflect any official statement from or regarding Storybricks.

That said, I certainly encourage you to join us in the Storybricks forums!

Thursday, September 29, 2011

Storybricks + DikuMUD = Balance in MMORPGs

To follow my previous comments about Storybricks, this time I'd like to get into the nuts and bolts of how Storybricks works. (Note that this is based on what has been revealed of Storybricks at this time -- things can and will change as Namaste continues to develop the concepts and implementation.)

Nearly all MMORPGs today are descendants of an early text-based multi-user dungeon (MUD) called DikuMUD. There are three interrelated reasons why DikuMUD proved to be genetically superior to other MUDs, and why it became the progenitor for nearly all modern graphical MMORPGs:

  • it emphasized easy-to-understand and action-oriented combat over other forms of interaction
  • it simplified interactions down to easily-trackable, table-driven statistics, and
  • it was designed to be easy to modify and install by gameworld creators.

These elements combined to catapult DikuMUD and its successors to prominence in the world of computer-based roleplaying games. As other forms of MUDs became less visible, and as new gamers arrived and saw only DikuMUD-derived MMORPGs, eventually only DikuMUD-descended MMORPGs remained.

This wasn't inherently wrong. Obviously a lot of people enjoy the focus on simple fighting, and DikuMUD-derived MMORPGs have prospered because they satisfy that desire. It's also easier for developers to manage table-driven, numbers-oriented content than features that highlight emotional interactions or logical exploration, so that's the kind of game they tend to make and the kind of features they prefer to add to existing games.

But I think it's also true -- and there seem to be at least a few other gamers who agree -- that something important has been lost in the Cataclysm that is World of Warcraft and its close MMORPG siblings. In particular, and as I noted previously, these stat-driven games have dehumanized roleplaying. While there are some dedicated souls who try to enjoy what little roleplaying and exploration content exists in today's MMORPGs, for the most part you're only as useful as whatever combat capabilities your character brings to a group. You're not a person with an interesting history, living in a richly detailed world filled with fascinating people -- you're the equivalent of a car with a gun strapped to the hood, useful only for how much destruction your character can help the group do per second.

In the DikuMUD-based MMORPGs available today, story is dead. (Again, with respect to BioWare and the story emphasis they're trying to offer in Star Wars: The Old Republic, while I'm glad to see that they're trying to inject some story into the combat, in the end it's still going to be about the numbers-driven combat. I expect that over this this will be what gets the most developer attention in SW:TOR, just like in every other MMORPG.)

What's so refreshing about Namaste's Storybricks is that it restores the power of character creation -- thus reviving the power of human-oriented storytelling -- to roleplaying games and to the gamers who enjoy them.

Most content creation tools for computer games are created by developers for developers. Sometimes, versions of these tools are released to gamers. Examples include the Neverwinter Nights story creation tool, the GECK tool for Fallout 3, and the quest creation toolkits in the Champions Online/Star Trek Online MMORPGs. Standalone content creation systems such as Unity and RPG Maker are also becoming more widely available. And support for user-made modications ("mods") such as Notch is adding for Minecraft is also provided occasionally.

Having these tools available has been exciting for gamers who enjoy creating their own content, and I salute the developers who have taken this step. But all these tools been limited in some way -- either by creating content that can only be used locally, or by tightly limiting multiplayer content, or by exposing so much power that the would-be content creator is overwhelmed.

Storybricks -- by design -- addresses all of these impediments to user content generation by including players as creators of game content right from the very start and by making the content creation interface simple but expressive.

Of course it's natural to try to understand new technologies in terms of what can be done using today's tools. This has led some, hearing about Storybricks for the first time, to wonder whether it's simply another iteration on the content creation tools currently available. So it's worth taking a moment to try to address some of these questions and concerns.

First, the current plan (as I understand it) is that when you create characters and place them in the gameworld, other players can play with them as well. This way you can build your own stories and then allow others to join you in discovering where those stories lead. This ability of players to create content for each other appears to be a central goal of Storybricks.

As for being just an improvement on quest creation tools like those for Neverwinter Nights or Champions Online/Star Trek Online, there are some mechanical similarities in that all these allow the content creator to establish connections between characters and objects. But Storybricks is more focused on creating and expressing personal relationships among multiple characters (PCs and NPCs alike) than on associating experience points with object-based player actions. The core of Storybricks is not so much a system for detecting the completion of certain player actions (although it must do that, too) as an AI engine for storing and reflecting personal drives and multi-character relationships.

And unlike powerful quest-generation tools like the NWN toolset or general content builders such as Unity, Storybricks is very simple to use while being extremely expressive. You simply drag nouns and verbs and adverbs from a context-sensitive list and snap them together. In the same way that a few natural-language sentences can express powerful thoughts, the linguistic construction model for relationships in Storybricks is capable of defining a remarkable amount of communication with just a few clicks.

By design, however, the real power of this system is encapsulated in the AI engine that carries the load of emotional interpretation. The building system that is exposed to the player is really simple to use, and Namaste seem determined to keep it that way even as they add useful new features.

Another concern I've heard is that in a Storybricks gameworld, you'll be forced to make your own content or somehow pushed into giving developers "free labor." I think I'm safe in asserting that no one will ever be forced to participate in content creation in a Storybricks gameworld. All the details of how user-generated story material gets used and distributed have not been worked out yet, but the developers of Storybricks have made it absolutely clear that their goal is creative freedom for players, not player control. I'm confident that adding your own story material will be completely optional; those who only want to play in a story-friendly game world will be free to do so.

Finally, it's important to bear in mind that the Storybricks system is not at this time being developed as some kind of external engine-plus-user-interface that can be plugged into an existing MMORPG like World of Warcraft or EVE Online. The degree to which the relationship AI has to be keyed to everything -- objects, places, factional states, movement animations, available interactions with other characters -- means that you pretty much have to build the entire gameworld around this relationship engine. Playing with Storybricks will mean playing in a Storybricks gameworld.

That's admittedly a limitation of the Storybricks idea. To have immediate impact, it would need to be easily implementable in existing gameworlds. But the association of emotional states with character animations and interaction options, not to mention character awareness of objects and places, is so pervasive in Storybricks that it would be extremely difficult to retrofit to an existing gameworld. Such an extensive web of connections basically has to be baked into a game from the very start.

This doesn't mean that the Storybricks idea can't have wide consequences, however. It only means it will take time for elements of the Storybricks approach to character design -- once the kinks are ironed out in practice -- to be integrated into new MMORPGs.

Not every new MMORPG will need or want emotionally plausible NPCs. Some will continue to implement NPCs as quest dispensers and mobile targets. There's nothing wrong with that in itself; it's fine and even desirable for there to be games that follow the path laid down by DikuMUD and its descendants.

But to do well over the long term, I think MMORPGs can't afford to neglect the storytelling and world-discovering interests that gamers also have. And that's why I'm excited about Storybricks.

For the MMORPGs that aspire to being narratively rich places, whose creators care about letting gamers create and interact with interesting characters who are capable of driving stories of intrigue and passion and revenge and all the rest of Georges Polti's 36 plots, I believe that Storybricks truly does have the potential to give the MMORPG evolutionary tree the strong new branch it needs as a counterbalance to the old stats-and-combat-focused DikuMUD branch.

Tuesday, September 20, 2011

Storybricks: The Rehumanization of Roleplaying Games

Anyone who has followed this blog for any length of time will know that I tend to look at game design (like everything else) from a fairly high-level perspective.

Other people are good at speaking to the mechanics of specific games, or at advocating for concrete gameplay content. My interest is usually directed toward the design of core gameplay systems that could help make interactive worlds more engaging for people who enjoy simulation and narrative -- that is, for the Explorer and Socializer gamers among us.

This is why I've developed numerous ideas and criticisms around the goal of helping gameworlds feel more "alive." In particular, I've criticized the practice of building Non-Player Characters (NPCs) as nothing more than loot piƱatas (pop them for goodies!) or static props handing out quests and dispensing pellets of experience points. They look like people, but they don't act like people. Their inhuman behavior leaves a gameworld feeling more like a wind-up toy than a world filled with interesting people -- once you've seen its limited repertoire of behaviors, you're done with it.

This is radically different than -- and a serious step back from -- interacting with the complex, fascinating, frustrating, dangerous, and lovable non-player characters found in tabletop roleplaying games. In these games, where NPCs are played by humans, characters have character.

The roleplaying part of tabletop roleplaying games was a remarkably humanizing play activity. Pretending to be a person with abilities and desires other than your own could reveal unexpected abilities and motivations in yourself. How many areas of human experience can say that?

But in translating roleplaying games to computers, much of the human touch was lost. With so many other systems to develop (especially the systems for character leveling and combat), the developers of most computer-based RPGs somehow never got around to recreating what was arguably the most important part of a roleplaying game: interacting in interesting ways with interesting characters.

(BioWare deserves credit for trying to bring interesting characters to life in their computer RPGs. No one forgets Minsc. But massively multiplayer online role-playing games -- called MMORPGs for the obvious reason -- have not yet given anywhere near the same level of attention to NPCs, and BioWare's Star Wars: The Old Republic took years to fill with hand-developed content.)

In a way, many of the concepts I've suggested over the past decade have been attempts to address this problem of characterless characters. A couple of notions in particular are specifically meant to help NPCs feel more interesting by building into them a greater range of perceptive and expressive capabilities.

One thought was to enhance gameworlds with specific environmental effects, such as day/night cycles and sound propagation, while also allowing NPCs to perceive these environmental effects and respond to them in reasonable ways. An NPC who can realize that some meaningful event is happening and respond to it is a much more interesting character than one who just stands there oblivious to local reality.

The other key suggestion in this area is something I called "multifaction." In today's MMORPGs, when you do something for a particular NPC, that character may be able to "remember" that your action helped the one group to which that NPC belongs. This notion of "faction" is good for creating a very limited social fabric -- members of the Rebel Alliance love me, but I'm shoot-on-sight to Imperial stormtroopers -- but it's inexplicably underused.

Why can't I have faction with individuals rather than just groups? Why can't individuals and groups have factional standings with each other so that when I do something nice for Person A, who is disliked by Person B but loved by Person C, Person B likes me less while Person C likes me more? Why isn't faction used to enable persistent-world computer RPGs to store and express the complex webs of social relationships that give human existence its emotional richness?

There are plenty of games that emphasize points-gathering and loot-collecting and level-raising. And it's good that there are such games.

But where are the games that support internally complex and logically consistent worlds filled with characters who act like people because they can perceive their environment and can form and attempt to satisfy emotional goals?

Well, I have some good news to report on one of these fronts. If the folks at Namaste have their way, NPCs who can express emotionally plausible behaviors may be standing just around the corner, waiting to meet us.

I was recently given the opportunity to see an early build of Namaste's "Storybricks" system in action. If any of what I've said so far is of interest to you, you should visit Namaste's Web site to see for yourself what they're doing.

In the meantime, here's a brief description: Storybricks is a set of systems integrated into a gameplay environment that allows NPCs to have emotional goals and states and to act on those goals and states in plausible ways through their relationships with players and with each other. (Note: this statement and all that follows here are purely my personal interpretation of Storybricks. For the official facts about Storybricks as it is developed, please refer to Namaste's site.)

Initially, Storybricks allows players to create characters who have particular motivations and goals ("drives"), some of which may come from a role-based template (Peasant, Shopkeeper, Guard, etc.), and others which are added to particular characters by their creator. All drives implemented in a Storybricks gameworld have in-game actions through which they can be expressed, as actions (along with objects and places) are all linked through the central AI system at the heart of a Storybricks gameworld. This allows characters to have plausible emotional goals and states based on their role, but also to have unique sets of interior motivations, some of which may actually oppose each other.

Cuthbert the Guard Captain, for example, may be designed to be motivated by duty and honor, but also by avarice and impatience. Under normal circumstances, all that a player may see of Cuthbert is his upholding the law... but what might happen if the player presents Cuthbert with a bribe?

Another possibility: Cuthbert the Guard Captain believes that order is important, and that it is necessary to defend the king in order to maintain order. But Cuthbert hates Baldwin the Noble... so how does Cuthbert behave when Baldwin usurps the throne and becomes king?



This ability for NPCs to have conflicting internal states immediately makes Storybrick's NPCs vastly more interesting as characters than the people-shaped automatons standing in for NPCs in today's MMORPGs.

Storybricks also allows NPCs, like player characters, to have relationships with multiple NPCs. By "relationships" I don't mean romantic alliances (in, say, the Mass Effect/Dragon Age sense). I mean relationships in the sense of holding various kinds of feelings in differing degrees toward players and other NPCs. Alfgar the Citizen may like you, while Edward the Brigand may despise you, and these NPCs would be able to act on these relationships in appropriate ways.



Further -- and approaching the "multifaction" concept -- perhaps Baldwin the Noble likes you, while Ethelred the Peasant likes Baldwin. If Ethelred observes that you have done some harm to Baldwin, this may change your relationship with Ethelred even if you don't directly do anything to Ethelred.



Taken to its full extent in a gameworld, this capability for second-order effects instantly propels MMORPGs toward becoming games that can tell interactive stories as good as those of their tabletop progenitors. Instead of forming (and farming) isolated factional standings with faceless groups, players in a gameworld designed around the Storybricks system swim in a chaotic sea of ever-shifting personal alliances and emnities, where actions over time can lead to consequences that are hard to predict. At last, computer-based NPCs may soon have what characters in tabletop RPGs have always had: the power to surprise.

People yield interesting stories not when they do what we expect of them, but when they shock us by revealing hitherto unknown aspects of themselves. We expect Sarah Connor to protect her child, but we don't expect her to do it by aggressively hunting down those whom she considers threats. We expect Sam Gamgee to care for his friend Frodo, but we don't expect him to become an action hero in taking on the horrible spider Shelob. The twist is plausible but unexpected, the result of putting a person with complex internal emotions in a stressful situation that reveals something of the character's true nature. And that depth of character is the engine behind every great story.

Storybricks is important -- perhaps the most important new technology in MMORPG development in many years -- because it provides the technological foundation for creating characters with emotional depth in computer-mediated gameworlds. This enables the crafting and emergence of captivating stories, a vital source of gameplay that's been absent from online persistent-world computer RPGs (including the few now allowing players to create quests).

It's always tempting to try to understand new things in terms of what we currently have. But there really hasn't been anything like Storybricks before. The possibilities it offers for experiencing a gameworld in which NPCs feel like people instead of quest pellet dispensers is tremendous.

Not everyone will want this, and that's fine. There are games available today for those who prefer to always know where to go and what to do, as there should be. But for those who have been wanting NPCs to play a more compelling role in building gameworlds as satisfying secondary realities, Namaste's Storybricks is by far the most exciting concept in a very long time.

I'll have more to say about the mechanics and internals of the Storybricks system in a later blog entry.

For now... here's looking forward to the rehumanization of roleplaying games.

Thursday, August 18, 2011

EA versus Valve: It's All About the DLC


Electronic Arts (EA) has until lately sold many of their hit games through Valve's "Steam" digital game distribution system (as well as in retail stores). Suddenly EA have started pulling their games from Steam. EA are selling these games on their own internal digital distribution system called "Origin," as well as on other digital distributors -- just not Steam.

Valve professes to be terribly puzzled by this unpleasantness. EA grumbles that it's all Valve's fault but won't say why.

The latest: Today, Gabe Newell, head of Valve and its Steam money-printing machine, emerged from his den to say that he's a little puzzled by all this, but he hopes EA will realize that it can make more money keeping its games on Steam, and gosh, he sure hopes all this unpleasantness can get sorted out soon.

Newell is reported to have said:
"We really want to show there's a lot of value having EA titles on Steam. We want EA's games on Steam and we have to show them that's a smart thing to do. I think at the end of the day we're going to prove to Electronic Arts they have happier customers, a higher quality service, and will make more money if they have their titles on Steam. It's our duty to demonstrate that to them. We don't have a natural right to publish their games."

Everything I've read so far says that this slapfight is not about the Main Game at all. It's about the follow-on sales of "downloadable content," or DLC, which is gameplay that's added to a game after it's initially released for sale.

Based on comments from EA, it appears that Valve are insisting that if the Main Game is sold through Steam, then any/all DLC for that game also has to be available through Steam. For their part, EA apparently (again, this is just my reading of the public comments from all involved) feel it would be a bad idea to allow Valve to dictate to them any terms of how their (EA's) game content will be distributed, so they are taking their Main Game and going home (to Origin).

If that is an accurate reading, then Gabe Newell is being a little disingenuous. The things he's quoted here as saying are all perfectly sensible, but he's (deliberately?) not saying anything at all about the actual source of contention.

I'm not even suggesting Newell's position on DLC is wrong. I can see the possible point that it is necessary for a digital distributor to be able to to provide the DLC along with the patches for a game in order to properly support that game, and to insist on that as a matter of effective business practices. The problem I have is with the principals in this little drama not simply coming out and saying so, if that is in fact what's going on here.

What makes this rather fuzzier is that it makes sense for EA to stand up their own digital distribution system. Even without the comments made by EA during their investor calls to describe their "forward-looking" intentions for digital distribution as part of their overall five-year strategy, it's simply smart for EA to not only distribute its own games digitally but to try to elbow its way onto the playing field as a distributor for other peoples' games as well. EA is big, but Steam is getting big; EA can't afford not to get into that game. The only thing that's been holding them back has been retailers, with whom EA has maintained a happy monogamous relationship in public... until now. I guess somebody at EA finally decided Steam was getting too successful and pulled the trigger on Origin.

My free advice to EA and Valve: sort this before it snowballs and really starts costing you money.

Friday, August 12, 2011

The PC at 30... and Beyond


Today is the 30th anniversary of the launch of the IBM PC.

As we rightly look back on that as the opening of the gates to mass ownership of computing systems, it's interesting to read that one of the original creators of the IBM PC has essentially declared it to be obsolete.

In a blog post, Mark Dean says:
[W]hile PCs will continue to be much-used devices, they're no longer at the leading edge of computing. They're going the way of the vacuum tube, typewriter, vinyl records, CRT and incandescent light bulbs. ... [I]t's becoming clear that innovation flourishes best not on devices but in the social spaces between them, where people and ideas meet and interact. It is there that computing can have the most powerful impact on economy, society and people's lives.

Of course the Way of the Weasel teaches us to simply declare that any man-portable computing device shall henceforth be known as a "PC." ;)

Actually, I agree with Dean's larger point: the proliferation of computing devices was a necessary foundational step -- it's what has been built on that foundation that is where the real value lives. PCs are valuable, not in and of themselves, but for what they do: they connect people to knowledge.

I've said for a number of years now that the economic boom in the US in the mid-1990s was due not to any government policy (that would give credit to bureaucrats that they did nothing to deserve) but rather to that being the Time of the WAN -- more specifically, the Internet. Businesses had been hooking their computers together using LANs during the first half of the '90s, and that was helpful in sharing local knowledge. But the productivity explosion really occurred in the mid-'90s when businesses starting linking their intranets to each other via the Internet. Suddenly knowledge that resided anywhere was available everywhere.

That knowledge was, and remains, terribly diffuse for the most part. We still haven't implemented the necessary systems that automatically store knowledge in a structured way allowing for high-quality search-and-retrieval. That process is maturing slowly, but we're now finally starting to see the kinds of systems being built that will enable access not just to general knowledge but to the specific knowledge that can ignite another burst of increased productivity.

Looking at this process a little more closely, I believe we can see that the key to the Information Revolution is mediating human access to knowledge. In other words, the pivot point is the interface between individuals and knowledge. Whoever controls the interface between people and knowledge gets rich because they make a product that lots of people want.

This pattern can be seen to have three (modern) phases so far. The first phase was Microsoft's. When PCs began to proliferate in the late '70s, and in particular when the IBM PC arrived in 1981, knowledge (better described as just "data" since it wasn't well organized) lived on computer disks and hard drives. So the intermediary between that data and the people who wanted it was the operating system. Microsoft owned that, so they prospered.

This monopoly was challenged (as monopolies always are) by a new technology. In this case it was the local-area network. As more (business) computers got hooked into LANs, data increasingly became stored not on individual PCs but somewhere out on "the LAN." Because Novell owned the premier Network OS (NetWare), Microsoft could see their dominance of the human/data interface slipping away. So they cranked out a LAN software package of their own... and nobody bought it. NetWare was established as the new primary interface, and Novell was riding high.

With egg on their faces after the Microsoft LAN Manager debacle, Microsoft stepped back and said (essentially), "Well, OK, the fight for today's human/data interface is pretty much lost. What's tomorrow's interface going to be? We've heard about this thing called 'the Internet,' and this guy named Marc Andreesen has written some communications software that lets people use the Internet pretty easily to access data anywhere. He's also written something called a 'browser,' which works sort of like Windows only with less hardware dependence and more knowledge-awareness. If we act now, we can totally own that segment. We'll do an end-run around Novell."

And that's exactly what happened.

Novell, like Microsoft before them, thought their interface would rule the world forever, forgetting that changing technology changes the environment. And a product adapted for success in one environment doesn't necessarily fit well in a new world.

So Novell kept pushing NetWare. Meanwhile, Microsoft created Internet Explorer, which they then bundled with the PC operating system they were still selling as a foundational technology. It wasn't long before IE displaced Netscape as the dominant browser -- which is to say, as the world's dominant interface between people and data. NetWare became perceived as an evolutionary dead end, reducing Novell almost overnight to a shadow of its former glory. And so Microsoft climbed back on top again.

But there was still the problem that data was disorganized. Yes, knowledge was out there, but you could drive yourself mad trying to find it in time to make productive use of it. Some new kind of intermediary was needed -- something that could take the sagans of info-bits, categorize them, and quickly deliver only the most relevant items to users.

Thus began the rise of the search engines. There was a lot of competition early on, which was good. Eventually Google became the search engine of choice. Their success has allowed them to begin to experiment with new ways of hooking people to data. It's still early in the process, but already we can dimly perceive the form of the third phase. Namely, the social Information Revolution, wherein what's really being hooked together are the actual sources of data: people themselves.

This is where Google, along with social networks like Facebook and LinkedIn, stands to replace Microsoft as the gatekeeper of the interface between people and data. This, I think, explains certain things we read about in the news. It's why Google desperately wanted to buy Facebook, as well as Skype and Twitter. It's why the valuation of LinkedIn shares doubled on the first day of its IPO. It's why the median price of single-family homes in Palo Alto (home of Facebook) is now $1.3 million dollars during a serious housing industry downturn. Whoever is seen as controlling the most effective interface between people and knowledge wins.

Barring some kind of catastrophe, I fully expect this process to continue, leading to a nice mini-boom in the mid-'10s. Unlike the mid-'90s, this one should be more gradual, but it'll still be good times for most people within that economic environment. As JFK said, a rising tide lifts all boats. (This does, however, assume that the present popular demand for politicians to deal seriously with ever-rising national debt finally sees some victories. If the current tax-and-spend binging is allowed to continue, all bets are off; we will be looking at economic catastrophe. I'm hopeful we'll collectively do the right thing, though.)

The one factor I can't predict is Microsoft. These guys are used to winning, and they are not going to give up control over the human/data interface without a fight. The question is whether Google is now in the same position that Novell was in previously. Google don't seem to be as complacent as Novell -- they keep coming up with new product concepts, even if they are much too quick to drop those concepts if they don't go viral in a few months. So that's an argument against Microsoft wresting control of the human/data interface away from the new owner.

On the other hand, Microsoft have proven in the past that they're capable of looking beyond today to see what tomorrow's crucial interface technology is likely to be. I would not be at all surprised if tomorrow Microsoft announced that the next version of IE would feature a new built-in (probably cloud-based) data/social search facility. Snark at Microsoft all you want; they are capable of building sufficiently good products and marketing the hell out of them. Would such a system be perceived as good enough to shove a separate Google and Facebook out of the way, reestablishing Microsoft as the owner of the human/data interface?

I don't know. I will say that I think that if Google had been able to buy Facebook, Microsoft would probably have fallen to second place by 2015 and into 2020. Beyond that, they might still find a way to do an end-run around a GoogleFacebook, but I can't imagine at this time what kind of disruptive new technology would be necessary for that to happen -- neural interfaces, maybe?

Of course, then we have the fun scenario of a software developer writing code that connects to your brain. "Blue screen of death" could take on a whole new meaning....

Wednesday, August 10, 2011

BioShock's Assault on Exceptionalism


The computer game BioShock (and its sequel) was set in what the developers called a "failed underwater Utopia." The game's story was based on the concept of Ayn Rand's exceptionalist philosophy of Objectivism, but did its best to paint that philosophy as so irredeemably broken that it could hold only the power-mad bigots who espoused it and the power-mad opportunists who exploited it.

Now BioShock: Infinite is being discussed by its creators. And the horrible principle animating the story this time? Exceptionalism again... only this time it's American exceptionalism (as imagined at the dawn of the 20th century) that's scheduled to be demonized.

Why?

I played BioShock 1 & 2 and enjoyed them for what they were. And I'll probably be able to enjoy BioShock: Infinite.

But why do these games now have a pattern of making exceptionalism their bĆŖte noire? Why continue to focus on wrapping the story setting around a grossly negative portrayal of exceptionalism? Did the notion of a culture that works hard to accomplish great things just happen to be one concept among several that the designers felt could safely be caricatured as villainous, like eeeeeeevil corporations? Or does someone have a special reason for wanting to try to smear the highly successful American experiment in freedom in particular as some kind of dangerous aberration?

Was there really no other historical social philosophy that could have served as a satisfying and effective narrative backdrop for shooting lots of simulated people? Really?

Again: I expect to play and enjoy BioShock: Infinite. It's no System Shock, but it's closer to that exceptional game than a lot of others. That doesn't mean I can't wonder why the striving for exceptionalism -- of all things -- is chosen to be the designated horror story in the BioShock universe when so many other human notions have had demonstrably worse consequences for humanity.

As just one possibility that springs to mind, does no one recall the popularity of eugenics in certain "progressive" circles around the very time period in which BioShock: Infinite is set? Why would that not have been an even more appropriate social-narrative hook for a BIOshock game littered with "gene tonics?" Why instead try to portray exceptionalism, American or otherwise, as threatening?

One day I hope to read a straight news story or interview that explores the real answer to this question.

Sunday, July 3, 2011

Hello Again!


I've been on a little break from commenting lately.

This has been due to a number of things, including just flat being tired. But it's also due to my spending time working on a "galaxy engine" intended to serve as the base for two game concepts I've developed.

This engine ("engine" really overdignifies what I'm creating, but it's standard usage) will ultimately display millions of stars, from some 100,000 real stars we know to many more procedurally generated stars. Each star will have a chance of having planets, which will be appropriately textured; some planets will have life; and some planets with life will have sentient civilizations living there. In the current version, I have some 40,000 real stars that you can fly among in accurate locations, so that well-known constellations can be recognized from the general location of our Sun.

The version I have running at this point is so hideously ugly that it does not bear posting a screen capture of it here. I am currently banging my head against the wall trying to figure out how to display spherical objects at a specific size based on the apparent magnitude of a star seen at varying distances, but without breaking the bank in the number of objects that must be created in a limited amount of system memory. I know it can be done. The SpaceEngine (http://en.spaceengine.org/) from Russian developer Vladimir Romanuk accomplishes this (and much, much more) in an eye-poppingly beautiful way. But it's no fun feeling too stupid to be able to figure out how to do it myself.

At any rate, if I can ever develop the necessary technology to resolve the "dynamic apparent magnitude" problem that also allows me to have millions of procedurally generated stars and planets, then I can start working on the actual gameplay bits I've had design documents on for years now. And that'll be nice; I'm looking forward to actually implementing some of the game ideas I've been yapping about for so long. I'm really feeling that that's necessary if I'm to have any credibility when I suggest to professional game developers how they should design their games.

I'll keep you posted on that. (I know you're anxiously awaiting that information. :) ) Meanwhile, I think I may soon resume having general comments to make on game design, so watch this space!

Tuesday, November 9, 2010

My Favorite PC Games

A little light reading this time, as compared to the "heavy" stuff I usually write.

Everybody has their favorite bits of entertainment, right? Some people like TV shows; my dad is a huge fan of the "Indian" stories by Joseph Altsheler... and I have a short list of PC games that I consider among the best pieces of entertainment ever created.



Adventure (Crowther & Woods, 1976) — originally for the PDP, but came bundled with the original IBM PC and might have even helped sell a few boxes.

Zork I (1979) — Again, adapted from the PDP version, but still helped garner attention for the IBM PC as a gaming system.

Leisure Suit Larry in the Land of the Lounge Lizards (Sierra On-Line, 1987) — Yes, the PC went there.

Ultima Underworld: The Stygian Abyss (Origin, 1992) — A good story, cool weapons to find, an open world, remarkable level design, quest-giving NPCs, a clever magic system, context-aware music, and even an invented language… and textured full 3D. Wow.

Sim City (Maxis, 1989) — The first great graphical simulation game, since ported to darn near every device on the planet.

Wing Commander (MicroProse, 1990) — Die, Kilrathi scum! A near-perfect blend of flight sim, arcade dogfighter, and space opera.

Civilization (MicroProse, 1991) — If turn-based games never stop being made and played, Civ will be the reason why. How many hours of work have been lost to people still saying, as the sun rose the next morning, “OK, just one more turn…”?

Darklands (MicroProse, 1992) — Combined a near-simulation of medieval weaponry with an implementation of magic through the invocation of saints, and switched from an overworld view when traveling to an isometric view of frozen fields or stone dungeons for combat. Incredibly addictive.

Master of Orion (MicroProse, 1993) — Made more strategic than Civilization by shrinking the playing field and increasing the importance of the technology tree through its effect on planetary development and player-designed starships, MoO defined what Alan Emrich called the new “4X genre”: explore, expand, exploit, exterminate.

DOOM (id, 1993) — How many PCs did this game sell? How many people upgraded from 386DX-based PCs to the 486 because they saw how incredibly smooth the game played? Still the benchmark game for validating the PC as a viable gaming platform.

System Shock (Blue Sky/Looking Glass, 1994) — Perhaps exceeded only by Deus Ex, System Shock fused sensationally clever systems design with solid open-world gameplay and memorable levels, and topped it all off with SHODAN, arguably one of the greatest villains in all of computer gaming.

Jedi Knight: Dark Forces II (LucasArts, 1997) — Jedi Knight improved on the original Dark Forces with clever Force-based puzzles to solve, highly varied lightsaber battles, and some of the best level designs ever seen in any computer game. In particular, “The Falling Ship” must be counted as one of the greatest levels of all time.

Age of Empires (Ensemble, 1997) — Not quite a real-time tactical game like Warcraft, and not quite a turn-based historical strategy game like Civilization, Age of Empires took the best parts of both genres and created something new and wonderful from them.

Baldur’s Gate (BioWare, 1998) — Introduced BioWare’s Infinity Engine for multi-person isometric RPG play, and built a phenomenally good AD&D-based game with it, mating an excellent story with solid fantasy gameplay, and including some legendary characters (“Go for the eyes, Boo! Go for the eyes!!”).

Half-Life (Valve, 1998) — Between the highly intelligent design of levels and tactical challenges, the thoughtful user interface, brilliant scripted sequences, interesting enemy AI and funny NPC barks, Half-Life permanently raised the bar for what a first-person shooter could be. Valve’s openness to player modding of their games, starting with Half-Life, also makes this an important PC game.

The Sims (Maxis, 2000) — Subversive brilliance, The Sims takes playing with virtual dollhouses (and our willingness to torment little computer people) and uses it to communicate a criticism of materialist consumer culture, but it still manages to be fun to play with just for the crazy things you can do with and to the characters in the game.

The Elder Scrolls IV: Oblivion (Bethesda Softworks, 2006) — Despite the limited number of NPC voice actors, Oblivion signaled a great leap forward for open-world first-person RPGs with high-quality visuals, a large number of quests, and a huge world to explore.

Portal (Valve, 2007) — Portal’s wonderful momentum-based first-person physics puzzles would have made for a good game. The inspired insanity of GLaDOS elevated this good game to an all-time classic.

The Witcher (CD Projekt RED, 2007) — Took the bar for intelligent and mature RPGs and kicked it a mile down the road. The mark of greatness is how many other things are compared to you, and by that measure The Witcher is one of the modern great games.

Minecraft (Mojang Specifications, 2010) — No, it’s not too early to include the alpha version of this game in the list of all-time great PC computer games. It’s already proof that there absolutely is a good market for exploration-oriented games, as well as being a great success story for indie game development.

Runners-up: Wolfenstein 3D, MegaTraveller: The Zhodani Conspiracy, Half-Life 2 & Half-Life 2: Episode 2, Sid Meier’s Alpha Centauri, Star Wars: TIE Fighter, Giants: Citizen Kabuto, Knights of the Old Republic, The Operative: No One Lives Forever, Redneck Rampage.