Mechanic a month is an opportunity to work on developing our gameplay programming skills as a community.

Each month we pick a mechanic (for the foreseeable future, they will be movement mechanics) then work individually (or as a group) to build that mechanic. At the end of the month we will all showcase what we’ve built and discuss with the group to see how others achieved their mechanic.

This idea came from wanting to do something like game a month to help build skills but not really having time to create a game every month because of school. The whole idea of just building a mechanic is that it’s more bite sized (and has less focus on art [Ian’s note, at the uWaterloo game dev club, we generally struggle to attract more artists (doesn’t help that the school is well known for computer science)]).

General guidelines:
  1. Use any tools and any previous code or even someone else’s code! The point of this is to improve your skills so I might recommend against reusing someone else’s code wholesale, but there is no need to start from scratch! Learning from others is an extremely valuable part of this exercise! Also, building upon your previous code could be a really cool way to iterate on making your own character controller for the next game you build!
  2. Work on your own or in a group, it's completely up to you!
  3. Don’t worry about missing a month. If you get busy, don’t worry about it!
  4. Each month there will be 3 levels, MVP (minimum viable product), the goal and bonus material. I’d recommend aiming for the goal every month, the whole point of this is to minimize the time requirement to make sure you don’t get burnt out or too busy! I’d recommend only aiming for the bonus if something sounds really interesting you have nothing better to do.

I wrote up some do’s and don’ts. These aren’t strict rules, they’re just designed to increase the enjoyability.
  1. Don’t spend too long on this. The objective of this is to have a bite size project that won’t suck all your time.
  2. Don’t try to make each one a full game. This is really intended to focus on prototyping a single mechanic. If you spend a whole bunch of time making it a game (menus, music, actual gameplay, etc) you are probably better making an actual game (and you’d be ignoring guideline 1!)
  3. Don’t worry too much about art, effects and other polish. Its true that all those things are totally key for making things ‘feel good’ and can often be as or more important as the actual mechanic, its not really our goal. Keep focused
  4. Do experiment! Try out new engine features, try implementing something differently than you’ve done previously, try something you don’t think will even work! There’s no penalty for failure and it can teach you as much or more than succeeding!
  5. Do research. While it It can be fun and valuable to try to figure things out yourself (experimenting is good!) it can also be really valuable to try to find out how the pros do it.

Mechanic 1 - LoZ base movement