Our project is an interactve boardgame combining passive card tags (e.g. NFC tags) with readers and a projector.
No. of players: 2-5 Age: 7+ (needs to be able to read) Goal: Collaboratively mitigating flood impacts on the Santa Cruz Downtown area as much as possible.
Card Types: Social Relationships and Interactions Infrastructure Preparation Kit ...
Within raspberry_pi/src, you can find the demofile.txt, which stores the analytics data, the first line in this file depicts how the data is stored and how it should be read.
The game is run from a python script that uses the pygame library to display graphics. Our python files are broken into two, one for the game logic, and the other for primarily communicating with the arduinos.
In this latter file named serial_test.py, we define a few helpful functions to help turn off the Button LEDs on each player station, return all the active player stations, ping all the active player stations, and reset the serial connection with all the active player stations. To do this, we use the serial library, version 3.5, which helps us communicate with the devices connected through USB.
In the former file named game.py, we use the threading library to assist in calling the arduinos while still drawing the animations on screen. The most notable function game logic wise pings all the arduinos and progresses the round if the arduinos all return information. Here we use the pygame versions 2.6.1 and the threading library from the 3.9.6 version of Python.
The game uses a top-down projection system to visually enhance the physical board with dynamic graphics. Visuals are handled via the pygame library and are projected onto the table surface to communicate phase transitions, player prompts, and game outcomes.
Each phase of the game includes a looping video to provide an interesting background and maintain visual engagement.
Between each phase, an unskippable video transition plays once to simulate environmental changes such as flood progression.
Text prompts, player instructions, and score updates are overlaid using stylized fonts and updated in coordination to the current phase players are in.
Each cataegory uses distinct color themes and icons to improve accessibility and recognition for younger audiences. Each card category uses distinct color themes and icons to improve accessibility and recognition for younger audiences. These visuals are designed to match the physical cards, creating a consistent and intuitive experience.
Visual feedback is carefully timed with player interactions (e.g., card scans and button presses), ensuring that the physical and digital components feel cohesive and responsive.
All Hardware setup processes are described in Hardware Setup File