Project Solarus

Project Solarus

This was a semester long project for 1501 (Intro. to Game Design) which I worked on with two classmates. The project was written in the Processing environment (essentially a library for Java with some interesting changes from a typical library). Processing is available here.

The game is a very simple top-down shooter with some basic trading mechanics built in. You start as a single ship and travel from planet to planet buying and selling goods. On the way to each planet you will encounter increasing amounts of resistance and will have to fight to proceed.


  • Matt Mayer
  • Connor Clysdale
  • Alif Islam

On this project I did much of the work on collision detection and AI, which I wrote from scratch and had no previous experience working with. As such, they are quite rudimentary and probably not particularly efficient, but they worked the way I wanted them to and I’m quite pleased with how they turned out. I especially like the collision system I made, as it allowed you to define a hitbox in a text file out of rectangles and circles and then collide that hitbox against other hitboxes with precision.

I feel like this was the first project where I finally understood the importance of planning out designs and structures of the program, and our project definitely suffered from a lack of pre-planning. As the deadline closed it was a race to turn what was essentially just a pile of sub-systems like collision detection and interactive UI, and turn that into an actual game. In particular I know that I spent far longer building and tweaking my collision system than I should have, and I certainly never ended up using the collision system to it’s full potential.

Although our lack of forethought definitely didn’t benefit our project, it most certaintly taught me the importance of planning out large projects ahead of time, which I hope to put to use going into the more complex courses of second year.

Author face

Matt Mayer

I'm a student at Carleton University studying Computer Science. In particular, I'm interested in game development and as such I'm in the game development stream for my program. (Essentially an un-official minor).

Recent post