惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
B
Blog
A
About on SuperTechFans
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
IT之家
IT之家
D
Docker
Google DeepMind News
Google DeepMind News
罗磊的独立博客
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
D
DataBreaches.Net
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Pop Culture, Pride, and the Game Inspired by their Connec...
Ashmeet · 2026-06-22 · via DEV Community

This is a submission for the June Solstice Game Jam

I've been in online queer communities for a long time, and one thing that's always stood out is the endearing obsession with pop culture. The artists, the music, the fashion, the references. Every form of art gets appreciated, deeply analyzed, and celebrated. Diva Academy is an attempt to reflect that energy and honor Pride month and the pop culture that comes with it.

first screen of gameplay

What I Built

Diva Academy is a pop culture trivia adventure. You play as a fresh face entering a campus where the currency is knowledge. The questions cover everything from ballroom culture and drag history to Beyoncé's discography and the origins of the Pride flag.

The game runs in sessions: NPCs challenge you to timed trivia battles. Reach your REP(utation) goal to win, or hit zero and you're out. Earned REP converts to permanent currency between sessions, making it a rogue-lite-lite-lite experience where you gradually get stronger even when you lose.

The game is built with vanilla HTML5 Canvas, CSS, and JavaScript. It features:

  • 6 explorable rooms
  • 4 NPC tiers - Starlet, Diva, DJ, and Mother - each with distinct personalities and increasing difficulty
  • A rival system where a recurring NPC named Vex Vivienne spawns across the map and hunts you down
  • A permanent perk system where REP earned in each run converts to permanent currency for buying perks like Grace (forgive one wrong answer), Clutch (survive at 0 REP once), and Haste (extra time on the timer)
  • A Spotlight mechanic - defeat a Diva-tier or higher NPC and you earn a one-time 1.5x REP buff for your next face-off
  • Two minigames - Hangman (guess the pop star name) and Pop Connect (link two artists through a mathematically perfect, AI-grounded collaboration graph with look-ahead validation)

Hangman style mini-game

  • The Turing Challenge - Archivist Alan tests your ability to distinguish real pop culture quotes from AI-generated fabrications
  • A customization system that unlocks new dress and hair colors as you defeat NPCs
  • An 8-step Orientation Week questline that guides new players through the Academy

The game can be entirely run offline in a browser. Just run npm start and the game will automatically fall back to using pre-generated static data, including questions, quotes, and banter. The backend adds optional AI features (more on that in a later section).

Note: The game works perfectly without the backend or API keys — just open diva-academy/index.html via any static file server if you prefer a completely offline experience.

Video Demo

Code

Diva Academy

A pop culture trivia adventure. Walk through the Academy, challenge NPCs to trivia battles, and prove you know your stuff.

Screenshot 2026-06-22 101756

Quick Start

The game uses ES modules (<script type="module">), so it requires a static HTTP server — file:// won't work in modern browsers.

Without backend (fully offline):

# Option A: using Node.js (if you have it installed)
npx serve diva-academy

# Option B: using Python
python -m http.server 8000 -d diva-academy

# Option C: using the built-in Express server without AI
cd diva-academy
npm install
npm start
# Open http://localhost:5000

With backend (AI features enabled):

cd diva-academy
npm install
cp .env.example .env
# Edit .env and add your Vertex AI API key
npm start
# Open http://localhost:5000

Note: npm start serves both the game files and the AI backend endpoints from the same server. If you just want to play without AI, any static file server…

How I Built It

Architecture

The game is a single-page application with a Canvas-based game engine, HTML/CSS UI overlays, and a Node.js backend for AI features.

Frontend:

  • game.js - Main engine: rooms, NPCs, player, camera, rendering, face-offs, progression, save/load
  • questions.js - Question pool management with consumed-question tracking
  • minigames.js - Hangman and Pop Connect minigames
  • audio.js - External track support
  • ai-client.js - Fetch wrapper for the backend

A room showing the boss level of pop academy, Mother

Backend (Express):

  • server.js — Serves static files + 4 AI endpoints via Vertex AI
  • Uses direct REST calls to Vertex AI with API key auth

Dynamic Content & Offline Fallbacks

The game relies on built-in, curated static pools for all its core systems (trivia questions, NPC banter, end-of-run recaps, and Turing quotes). Everything is designed to work completely offline, degrading gracefully if the backend isn't running.

When connected to the optional backend, these systems expand dynamically—generating fresh, context-aware content on the fly to multiply the replayability. (See the Prize Category section below for a deep dive into how Google AI powers each of these mechanics.)

Prize Category

Best Google AI Usage

Diva Academy integrates Google's Gemini model via the Vertex AI Agent Platform with API key authentication. AI powers several core game mechanics, seamlessly falling back to curated static pools when offline:

Feature Backend Online Backend Offline
Question expansion Gemini generates batches on demand Manual entry form
NPC dialogue Contextual from Gemini Static pool
Run recap Unique from Gemini Static pool
Quote generation Gemini creates plausible fakes Static pool

Here is how Gemini acts as a dynamic content multiplier:

  1. Question Generation - Gemini 2.5 Flash generates new pop culture trivia on demand. The prompt enforces exact JSON output, balances categories, and prevents repetition by cross-referencing previously answered questions.
  2. Factual Collaboration Graph (Pop Connect) - We used Gemini to map a mathematically perfect network of legendary music artists. It fact-checks real track collaborations and symmetrizes the graph to completely eliminate "dead ends" and unsolvable paths.

  3. Fake Quote Generation (Turing) - Gemini analyzes real quotes to hallucinate highly plausible, fabricated pop culture quotes, infinitely expanding the Turing Challenge.

  4. Format Validation - All AI output is strictly validated server-side (checking choices, indices, and categories) before ever reaching the client.

  5. Contextual Dialogue & Recaps — Gemini writes in-character NPC banter and post-run performance reviews that dynamically react to your current REP and recent defeats.

the game of pop connect. connect 2 artists thru collaborations with other artists

Best for Turing Award

Alan Turing was the father of computing and a gay man. The mini-game/challenge is named after him, testing whether you can distinguish real from machine-generated.

The Archivist character Alan runs the Archives room. He challenges you to the Turing Challenge: a two-layer test of authenticity.

  • Layer 1: You're shown a pop culture quote. Is it real or an AI fake? If you're right and it's real, you advance to Layer 2.
  • Layer 2: You're told who allegedly said it. Was it actually that person, or was the attribution wrong? Correct both layers and you earn bonus REP.

The game ships with a built-in pool of curated real and fabricated quotes. When the backend is online, Gemini acts as the ultimate impersonator, generating completely fabricated, highly plausible quotes to infinitely expand the challenge.