Arman's stuff
Creative Outlets

(Thu Sep 15 09:50:52 2011)

Are you creative - and if so, how?

I like writing. I do; it's a creative release for me. Some people build things, some people write code, but for me, writing is the purest form of inspiration; there are no rules. Oh, I build things, write code, or just read books, but none of that compares to actually writing something awesome. There's just one flaw, however - to write a book, one has to have the time to do so. But, I've found a way to cheat - a way to tell a story, without having to sacrifice huge chunks of my day to do so. A way to write just as much as I want, without needing to finish "one more chapter." And how is that, you ask?

Interactive Fiction (aka text games or text adventures)! If I wanted to write about a blind girl escaping from a kidnapper, I can start with the basic plot: girl gets kidnapped, girl escapes her bonds, girl accidentally alerts the bad guy, girl subdues the bad guy, girl escapes. Bam! That's the plot, now for the fun part - the descriptions. Everything gets a brief description; instead of detailing how the girl escapes her bonds, you leave that up to the player. A few 'rails' to keep the player on track, and suddenly, I have a short story that can be completely explored. How awesome is that?

Only... that's not enough, now. At this point, I've written two full games, and I'm working on three more. the first game I wrote (Fog Convict) was just to test out what was possible, without modifying the basic library files at all. The second game I wrote (Blind) pushes those boundaries, adding verbs like smell or feel, and writing descriptions for those as well. The other games I'm working on explore other pieces of the puzzle - in one, the game tries to act less like a game, and more like a "normal" program, as if you really are telling someone across the world what to do. I'm trying to figure out all the interesting things you can do with the game itself - can I add a menu? Make the game pause, blink, or flash? Can I add passwords for secret levels? And most importantly - can I completely hide the game engine, so you don't feel as if you're playing a game at all?

Another game I'm working on is exploring two different elements - first, character control. In most games, a character is static - it's "you" or "me," and it stays that way. There are a few games where you can transfer control from one character to another, but not many. In this, you can control many players by simply handing them a hat - the second they wear it, you control that player completely. Of course, to pull that off, I have to have lots of other characters - the second half of my experiment. What makes a good NPC (non-player character)? Is it possible to have a horde of basic characters, and still be playable, believable, and fun? What does it take to add "smart" to a character?

The last game I've worked on recently is hardly a game at all - it's a testbed for ideas. I wondered if it was possible to actually browse someone's hard drive from the game, or read various files, or download things off the 'net. While, it turns out, I can do some of those things, there's not enough there to actually write a game. I mean, how cool would it be if you got an email *in real life* when a character says they'll be emailing you? Or to actually get a phone call, when someone says they will give you a ring?

Ahem. Anyway. All these ideas are bouncing around in my head; I had a whole adventure in there, and finished that last month (sans beta testing). Now, I have ideas for game mechanics, but not so much for the actual plots. Well, ok, I have lots of ideas for plots... but I'm stuck for implementation. For example - in The Panama Hat, you're a hat. A hat that can completely control anyone that wears you. Your eventual goal is to reunite the pieces of a traveling suit - hat, jacket, boots, gloves, and a watch. Obviously, there should be lots of people. They can't stand around, though, so I had to write a "wander" program, to make them walk up and down the street, go into shops, and so on. Once I had a city block written, I sat back, and realized I have almost a dozen people in that single city block. If I expand that to a decent area, I'll need hundred of people - every one with a dozen things to say, ways of answering questions, or things to carry. I'd spend ages writing them, and I don't know if I'd actually be able to finish. So now I have to look at it, draw a map, and write down where the player needs to go, and what he needs to do. Are the boots at a construction site? Does the jacket even exist? And how many people, exactly, will I need to actually write?

But that's the fun part. The more I write - and the more I program, because let's face it, there's a fair amount of that for the complex stuff - the more I can simplify. I don't need to write six customers for the barber shop; I can write one generic character that pulls its description randomly. The only characters I need to write are the ones that actually have an impact to the story. Similarly, instead of describing every piece of a long stretch of road, I can drop all the things you see on the road - trees, lamps, etc. - onto a single 'floating object' that moves along with you. As far as the player knows, there is a row of lights, but as far as the program cares, there's just the one.

Much like anything else, there are three separate parts of this: learning, exploring, and creating. I love to explore possibilities; my natural curiosity is quite strong. I also love to create things, as my imagination is even stronger. And while I learn quickly, it's almost out of laziness; I don't want to spend my whole life learning about something. I want to learn it quickly so I can go on to actually do something with it! And that's the brilliance of text adventures; the actual learning aspect is easy, so I can learn it very quickly - but the possibilities are endless, and the worlds that can be imagined are limitless. I could write a quick story about a troll in a forest just as easily as I could write about a space weasel on the planet Zoltar or a high school kid just trying for find his homework. All I have to do is start typing.

And once I figure out some game mechanics, here or there, I eventually weave them into a story; what starts as a question about whether the game accepts key presses turns into a game about code cracking. That's the best part of all - taking the knowledge I've gained, applying myself and inventing a new way to do things, and finally creating something from it. It's just awesome!

<< Text AdventuringOut of My Head, Into Yours >>

This blag is tagged: Imagination, Textgames, All