Mechanics Designer

Chú Mó is an experience that combines virtual and physical feedback to create a one of a kind adventure. Players take the role of fledgeling exorcism students who must seal away an unruly demon. Alternative controllers, projection mapping, and physical components help immerse the player in this award-winning game.

Art Center Game Page

Role: Physical Computing System Programmer
Duration: 01/2023 - 04/2023 (4 months)
Tools Used: Unity, C#, Visual Studio, Phidget Control Panel

Responsibilities

  • Physical Computing: Coded the system that allowed Unity to affect real world objects

  • Wiring Assistant: Assisted a mentor to connect the various objects together

#Read More Below#

Physical Computing

During gameplay various real-world props are controlled by the game. These items are part of a feedback system that helps players identify their next objectives. This was initially done with Arduino, but we needed to control too many objects at once. A mentor suggested that Phidgets would be better for our use case so I started researching how to connect them with Unity.

Through testing I found that the more complex real-world object system led to more error points, so I simplified it through various iterations. The final version I worked on treated each connection as an on/off switch, controlled by whichever string had been assigned to that port. This allowed anyone on the team to add real-world objects as needed. Programming what amounted to the ghost in the haunted house was an incredible experience I won’t soon forget.

While I love the version of Chú Mó hand-built with our team of a dozen talented designers, programmers, artists, and storytellers, it evolved to a much bigger, more complex project after my exit thanks to their persistence and passion. They spent the next three months polishing the project until it was ready for its Indiecade debut. You can find links to their online presence below:

Learnings

Chú Mó taught me the importance of team communication and documentation. During this project I noticed our lead programmer was overwhelmed by their workload. To ease this burden I created a simple system with lots of inline comments. I designed it this way so anyone on the team could adjust it as needed. This took mental load off the lead programmer and also led to less errors. Sometimes the best design isn’t the most complicated, but the one that gets the job done in the simplest way possible.