Where There Be Dragons

So I'm thinking south. I hear it's warmer in the south.

There have been a few unreported landmarks in the last year – an understatement, but its been an interesting journey and I’ll tell you about some of the milestones we’ve passed since our last update.

We’ve come a long ways, as you might expect in a year of labor – task after task is step after step toward a distant goal. It helps keep my head in the game to think of the process as a quest, a mission, a work of journeying to the promised land.

An image of a map that's more or less blank, with a "you are here" dot in the middle, and dragons all around.Like Marco Polo setting off for the East, our questing map has gaps. We know we’re building a game. Let’s call that game the land of milk and honey. Between us and the land of milk and honey is a lot of open space full of interesting challenges. Some of it we know the outline of because other people have left maps. Other areas are what you call Terra Incognita – lands unknown. Some mapmakers would playfully write: There Be Dragons Here, to keep folks from wandering into those areas where the map didn’t cover.

We’re not afraid of dragon tales (or tails), but being our first foray, there are challenges. We’re committed and well armed with tools of the trade and the stories others have told. But when you’re on a road you’ve not seen yourself, you don’t always recognize the important landmarks until they’re behind you. Sometimes simple decisions lock you up for days because you’ve never seen them before. Other times you charge happily into problems more experienced travelers would know to avoid. Interestingly, that’s where a lot of innovation comes from – inexperienced individuals happily tackling an old problem in a new way because they don’t know everyone else had avoided it altogether.A picture of two adventurers who have slain a dragon, with a bunch of other adventurers who had been going around, expressing surprise.So in the last year we’ve covered a lot of ground, killed a few dragons, and managed to produce a playable game at every stage that we both enjoy.

Both you say? Yes, both. Did I forget to mention? There are two of us now. The third caught the winds of fortune to a different destination. No worries, he didn’t perish in a dragon battle of egos as sometimes happens, he just went somewhere else. In this case, acting school. We maintain some hope he’ll return triumphantly in the final hour with a knightly cadre of voice talent, but as with these things, that part of the future is still firmly Terra Incognita.

So here are a few of the landmarks we’ve passed on the journey of the last year:

Physics

We went with Bullet. Here’s a bit of Reinan’s unfinished thoughts from a post we never published long long ago in a era far far away.

Over the last couple of months, my primary focus has been integrating a physics engine into our game. For this we have chosen to go with the open source Bullet Physics engine. While the trials and tribulations of the process are perhaps interesting from a technical perspective, what’s more interesting is the realization that physics is fun.

For example, firing bullets at a brick wall and watching it explode is strangely satisfying.

This is from our engine with the physics debug draw on. It paints the triangle meshes of the floor and walls with green, and the primitives as outlines.
This is from our engine with the physics debug draw on. It paints the triangle meshes of the floor and walls with green, and the primitives as outlines.

Our physics integration isn’t without it’s travails. I’m still modeling in Blender, and the blender bullet export solution is a hack.  But on the game engine side the system has been functioning as intended for many moons.

And now we can fall off things and run into them. Some things can be climbed or pushed over. It’s very exciting.

Evil Boxes

In our game we have an evil darkness that lives in the brick and mortar of old castles. Our first pass at the AI mechanic uses a boids algorithm normally designed to model the flocking patterns of birds or fish, but in our case fine tuned in all manor of interesting ways for creepy crawly flocky things to try to eat you. No aesthetics done yet, so they’re represented as black billboards.

They hunt in murders.

They have a very satisfying tendency to creep up on you unawares. They do their best to hide from the light, avoid your gaze when you look for them, and chew on your ankles before you have a chance to stamp them out. It’s darn creepy, even just as boxes.

Battling their flocks is good frantic fun, but a bit nihilistic until we got:

Life

“The Light is the Life.” – some hack making an oblique Dracula reference

A bird's eye view of a very crummy character model fighting boids with a flashlight.
No battle is advisable without some way to survive it.

In the world we’re making, your light is your life bar and your life is your light bar. Fitting to be attacking the darkness with, no? No sign of magic missiles yet. Stick around.

World

While Reinan the Wizard plugs away at his arcane equations, I’ve been designing the game environment. Castles, levels, zones, and tons of stuff to go in them. We’ve got tables, chairs, doors, vases, gates, swords, and all manor of dark ages paraphernalia.

With light, life, physics, furniture, bad-guys, and battles it’s almost like we’re playing a game, and it’s quite fun, even after proto-playing it for a year. That’s encouraging. We occasionally loose ourselves in running the engine, wandering around and doing battle with the billboards. The Land of Milk and Honey seems just on the horizon. But no. What’s that between us and there? The Sinai and the Red Sea? Cool. Not sure what’s in those places but I’m sure we’ve got this.

Epitaph reads: He didn't have this.

What we’re working on now: Movement Mechanics

Character control is everything to me. It makes or breaks a game. I wish I could tell you that story was the core element and I’d play anything if the story and characters are good. But, frankly, you can get good story in novels, or television, or film, or around a campfire. What games have that other mediums don’t is an interface. So let’s be real. The interface had better be good.

It has to respond when you push the button, it has to abstract away a lot of the fine motor control we take for granted in real life, and it has to give you the experience of being the sort of person the game is about. That’s a lot. Whew boy is that a lot. We’re still sorting this one out, and we will be for a while. But we’ve found a lot of inspiration in David Rosen over at Wolfire. His creative solutions and willingness to talk about them set an example that’s led to me writing this blog post, among a lot of other stuff we do around here.

As with any journey, you take inspiration from those who’ve gone ahead, but you also leave markers for those who’ll come behind.

What remains still Terra Incognita

  • Scripting – encounters and scenes.
  • Animation – haven’t even gotten started.
  • Shaders and Aesthetics – a layer of polish we’re always fighting ourselves not to do too soon, because it’s fun and cool looking.
  • Environment and challenge design – endless battle between cool and hard.
  • Balancing – like bhudda
  • OPTIMIZATION PRIME
  • Voice acting
  • Probably other stuff.

We’re taking this one challenge at a time. We don’t know how else to do it. We’re building the game so that it’s always playable, always fun. Each new step is a step into the dark, and at any one of them we might discover we’ve stepped into a dragon’s lair and have to backpedal or fight for our lives. That’s already happened a couple of times, and we’ve come out the stronger for it.

But the thing about Terra Incognita is yes there be dragons, but there be also treasure. What’s more, The Land of Milk and Honey isn’t a real place. It’s the place you imagine to convince yourself the journey is necessary. Then it becomes the place you build with all the treasure and dragon bones you’ve piled up along the way.

Leave a Reply

Your email address will not be published. Required fields are marked *