Arduino UNO Q 搭載本地 AI 的恐怖多人卧底遊戲 The Last Clue
The Last Clue: A Spooky Multiplayer Imposter Game Powered by Arduino UNO Q
The Last Clue 是一款以 Arduino UNO Q 和本地 AI 驅動的恐怖主題多人卧底猜詞遊戲,Arduino UNO Q 會託管遊戲伺服器,並以 LED 矩陣呈現幽靈表情及回應遊戲事件。
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine
What if an Arduino board could host a party game, become a ghost, and help you catch a liar?
That's the idea behind The Last Clue, a spooky multiplayer word-imposter game built with Arduino UNO Q and local AI.
I wanted to build something fun that people could actually play together, rather than another AI chatbot or a typical hardware demo. So I turned the UNO Q into a haunted game master.
What I Built
The Last Clue is a multiplayer word-guessing game inspired by games like Imposter and Undercover, with a horror twist.
The concept is simple: everyone receives the same secret word except one player, the Imposter.
For example, imagine there are five players and the secret word is Vampire.
Four players receive the word "Vampire", while the Imposter only receives its category, "Horror Creature".
Now everyone takes turns giving one-word or short clues. The Imposter has to pretend they know the answer without exposing themselves.
Once everyone has submitted a clue, players can decide whether they need another clue round or are ready to vote.
When voting begins, everyone secretly votes for the person they suspect.
And here's the interesting part: when the Imposter gets caught, they get one final chance to guess the secret word.
Guess correctly, and the Imposter still wins. Get it wrong, and the survivors win.
I wanted the game to be easy to understand, quick to play, and a little suspenseful every time.
What makes it spooky?
I didn't want to simply put a dark background and a few ghost emojis into a regular game.
I wanted the ghost to feel like an actual character living inside the game.
- A little ghost wanders around the game interface.
- Its expressions change as the game progresses.
- The Arduino UNO Q's LED matrix displays the ghost's physical expressions.
- Voting and final reveals trigger different ghost animations.
- Horror-themed word packs include haunted places, supernatural creatures, cursed objects, and paranormal events.
The UNO Q is not just displaying a random animation. Its LED matrix reacts to actual game events.
Demo
Here's The Last Clue in action!
The demo shows how players join the same room, receive secret roles, submit clues, vote, and discover the Imposter, alongside the physical ghost on the Arduino UNO Q.
Code
utsavdotdev
/
last-clue
A spooky multiplayer word-guessing game where players uncover the hidden Imposter, powered by Arduino UNO Q and local AI.
The Last Clue
A spooky multiplayer word-imposter game where everyone knows the word except the Imposter.
Host a room on an Arduino UNO Q (or a laptop), then play from phones and browsers on the same Wi-Fi network. Survivors share short clues about a secret horror word. One Imposter does not know the word and has to blend in.
Features
- LAN multiplayer for 4–10 players in any modern browser. No accounts, cloud APIs, or internet connection during play.
- Secret roles. Survivors see the word privately. The Imposter sees only the category.
- Horror word packs. Fifty bundled words across Horror Creatures, Haunted Locations, Cursed Objects, Horror Films and Classic Tropes, and Supernatural Events.
- Player-paced rounds. After each clue pass, the table can start voting or play another clue round. There is no discussion or voting timer.
- Secret voting with a runoff if the top suspects tie. Catch the Imposter, or they…
The repository includes the game interface, multiplayer server, game logic, Arduino integration, and supporting documentation.
Contributions and ideas are welcome!
How I Built It
The most interesting part of this project was making the Arduino UNO Q work as the actual game host.
Instead of hosting everything on an external server, I used the UNO Q's onboard computing capabilities and Wi-Fi to run the game locally.
Here's the basic architecture:
- Arduino UNO Q: Hosts the game server and handles the physical game experience.
- Python + FastAPI: Manages rooms, players, game phases, secret roles, voting, and scoring.
- WebSockets: Keeps all connected players synchronized in real time.
- Web interface: Provides the multiplayer experience through mobile and desktop browsers.
- LED Matrix: Displays the ghost's expressions and reacts to gameplay events.
- Local AI: Powers the Ghostmaster, adding horror-themed content and personality to the experience.
Players simply connect to the same Wi-Fi network and open the room link or scan the QR code. No separate mobile application is needed.
A little local AI magic
I wanted AI to contribute something meaningful instead of just adding a chatbot to the game.
The idea is to make it the Ghostmaster: the mysterious presence behind the game that creates spooky introductions, atmospheric announcements, and fresh horror-themed content.
For this, I used:
- Model: Qwen 3.5 0.8B
- Execution: Local inference on Arduino UNO Q.
I kept the actual game mechanics separate from AI. Role assignment, voting, scoring, and winning conditions are handled by normal game logic. AI is there to make the experience more interesting, not to decide who wins.
This also means the game can continue using its built-in horror word packs when the AI is unavailable.
Why Does Open Innovation Matter?
For a project like this, I think running AI locally makes a lot of sense.
I didn't want the game to depend on an external AI API just to generate a few spooky messages.
Using open-weight AI gives me more control over how the model runs, how it is integrated, and what it does. It also gives me the freedom to experiment with different models and runtimes without building the entire experience around a single cloud provider.
More importantly, the game is designed around a local network. Players can connect to the UNO Q and play together without needing a separate cloud-hosted game server or sending gameplay data to an external AI service.
Open innovation also made this project a great learning experience. I could experiment with the hardware, software, local inference, and multiplayer networking together.
That's what I enjoyed most about this challenge: taking different open technologies and making something fun out of them.
The Spirit of It 👻
My favorite part of this project is seeing the little ghost on the Arduino UNO Q react to what's happening in the game.
The board becomes more than just hardware running some code. It becomes the physical identity of the game.
Players are looking at their phones, trying to figure out who knows the secret word, while a tiny ghost on the Arduino board is watching the whole thing.
I think that's what makes this project special.
A simple word game turned into a small haunted experience, powered by an actual piece of hardware and local AI.
And remember...
One word. One Imposter. Zero trust.
Prize Categories
- Best Use of Arduino — Built with Arduino UNO Q, using its onboard computing capabilities, Wi-Fi, and LED matrix as an integral part of the multiplayer game.
Thanks to everyone behind Hacktoberfest and the DEV community for creating a challenge that encourages experimenting, learning, and building with open technologies.
Now, can you find the Imposter? 👀
來源:DEV Community · dev.to