Category Archives: PhysComp

Ozone Command Documentation (ICM/PComp)

Ozone Command is a one or two player arcade game – the intention is to provide a solid, reliable, and self-sustaining game that can be displayed and played without needed maintenance or curation/explanation.

The ‘twist’ on the traditional arcade game concept is the embedded camera that puts the player on display at the game’s most hectic moments. The player(s) stand in front of a small controller console that beckons them with two large knobs as well as a one player and two player start button.

Phase I: Design and Programming

While the concept appeared clearly in my mind, it was a hurdle to make a game that followed my vision accurately. Using simple collision detection between rectangles and ellipses as derived from the examples of REAS, I

An early screenshot.

An early screenshot.

was able to put together the basic mechanics easily. A particularly frustrating hurdle was that I could not test the gameplay until my physical controls were wired, something I had not anticipated. To make the paddles follow the arcs I had defined for them, I derived a formula for each player’s Y value based on the equation of an ellipse (and not on polar coordinates).

I based the video portion off of an amalgamation of Dan Shiffman’s pixelation and motion detection video tutorials but only after failing to use the background removal tutorial. At first, video performance was so poor it slowed the entire game to an unplayable crawl. Finally, the pixelation allowed me to capture fewer pixels, thus putting less strain on the sketch computationally. I switched from an all-white background and a minimalist vector look for the earth to a more realistic black space background and realistic earth image.

What was originally conceived as a game with three game states (Title screen, Game, and Game Over screens) was expanded to 5 as I included a High Score page and a brief How To Play panel. I did end up having enough time to put in a few basic powerups; however, I never got to modify the scoring mechanics much.

Phase II: Circuitry

The circuit itself ended up being quite simple, with two potentiometers sending values along with the value of three digital switches (Player 1 Start, Player 2 Start, and Reset button) to processing via the punctuation method.

Originally I had conceived of a heart rate monitor to occupy the most complicated portion of the circuit; however, Tom Igoe and my classmates convinced me not to include technology for the mere sake of it and to focus on a solid concept, interaction, and quality fit and finish.

Phase III: Construction

I sketched out a design for the box which I originally intended to produce using the band saw and a variety of Finished Ozone Command Consolehole saws. The biggest challenge in this phase was determining how far apart to place the two potentiometers. The potentiometers needed to be far enough apart to allow two players to stand next to each other and play without being far enough away from each other that the mounted webcam could keep them both in frame, a variable that was difficult to test without having the unit finished. Ultimately, the first designs were way too small (the inside of the compartment grew quite cramped even with the larger design) and I was happy with the compromise I chose.

The laser cutter provided really precise output and, after a stressful few days of trying to purchase the right wood, format my files correctly, and find a time where a trained ER member could help me use the laser cutter, I was left with some very nice, precise pieces.

I built the console by using some wood glue and clamping the pieces together. The potentiometers were mounted (after being sanded down to fit inside the small compartment) with a hot glue gun and are by far the most fragile part of the device. I suspect I will have to refasten them with superglue before they are able to withstand the rigors of the Winter show.

Phase IV: Sound Design and Testing

I designed some simple sounds with a simple sound generator called SFXR and took a loop from the Amistrad version of Robocop to compose the games’ title screen music. I found some royalty free heartbeat sound effects, boosted their bass and sped them up to varying degrees. The biggest challenge in this part is working with the minim library and ensuring that finished music tracks repeat once they have finished. For now, I took the lazy way out and just made the files longer to reduce the chance of it happening. The game was played and many commented that they found the gameplay enjoyable; however, only one pair of two was able to test the game in each of my final presentations. I think I will reduce the ‘life’ the player(s) has/have in order to make gameplay a less time-consuming experience.

Ozone Command Debut at ITP from Nick Santaniello on Vimeo.

Projects of PComp Past!

I never got to publish some of the pictures from the production of my earlier PComp assignments, Virtual Guy and the Beatmaster 3000. Coming from a frou-frou high school and a childhood of pure computer nerdery, I never even learned basic shop skills – to me, PComp was a great opportunity to get up to speed on basic craftsmanship. One look at the build quality of the Beatmaster 3000 next to Ozone Command makes clear I’ve made at least a little progress in one semester!


The regrettable BeatMaster 3000, my stupid pet trick.

Early Virtual Guy Prototype


Ozone Command (ICM/PComp Final) Thoughts

General Proposal:

My final project idea is a table-top arcade game based on dual potentiometer input, webcam input, and biofeedback (either via heart rate sensor or GSR sensors). As the game grows more hectic, I hope to put the player on display him/herself through a changing display onscreen. I also hope to work in the player’s level of nervousness to heighten the intensity of the environment via sound, music, and graphics.

Sources of Inspiration:

Abstract, vector based physics as seen in Cosmic Smash:

The intensity of the visuals and sound change based on in-game performance (and in he case of my project, on biofeedback). A good inspiration is Rez

Classic games such as Missile Command that include hectic gameplay with increasing levels of difficulty:

Examples of games that put the player on display:

Dance Dance Revolution:

Big Buck Hunter / Arcade games:

Nintendo Wii:

Major stumbling blocks:

"Fantasy Device"

My fantasy device is the Insta-Burger – a machine that delivers a burger to your specifications!

The device consists of a simple area where materialization occurs and a simple control panel slightly higher than waist level.

The control panel features a series of toggle buttons, all set default to the ‘none’ or other default option. The toggle buttons have a picture above representing the option while each button has text on the button to indicate the choice you’re making. For instance, first is a picture of buns with the buttons “default”, “none” and “toasted”. Next is patty, where you can choose turkey, veggie, beef, or chicken. Next are yes no options for various toppings and condiments. Finally, there is a small keyboard and screen for additional “write-in” topping. As you type, the screen auto-completes potential toppings which you can then add and proceed to type in another write-in topping. Otherwise, you can click create.

A small screen shows your burger preview. After clicking create, the burger appears before your eyes!

PComp Sensor Walk

During my short walk around the West Village, I saw a number of sensors; the majority of them were simple buttons, including buttons to change traffic signals, buttons to buzz doorbells and intercoms, buttons to call for emergency help, and buttons to interface with an ATM. The payphone, also rife with sensors, sat alone and unused.

I couldn’t determine if the brake on this bike qualified as a sensor. The same with this light – does it activate when it senses movement, or is it just turned off and on elsewhere?