Thursday, December 17, 2009
Acadia University Coverage: A Passion For Programming
By: Matthew Doucette
Acadia University Alumni showcases Xona Games, Duality ZF, and the developers, in their Fall 2009 bulletin:
Acadia Alumni Fall 2009 write-up. (Download PDF)
Jason Doucette (left) and Matthew Doucette (right).
Passion for programming
By Laura Churchill Duke (’98)
“Jason and I have always been into making games,” explains Matthew Doucette (’99). “We started back in grade two, and I recall programming my first complete video game by grade four.” By grade eight, Matthew’s twin brother Jason (’99) had “invented” a formula allowing him to draw almost anything in three dimensions.
It’s no wonder that this passion for programming video games has led the Doucettes to release a game for the Xbox 360. Working from Yarmouth through their company Xona Games (www.xona.com), the brothers have created Duality ZF, an arcade-style shoot ‘em up game. Jason is the lead programmer, but each brother handles everything from programming to marketing. “We’re basically a two-man team,” says Matthew.
The game was submitted to Dream Build Play 2009, an annual competition run by Microsoft for independent game developers. Out of more than 350 entries from over 100 countries, Duality ZF placed seventh in the world and second among Canadian entries. The brothers plan to improve the game and release it again in the near future.
The brothers majored in computer science at Acadia. “Our Acadia experience was amazing and I would love to go back,” says Matthew, adding that he would have taken a few business and marketing courses if he could have predicted he and Jason would become their own publishers!
Here is the full interview, unedited.
Keep in mind that the Acadia Alumni concentrates on promoting Acadia University with feel good stories on how Acadia helped achieved the successes of its alumni. In both our cases, Acadia did not help us succeed in game development, so I understand why it was cut, but it's important to be honest about such things. We appreciate the coverage, nonetheless!
1. Is Xona a company that you and your brother started?
Yes. "Xona.com" was originally a non-profit technology blog that offered free software and free internet utilities. We created the first "domain hacks" search, and coined the term, on Domain Hacks. We transformed this web presence into our indie game development company's website, and created "Xona Games". Our game will be our first offering on xona.com that we charge for.
Read more about the name at http://xona.com/trivia.html.
2. How do two independent people, especially working out of Yarmouth, break into the world of Xbox?
Jason and I have always been into making games. We started back in grade 2 on the TI-99/4A, and I recall programming my first complete video game by grade 4. We continued making games and programming graphic effects all through the years. Jason "invented" the 3D formula on his own by grade 8, allowing him to draw basically anything he wanted to in real 3D. Nothing much became of this development. School and societal pressures got in the way and pushed our focus on things that did not matter. It's ironic that schooling forced us away from the very thing it was suppose to instill in us: a passion to continue learning. What schooling is supposed to find in students, we already had. It comes as no surprise to us that we did a full circle and came directly back to our true love.
As for the world of Xbox specifically, Xbox LIVE Arcade already had our attention the moment it came out. We loosely planned on developing games to be released on it, the same way we had loosely planned on becoming video game developers our whole lives. Why the Xbox? It's the best system to develop for. The best tools. The best online service (where our games will be downloaded). And when you compare it to the other big consoles (PlayStation 3 and Nintendo Wii), it is the only one that allows indie game development, which makes it the only system. We were lucky the best system to develop games for was the first system to open the doors to developers like us. But, coming from Microsoft this was no surprise. Fanboys of other systems may not understand this, but when you are striving to develop games on a major console as an unsigned developer, we have to be thankful that the (brilliant) minds at Microsoft have decided to open the doors for us.
We have been programming games since the age of seven, so we already knew a great deal about game design and graphics technology. The big thing is that Microsoft has opened up the Xbox 360 to independent developers, which is a first in console history. It has a new “Indie Games” section that displays all independently developed products. When we release Duality ZF, you will be able to download the trial version for free, and purchase the full version with the click of a button right from the Xbox 360 console. The development tools, Visual C# and XNA Game Studio, allow a single source to compile for both Windows and the Xbox 360, so the entire development can take place on your PC, even allowing you to debug the Xbox 360 build from your PC. You could even distribute the final product for Windows, if you desire.
3. What advice do you have for people who would like to create a game?
I would recommend they follow the same path we are now taking and develop a game in XNA (http://xna.com/). These are tools that once cost developers a lot of money, and Microsoft has released them all, to everyone, for free. Microsoft understands developers and they treat you like gold. Follow the start up XNA tutorials and you'll be hooked. If you are not hooked after finishing the first tutorial, you pretty much know that making games isn't your thing.
Download Visual C# Express and XNA Game Studio 3.1; Microsoft has released them for free. Browse to the XNA 2D and 3D tutorials and run through them. You will see how quickly a game concept can be moved from the drawing board to the screen. I recommend starting with a simple clone of Pong or Space Invaders because projects always take much longer than expected. Simple projects are a great way to learn the tools. The XNA website has great tutorials for game state management, data structures, and content handling, which are complicated even for a simple game. Concentrate on making your game fun, and don’t worry about impressing people with graphics. Even simple games are not easy to make properly. If people wish to play your game again and again, you’re on the right track. Do not underestimate how long it takes to produce a quality game. A concept engine is only 5% of the final product, even if it is a playable demo. We have been working on Duality ZF for a year, even though the basic design was achieved in the first few weeks. You will find many of your ideas on paper do not work during play test, so do not be scared to rip them out and try something new. The best thing about the C# language is that development is quick, so changes can be quick as well. Be leery of feedback from friends and family, since they will likely be amazed merely that you are making a game, and be unable to give you proper criticism. The XNA website has a play test area which allows the community to review your game before it is released, and this resource can used throughout development. Make use of it.
4. How did your schooling at Acadia prepare you for what you are doing now?
Unfortunately, it hasn't. Our schooling at Acadia deprived us of our underground spirit of graphics programming, which is key to making games and pushing technology to its fullest. At the time, game and graphics programming was an underground art form and by definition not found in schools anywhere. We graduated Acadia in 1999 when only a few game programming courses in the world had opened up, none of which appeared to be mature enough for us to bother taking. The graphics courses taught at Acadia had little to do with real-time optimization, which without you have no game. Even with our 2D shoot'em up video game, graphic and engine optimization still plays a key factor in having our game do things that amateur developers cannot do, setting us apart from the competition.
On the other hand, the Acadia experience as a lifestyle was amazing. I would love to go back. The people I met and experiences I had I will remember forever. If I went back, I would do it all differently. I would not major in computer sciences. I would save my computer hours for my off-school projects and games, and learn philosophy, mathematics, non-computer sciences, and maybe languages, and perhaps even business and marketing, now that we find ourselves being our own publishers.
But, we worked with what we had, and it's no surprise that our final year COMP 4983 projects were a video game engine and a graphics "demoscene" demo:
Jason's final year COMP 4983 project:
http://www.jasondoucette.com/games.html#FullTilt (video game engine; with screenshots)
Matthew's final year COMP 4983 project:
http://xona.com/tbc/ (graphics demo; with video)
It largely did not. Graphics and game programming are an underground art. There were only a few schools at the time that taught game programming, and only one Acadia course that focused on graphics. Schools exist to help people discover passions, but I was lucky to already know mine since the first day I programmed. I have always been more interested in making games than playing them. I recall Grade II classmates being upset when I unplugged the Space Invaders clone for my turn at the VIC-20 and launched the BASIC programming language instead. By the time I attended Acadia, I was already a self-taught, 13-year veteran programmer, so entry level courses that taught fundamentals were of little use. However, I did learn a lot about CPU architecture and compilers. While they are not required for game development, knowing your CPU and limitations is useful for optimization. There were a few missed opportunities on important topics such as modularizing code for team collaboration, as well as familiarization with the most common development environment (Visual Studio) on the most common platform (Windows). If I could go back, I would major in mathematics (which I was told was impossible with a simultaneous Computer Science major) and philosophy, to help grow my problem solving abilities, and minor in business and economics, to make sure I can turn my hobby into a legitimate career.
My experience at Acadia was a much needed social one, and not so much of an academic one. The social aspect of Acadia is priceless and cannot be replaced. It allowed me to meet motivated people with vastly different backgrounds and dreams. I will never forget the experiences and people I met during my years there, and I have often missed those days.
Thank you Laura Churchill Duke!
Here's an official thanks to Laura for all her work. She has more in the makings for us! Thank you, Laura!
*Xbox LIVE Indie Games formerly known as Xbox LIVE Community Games.
About the Author:
I am Matthew Doucette of Xona Games, an award-winning indie game studio that I founded with my twin brother. We make intensified arcade-style retro games. Our business, our games, our technology, and we as competitive gamers have won prestigious awards and received worldwide press. Our business has won $180,000 in contests. Our games have ranked from #1 in Canada to #1 in Japan, have become #1 best sellers in multiple countries, have won game contests, and have held 3 of the top 5 rated spots in Japan of all Xbox LIVE indie games. Our game engines have been awarded for technical excellence. And we, the developers, have placed #1 in competitive gaming competitions -- relating to the games we make. Read about our story, our awards, our games, and view our blog.