Towards the end of last week, I had a fairly long conversation with one of our other programmers about all this engine-rewriting business. To make a really boring and technical discussion short, it's just going to take far too much effort - and the real clincher is that it'll break God-only-knows how much of our existing assets and pipeline, which means we could well be setting up the project to get pushed back 8 to 10 months... all for a "feature" that we can't even put as a bullet point on the back of the box.
So we hatched a plan, and today had a quick meeting with the project lead about it. He's also been concerned about the project getting out of hand, so we all pretty much said "yep... time for this thing to die" and took a few hearty swings at it with various edged weapons and instruments of death. And now, thusly, the engine rewrite lies in a pool of binary blood and electronic entrails, slain at the hands of its own creators.
Thankfully, the engine's codename is "Phoenix," so when we do get time to do the rewrite, we just need to chuck some kerosene on the corpse and light it up, and we'll be back to where we are at this point.
Some of the code that's been created (not mine [crying]) can actually be used already in the old engine, which will be a minor improvement and at least make a few things more bulletproof. There's also a good number of other small, incremental improvements we can make over time that will help a lot when it comes time to try this again.
I also have some sneaky plans to get out of the intelligent-cinematics system (at least for this project) and fake it with some simple hacks. It's not terribly sexy, but it'll leave me time to cook up a proper solution, and it saves me from trying to hack a really complicated chunk of AI into the existing engine structure, which frankly quite simply isn't conducive to such things.
The best part, though, is that all this lightens my "official" workload enough that I'll have a fair chunk of time to just hop around the game and do various little improvements and polishing. So hopefully this project will really have some good stuff to show in terms of content, instead of just a lot of really cool technology that (yet again) we didn't really do much with.
And now I'm off to celebrate by not working for the rest of the day!