Archive for the ‘Game Design’ Category

Lament of an anti-social gamer

Wednesday, November 5th, 2008

There was a primer posted on Gamasutra a couple of weeks ago about the growing role of social communities in games (and the challenges of building one that works). It’s probably obvious by now that there are huge advantages to building an online social community around games — give your players a place to compare notes and shoot the breeze with other players, and you’ve got an almost surefire hit, particularly if the game already has a fanbase. Even games that are entirely played online anyway (say, World of Warcraft) have thriving internet communities because they give players another reason engage with each other while they should be working.

But is it possible to provide too many social options for players? It’s a lot of work to set up such things, and there may be a point at which actual gameplay can be sacrificed for the sake of “social” features. The case in point is Spore. I was pumped about Spore before it came out. I bought it within a week after release. It’s a great game, and it’s revolutionary in several ways, but when you really dig into it, there’s not much game there.

The Spore experience is so focused on encouraging players to share their creations with each other that I felt from the beginning as if I were missing half the game because I didn’t care about looking at other people’s creations. I love that other creations are pulled into my universe automatically, but I haven’t spent a single minute looking at sporepedia online or making friends in the online Spore community.

(Full disclosure time: I’m not a heavy user of social media. I get it, and I think it’s changing the nature of the internet before our eyes. But I lead quite an anti-social online life.)

It’s becoming accepted generally that, if you don’t build social features into your game, you better do it online. In fact, one of the suggestions I’ve heard for indie developers is to focus lots of attention on your online social presence. Make your game about connecting, not just playing, say the experts. They’re probably right–all my favorite and most enduring entertainment experiences have thriving communities. My lack of participation doesn’t mean it isn’t there.

What I’m trying to find, being an ultra-indie, is the right balance. I can’t build or support a big-time social platform to supplement my games. Even if I could, it would almost certainly seem incongruous with the scope of the games themselves. Nor can I hope to compete with the big casual game sites (which naturally have full-featured social elements).

Probably, as with most things, the answer is somewhere in the middle. Create a game with in-game social elements (like multiplayer) and then give players a simple way to connect with each other outside the game using existing platforms like Facebook apps or embeddable web site widgets. Guess I’ll add those to the list of things to learn.

IdentiFiction: Can it deliver?

Tuesday, August 12th, 2008

I stumbled today on a new project called IdentiFiction, an upcoming online channel for episodic, browser-based games. After checking out the site, I definitely agree with the Rampant Coyote’s assessment. IdentiFiction’s vision is totally in line with the direction I want games to go: complex characters and stories presented in a way that will appeal to more than our most juvenile instincts.

The weekly episodic format is also appealing to me, since it’s something that makes increasing sense as people get used to paying small fees for downloaded television episodes. It’s also a great way to tell intricate stories without requiring hardcore time committments.

The question, of course, is whether this team of 50 people can deliver something compelling with their first game, Aosphere. The odds are against them, but maybe that’s part of the appeal. In any case, I’ve marked my calendar for October 15th.

Seamless tiling terrain, in pieces

Wednesday, July 23rd, 2008

I’ve still been working away on several things since my last post, but most of the sweat has gone into correcting a few issues with the looping terrain I linked a couple weeks ago. I’m happy to report that I’ve finally fixed the two things that were driving me crazy:

  • Published versions of the file were strangely not rendering the main instance of the terrain from certain angles. Something about it was not working nicely with the camera. I never figured out why the problem was happening, but I did manage to work around it.
  • It was painfully obvious where the seams were between tiles. The cause for this was pretty obvious as well: While the vertices lined up perfectly on the edges of the terrain tile, the normals did not, which made light react differently to two vertices located in the same place along the edges. Unfortunately it took way too long to fix the problem. In the end, very little code was involved (which is not to say that I didn’t write a lot of unnecessary code along the way), but I used quite a bit of scratch paper trying to figure out how to access normals on the mesh’s borders.

Anyway, check out the new, improved version.

But wait, there’s more! I also developed a system to generate floor tiles around you as you walk. This means you could walk forever in any direction, and there will always be something to walk on. By itself this isn’t terribly interesting, as you can see. Still, the possibilities are pretty cool. If I could generate random terrains a little more quickly, I could generate a truly endless, randomly generated terrain.

Or, even better, I could create any number of seamless terrain meshes and load them in as necessary around the player a la World of Warcraft. I would just need to store a master grid of terrain tiles and keep track of the player’s location. I’m still a few steps away from there, but it’s starting to look doable. Pretty cool, huh?

Notes from the abyss

Wednesday, July 2nd, 2008

Absentee bloggers are no fun. They entice you with a stream of regular posts and then disappear for weeks at a time, offering not a peep. When they do return it’s just to supply excuses about a busy schedule or an obsession with the latest big game or to post frivolous items like creatures of the week.

Well, I’ll not become an absentee (denial is an ugly thing). I have no excuses. But, for those few loyal readers who still stop by from time to time, here’s a little update on my activities.

In short, I’ve been scattered, lacking focus. When I started writing this blog, I was working steadily on a single, massive, impractical project. Then I decided to turn my attention to SPUDZOOKA, and still I was focused. After releasing SPUDZOOKA, though, I haven’t been able to settle on anything. I still work on things, a little here, a little there. But three things have primarily held my attention the last few months:

  • A new game. No specifics yet, but I’ve been working on a concept for a new game quite a bit different than SPUDZOOKA, one that will focus more on story and character and, I hope, have a wider appeal (not that potato cannons aren’t universally entertaining). The difficulty so far is that story and character are tricky to develop and, while I think the concept and setting are good, I haven’t been able to find the game in it. People might explore for a while, but what would compel them through the story?
  • A web site concept. I had an idea for a web site recently that I’ve been exploring, which means reading a lot about databases, php, and xml, and then tinkering with them to see if I’ve got the programming chops to make this idea happen.
  • Procedural terrain generation. Huh? I don’t know where this stuff comes from, but I got it in my head that I would try to see if I could generate an application in Unity that would dynamically generate and display an endless terrain. The usefulness of something like that is maybe a little suspect, but it could spin off into some interesting applications. Unity’s terrain system is a little limited right now, for example, so something like this could help people generate more realistic terrains and link them together to create truly massive worlds. Even just linking sections of terrain terrain together is something that could be useful right off the bat, particularly in, I don’t know, an RPG. I hit a few tricky parts, but I did manage to create a randomly generated terrain that loops forever. Check it out (it may take a few seconds to compute).

So, I’ve been working, just not on a single project. Once I settle, I’m sure regular posting will resume. For now, don’t forget to check back for the next creature of the week.

Edit: I fixed the bug that people were seeing in the web player and put a new file at the same location.

Generation Y and low-poly 3D models

Wednesday, June 4th, 2008

I read an article in the newspaper (yes, they still have those) on Tuesday that talked about the nature of people in my generation (Generation Y, whatever that means). We are self-centered, confident, and hell-bent on instant gratification. We also want respect in the workplace now, or else. These insights are news to me, of course. Whatever leverage my peers are using to threaten their employers was clearly not shared with this humble peon.

Aside from the fact that we aren’t very nice, m-m-m-my generation is also, according to the much nicer folks who decide these things, quite tech-savvy. We were raised using the internet and have all embraced Satan’s favorite crime: file sharing. In effect, we think everything should be free.

Now, for the record, I don’t think everything should be free. I frequently purchase music from iTunes, I am a long-time subscriber to Netflix, and I will gladly pay $.99 for a Frosty. But YouTube, Google Analytics, and the open-source software movement have taught me that while quality usually costs, it doesn’t always have to.

No, the internet is home to an amazing array of kind-hearted people who build web sites offering free stuff to download (if you can wade through all the ads). Ok, most of it is crap, but a diligent search for just about anything will generally yield a site or two offering the real deal.

It was this thought process that convinced me to search for a site offering free, low-polygon 3D models to help me test a concept for my latest project. (Before you chastise me for cutting corners, let me remind you that I am a one-man shop.) You can imagine my surprise when the search yielded nothing of use. There are plenty of good sites selling 3D models, and there are plenty of horrible sites offering free models, but I found few good sites with free models, and, even worse, I didn’t find any sites at all with a dedicated library of free, low-poly models.

You might argue that the niche for aspiring game developers with no money is too small to warrant such a site, and you might be right; however, consider the number of low-cost (or free) game-development platforms on the market, the hordes of young computer programmers, and Microsoft’s XNA Creators Club.

It seems more likely to me that the limiting factor is the number of skilled modelers around. Most are probably employed (and sick of modeling by the time they get home), disinclined to post their work for free, or not that interested in low-poly work.

Regardless of the reason, the results of my search make me sad. Partly I’m sad that I couldn’t find any models to use, but really I’m just disappointed that my instant gratification will have to wait.