One thing I would like to see more in game is an increased application of interactivity to the game experience. Many of my game ideas hinge around this point; having missions that are dynamically built to match the players abilities or their choices within the game up to that point, having music that blends in with the action seemlessly like an interactive film score, allowing the player to build their own character and personality, or having a storyline that is shaped by the decisions that the player takes. My ultimate goal is an RPG or adventure game which contains all these features; especially having the digital equivalent of storyteller that shapes the path of the story for the player.
Now I am sure a lot of you think that this goal is insanely difficult if not impossible to put in a game, and I would understand that. Nevertheless, I have spent a couple of years researching interactive storytelling techniques as part of a postgraduate degree, and pretty much my main conclusion is that it is bloody hard to do. Due to working alone and not really having much of an idea what I was doing, all I really have at the moment that is concrete are a bunch of text simulations so abstract that only an academic could love them. But I do have a greater awareness of the scope of the problem, and a bunch of ideas that I think just might work.
Since I don't want to abandon my interactive storytelling research, I would like to try and put in into a game. I have been thinking about what the next stage of my research needs to be, and I've decided that I need to build a character simulation to overlay a storytelling on top of. Every interactive storytelling approach that I have seen needs a model of character, and while my preferred approach is more plot than character based, I still need a simple character A.I. for it to work.
So I came up with my next project, codenamed "Project Hamlet" (I always give my projects codenames on the lines of "Project Something", since it takes forever for me to think of a proper title). At first, it was simply to be a digital village, with villagers living out their lives under a simple A.I. The graphics would be simple 2D, and I was thinking it would look a bit like an automatic Harvest Moon. But I got to thinking; since this will take me a while to implement, why not make it a proper game? With a little bit of tweaking, the simulation could be made into a village version of Tropico; build and run your own fantasy village! Throw in a few elements of Final Fantasy or Secret of Mana to make things interesting, and fuse the storytelling ideas to the strategy, and the game could actually be quite awesome.
However, there's a large number of drawbacks to this project, which I'm sure a lot of you can spot:
- This game will take me a long time to make. Given my present skills, and the fact that I'm only working on this in my free time, I estimate that I will finish sometime between 2008 and 2010.
- There's several huge games in the design that I need to iron out, such as how to make the whole thing fun.
- There's always an amount of risk with A.I. research that I won't be able to figure out how to solve all the problems that crop up.
- There's a fair amount of art assets and other work needed for a project of this scope too, which I'll need to learn.
In order to mitigate those risks, I've decided to make sure that the game design is water-tight before I get to the implementation. Then I'll design the software architecture in full on paper before I start writing the code, to make sure that it all fits together. If I plan this whole thing carefully, then I think it will be achievable. But there's a lot of risk here...
However, I've also been thinking a bit about my future. At the moment I'm a Ph.D. student working towards becoming an academic. In a few more years, if my study goes according to plan, I'll be a new Ph.D. entering the workforce in two years or so. While I'd like to be an academic, there's still a chance I mightn't find a postdoctoral position and have to look for other work. I've got other skills that allow me to work in other areas, and since I'm now 27 I'll have to start to stick to a career path (at least for a few years). But I have starting thinking; what about building games for a living, doing what I've always wanted to do? I'm not going to work for a commercial developer again, but there's always the path of the indie...
At the moment, I'm in my best position yet to train up the appropriate skills. Finally I've got a good scholarship allowance, so I don't need the part-time job to pay the bills anymore. I've got all the resources open to me as a Ph.D. student, such as discount books, software and hardware, the library system, and my present course encourages me to take up entrepreneurship training. I've already got software engineering skills that I can sharpen, and I can easily train up other skills in the two years I've got left.
Thinking it through, unlike the commercial industry I could even work on slightly quirkier stuff and still make a living. If I work solo and can sell 10,000 copies of a game every year and make a very nice living off that. It's rather risky, but it's something that I shouldn't just ignore. At the worst, it would be fun and provide a small bonus to a regular income working in a standard job.
However, for this path, I'll have to stick to simple games without the huge risk that fancy A.I. entails. I'd probably have to start with simple puzzle or action games, or something along those lines. The big ambitious "Project Hamlet" is not appropriate for this path.
What to do? I've been thinking about this, and I can't ignore either path. The interactive storytelling project has been my goal for ages, so I won't walk away from it now. But I also would like to try my hand at indie commerical development. So this is what I plan to do: I will treat "Project Hamlet" as my big, long term hobby project. That way I get all the fun of a big ambitious design, and get to do my interactive storytelling work. However, in order to learn the fundamentals of game development, I will also build a series of small games, with the purpose of both learning technology and working towards making indie games. I think that, properly managed, these two paths can complement each other, and I will build both better because of it.
So there you have it. This marks the end of the introductions of what I plan to be doing, and I can start making normal journal posts now about what my progress.
Addendum: if anyone is interesting in interactive storytelling, I put a list of resources up in the game design forum a couple of months ago. You can find the thread here.