YM Arcade

ICS2 / ICS3 / ICS4


YM Arcade 

Python/Processing Arcade Game System


- featuring custom build games such as Asteroids

- upcoming titles include Brick Breaker, Cello World, Space Invaders and Pong



Python/Processing Arcade Game System



Asteroids Game                                                Brick Breaker (upcoming title)


Custom controller using Arduino UNO, arcade

control and custom built wood case.

Custom Hardware IntegrationIMG_20141127_141936_738.jpg

Controls are scanned by an Arduino UNO running Firmata and sent to Processing/Python at 56K.

Techno Babble Free Please! This means we have small portable computer system that reads if each button is pressed or not and then sends that information to the computer running the game.  

Built by a student of ICS4 (with previous Arduino experience in TEJ3). Custom case designed and built by two students in TDJ3. Prototyping system built by another ICS4 student and built using a breadboard and Aruidno UNO.

Asteroids Game

Built by a team of programmers in ICS4U using the Python mode in the Processing graphics system. Audio from freesound.org.

Upcoming Games Releases

Many other games are nearing completion and being finalized with the Arduino controller integration code being worked on. Upcoming titles to run on the system include:

Cello World - Built from scratch (as all the programs have been!) RockBand (™) system game with custom music transposed to timing code. Custom built 3D graphic effect. Custom built menu system and graphics.

Two Player Pong - The classic original in beautiful 720P with custom effects

Ultimate Tic Tac Toe - 9 games at once! Remember when you actually knew how to win (or at least tie) Tic Tac Toe?!

Space Invaders - Another classic brought to your big screen. Specially developed object system for enemies, missiles, main player and defence blocks.

Maze Game - A new maze every time leaves you lost and confused, find your way out with your radar system!

Brick Breaker - Classic video game with built from scratch game objects, movement code, Features custom sprite graphics created in Photoshop and instructional menus.

More Upcoming Titles Include: Snake and the Simulator System

We expect even more titles from other students in the Programming Club and ICS3U students.

Members of the Asteroids Development Team developing code to connect with hardware controller.


Arcade Controls

In Asteroids the following controls are used:

Joystick RIGHT/LEFT / Ship right/left,  UP ship thrust, DOWN hyperspace

A Button (above B) - fire, don’t overheat your canon,

B Button (below A) - bomb, smashes all asteroids


Current Status:

Our controller system is up and running. Buttons and joysticks are connected to games in Python / Processing. There are things that need some work. Games are running. Currently just Asteroids is running on our machine. It may take the use of our summative project time to get the other games up and running. Perhaps some new ones might even come up. We have prototyped an input controller for developing on using a breadboard and an UNO. We can switch in-and-out of the class project. We’ve been able to switch back to some new curricular material and then I think be able to resume our projects again. Class projects can be paused and restarted and therefore spread over areas of the course plan.

Success Criteria

Check Point 1

Journal/blog/video of what has been worked on in early game development. We didn’t pause to discuss or do this during our initial development as we switch quite abruplety into this new project. Students had suggested building games in teams as a class, we seemed to be a bit ahead of schedule, and we just jumped in!

Check Point 2

Running Game Built and running game in Processing/Python (or other language/platform as approved by your teacher). May not be feature complete. In some (pre-approved) cases it maybe just prototyped ideas. Documentation - either automatically generated using PyScripter or some other method.

Final Project Deliverable

A running game, updated to run on custom arcade system controls. Code checked into version control. Code documentation as before and end-user instruction manual - Word doc, PDF, etc. Thorough testing and bug testing and fixing.

Presentation and/or Game Jam

You will present your project to the class. Presentations will be marked by the class. Games must be in running order to give live demo. Presentations should also include a 3-5 minute pre-prepared presentation with some kind of slideshow, graphics, pics, Powerpoint or Prezie, etc.

All ICS teachers have been thinking about showcasing games together and having class participate in some kind of competition or game jam type of idea. Not sure how they might proceed at this point but there is a lot of great work to showcase and this would be the focus I think. Many other games are being developed in Grades 10 and 11 classes with Ms. Mihaila and Mr. Kay. Pac-man, Tetris, more Asteroids, Pong, Checkers, Chess, custom designed titles and many others!