Virus Attack

Wall Module Assemblies

This week, our team continued to refine our "Virus Attack" game. We honed in on the mechanics of user-game interactions and how exactly we can program the game to present an engaging and immersive gameplay experience. My focus is on the mechanical assembly of the game board. The paths of lights on the walls are critical: they must present a challenge that is not trivial to solve, but is not so confusing as to make the players resort to random button-pushing. Since our game has a speed and physicality to it, I wanted to limit the puzzling nature of the walls in order to focus on the time pressure of more and more viruses attacking the players.

In order to make the game scaleable and easy to install, we decided on building "modules" that would be self-contained programmable units. Each one would be controlled by one Arduino, which would govern the behaviour of that particular set of buttons and paths. These modules can then be chained together into a central control system that would initiate red virus attacks at different modules at different rates, thereby creating an experience for the players of being surrounded by attacking viruses. By paneling the walls of a room with modules, the game masters can create the illusion that the entire network is interconnected and acting as one, when in reality each module is stand-alone. This also allows the game to be switched up by rotating modules in and out of the room over time.

With this modular system in mind, I focused in on one of those modules and how it would be built and assembled.

These mockups are examples of individual panels. The design constraints for these modules are the number of addressable buttons and led strips that can be input to one Arduino. 4 buttons and 10 strips can be controlled within each module. Each button and each strip between junctions needs to have its own address so that the microcontroller can use the game logic to determine where a virus is going and when the buttons can repel the attack.

Some modules include junctions without buttons that will randomize the path of the virus, throwing the players into disarray as the virus moves in unexpected ways. Sometimes the virus will quickly go to ground while other times it might take a circuitous path that allots the players time to stop it.

The panels are roughly 1m by 1.5m and can be easily scaled to better fit in a given game room.

This is a more detailed assembly of how the panels are made.

The backing is a simple sheet of 3/4" ply. The second layer of ply has the paths and button recesses routed into it using a CNC router table. This allows the buttons, LED strips, and acrylic light diffusers to pop into place.

The acrylic diffusers protect the LED strips and present a more pleasant glow to the user. They are made by lasercutting strips of 1/2" acrylic into the right dimensions for a given path and then sandblasting both sides to create a frosted and diffuse effect. These are then glued or screwed into place.

The button and LED strip below are off-the-shelf components found on Adafruit and Suzo Happ. They both use RGB leds and can be controlled by an Arduino.

The buttons have a simple threaded assembly that screws into the backing panel, allowing the wiring to be hidden behind the module. They are rated to thousands of cycles and are designed for arcade use, so they are robust enough to withstand users slamming into them with bodyweight. They are also relatively cheap and can be replaced very easily. The LED strips are programmable to show a progressive virus attack, with each LED lighting up in turn down the line until the virus reaches one of the buttons and engages the button logic. For more on how these work, please see the work of my teammates.