20 Apr 11
Well, it certainly has been a while, hasn't it?
It is fair to say that the general lack of activity on this blog has been directly related to the lack of significant progress on Vespers. While much of that has been due to the inconsiderate intrusion of Real Life on the development process over the past, oh, 18 months or so, a fair share of the stagnation was also due to an unfortunate combination of bad luck, shortsightedness, and an incredibly exasperating game engine.
I'll conveniently ignore the former stuff, and expand just a bit on the latter.
An actual, honest-to-goodness screenshot of the cutscene. Seriously.
As I've discussed in earlier posts, most of what I've been focusing on since last fall (or so) has been the first cutscene, since the demo will be all of the action leading up to, and including, the first cutscene. Of course, in the original text version of Vespers there is no cutscene per se, but there is a short sequence of events that spans a few turns and which the player has no control over and cannot interrupt. So in a sense, it's a scene playing out over three or four turns regardless of what the player tries to do, which is really not that different from a short cutscene. So that's how I decided to implement it, despite all of the discussion on the interwebs over the past few years about how cutscenes are evil and kill puppies.
Rather than play a pre-rendered cutscene movie like some games, I wanted to have one rendered in-game, using the same character models used throughout the first Act, with some creative scene design, lighting, and camera manipulation thrown in. Not really a big problem conceptually, but reality doesn't often play nice with concept, and this situation was no different.
Now, rather than bore you with the details of all that went wrong over the past six months or so, let's just say that most of the issues could be traced back to three key things:
1. Some of the character models weren't originally set up exactly as I needed them to be; 2. The animator used a separate copy of each character in order to make the cutscene animations; and 3. The Torque Game Engine is very fussy about a lot of things when it comes to playing animation sequences.
Basically, in Torque, you create a character model, rig it with a "skeleton," and then create animation sequences for that skeleton. Different models can use the same skeleton, and any animation sequences developed for the skeleton will work with any model that uses that skeleton. The only requirement is that the skeleton must be constructed precisely the same way, down to the very last tiny little detail, for an animation sequence to work with it. Generally speaking, this is not a problem. But along came #2 above, and with it came some minor but undetected changes to skeletal structures that couldn't possibly get past #3 above. Some of these were easily correctable, some not so much. Extra time, workarounds, and so on, you get the picture.
There isn't a video of this anywhere...is there?
In the midst of this came the realization of #1 above, and the need to fix some of these seemingly minor but ultimately important model structure issues. But naturally, making changes to model and skeletal structures led me once again into the endless pit that is #3 above. So not only would I have to update and recreate the models and animations for the cutscene, but the same would apply to all of the animations for these characters for Act I. It became like a revolving door, round and round from the cutscene to Act I and back again.
With the additional constraints of time and life on top of everything else, it began to feel like I was on a Road to Nowhere at times.
Fortunately, I was able to find a few great people to help, people who know a lot more than I do about the baffling intersection between modeling, animation, and the Torque Engine. With a little persistence, a great deal of assistance, and a whole slew of questionable workarounds, I was finally able to push through it. And now we have a cutscene.
It still lacks a background musical score, which I'm in the process of working on, so overall it seems strangely quiet. But it's all there, it's all coded, and it runs smoothly from start to finish with all the right camera shots, pans, and sound effects. I'm quite relieved.
Now all I have to do is go back and re-export a whole mess of Act I animations...again.
21 Jan 11
Some encouraging news, for a change.
My last post, back in November (really?), discussed how the parent company behind the Torque Game Engine, the engine I'm using for Vespers, was shutting down the portion of the company responsible for engine development. I think a lot of people saw that coming. The original company, GarageGames, was a small, friendly, down-to-earth group of people that had a passion for helping other people make games, and it helped them build a strong game engine and a large, fairly devoted community. The employees spent a good deal of time on the forums interacting with the customers and developers, and this created a nice connection that a lot of people appreciated. Then things started changing. They expanded their product line, perhaps a bit too fast and a bit too wide, and ended up stretching themselves too thin. They changed their name from friendly GarageGames to the slightly weird and distinctly unfriendly TorquePowered. Focus began to shift to online gaming, away from their core of PC/Mac development. One by one, many of the original employees resigned to join other companies or pursue other opportunities. They were bought out by IAC, a large corporation, and while they tried to spin it to their advantage, there was no overcoming the sense that they had sold out. When they moved from cozy Eugene, Oregon to vapid Las Vegas, the transformation of the original company appeared to be complete.
It was a sad day when it was announced that the parent company overseeing Torque was shutting down its operations, but to be honest I think most people had already been saddened for some time by what appeared to be the prolonged and inevitable death of GarageGames.
Importantly, though, those of us who were still in the process of developing games with Torque engines – and who cringe at the prospect of porting to a new game engine – had to patiently wait to see what would happen to the Torque product line, and how it would affect licensing issues. (Of course, that would only be important to people who actually release finished games, so just pretend for now that it was of great concern to me.)
So with yesterday came the announcement of the rebirth of GarageGames. The company and the product line is now a subsidiary of Graham Software Development, and the decision was made to relaunch the company under their original name and with a commitment to return to its "indie roots." There is a renewed focus on the community, perhaps Torque's strongest asset, and a desire to make the Torque products more stable, more intuitive, and better documented. They're reducing their product line so that they can focus on fewer engines, and dropping the prices on all of their engines to $99 to celebrate.
This is all good news, of course, and it is comforting to know that licensing is no longer a concern. It's also good to know that I won't have to update the "GarageGames" logo on my splash screen, which I thankfully never updated to "TorquePowered".
Still, I'll view these events cautiously. GG is saying the right things, and I like that the focus is back on the community. That would be a wise move. But it's not like we haven't heard much of this before; better documentation has been an issue with Torque products for years, and has been promised many times. There is still the fact that many of the original GG guys have moved on to other pursuits, and they're not only still in Vegas, they're moving into an even larger office building. Their image has taken a multitude of hits over the past few years, and it will take some work to repair that.
But they do have two big advantages in their product line and their large community, and full access to the source code at such a low entry price is very good. It's good to see GG back and on what appears to be the right track. We'll have to see where they take it this time.
12 Nov 10
Thanks to Rampant Coyote for bringing this to my attention, but for those of you who haven't heard, InstantAction has decided to shut down its operations. While this is certainly sad news for a number of people who will be out of work, a lot of you are probably saying, "Who?" The truth is that I'm not sure I could accurately explain exactly how this relates to me, even though it does.
12 Nov 10
Thanks to Rampant Coyote for bringing this to my attention, but for those of you who haven't heard, InstantAction has decided to shut down its operations. While this is certainly sad news for a number of people who will be out of work, a lot of you are probably saying, "Who?" The truth is that I'm not sure I could accurately explain exactly how this relates to me, even though it does.
About three years ago, GarageGames – the company responsible for developing and selling the Torque Game Engine (TGE), the 3D engine I'm using to make Vespers – announced a 'partnership' with InterActive Corporation (IAC), which is just another way of saying that GarageGames was bought out by IAC. The idea, at least as I understand it, was to redirect the development of the Torque line of game engine products to support a new gaming platform called InstantAction. I never really played around with InstantAction, but basically it was something akin to a web-based console where players could play various 2D or 3D games, most of which would presumably be made with Torque products. Continued effort was put into developing the various lines of Torque engines, but a lot of it was banking on InstantAction becoming a popular and profitable gaming portal. In the meantime, GarageGames re-branded themselves as TorquePowered, and after some time moved away from their origins in cozy Eugene, OR to, of all places, Las Vegas. Turns out the move was basically a metaphor of what was happening to GarageGames as a whole, as it evolved from a small, friendly, close-knit group to a larger, more faceless, corporate presence.
The guys at TorquePowered tried hard to put a pretty face on those developments, but the Torque community was largely wary and suspicious, and in the end they were probably right to be. Nobody can say for sure if GarageGames could have continued to survive without being bought out by IAC, but there's no arguing that those events forever changed the company and their relationship with their community.
It's hard for me to say what exactly it means that InstantAction, IAC's flagship online gaming portal, has gone belly-up, at least with respect to the Torque engine. I don't have any familiarity with IAC or its subsidiaries, but it seems that the entity that InstantAction represented must have had ownership of the Torque line of products, since today's announcement was that "Torquepowered.com will continue to operate while InstantAction explores opportunities with potential buyers for Torque." So InstantAction, as a company, apparently owns the Torque product line, and now we're seeing the demise of InstantAction. So it goes.
Whatever the case may be, this means that TGE, the core engine of Vespers, is now officially in limbo, its future uncertain.
The ultimate impact is likely to be minimal, but I can't say for sure. The most likely scenario is that some company will buy the Torque line and continue to honor the current licenses. You never know, though, and it's a little harder to predict what will happen specifically to TGE (the engine I'm using, not their newer, fancier engines), since it's an older, out-of-date product that wasn't even being supported by TorquePowered (nee GarageGames) anymore. We'll probably know more in the coming days and weeks.
I can't help but think of a time, probably around five years ago, when I was about to embark on this project, and I was looking for a game engine to use. I had narrowed it down at the time to the Torque Game Engine and the Unity Engine. I liked Unity specifically because it was Mac-based, but at the time it was still very young and its future was not well outlined; its community was also small and there were plenty of engine features that had not yet been implemented. TGE, on the other hand, had a more mature code base and its community was quite large and helpful. Plus, it was cross-platform. I chose TGE, but I always kept an eye on Unity.
Unity is now thriving, of course, and is probably the leading indie game engine out there. TGE, on the other hand, is outdated, no longer supported, and is now adrift at sea.
Yes, it looks like I chose Betamax. Ah, well. We'll see what happens from here, but I'll keep plugging away.

Vespers is an independent game currently under development by Orange River Studio. It is an adaptation of Jason Devlin's award-winning interactive fiction (IF) work of the same name. It is an experiment to discover what kind of horribly disfigured offspring might result from the mating of an IF engine with a 3D first-person graphics engine. For more details about the game, click here.
