Day: August 1, 2007

Master of None

2001 was the year I seriously decided to become a game developer.

I’d had aspirations of doing so for almost my entire life, but 2001 was the year my son David was born. That was when I had to face the fact that I probably wasn’t going to be able to support a family of four on game tester money.

Having a family made it simultaneously harder and easier to become a programmer. No, there would be no week-long eat/sleep/code stints for me. But at the same time the knowledge that I needed to do more for my family prompted me to work harder, learn what I needed to know and come out of my shell enough to get the job I wanted.

But I had read voraciously about programmers like John Carmack…prodigies who understood code in a way other people just can’t. I had long felt disheartened because I knew I’d never get to that level and it seemed (from my reading) that it was necessary to do so in order to succeed.

Actually getting a game development job disabused me of a lot of that notion, and subsequently I decided that while I couldn’t be a master at anything, I could at least get a little familiar with everything.

I wrote Inaria because I’d never written an RPG engine. I wrote Planitia because I’d never written a 3D RTS. While neither game makes me an expert, I can now be an asset to a team writing either type of game.

There’s a saying: “The jack of all trades is a master of none.” In that form, it seems to suggest that it’s better to master a single subject than be competent in several. But that’s actually a shortened form of the original saying, which was: “Jack of all trades, master of none, though ofttimes better than master of one.”

Because frankly, how often do you need a master of something?

Carmack sneered at the 3D engine Tim Sweeney wrote for Unreal, but it worked well enough, didn’t it? Well enough to create a multi-million selling series of games that made Epic (and Sweeney) a lot of money.

Indeed, Carmack’s mastery of 3D engine development isn’t standing him in much stead these days. He called his work on Doom 3 “pretty damn boring”. That’s why he’s writing Java games for phones now.

So it seemed to me that I made the right decision.

And now this article from Dilbert creator Scott Adams says the same thing! It gives external validation to something I believe internally, and thus, I like it!


Sigh…

Um…yeah. Demo.

See, I’ve got a bug in the terrain morphing. It looks great, but it kills the frame rate and if you move and morph at the same time the camera goes out of control. I know I can fix it with just a little work.

Plus, if I get some sounds in, the whole game will be SO much better.

So here’s the thing. I’m going to keep my promise.

You can click here to download the current version of Planitia.

But! I will be releasing another version of the demo this weekend that will be greatly improved, so please don’t judge this one too harshly.

Controls

W, A, S, D – Move Camera. You can also move the camera by moving to the mouse to the edge of the play window.

Q, E – Orbit Camera

ESC – Quit

On the first GUI Panel, the following buttons work:

Flatten – Flattens out the terrain and raises or lowers it to city-building height.

Stone Rain – Paints “ruined” terrain onto the map.

Lightning Bolt – Click this, then click units to throw them around. Does not do damage and has no associated effect yet.

Bless – Paints “blessed” terrain onto the map.

Volcano – Pulls the terrain into a volcano shape…doesn’t do anything else yet.

Clicking any of these buttons puts you into an associated “mode”. Right-click to go back to selection mode.

None of the other buttons on this panel work yet.

On the second GUI Panel, you can left-click the general button to select your general (no matter where he is). Right-click the general button to zoom to your general. You are the green player and your general has a green cape.

None of the army buttons work yet.

On the third GUI panel…the Quit button works 🙂 It’s probably the best button in the game currently.

So what can I do?

Flatten out the terrain around the villages and watch them grow. The villages won’t grow unless they have enough flat terrain to do so.

Deform the land to your heart’s content with Flatten and Volcano (although as you do so you will see your frame rate drop to crap temporarily).

Move your general around.

Throw units around with Lightning Bolt. I find myself unconsciously trying to keep one in the air as long as possible.

I’m not going to ask for feedback on this demo…though if you have trouble running it I would certainly like to know that.

NOTE: If the game complains that you are missing d3d9_**.dll then you need to update your DirectX.