Again, a long time has passed since our last post. Sorry about that. We’ll get better, I promise!!! 🙂
So this has been an amazingly productive weekend. Thanks to an unexpected rainy Saturday, I was able to take the big dumping ground of a single header file per c++ project and get them properly segregated. As I was basically re-learning what little I had previously known about the ins and outs of c++, I did a half-assed sloppy job of it. It’s still a little sloppy, but much better! I’m testing the ARM build of “No Rest for the Wicked” as we speak. I did this to clean things up a bit and to make things a little more manageable. There are a couple of weird crashes happening on iOS and Android versions (in different places – weird), and hopefully I will be able to track them down now and move forward with some real progress. I will also be overhauling my drawing routines to be a little cleaner. Once this is all taken care of, I’m hoping we’ll to be able to just start knocking out some games for reals!
Kolphyre has taken the helm nicely with NRFTW, and has 9 (out of 100 planned) playable levels! Now it’s kind of a race to see who can get something to press first. I’m working on what is basically a completed game, so I won’t gloat too much when I win.
And, on a final note, I finally got around to some XBLIG playtesting. I really need to stop neglecting that so much – poking around on the forums after too long is like taking a year off of school, coming back, and not knowing who the hell anybody is.
So I was a little bummed last night. You see, I had the weekend off and decided to do a long needed revamping of the particle engine we’ve been using. I kind of spaghetti coded it over a couple of weeks, and frankly it was sloppy as hell. Cryptic property names, no real structure, almost unmanageable. So, I started from ground up with this great idea of modular particle system. Spent the ENTIRE WEEKEND writing it. It ran flawlessly until I discovered that it performed about 60% as well as the old one.
So I tweaked it, and tweaked it some more. Removed some features, moved a few things around, but still couldn’t get it to run as well as the disaster I had previously written. On top of that, the time I would require to get all of my existing game code to work with the new methods was far greater than the advantage I would get from this cleaner (and slower) version.
So, I retired for the evening, defeated from having wasted a fine (though rainy) weekend off.
But then, the clouds lifted… I woke up with a fresh insight, and decided to take a look at the original system. The two days of writing the new one gave me a ton of new ideas for cleaning up the old. I went through and re categorized everything (form only, not function – didn’t want to break it or slow it down), renamed a couple of properties and methods to more sensible names, and once again have a full understanding of how my own code works. (I know, it’s sad that this statement even need to be made…)
So now that that’s taken care of, it’s on to taking something that already works pretty well and optimizing it some more, and then back to writing some actual game code!
So I’m in the process of converting all of the 2D back-end framework into 3D for future titles. As it turns out, it’s not really all that tough to just add a third dimension to existing 2D logic! Even the 2D particle system converted over nicely. The only things I’m really going to have to put some thought into adding are on the drawing end: making the conversion from using textured flat sprites to 3D models, and camera handling in various 3D game environments (both of which I technically already took care of in some of the DirectX stuff I was working on prior to switching to XNA, so I’ll probably just port that over).
The game plan, folks, is to rock out one more 2D platformer (“Spelunker,” as we’re temporarily calling it), then move on to some more robust 3D titles. Hopefully, aside from future IAIS episodes (and maybe a Mechfish sequel? No, scratch that…), 3D games will become more of our trend, but we’ll see. It all depends on the delicate balance of time spent on a project vs. actual income potential of the project on the XBLIG platform. (there goes more business stuff.)