Ghost Patrol Tech: Spectral Stethoscope
Updated: Mar 30, 2021
This post discuss the Spectral Stethoscope, a gadget players use in our game Ghost Patrol. The spoiler content of this post is low. We give this device to players before they even enter the room. There is a small amount of low-context video footage of gameplay.
Ghost Patrol is a game about getting rid of a ghost by completing the unfinished business that's keeping it around. To do this players need to figure out the ways the ghost is trying to communicate with them, and the stethoscope is a tool to help do this.
As we tell players, ghosts sometimes leave an impression in important places. This is both physical residue - slime, and psychic energy. The stethoscopes and converts the psychic resonance into to acoustic vibrations, that is, sounds you can hear! Before entering the room, players can try it out with a training ghost.
Most ghosts are not as clear communicators as this one, so figuring out what they're trying to say can be almost like a puzzle!
We had a few reasons for making the Spectral Stethoscope.
First of all, it's fun to get stuff, and gadgets make for a more Ghostbusters-like experience.
The spectral stethoscope in particular lets us use audio puzzles, while avoiding some of the problems that they often can have. Instead of waiting for clues to loop, the stethoscope lets player hear the sounds they want when they want it. It also gives them a more active role as investigators. Players don't just listen passively, their interactions cause the sounds to play. In terms of puzzle design it's very convenient to be able to clearly associate a sound with a particular object or location.
In Ghost Patrol there's often multiple puzzles unlocked at once, but we ensure there's only one stethoscope puzzle available at a time. The stethoscope is used throughout the game, but when players split up there's never any conflict about which group gets to use the stethoscope.
Sounds are marked with easily recognizable slime. This means players immediately realize when a puzzle requires the stethoscope. It also means they're less inclined to try it on everything the room, which is tedious for players and would accelerate wear and tear on the set.
All in all the stethoscope contributes to the variety of puzzles we are able to include in the game.
How's it work?
Short answer: RFID tags, embedded in the set, and marked with patches of slime.
There's two main components to the stethoscope. The listening piece and the main body.
The listening piece contains an ID-Inovations ID12LA RFID reader, chosen for its compact size. We care about two of its pins: One reports serial data when it reads a tag and another indicates whenever a tag is still in range. That's on a simple breakout board. The whole thing is a button, so that instead of vague RFID proximity, players experience a definitive tactile experience. When a tag is scanned, the device queues up a sound but only plays it until the button is pressed.
Mechanically it's a copper pipe cap. Inside is a 3d-printed insert that transfers motion to a couple of limit switches, held in place with a set screw. On the back is a large brass washer, which fits the holster on the housing, and vaguely evokes the shape of a bell and diaphragm stethoscope's chestpiece.
In a conventional stethoscope, rubber tubing directs the sound waves to the ear. In the spectral stethoscope rubber tubing protects the wires, leading to the main body of the device.
The main body holds a speaker, a battery, and a circuitboard. There also is a volume knob, a power switch (hidden behind a pinhole), and a barrel connector charging port.
The circuitboard has an ESP32 microcontroller (programmable with the Arduino environment), There's an SD card reader that holds the audio files. The ESP32 uses I²S to send sound to a MAX98357A combined sound card / amplifier. There's also an Adafruit Powerboost 1000C battery charging and power management module. I've standardized on JST-XH for all wire-to-board connections. Finally, there's some decoupling capacitors and a voltage divider to bring the battery's voltage into range of the microcontroller's analog pin.
The sound files are named based on the IDs from the tags, so it's easy to add or change puzzles without changing the software. The ESP32 has built-in WiFi, which I don't trust for anything critical, but we do use it to show on control room dashboard what slime is scanned and when, and to report the battery level. It's also possible to update the software on the microcontroller over WiFi, which is more convenient than opening it up.
The housing is laser cut plywood. Attractive brass hex head screws hold the front panel on, screwed into nuts glued to the inside. It's got a handy holster for the listening piece, which conceals the charging connector. The power switch is a regular button behind a pinhole so players can't accidentally turn it off. That's held in place with 3d-printed bracket. There's a speaker and grill on a removable front plate, which also serves as an access panel.
The slime is made of epoxy, mixed with colored pigment, and is very durable.
Finally, we have a dual charging station for storing and charging two stethoscopes.
All of our prop charging uses a 10-port USB charger, with USB to barrel connector cables.