Outside of all of the concept art you’ve seen on this dev blog, I’ve been doing a lot of research in preparation for developing the engine to this game. It’s been getting me rather frustrated.
Here’s my dilemma…
Ever since I used XNA at UC Irvine for a game project class, I’ve been really interested in picking it up again. I was hoping to use XNA for Conjurer. It’s such a robust framework, with a ton of support and a long laundry list of indie titles that have seen some pretty good success. I LOVE working in VisualStudio. It’s such a powerful and user friendly IDE. XNA has native support for gamepads, integration with DirectX and can easily handle almost any genre of game type I want, whether it’s a 2D RPG or a 3D racer.
However, I already know how to develop, program, draw and animate in Flash. Been doing it since Flash 3 back in ’99. In fact, I’d go far enough to say that I know it REALLY well. I teach a class on it at a local community college. And for what it’s worth, it’s a really powerful framework and engine. It has a TON of support and a HUGE user base. The player and IDE are constantly updated by Adobe with new features, and it doesn’t look like they’re dropping support for it anytime soon. The major drawbacks that still linger are its speed in comparison to other, lower-level frameworks. A lot of this has been dealt with recently, such as the recent implementation of Stage3D and Worker multiprocessing (Though, in my book, the jury is still out on the latter).
Here’s the rub: I want to make a game in XNA. But, it’s becoming more and more terrifying to realize that I’m on my own at FrenchRoastGames. Art, Tech design, programming… all me (for now). What’s worse, I have painfully learned the hard way that picking up a framework by myself is an incredibly time-consuming and frustrating process. I prefer to learn through osmosis, to have tasks delegated to me from someone who clearly knows what they’re doing, and who can help pull me out of a bind if I get stuck. This likely has something to do with the poorer grades I got at UCI toward the end of senior year. Not fun. Downright demoralizing. Useless TA’s, incompetent colleagues, and overcrowded lectures aren’t a good way to learn the finer points of graphics processing and development.
In short, I don’t have time to learn a new framework. I HAVE TO MOVE. A week spent piddling around on XNA tutorials is a week not spent on development. There is a considerable amount of work to do to build an adequate cross section of gameplay. That cross section must have enough quality to convince tens of thousands of people to donate $10 on KickStarter. This is critical to the success of this game. It has to be a full time commitment by me and a handful of other developers or it will not see the light of day!
One big feature that I am adamant upon implementing is support for game pads. Flash doesn’t have it(yet), which is what ultimately pushed me to XNA. However, recently a couple of developers have been gracious enough to create an Adobe Native Extension for Xbox360 gamepads. It only works on Windows (for now), but it’s a huge step in the right direction for Flash. If I can goad the developers into including support under OSX and Linux (Ubuntu at least), or augment it correctly myself, then I’ll be incredibly happy.
Another big feature was tools development. After working on Beards and Glory for Blind Squirrel Games, I now understand the importance of building quality development tools for other designers. It’s an aspect of game development that is horribly overlooked and underrepresented, in my opinion. For every tutorial and book I need for XNA development, I’d need another book on .NET and WPF to make the level editors, asset managers, and testing apps for the game. This is not an issue with Flash, mostly because of the Flash IDE (asset development and organization), and how easy it is to make level editors myself.
So… as much as I am desperate to move away from Flash, my flagship project is going to have to be built in it if I’m going to get anything shipped on my own. XNA will have to remain a hobby until I can quickly conjure up a design spec for a project in my head without consulting the Internet. Thankfully, my design requirements aren’t outside of the scope of Flash’s capabilities, and I’m sure the Adobe Game Developer Exchange wouldn’t mind yet another project in their developer showcase. I guess it’s best to make these decisions now, and not further down the production line.