Learn how to make games using web standards, that will play in any modern browser without plugins, like the ones featured in the .Mozilla Game On 2010 Contest.
Since the Web is all about connecting with people, I would especially like to focus on using a client/server model to develop a multiplayer game where several players can log into the same server and compete or play as a team.
Bring your own game ideas! Since the goal is to get something playable by the end of the course, you should focus on a smaller project that you think you can see through to completion. (In other words, maybe save your idea for a huge complex epic MMORPG until after you've successfully completed a simpler idea, like a mulitplayer Asteroids clone.) The assignment each week will be to take the new techniques you've learned and apply them to your own game idea.
In order to help each other learn, participants will be expected to playtest each other's games and provide constructive criticism and feedback, as well as to offer help with understanding code and fixing bugs to those who need it.
You should have done some web development, at least enough to be familiar with the structure of an HTML page.
You should be familiar with using Cartesian coordinates to describe a location on the screen in pixels.
Syllabus / Curriculum:
The course will go for six weeks. The main topic of each week will be as follows:
2. Drawing to the screen with HTML 5 <canvas>
3. Basic animation techniques: animation frames, smooth scrolling, and getting rid of flicker
4. Basic 2-d physics: Gravity, acceleration, friction, jumping, shooting, and hit-detection
5. Building a multiplayer server with Node.js
6. Sound effects (using the HTML 5 <audio> tag and JS audio API) and other finishing touches
Not included in the course: 3d graphics with WebGL. A very cool topic, but one that deserves a course of its own.