How I Built Three Small Party Games for a Spring Dinner
Description and use
The author built three lightweight Node.js party games—a multiplayer memory game, a rock‑paper‑scissors display, and a lottery machine—designed for quick deployment on a laptop and projector, with minimal server requirements.
Problem
Create simple, event‑friendly games that can be run on a laptop and projector without complex infrastructure.
Outcome
The author successfully delivered three distinct party games that run on a single laptop, requiring only a projector and internet for the multiplayer game. The games are easy to set up, have clear coordination logic, and avoid complex persistence or security concerns.
Workflow
- 1. Set up a Node.js server with Express to serve static files.
- 2. Implement Socket.IO for real‑time communication in the multiplayer game.
- 3. Store game state in memory (players, round, sequence, etc.).
- 4. Generate a random arrow sequence and broadcast it to all clients.
- 5. Show the sequence for a fixed duration, then enter an input phase.
- 6. Collect player inputs via the client and send them to the server.
- 7. Server compares input to the stored sequence and emits correct/incorrect events.
- 8. Update player status and broadcast eliminations or survivals.
- 9. For the rock‑paper‑scissors game, pre‑select the outcome before animation to avoid visual mismatch.
- 10. For the lottery game, maintain a pool of numbers, draw without replacement, and display history.
- 11. Deploy each app locally and connect to a projector for the event.
Evidence
All three are intentionally small Node.js applications. They serve static files with Express, keep the browser UI in plain HTML/CSS/JavaScript, and avoid a database.
The server owns one in‑memory game state…
The rock‑paper‑scissors project has no multiplayer protocol…
- Record date: 2026-09-06T00:07:46.597Z