This repository contains the code for a custom controller designed for the game "Overcooked! 2". The controller is split into three distinct parts, each serving a specific function:
-
Knife with Buttons:
-
Plate Controller:
-
Receiver:
Below the interaction with the controllers and their hardware can be seen
- Code Location: Receiver/
- Description: Code that takes input from the knife and plate controllers.
- Code Location: Wireless_Knife_Plate/Plate_Wireless
- Description: Sends thumb stick x-y coordinates through the accelerometer to the receiver. Triggers vibration if tilted too much, signaling that in-game items may be dropped.
- Code Location: Wireless_Knife_Plate/KnifeWireless
- Description: Sends input from the knife controller to the receiver. Includes a pressure sensor for in-game grabbing, two buttons for interactions, and an accelerometer to detect shaking for specific interactions.
- Vibration Module: Enhances user feedback by incorporating vibration effects into the gaming experience.
- Bluetooth Module: Facilitates wireless communication between the controller components and the gaming system.
- Accelerometer: Enables precise tracking of plate tilt, contributing to a more dynamic and engaging gameplay.
- Buttons: Used for initiating various in-game actions.
- Pressure sensor: Used for grab actions.
- xInput Library: Employed to emulate an Xbox controller, ensuring compatibility with the game "Overcooked! 2".
Feel free to explore the codebase to gain insights into the intricacies of each component and their interactions.