Week 12: Final Project – Defuse Dash

Bomb Defusal Game: Defuse Dash

Concept

The bomb defusal game is an interactive physical and digital game where players must complete a series of tasks using a combination of hardware components and a computer interface to “defuse” an Arduino bomb within a set time limit. Each task involves different components such as buttons, a potentiometer, and an ultrasonic sensor, providing a variety of challenges that test the player’s reaction speed, precision, and problem-solving skills.

Responsibilities

  • P5.js
    • Visual Display: Renders the game interface, including task instructions, status updates, and timers.
    • User Interaction: Processes and displays inputs received from the Arduino, allowing players to see the results of their actions in real time.
    • Game Feedback: Provides immediate visual feedback based on player actions, such as changing colors or displaying messages to indicate success or failure.
  • Arduino
    • Input Reading: Collects and processes inputs from physical game controls (buttons, potentiometer, ultrasonic sensor).
    • Logic Handling: Executes the core game mechanics based on player interactions and sends the status to P5.js.
    • Output Control: Manages physical outputs like sounds (buzzer or servo) to enhance gameplay interaction.

Game Mechanics

Task-Based Gameplay: Players face multiple tasks that they must complete to defuse the bomb. Each task uses different components:

  • Button Presses: Used for tasks like code entry, where players must press the correct sequence of buttons.
  • Potentiometer Adjustments: This might involve setting a dial to match a specific level displayed on the P5.js interface.
  • Ultrasonic Sensor: Requires players to move an object to the correct distance from the sensor as shown by the computer interface.
  • LEDs: Used to provide visual feedback on task status (e.g., success, warning, error). The Arduino controls these LEDs based on the game state and player inputs.
  • Piezo Speaker: Can emit different tones or alerts based on game events like task success, failure, or warnings.

Time Limit: The game is timed, adding pressure and requiring quick thinking and fast responses. Failing to complete tasks within the time limit results in a game-over scenario.

Current Progress

  • Circuit Setup: Configured a basic circuit with 2 buttons, 1 potentiometer, and 1 ultrasonic sensor connected to an Arduino Uno.
  • Arduino Programming: Developed code to read inputs from the hardware components and send this data to the P5.js application via serial communication.
  • P5.js Programming: Set up a P5.js sketch to receive data from Arduino and visually display game elements such as task instructions, player inputs, and a timer.

Leave a Reply