3 students from Carleton share what they learned building their first Windows Phone Game
Check out more tips from fellow students here
Could you briefly describe your application/game?
Tile Tank is a puzzle game, and it’s all about finding a viable path across a variety of obstacle courses. Your job is to drive around the maze collecting all the gears, then make your way to the goal flag. The mechanics are simple but it’s the puzzles themselves that will amuse, challenge, and maybe even stump you.
Plus, when you’re done with the campaign, you can create your own levels and share them, or download levels that other players have shared!
Did you use XNA, Silverlight or both?
When we heard about the way we could use both, we knew it suited our needs. The game is entirely displayed on Silverlight pages, including the menus, the game view, and the GUI. The 3D graphics in the game view are drawn by XNA. Silverlight was great for putting together 2D interfaces with buttons and forms, while XNA covered our needs for a 3D world.
It was interesting to learn how both these modes are run within the same kind of XNA application page. It seems like a really flexible way of going about it and we’ll probably do it again in future projects.
What was your banging your head against a wall moment?
Because it was a learning project, we had a few minor technical issues. One of them was an issue where our Silverlight buttons would turn to a white rectangle (no image) for a moment when touched. We didn’t know how to mask this for a while.
Did you ever solve that issue?
Yep, we found a solution/workaround using custom styles for Silverlight. Just took a bit of digging. And we’re still not sure if you can get a button “down” state – though not many other apps use this anyway.
If you had to build this same app again from scratch, what would you do differently?
This was our first real endeavor in XNA so it was mostly about all the little learning experiences, so it’s tough to pick something that stands out to be corrected. If we did start over I think we’d go in with a better feel for how to manage ourselves and our project files. By the end, the build was pretty cluttered.
Any nice suprises?
Something that was very welcome was how easy it was to get started with development. Getting the SDK and the environment set up was no real hassle, and there are basically no major hurdles before you can start building and testing. Then, after looking at a few beginner examples, we had the building blocks of a good portion of our app. The included emulator for Windows Phone makes testing very convenient.
Did you leverage the mobile platform?
We knew from the start that mobile was where we wanted to be, and we tailored our concept and design to that the whole time. We made sure to look at a lot of existing apps to see what we liked and didn’t like about how they do things. Available screen size and the kind of interactions a phone user expects has to be constantly on your mind when thinking about layout and the level of attention to detail throughout your app.
We think Tile Tank definitely plays best on the phone because the control is simple and it’s something you can tinker with easily for a couple minutes at a time while you’re on the go.
Did you leverage the touch screen?
Most of our touch controls could be translated to mouse but it’s definitely most intuitive and the most fun with the basic touch gestures of tap, swipe and pinch. The way that touch gestures are processed by the app also made it pretty simple to get the controls to be smooth.
Did you have a favourite feature?
It’s a subtle feature, but we leverage the ability to make HTTP requests directly from the app. Combined with some PHP, this gives us the ability to look at a database to upload and download levels. Also, your progress is actually tracked and scored while you play, and you can show up on a scoreboard on the game’s website. In play tests we’ve already had some players get pretty determined to make it to the top of the board. As a developer, that kind of enthusiasm is extremely rewarding, even in small tests.
What is one thing you think you did really well in this application?
At the outset, we put a lot of thought into the scope and feature set of this game, and we gave everything a priority value. We did drop a couple of things, but because we planned in this way, they were pretty non-essential and we did get all the important features we wanted. We were really pleased about that in the end, especially considering the uncertainty of factoring in research and learning time.
Are you publishing your application/game?
Yes, Tile Tank is available right here on on the Windows Phone Marketplace. It is free!
Who developed this application?
Our team is Kevin Paquette, Chris Atallah and Chris Burt. We’re classmates at Carleton University’s School of Information Technology, studying Interactive Multimedia and Design. It’s a mouthful, but it boils down to getting a working understanding of a ton of different technologies and design methods. Tile Tank was among our latest efforts in course work for game development, as well as project management.
Making the game definitely brought us together and gave us inspiration to really look at where our skills could take us in indie marketplaces like Windows Phone. It was a school project, but it never really felt like it, although we certainly appreciate the support and enthusiasm of our professors. Everything we did for this game was mainly to accomplish something for ourselves and we learned a lot about something we really wanted to know more about.