Category Archives: Digital Games

Playing With My Food

I played one of my favorite games today: grocery shopping.

I am a geek: a person inclined to get excited over the minutia of a topic or topics. One of the ways I manifest this is by being a foodie. I enjoy the history, science, and craft of food preparation and consumption. Food has more in common with games than one might think. In fact, everything about food can be appreciated in the same way as a game.

The first-world way we approach food fundamentally a luxury. We need to eat, but our basic needs can be taken care of by any number of inexpensive and simple foods. The countless choices available at a grocery store and the multitude of preparations are frivolous from the perspective of our pre-technological ancestors or even from the perspective of a less-well-off third- or second-world citizen.

That means that my grocery experience was only a short hop away from being a game.
Continue reading Playing With My Food

Fine-Tuned: Being Troy Sterling

I’ve just gotten around to playing “Fine-Tuned,” a 2001 work of interactive fiction by Dennis Jerz. It’s a fun piece about a 1920s dandy with an automobile and an opera singer given a strange job. I’m about halfway through, and the game reportedly ends in a cliffhanger (which is disappointing), but so far I’m impressed at how excellently the game puts me into the heads of its characters.

I’ve had a shift in my gaming tastes over the years. There was a time when I most wanted story from my games; that is to say, a narrative, an interesting series of events that needed not be too interactive. These days, however, I’m most interested in character and setting; I want to be an interesting person and/or explore an interesting world. Oh, I still want a good story, but it’s now third on my list of priorities instead of first.

“Fine-Tuned” does an amazing job of letting you roleplay its characters. Miss Melody Sweet, the opera singer, is proper and polite yet independent and practical, and playing her is a pleasant joy. However, it’s Troy Sterling, a daredevil-for-hire(-in-training) and all-around likeable guy, who steals the show. There’s an early sequence where Sterling, controlled by the player, drives to town, pausing only to clean up litter, rescue a baby bird, and wave to a passerby. It’s a joy playing the cheery and friendly Sterling. Read along in this edited transcript:
Continue reading Fine-Tuned: Being Troy Sterling

“A Ride Home” Released

I’ve just released “A Ride Home.” “A Ride Home” is a game about patience, futility, and walking. It’s my first finished experiment with Unity.

Morning again. Time to check the beacon.

You can play “A Ride Home” at Kongregate. Give it a rating if you like it!

3D is an interesting tool to work with. Unity is an amazing tool and its free version is totally worth checking out for anyone interested in dipping their toes into 3D. EDIT: This game was made entirely with the free version, along with free tools like Blender, GIMP, and Audacity.

The Cost of Content

The most expensive part of game development is content production. This is a bit unintuitive: if you look at a game like Kirby’s Epic Yarn, you immediately see the cool graphical style, the fun game mechanics, and the well-polished charm. The clear advancements Starcraft II made over the first game are its increased graphical fidelity and its modified gameplay elements. The levels are just where the game happens; they’re rarely the interesting part. However, I’d bet you that more person-hours were spent making those levels than on any other single aspect of the game. This is a big part of the appeal of procedural content.
Continue reading The Cost of Content

The Myth of Hardcore

The title of “hardcore gamer” is not an identity; it is a temporary state of being. Many people start playing video games, and some of them keep playing more and more of them until they develop skills and tastes that place them into the “hardcore” category. Hardcore gamers stay hardcore for years or decades, and then their reflexes fade or their interests shift and they find themselves enjoying different things.

There’s this mistaken feeling among players who self-identify as “hardcore” that they’ve been left behind, that there’s this shift in the culture of development that has abandoned them. This is mostly nonsense. It’s true that for about a decade, most every game was made for a hardcore player… but that decade was the worst one in the history of video game design.
Continue reading The Myth of Hardcore

The Player in Oblivion

Many game designers are so enamored with their game that they neglect the player.

I’ve been sick for the past week or two, so I’ve been getting very little done and pursuing rather escapist past-times. One of the unhealthier things I’ve done is play a lot of Bethesda Game Studios’ Oblivion. A whole lot of it. Steam says I’ve put in 39.3 hours, and I’ve only been playing for four or five days.

It’s an escapist game that appeals to my urges for exploration, completion, and optimization, even if I feel the need to patch the hell out of it. I’ve got 39 mods installed for it, all graphical upgrades, bug fixes, or interface tweaks. People no longer look like corpses and most of the bugs are fixed, making the game quite playable.

As much as I clearly enjoy the game, it suffers from a fatal flaw: the developers sacrificed user experience in their pursuit of their game system. Oblivion has an elaborate, interesting setting and backstory, an impressively large and detailed world, and a complex set of mechanics. But it’s all a lot less fun than it should be.
Continue reading The Player in Oblivion

The Obsolescence of Lives

I twitted that “restarting a long multi-screen level on death” and “limited lives” are examples of retro mechanics that should stay dead. I thought that I would expand a bit on what I meant.

In part, this is a corollary to my past writings on challenge and punishment. In my definition, challenge is when a task is difficult to accomplish because it requires a high amount of skill, ability, or experience. Punishment is when failing a task imposes a burden on the player, usually in the form of lost time.
Continue reading The Obsolescence of Lives

Saving Professor Booster: Choice and Agency in Cave Story

Cave Story is a classic of the indie games movement. It single-handedly showed many people that a single developer could make a game with dated graphics that was as good as AAA commercial games. This was already clear to some, but Cave Story‘s prominence means that it has heavily inspired much of the work done by the modern indie games culture. There are a lot of things that Cave Story does well; its handling of mood and narrative structure are great, as well as its balancing of humor and pathos. One thing it does badly at, however, is providing the player with effective choice and agency.
Continue reading Saving Professor Booster: Choice and Agency in Cave Story

Bizarre Variable Naming Issue With iPhone Packager for Flash

I posted the other night about my difficulties with Adobe’s iPhone packager for Flash, the program that lets you convert a Flash app into an iPhone app. I’ve managed to track down at least one of the issues that’s been eluding me, but it’s a doozy.

If I name an embedded bitmap resource “sprBatteries,” the app hangs at startup on the iPhone.

I can name it “sprDryCells” or “sprBatteriesX,” and it works fine. I can replace the resource PNG with a PNG I know works elsewhere, but if I name it “sprBatteries,” the app hangs. The app runs fine on my desktop. I believe (although I haven’t done systematic testing to confirm) that it works on the iPhone if I compile it as a simple AS3 app using the Flex compiler instead of compiling it as an AIR app. The resource variable name doesn’t collide with any others in the project.

If you’re not a programmer, let me explain that this behavior is bizarre. Variable names are totally arbitrary. As long as you don’t use any prohibited characters, you can name a variable anything you want. A college friend of mine liked to call his loop iterators “taco.” Many languages/compilers won’t even bother remembering the variable names once the source code is turned into a program. Flash happens to record theirs in the compiled SWF for various reasons, but there’s no sensible reason why “sprBatteries” should be treated differently than “sprBatteriesX.”

I give up on AIR for iPhone unless someone can get me a solution. I’ll see if I can get this running in simple AS3 without any hardware APIs, but it’s unlikely that my final product will contain any accelerometer input (for example). This is frustrating, and I’ve spend a total of over 12 hours fighting with this thing. Adobe hasn’t represented this as a finished product, and rightfully so. In its current form (and assuming I haven’t overlooked something simple), the Packager for iPhone is not ready for use in serious AIR development.