Skip to content

Nelsonmbigili/The-NYU-Abu-Dhabi-Puzzle-Game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NYUAD Puzzle Adventure

Run in p5.js

Overview

NYUAD Puzzle Adventure is a game inspired by the beauty of the NYU Abu Dhabi campus. The game combines visuals of campus landmarks (captured by me and online sources) with an interactive puzzle-solving experience. Players start with a scrambled image divided into four square pieces, rearranging them to form the complete image.

As players progress, the difficulty increases with more precise movements required and additional pieces added to the puzzles. The game is designed to loop endlessly, challenging players with progressively harder levels.

Features • Custom Controller: Built using four switches and a joystick for full gameplay control. • Dynamic Gameplay: Tracks time for each puzzle and provides audio feedback for actions like attaching pieces and solving puzzles. • Visuals and Audio: Includes celebratory sounds and visually appealing graphics for an engaging experience

Implementation

Interaction

Interaction is a key focus of the game. A custom controller allows players to move and arrange puzzle pieces. • Controller Components: • Four switches for game state control. • Joystick for moving puzzle pieces. • Sound feedback for player actions. • Controller Design: The electrical connections are illustrated in the included schematic.

Arduino Code

The Arduino code reads data from the controller and communicates with the game via a serial connection. Key functionalities include: 1. Reading button and joystick inputs. 2. Sending data to the P5.js sketch. 3. Controlling speakers based on game states.

P5.js Sketch

The P5.js sketch manages game states such as “WELCOME,” “INSTRUCTIONS,” and “PLAY.” It processes inputs from the controller and updates the game dynamically. Features include: 1. Welcome Screen: Displays an introduction and summary. 2. Controller Integration: Reads data for smooth interactions. 3. Dynamic Feedback: Hints, timers, and celebration effects. 4. State Management: Transitions between screens based on progress.

Communication

Arduino and P5.js communicate using a serial connection. Arduino sends data strings (e.g., button states, joystick values), and P5.js interprets this data to control the game.

Highlights • Controller Design: This project helped me learn how controllers work and inspired ideas for future enhancements. • Graphics: The simple but appealing visuals contribute to the overall player experience.

Future Improvements • Using more complex shapes like jigsaw patterns for puzzle pieces. • Enhancing the controller by adding touch sensors and vibration motors for better interactivity.

About

An interactive and engaging game showcasing the state-of-the-art campus of NYU Abu Dhabi!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published