Dungeon Master’s Toolkit: Dev Diary #1 – Personal Introductions
For the last 12 months, I've been dabbling in game development with Unity. While I had produced a few small, playable test projects, I hadn't really progressed anything beyond the prototype stage. Partly, this was due to a reluctance to spend my time producing art assets; a symptom of professional burn out. But it was also the scope of such things. An awful lot of work goes into creating even the most rudimentary of games (as I've discovered over the last year) and my predisposition towards working alone would put the entirety of that monumental task in my path.
Unless of course, I stopped working on my own.
Here's where I insert an awkward segue into introducing friends and ex-colleagues, James Podesta (aka. MadPuppet) and Chris Bennett (aka. Pale-Face). We each have some shared history of varying degrees of collaboration and infuriating circumstances. I'm going to share some of this on my blog for no reason other than to tell stories (as I'm wont to do).
I studied with Chris Bennett at Queensland University of Technology in a different decade, majoring in 3D Animation back when no one seemed really sure what it was. We both landed the same gig out of college: The children's animated television series Animalia at the unfortunately ill-fated visual effects studio, Photon VFX.
Animalia was a pretty exciting project for me, as it represented vindication for years of broke-ass study and forcing my steadfastly resilient partner to co-survive on my disastrous attempts at edible cooked produce. Photon VFX wasn't exactly the smoothest introduction to the industry, but it was certainly an education, and to this day I remain incredibly proud of the sheer volume of work that us absolute noobs managed to produce.
From there, the work got less chaotic, and luckily for my partner, so did my cooking.
Chris and I parted ways, and then after a couple of smaller visual effects projects (or small parts on large projects, such as Baz Luhrmann's Australia on which my claim to fame is - with all seriousness - a tortured house fly) I started to feel that I wanted to try the games industry for a while. I had three good friends working in games at the time: Travis Draper, Iain Danvers, and Kieran O'Sullivan (who is currently working on Farcry 3 with a villain who looks like our love child, though to be fair it's much more him than me - the genes are strong in that one). They convinced me without much effort that a leap would be worth it.
I've always loved games. I'm a gamer. That's not a term to describe my leisure activities, but rather a distinct personal definition: I live and breathe video games, and I have since my parents purchased an Atari 2600 one Christmas in a different century, and I immediately stopped going outside. Ever. I believe this caused my parents some concern.
Now, I'm an almost-34 year old with video game tattoos and haircuts and a need to spend the rest of my life inspiring other people to be just as hopelessly enamoured with our craft. And I don't think my parents are any less worried.
So having experienced a small part of the visual effect industry, I left screen and started working in games at the unfortunately ill-fated Krome Studios (this pattern, I hope, had nothing to do with me). I came in at the end of a project, and Chris had just finished up another film gig at the time, so I pushed him to apply. Needless to say, his awesome skill set was in immediate demand, and a couple of weeks after I started at Krome, Chris did too. Said near-completed project was shipped, and then after some interim floundering (Krome's CEO preferred to avoid firing everyone between projects - an impressively altruistic philosophy that probably didn't help in the long run) I ended up on another project at Krome with our lead programmer being none other than James Podesta.
It's interesting to note here that apparently everyone was tensed for James and I to immediately clash and start throwing chairs at one another. It's interesting because the opposite kind of happened: James is a guy who knows what he wants to do and how it should be done, and I'm a guy who knows what I want to do and how it should be done, and it is possibly just sheer luck, but we both wanted to do the same things in exactly the same ways. And so did everyone else on the team, so ultimately that project we were both part of was, for a time, almost perfect. It seemed to be this rare collision of good ideas and great execution by a team of eclectic individuals who all instinctively shared the same creative vision.
Then Krome made a farting-like sound, and we were all jobless.
Fast forward to a month or so ago, and either I contacted James or James contacted me, suggesting some kind of collaboration. We threw around ideas for a while, trying to settle on something which suited our particular skill sets, interests, and available time frames, and eventually settled on a contemporary dungeon-crawler game of the Eye of the Beholder vein. Getting Chris Bennett on board was (luckily for us) just an email or two later. After all, it's a genre we all love, and has recently been proven to retain some modern playability by the makers of the awesome Legend of Grimrock.
We'd like to expand on that with our own take on the classic genre. But we're also bound by the usual responsibilities plaguing independent game developers: Awful stuff like feeding your loved ones and paying for those horrible real-estate folk to stop threatening to kick you out of your house.
So, inspired by Epona Schweer and her brilliant business advice over at IndieBits.com, we came up with an experimental take on funding and monetization that with any luck will help us see our game through to fruition (hold on to your hats):
We will sell the assets we create for our dungeon-crawler game as asset packs on the Unity store. This includes environment art, monsters (rigged and animated), spell effects, items, GUI art, and all the code to drive it all. There will be enough content in these packs for anyone to kick start production on their own dungeon-crawler game, adapt to suit another RPG-like genre, or simply dissect for the purposes of education or re-textualisation.
In fact, it's entirely probable that upon completion of our game, we will have released enough content for anyone to make their own dungeon crawler game from the ground up.
It is our hope that these assets, packaged under the moniker of The Dungeon Master's Toolkit, will serve to at least partially fund the development of our game: As a new level is completed, the content for that level will be zipped up and sent off to the Unity store. We're still discussing price points, and figuring out how to package assets to be most appealing to those who don't necessarily want all of the content, but I feel we might inevitably have to wing it and adjust our strategies as we go.
I'm pretty excited about the whole thing. Not just the game project or The Dungeon Master's Toolkit - both of which press a lot of my nostalgia buttons - but also the collaboration. I tend to be a bit of a loner, but so far I've been more productive on this project than I have felt on anything in a while. There's something nice about sharing the weight of a project's scope among friends. And the work James and Chris are producing is challenging me to be better at what I do. Fingers crossed that this experiment, and the game behind it, work out like we hope they will.
More meaty stuff* to come.
* Not a euphemism. I seem to have to write this a lot.
A Little Bit GUI
I'm working on this Super Top Secret project thing, which I posted an example environment texture from over here. Since MadPuppet (aka. James Podesta) moves about a million times faster than I do, he's up to needing GUI art while I'm still arranging stuff on my desk to ensure a pleasing work environment aesthetic.
I haven't even started the spend-three-weeks-browsing-the-net-under-the-guise-of-research phase of production, yet.
But alas, some progress is needed, so below is a small sample of GUI elements (work in progress). You can probably tell a great deal about our project from this. No, it's not particularly unique, but I don't give a rat's. It's a nostalgic throwback, and the games we're using as inspiration are some of my all time favourites. I have to say, I'm really digging working on this. But with Pale-Face (aka. Chris Bennet) now applying his awesomesauce to characters, I've got my work cut out for me just keeping up.
Anyway, here's some art because this artist's blog is decidedly short on it.
It's draft stuff, but as they say, beauty is in The Eye of the Beholder. SEE WHUT I DID THAR?! Now it's back to sculpting environments, and hopefully there'll be something worth showing off from that in the next few days.
I Want to Work For Valve
I'm not entirely sure why I am writing this post, but I do suspect my motives might be slightly nefarious.
You see, I just had something of a slightly life changing experience: I read Valve's Employee Handbook. I'm not really sure what to say about it. I'm full of things I could say, but they seem trite and naive and a little embarrassing, like I'm slightly too old to be all moon-eyed fanboy.
Stuff like: "It filled me with all kinds of fuzzies". Or: "I want to have Gabe's babies". Though that one is probably just creepy.
Ultimately, it boils down to optimism. Real, live, not remotely cynical, genuinely heartfelt optimism, like this is a place which is directly plumbed into the communal Zeitgeist, deriving sustenance from, and in turn sustaining that impossible dream of contemporary creativity free from the shadow of that monolithic edifice of The Corporation*.
It filled me with undiluted optimism. Until I realised I don't actually work for them. Then I just did this face:
I've always suspected that Valve would be something of a chaotic, creative free-for-all, full of energy and action and some kind of paradoxical mix of catharsis and sheer terror: I was full of anxiety just reading about the lack of corporate structure. Thinking about working with a team of people I admire beyond words, without someone explicitly telling me what to do, makes me hyperventilate. But it also makes me want to jump out of my seat and yell affirmations at someone.
It's pretty incredible stuff. And it's vindicating. When you've been burned by that crushing weight of business (said like it's a dirty word) it's hard to accept that there can't be a much, much better alternative. And of course, there it is, in Gabe Newell's perfectly birthed and yet somehow completely autonomous masterpiece of creative endeavour.
That these folk create such brilliant, mind blowing, utterly engrossing experiences is enough to go starry-eyed over. But that they do it with such professional freedom and liberty is just... Well, I don't know what else to say but "optimistic". It seems like such a small word, but I use it with the incredible power it has. I think most of the corporate world doesn't have any idea what the word means, and I think it's obvious that Gabe Newell and the Valve team are very, very clear on the matter.
So what was so nefarious about me making this post? Well, I figure there's a tiny chance that someone from Valve will stumble on my blog, and then a tinier chance they'll pass it on to recruitment, and then an infinitesimal chance that someone in recruitment will find a 33-year-old geek begging for employment on his blog just pathetic enough to offer me a job.
Besides, apparently us Aussies are a bit of a rare commodity around the Valve offices.
* Requires it's own extra-bold, sans-serif font. Which was probably made in a font sweat shop.
Game Art: Been a While!
I've teamed up with ex-Krome colleague and coding genius (thinks in binary) James Podesta (aka. Madpuppet - check his games on iTunes) to work on something for Unity. With James focusing on code, the logical role for me in this partnership is art. It has been a long time since I've done much 3D, particularly unreferenced 3D intended for a gaming platform. So long in fact that a more appropriate word is "never".
It has been a bit of a trial getting back up to speed with the software, but more so, the process. It's funny how quickly creative dexterity is lost when you aren't exercising the right muscles*.
Luckily for me, I've been hanging around some insanely talented folk in recent years, and I've picked up some of their skills through observation. I hope that some kind of creative osmosis has taken place, and I've absorbed some of their overflowing awesome, too.
At any rate, I wanted to update the blog because it has been neglected a bit of late. So here is a sample of something I'm working on. It's a brick wall. Exciting, right? This is the high resolution mesh (as it currently stands) sans textures or complicated shaders. I'm not sure I started out with any particular influence in mind, but I like to fantasise that there's a little bit of Darksiders and a little bit of Blizzard in there. Maybe even a little Bitmap Brothers, which would totally rock my socks if I could pull off something of an homage to their style.
As always, if anyone has anything to say, I'd love to hear it. Especially if it's quotes from Edgar Allen Poe's "The Raven". That poem is EPIC.
* Not a euphemism.
Mass Effect 3 and Consumer Entitlement
When the ruckus around Mass Effect 3's ending first started appearing, I was initially amused. "There go those whiny gamers again," thought I. Probably while sipping some unpronounceable brand of tea from a freshly carved ivory cup, pinky choreographed to a perfectly aloof angle. Then the noise got louder, and I actually started taking an interest. I was intrigued, at first, and then oddly a bit angry and defensive on behalf of Bioware: As someone who creates and aspires to create well, I was a bit aghast at this entitlement that was being thrown around the place. Not that gamer entitlement is anything new, but this was truly epic stuff - like, legal threats epic. I mean, as though these gamers had a right to do anything but shut the fuck up and consume this wonderful game they had been given, right?
Then, I finished Mass Effect 3.
Up to this point, my partner had been watching me play. We never do that. I think together we sat through 20 minutes or so of Uncharted 2, which was probably the most cinematically* engaging game I had played up to that point, but we both participated in Mass Effect 3 with a constant, quiet awe and reverence. Here was this engrossing fiction of heartbreaking loss and utter despair; a few broken heroes pitched against insurmountable odds. And we were buried in it, heart and soul. It was beyond Campbellian journeys and into something truly, devastatingly moving. I cried. More than once.
I cannot emphasise the importance of that. I don't do that. Neither does my partner. But here was this game that was literally moving us to tears time and time again. And I was so enthralled by it all that most of the combat passed in dutiful, desperate silence. The entire galaxy was at war - a trillion lives on the brink of destruction - and I actually felt it. Bioware had actually convinced me that this story which began so small, so long ago, had become a last stand against utter extinction. It seemed kind of important that I save the fuck out of everyone.
And then, after hours of that final battle when it seemed there was no hope at all, I reached the end of the game. And my partner said "...oh." And I skipped the credits, turned off my XBox, and went and watched TV.
The thing is this: When you create a fiction, you present an audience with an emotional 'flavour', and as consumers we all develop preferences and penchants for different 'recipes'. You can call it cliche, but it's why we go see a romantic comedy, or a thriller: because we know almost exactly what we're going to get, and we eagerly anticipate those flavours we so desire. There is a lot of power as a consumer in being able to choose your favourite taste. If, however, the romantic comedy finished with everyone being chainsawed to death, most of the audience would walk out feeling cheated; likewise if the thriller turned out to be a musical tween drama and it was all a dream.
As an author, you have the immense power of being responsible for that flavour, but you are also directly responsible for shaping your audience's expectations. You cannot claim ignorance to this responsibility. If you create expectations and then cheat your audience of those expectations in order to be subversive, then there's a good chance they're going to go ahead and feel cheated. Arguing about whether they have a right to do that or not is pointless as 'rights' are irrelevant in this context: It just is what it is, and people will feel what they feel. Better the chef arguing that a cup of vinegar in your ice-cream desert is his 'artistic integrity' and you're being 'entitled' by not liking it.
Video games complicate this issue because your audience isn't a passive consumer. They are the fiction. When you asked me to suspend my disbelief and actively participate in the Mass Effect universe as Commander Boon Shepard, I become as responsible for that story as you (the author) do. In fact, there's a good chance that I have more invested in it than you because I am that guy as you've wilfully asked me to be. I don't know what's coming, but God help me, I am going to do this thing: Mass Effect is now entirely, 100% about me.
And in Mass Effect's conclusion, you're telling me that no matter what I do, no matter how hard I try, I - Commander Boon Shepard, saviour of all humanity - am doomed to this unsatisfying, unrewarding ending; not some guy in some movie who I feel sorry for, but me, the guy who has worked his ass off in a desperate struggle for victory. I cannot defeat the enemy. I cannot stroll into the sunset with my beloved companions. I cannot meet them again, hug them, cry for the ones we've lost and raise a glass to the future. I cannot win.
I mean, yeah, cool, good on you for writing a subversive ending, I'm sure that feels more emotionally and creatively satisfying than giving everyone what they really desperately wanted after hundreds of hours of gameplay.
Mass Effect has always felt like "Lord of the Rings" in space multiplied by a billion. This fan-made ME3 trailer sums it up better than words can. It should have finished with me jumping out of my seat, yelling "FUCK YEAH" while tears of joy and relief stream down my face. Why wouldn't you, as the author, aspire to create that ending for me? I mean, seriously, this is what I just don't get: You could have given me an ending to make me bawl my eyes out while I fist pumped victory at the sky, running off to phone up everyone I know to yell at them to buy the game. I would have talked about that game for the rest of my life.
That is a really cool thing to want for me.
Instead, you had to be clever (a word I use for intention, not result) by subverting those heroic expectations with something unsatisfying, illogical and incoherent that reeked of The Matrix (incidentally, this ending was just as bad when they did it). And in the end I was left thinking "Someone wrote this thinking they were being too clever for the audience, and all they did was cheat everyone from what would have been the kind of glorious ending that gamers rave to their friends about forever". Artistic integrity? Okay, if that works for you, sure. That's a hell of a lot of integrity though, when you consider what you cheated yourself out of.
And this is why people are complaining: Not to be ass hats, not to prove how important they are, but just because they're so damn disappointed. This could have (should have) been the most epic sci-fi trilogy of all time, the forces of galactic civilization desperately struggling for survival, while you and your small band of broken heroes - in respect to all the lives lost along the way, and against the overwhelming tide of extinction - impossibly win the day. I mean, you and your team did such an amazing job of making it exactly that right up until the last 5 minutes.
It would have been nice to walk away feeling that kind of awesome.
What a damn shame.
* Inventing words mayhapsably.
Mental Ray Occlusion Pass Script
Here's another little script that might help some folk. It creates a new renderLayer (or uses an existing renderLayer created by the script) and assigns an occlusion shader as an override.
The shader defaults to output bent normals (in world space) through the output RGB channels, and a 64 sample occlusion pass in the alpha channel. You can change the output, sample rate and light/dark color (defaulting to white and black respectively) by editing the created "btMib_amb_occlusion" node. It's important to note however, that due to occlusion output defaulting to the alpha channel, the light/dark colours have no affect unless you change the output mode.

World-space bent normal pass in output RGB channels.

Ambient occlusion pass in output alpha channel.
The script takes two variables, the first being the name of the occlusion layer (defaulting to "btOcclusionRL" if no name, or an invalid name, is specified) and the second being an array of object(s) to add to the new layer. The easiest way to use the script is to simply select the object(s) you'd like to render in the occlusion layer - groups, transforms and shapes are fine - and then execute:
btCreateOcclusionPass "" `ls -sl`;
This will create a new layer with the default name (btOcclusionRL) and assign all selected objects to it.
Similar results can be achieved via Mental Ray's built-in render pass system, but I find this route beneficial for a number of reasons: Firstly, it's more visually intuitive, giving you immediate scene visualisation, and easy access to occlusion-only renders if needed. It also separates occlusion from the primary render pass (or passes), allowing an occlusion pass to be farmed out the moment the camera/animation are locked off. While multi-pass EXR's make for tidy folders, they also make for painful re-renders if something needs fixing.
And I just prefer to work via renderLayers where it makes more sense to do so
I hope this proves useful to someone!



