Tag Archives: Games

EA Spam

Please, EA, please stop spamming my email account!

Yes, I know that I signed up to receive updates about Spore. Amazingly, I did that on Friday the 20th of May 2005. Was it really that long ago?

It took almost three years for you to send me the first email about Spore. Since then, I’ve received the odd email now and again. I didn’t mind. After all, I signed up for it.

Then, in March, you send me a non-Spore email. So I decided to unsubscribe. I really wasn’t interested in hearing any more about Spore (after all, that train’s left the station), and I certainly wasn’t interested in receiving advertising about anything else.

Seven months later and I received another email. I unsubscribed again, confirming that I was receiving these emails because I’d signed up for Spore updates.

Two weeks later, another one. Unsubscribed for a third time. This is getting annoying.

And now, six days later, yet another email. For this you must die. Metaphorically. So let’s see:

  • The Sims 3 is Available on Consoles Now! I do not care!
  • If you no longer want us to contact you, click here to be removed from our mailing list. Consider it done!
  • Confirm that I want to be removed from all EA communications. With pleasure!
  • By opting out I won’t receive updates about Spore. Am I sure? You bet I am!
  • Confirm unsubscription by logging in to my EA profile. Confirmed!

Come on, you scum, you just try sending me one more.

Anyone else getting spammed by EA after they’ve gone through the unsubscription process?

Procedural Adventures

Apart from text adventures, I love point-and-click adventure games (of the Monkey Island ilk), and the more modern Japanese interpretations of this genre (such as Hotel Dusk and Another Code). These latter games tend to be more focused on telling a story, and the interface offered to the player is subsequently stripped down (with less emphasis on navigating the environment and using objects on everything to see what might happen).

L.A. Noire

Sandbox + narrative? Image by GameInformer.

On the other hand, I’d love to see a sandbox adventure game, which places the player in a vast world that they are free to explore. Such a game would render the usual approach of playing an adventure game (go everywhere, examine everything, pick up everything, talk to everyone) impractical. It would be interesting to see what would happen if you were free to explore an enormous environment in which a story could be told based upon what you do, not in spite of it.

Strangely enough, I once worked on such a game. When I worked on L.A. Noire I was particularly interested in the problem of bringing story to the player in large sandbox environments, and of procedurally generating a massive population of NPCs who went about their daily business in realistic ways. I would love to write a text adventure game that used some of these techniques to produce an experience truly different to anything else out there.

Yes, I’m the kind of guy that just hung out and watched a shopkeeper go about his business in Shenmue for the entire day-night cycle, and who tails pedestrians in GTAIV to see where they go. I love that kind of stuff.

XYZZY

I really love text adventure games. I’ve always had a fascination with natural language processing (my postgrad research was about computational grammatical inference after all), so part of the fun was figuring out how the parser works, and applying that knowledge to write my own text adventures in BASIC on the C64.

Zork

A classic text adventure. Image by Peter Scheyen.

These days there are great tools for writing text adventure games. The best would have to be Inform 7, which lets you write text adventures that are compatible with the Infocom Z-Machine (and thereby playable on a whole bunch of platforms, including the iPhone). Code written in Inform looks like this:

Insane, right? You should try it out. It’s pretty amazingly great.

If you’re not interested in writing your own text adventures, but you do enjoy playing them, then you’ll be pleased to know that there’s a vibrant community that continues to produce wonderful games (and who would prefer it if they were referred to as “interactive fiction”, thank-you very much). If you want to play the very best of these modern text adventures (sorry), then you could do worse than check out the winning entries of the Interactive Fiction Competition, which has been running for the past fifteen years. Heck, you can even play them in your browser, with Parchment (a z-machine interpreter written in JavaScript).

Speaking of text adventures, I’ve recently received my copy of Get Lamp, the text adventure documentary. Perhaps a screening is in order?

Zarch

My three favourite games of all time are Exile, The Sentinel and Zarch.

Zarch is the name of a game on the Acorn Archimedes; I played the Amiga port, which was called Virus. In fact, Zarch itself was a full-fledged version of an Archimedes demo called Lander. David Braben (yes, he who, along with Ian Bell, created Elite) wrote it in three months in 1987. Virus, the Amiga port, didn’t look as good (no light-sourced polygons), ran slower, and was released a year later, but I still loved it.

Virus

Virus on the Amiga. Image by Wikipedia.

Lander became known for its fast, smooth, solid-3D graphics. In 1987 this was an almost unbelievable achievement. ACE magazine (which was known for rating games out of 1000 points, and for publishing a lastability graph with each review that extimated how much you’d still be enjoying the game after an hour, a day, a week, a month and a year) featured it on it’s cover, along with the headling: “Solid 3D – The Future of Games?”

I loved playing Virus for its procedurally generated landscapes, but what really clicked for me was the controls. It was the first game I played where a mouse was the preferred control method for movement. Moving the mouse rotated the ship around two axes, while the right mouse button was used to generate thrust. First time players would instantly crash and burn, due to the precision and sensitivity of the controls, and the learning curve was steep. Persistence paid off, however, and after plenty of practice it was possible to skim low over the landscape and turn on a dime. Sweet.

The left mouse button, of course, was used to fire your weapon. The gameplay consisted of ridding the landscape of all polluting alien craft before they could complete their task of seeding the verdant land with their evil red virus. Simple, really.

Post Scriptum

Some people have asked how to get hold of The Sentinel, Exile and Zarch (aka Virus). Here’s how:

  1. Purchase the Plus edition of Amiga Forever, which includes licensed versions of all Amiga Operating System ROM and 100 games of various quality. It costs US$30, and it comes with Exile included.
  2. Search Google to try to find versions of The Sentinel and Virus that you can run under emulation via Amiga Forever, but that may not be available with the permission of the copyright owner.
  3. Alternatively, search Google for free remakes of these games (although I cannot vouch for their quality).

Exile

My three favourite games of all time are Exile, The Sentinel and Zarch.

Exile is an “arcade adventure” (a now defunct term; these days you’d call it an “exploration platformer”) that features realistic physics and AI, and which has a large map that was mostly procedurally generated (but then touched-up by hand). How could I not love it?

Exile

The Chimps of Ni. Image by: Hall of Light

I discovered Exile when a playable demo was included on the cover of Amiga Power in 1991. I played the demo for hours on end, and eventually wound up buying the full game (reaching the limits of the demo took quite a lot of playing). I just loved the exploration, and the ways that items interacted with one another. You could pick up a glass jar, carry it into a pool of water to fill it up, then gently transport it across the map to use to extinguish a fire, for instance.

Much of the game involved experimenting with the world, and solving subtle puzzles to open up new areas for exploration, all interspersed with moments of frantic combat.

The physics engine was quite advanced for the day. In fact, it was a rarity to play a game that had any kind of physics simulation at all, so it was quite a novelty. It was fun to pick up and throw objects of all sorts, just to see what would happen.

The AI was also impressive. You discover and interact with many different kinds of creatures in the caverns beneath the planet’s surface, including anthropomorphic monkeys who say “ni” and steal items from you, and a friendly robot who responds to your whistle, and which you can use to solve puzzles.

Exile was conceived and written by Peter Irvin and Jeremy Smith (Jeremy, RIP, also wrote the classic C64 game Thrust). How good is it? Well, Edge Magazine has awarded only three perfect 10/10 ratings to games that were released before the magazine started publication. Those games are Elite, Super Mario Bros. and Exile. Which means you should play it. Now.

The Sentinel

My three favourite games of all time are Exile, The Sentinel and Zarch.

The Sentinel is an extremely weird game, but I loved it from the moment I bought the Commodore 64 version at KMart in 1987. I went on to love the Amiga version even more.

The Sentinel

A typical view in the game. Image by: C64-Wiki

It was conceived and written by Geoff Crammond, who also wrote REVS (a great driving game on the C64), Stunt Car Racer (an insanely great game on the Amiga, which was best enjoyed by linking two Amigas together with a null-modem cable for multiplayer mayhem), and the Grand Prix series (a realistic driving simulation that started life as Formula One Grand Prix on the Amiga in 1992).

For me, The Sentinel is an outstanding game. It features a first-person view of a solid-3D landscape, which was incredible at the time. The ten-thousand levels are procedurally generated, which is something I’ve loved, from the days of Mike Singleton’s The Lords of Midnight and Midwinter through to Derek Yu’s Spelunky and Asobo’s Fuel (which Shamus Young has deconstructed at length).

The game mechanic is stealth; you must creep up on and ultimately destroy the all-seeing Sentinel, which occupies the highest square of the chessboard terrain, and which slowly rotates its gaze. You, of course, start each level standing on the lowest square. And, most unfortunately, you cannot move; only rotate.

To vanquish the Sentinel, you must absorb energy from the trees scattered around the level, and then use it to create robots that you may transfer your consciousness into, thereby teleporting yourself from square to square around the terrain. You gain height by creating stacks of boulders, and then creating a robot on top of them. In this sense, The Sentinel is a game of resource management, with trees, boulders and robots representing one, two and three units of energy respectively.

The trick is that you can only absorb energy from a tree, boulder or robot (when teleporting, it always pays to absorb the robot that you’ve teleported from) if you can see the square that it’s standing on. You must therefore work to increase your height, opening up lush new fields of tree-energy to mine. All the while, the Sentinel does the same thing; it absorbs energy from all bounders and robots it can see (including you), and uses it to create new trees at random places around the level. I loved this aspect of the game; it satisfies the first law of thermodynamics!

You can imagine how gut-wrenching it can be playing a level, with the gaze of the Sentinel upon you, watching your energy slowly drain away while you frantically scramble to create a new robot in a safe location, teleporting there only to watch your former self transform from robot to boulder to tree as the Sentinel consumes its energy.

Things get worse. If the Sentinel can see you, but not the square that you stand upon, then it transforms a nearby tree into a Meanie, which, when it rotates to face you, forces you to hyperspace. This consumes three units of energy, and transports you to a random square on the level that is lower than the one you were standing on. You could also initiate a hyperspace yourself, as a last-ditch attempt to avoid the full gaze of the Sentinel.

Victory was sweet. Standing above the Sentinel, immune to its gaze, you’d spend some time gloating before absorbing its energy to win the level. You’d then go on to a harder level, with the exact level number determined by the amount of energy you had remaining (so you’d jump more levels if you finished with more energy to spare). And because the levels were procedurally generated, there was no need to save the game. You’d simply write down theĀ  8-digit code for the level you were on, and type it in the next time you wanted to resume your game (or, sneakily, try to reverse-engineer the algorithm, or enter level codes that you’d got from a friend at school, or seen printed in a magazine).

Later levels featured Sentries, which had all of the power of the Sentinel, but which stood on lower squares around the level. This made things even more frenetic.

Zzap!64, the premier games magazine at the time, refused to award The Sentinel a score in its review of the game, stating that such a wholly original game is in a class of its own, and therefore defies rating. Over twenty years later this is still the case. Everyone should play this classic game.

Pseudo Intelligence as Entertainment

Research can be speculative or applied. Artificial Intelligence research is often both, trying to solve real-world problems while at the same time testing theories about how the human brain works.

Man Playing Game

Game Face. Photo By: Phillip Toledano

A branch of the AI research crowd are interested in games both as a testbed for theoretical work and as a market for applied AI. Unfortunately, these are conflicting goals.

People play games to be entertained, and any AI present in the game must contribute to this. I personally think that AI enhances player enjoyment when it is both surprising and relevant. That is, it should result in an experience which feels new, yet which is consistent in the current context.

This regrettably suggests that AI is synonymous with NPCs, which is a mistake that both game players and researchers make. There are plenty of opportunities for non-NPC AI in games, and yet there is scant research being done in these areas. I’m referring to things such as

  • a cinematic camera that responds realistically to game world events and player movement;
  • dynamic set pieces, including chase sequences and fights;
  • story events that fit the overarching narrative but which adapt to a sandbox environment;
  • an audio score that foreshadows unscripted events and announces the presence of hero characters;
  • large-scale crowd and vehicle simulation;
  • adaptive character animation and movement;
  • accurate matchmaking algorithms for multiplayer online games;
  • elegantly handling dropouts with automatic AI takeover;
  • automatic navmesh generation from a polygon soup;
  • predicting player behaviour to counteract controller and network lag; and
  • automatic exploit detection and prevention.

The problem is that the role of the (usually lone) AI programmer on a game development team often involves many tasks that get in the way of performing research, including asset acquisition, audio and animation integration, data production, tool implementation and support, multithreading support, optimisation, debugging and so on, leaving a perfect opportunity for academia to supply the research chops. What’s needed are robust, efficient, designer-tweakable techniques that are easy to debug, and which scale with available CPU and memory. Sadly these requirements are not a priority for researchers, and yet researchers remain perplexed that game developers don’t use some of the inefficient, unpredictable techniques that they develop.

You see, the problem is that your neat little algorithm might perform well 95% of the time, which may be a great improvement over the state-of-the-art, and which may justify publication, but 95% is not good enough when you have an audience of 5 million game players (as hundreds of thousands of them will see broken behaviour).

But the biggest point of contention between game developers and researchers is that we gamedevs think that cheating is acceptable. After all, a game is just a Turing Test, with the player deciding whether intelligence exists based on the behaviour they perceive, so why not use all available information to deliver on that promise, instead of placing artificial restrictions on what data can be used based on whether or not it would be available to a human player? It just doesn’t matter how the behaviour is achieved – we’re not looking for insights into how the human brain works – it’s all down to player experience. This behavioural approach is out of favour with researchers (and has been ever since Chomsky defeated Skinner), but is the core of pragmatic game design. Perhaps never the twain shall meet.