

In this interview, Richard gives us an overview of how the project came together, what some of his inspirations were, and shares some of the details about what’s coming in this video series.
Please note that the XNA Side Scrolling Fighter series is an exclusive Member Sponsor training product, and is provided solely to 3D Buzz’s Member Sponsor subscribers! If you would care to join and take advantage of this and other great exclusive offers, please visit our store!
How did you get into programming?
I've always had passions that ran toward game development, but originally I was seriously considering getting into animation. To this end, I studied towards a Bachelor of Digital Design at Griffith University. At a few points throughout the degree, we had to complete a some Flash-based projects, during which I discovered that I had more of an affinity for the coding aspect rather than the visual design stuff. Of course, this kinda sucked during the course of a design degree.

Since I wasn't playing the graphic designer role in the project, I wanted to see how far I could push things on the technical side. So, rather than making a simple startup site, I created the entire thing in Flash, making it fully dynamic with an admin system and everything. It was one of the most fun projects I've ever worked on! We came out at the top of the class (my teammates did have some fantastic designs, by the way) and that's when I realised that coding was really more my scene, so I focused primarily on programing from that point on. Tehcnically, it's still a hobby for me, but I'm working on making game development a full-time profession in the not-so-distant future.
Tell us about this project. What prompted you to create a 2D side-scrolling beat-'em-up?
My friends and I had been playing Castle Crashers together on the Xbox 360 and every time we played it I was reminded of awesome retro games such as Teenage Mutant Ninja Turtles: Turtles In Time and the Double Dragon titles (number 3 was my favourite, by the way). While playing it I decided that I wanted to try make something like it. It was really as simple as that.

The whole thing really started out as an experiement. I was interested in a 2D game, and so that meant spritesheets. However, I didn't want the fighting system to be overly simplified. I wanted something more than just a kick and a punch for a basic game. So I recorded myself performing various moves for punches, walk cycles, kicks, combos, jumps, and so on. When finished, I rotoscoped it all in Flash and used that as the basis for my spritesheets.
All of this was coded into a system that worked off of Player input, so each action could be performed by the character at the touch of a button. But I soon realised that we needed some sort of enemy to beat up. So I recorded myself performing a variety of reaction motions, and again rotoscoped these to create the animations for the Enemy characters.
Naturally at this point I needed some sort of AI to drive the Enemies. At first, I wrote in some simple Player-seek behavior. However, this quickly became problematic at moments when there were multiple enemies on the screen. They'd all end up standing right on top of one another, and it was impossible to tell how many Enemies there were. I modified their code to spread them out a bit, and the result really helped give the mob effect when there are many enemies on the screen.

Did you add anything into the game just for the sake of nostalgia?
All 2D side-scrolling beat-'em-ups have to have the obligatory trash can for some reason. And it must always contain a health pack or a weapon of some sort. If I learned anything from playing fighting games as a kid, it was that if I'm ever heavily wounded on the street, the appropriate application of a ninja kick to the nearest trash can should expose a handy first aid kit!

So naturally, I had to add this into my game as well. Of course, it wouldn't do for the can to just disappear or fall over to expose its hidden pickup, so I also set it up so that when you it a trash can, it flies off an becomes a projectile weapon itself, just like some of my favorite classics!
This game also includes voice acting, which you don't see in most concept projects. How did that come about?
I didn't want to use my own voice for the final part in the game, as viewers will have heard enough of my voice by the time the finish with all of the videos. I heard that John J. Dick (The voice actor for Serious Sam) was doing voice acting for pretty cheap, and so I hired him. He was great! I sent him the (very small) script and a general overview of the project and he just ran with it. He also supplied with a collection of attack and “getting hit” noises. It was very cool to work with him and awesome to be able to bring in some voice talent.

That would have to be the Cutscene manager. It can be easy to get lost in the code, and anyone who ever tried XNA Xtreme 101's Hyperion Project knows what I'm talking about. It's not “difficult,” per se, just complicated. You have trigger boxes that cause cutscenes to happen in different ways, and then different events that can happen at the conclusion of each cutscene. You have to be very careful about adding them in the correct order, as it can be a real pain to debug the problem when it comes around to testing.
What do you hope people will take away from this project?
I hope people take away the approach. This whole project started originally with me just playing with some spritesheets, wanting to make a character do different things based on player inputs. But after I'd got it working I thought, "wouldn't it be cool if..." and so I added on the next part. After that I thought of another thing to add, and so on. Eventually I had this 2d side scrolling beat'em up!Look at the implementation plan video, or the final video and you'll see that this project is really just a bunch of many small ideas all put together in a larger project. It's very similar to how I made the game originally. So, in the end, I hope people come out of it with an idea of how to put all of their small pieces together to make a "whole" that is greater than the sum of its parts!
Note: this video series is only available to 3D Buzz Member Sponsor subscribers, though non-subscribers can see the overview video located here!
If you'd like to peruse the entire set and watch sample clips of each video, please click here, or follow "C#/XNA > 2D Side-Scroller" from the navigation bar above!
If you're interested in Member Sponsorship and would like to know more about subscription, please visit the Member Sponsor page in our store!.
















16 Comments



