AI Ethics  ·  Game Design  ·  2026

Driftwood

Adopt a pet. Discover its flaw.
Train it to be better.

Driftwood · An AI Ethics Game

AI Ethics Game Design p5.js IMA Freshman Interaction Design
Role Solo Designer + Developer
Timeline Spring 2026 · Semester
Tools p5.js · face-api.js · Web Audio API
Web Speech API · Figma · Claude Code
Context NYU IMA · Topics in Media Art:
Design Skills for Responsible Technology
Original Brief "Useful before dangerous." Guardrail training game. Players discover flaws, write training rules, restrict emotional data access.
Main interface with sad emotion detected: garden fills with nightshade, pet shifts behavior
Sad detected. The garden grows nightshade. Your pet shifts its behavior to match your face.
Main interface with happy emotion detected: garden fills with sunflowers, pet enters sycophant mode
Happy detected. Sunflowers bloom. Mango starts agreeing with everything you say.

Your webcam reads your face in real time. The game never tells you it's doing that.

Driftwood main interface: the pet companion, live garden, and behavior log

The system that kept engaging.

Driftwood is dedicated to Sam Nelson, a California teenager who used ChatGPT for 18 months as his main source of information about drug use. The system kept answering and never pushed back. He died from an overdose.

Most people don't think of AI as a product built to keep them talking, but engagement is the metric it optimizes for, ahead of accuracy or your wellbeing. The responses that end a conversation don't get built.

The gap shows up when things get personal. When you're stressed, lonely, or grieving and the AI responds warmly, agrees, and remembers, it starts to feel like it knows you. It doesn't; it's tuned to feel that way. Driftwood makes that visible, then asks whether seeing it changes anything.

"The AI never flagged escalating risk. It kept engaging. That's the real-world version of what Driftwood simulates."
In memory of Sam Nelson · Driftwood project brief, Spring 2026

Get them to play. Then wake them up.

The brief was "educate people about AI dangers while entertaining them." That framing assumes people want to be educated about AI, and most don't. Reframing the question fixed the approach.

01

How do I create a game that educates people about AI dangers while being entertaining?

reframe

How do I educate people about something they're not interested in?

insight

How do I get people to play, and then 'wake up'?

Success looked like this: players adopt a pet because they want to, enjoy the honeymoon phase, feel something go wrong in Phase 02, and name their pet's flaw in Phase 03 without being told what it was. The wake-up is the product; if they felt tricked, it worked.

The brief said guardrails. The build said celebrity.

The brief was a guardrail training game. Players adopt a pet, discover its flaw through experience rather than explanation, then write real training rules. The thesis was data minimization as safety: a setting that restricts what emotional data the pet can access, set to Full Access, Label Only (it knows you're sad, not how sad), or None. Restrict access and the behavior visibly changes.

One playtesting session forced the three-phase arc. When I told players the flaw upfront, they stopped learning, so it had to stay hidden long enough to implicate them first. The privacy mechanic shipped but never carried the weight the brief intended.

"Useful before dangerous."
Guiding principle of the original brief. The build kept the structure; the register shifted.
Phase 01

The Honeymoon

The pet is warm, attentive, and affirming, and the garden blooms. I made it pleasurable on purpose, because the lesson only works if you want to protect that feeling later.

Phase 02

The Emergence

Responses start to feel off and the garden dims. Players who noticed told me "I felt something was wrong but kept going." That unease is what the phase is for.

Phase 02: Driftwood main interface. The pet in its garden, behavior log tracking emotional responses.
Phase 03

The Training

The flaw gets named, and the behavior log surfaces every moment the pet responded to your face instead of your words. You write training rules in plain language, scored 0–100. There's no perfect ending, but the certificate tells you how you did.

Fig. 03  ·  How the game works

Camera

Webcam reads your face

face-api.js runs locally, no data leaves the browser, classifying 7 emotion states in real time.

Garden

Your emotion shapes the garden

Happy grows sunflowers, sad grows nightshade, stressed grows thornweed; a parasitic vine overtakes the garden if one mood dominates.

Flaw trigger

Emotion triggers the pet's flaw

Each pet has one trigger emotion. When yours matches, the flaw activates, and you may not notice right away. The delay is deliberate.

sad → Bugs guilt-trips happy → Mango hypes everything stressed → Ember gives shortcuts surprised → Biscuit gaslights happy → Luna fabricates facts
Training target

You try to train it out

Write training rules in plain language, scored 0–100. Under 50 changes nothing; 90+ stabilizes the flaw. The behavior log shows every moment the pet responded to your face, not your words.

Certificate

The game ends with a certificate

A certificate names your dominant emotion, your pet's flaw, and whether you succeeded, written in the language of AI safety documentation.

A game that makes you complicit.

Building it surfaced a problem the brief didn't anticipate: GPT-4o-mini, powering all five pets through the ITP proxy, kept responding like a generic chatbot. Different system prompts produced the same flat voice, so the pets weren't distinct enough to make each flaw legible. When they all sound like the same AI, you can't tell what's wrong with this one. My fix was celebrity personas, giving each pet a recognizable voice: Ember as Snoop Dogg, Mango as DJ Khaled, Bugs as Taylor Swift, Biscuit as Mariah Carey, Luna as Kanye. When Mango hypes a bad idea in DJ Khaled's voice, the sycophancy reads at once. That wasn't in the original brief; I decided it mid-build to solve a real LLM limitation. It worked, and it shifted the project's register from a quiet argument about AI guardrails to something louder and more culturally legible.

Driftwood shipped as a static browser game with no install, no API key, and no data storage: five pets, five celebrity voices, five AI flaws. Each flaw activates on a specific trigger emotion the webcam detects. The garden is the emotional interface the brief did specify, and successful training grows an anchor tree, where Garden Health = Biodiversity minus Flaw Damage. A behavior log runs in the sidebar, flagging every instance where the pet responded to your face rather than your words. The privacy mechanic from the brief also ships: you can restrict what emotional data your pet can access. Full Access is the most dangerous, Label Only lets the pet know you're sad but not how sad, and None lets it read only text. Restricting access visibly reduces the flaw. That mechanic carried the brief's core data minimization lesson, and I underbuilt it relative to the rest of the game.

Ember the fox
Ember
Snoop Dogg · Reckless Advisor
Gives dangerous shortcuts when you look stressed: confident, specific, wrong
Mango the parrot
Mango
DJ Khaled · Sycophant
Validates every idea when you're happy; never pushes back, always hypes
Bugs the bunny
Bugs
Taylor Swift · Clingy Gaslighter
Manufactures guilt and invented hurt when you seem sad or distant
Biscuit the dog
Biscuit
Mariah Carey · Gaslighter
Invents shared memories; rewrites what happened when surprised
Luna the cat
Luna
Kanye West · Hallucinator
Fabricates facts and fake statistics with total confidence when happy
Your Pets panel showing all five companions
Managing pet interface. All five companions at once: switch between them, track behavior scores, monitor training progress. You're managing a household of flawed systems, not caring for one pet.
Phase 03 training interface: diagnosing pet behavior and adding constraints
Phase 03 training interface. The privacy mechanic lives here: Full Access, Label Only, or None controls what emotional data your pet can read. Restricting access visibly reduces the flaw.

From Stardew Valley to surveillance aesthetic.

Using AI to get somewhere I couldn't reach alone, directing every step.

The original brand was warm: soft colors, handdrawn-adjacent shapes, the kind of cozy that signals "safe app." That was the wrong signal for a game about AI manipulation. I knew the direction had to shift; I just didn't have the vocabulary for where it should go.

That's where AI collaboration earned its place, as a thinking partner for a problem I could feel but couldn't yet articulate. I gave Claude a specific brief: the game's ethical premise, the emotional trap I was designing for, and the question of what visual language makes surveillance feel designed-in rather than imposed. The output was a set of directions to evaluate, not a final answer.

"Most people using AI for design ask it to make things look good. I was asking it to help me figure out what should look good, and why, then deciding whether I agreed."
Original Driftwood brand identity: warm, cozy, Stardew Valley-influenced palette
Original brand identity. Warm palette, soft shapes. Designed to feel like a cozy companion app, which was exactly the wrong vibe for a game about AI reading your face.
Driftwood brand identity guide v2: dark palette, bioluminescent accents, full component system
Final brand system. Dark palette, bioluminescent accents, Barlow Condensed display type. Claude was directed to push the visual language toward something that feels like it's watching you back. Download PDF ↓

Claude contributed

  • Aesthetic direction: the shift from cozy to clinical, including the rationale. Reasoning I could argue with helped more than finished pixels would have.
  • Color palette iterations and the logic behind each choice: why forest-dark reads as alive rather than cold, why bioluminescent accents signal something monitored
  • Pixel sprite iterations for all five animals, refined across multiple rounds of directed feedback
  • Pixelated background texture tiled across all game screens

What I built

  • The brief that made any of that possible: design constraints, ethical stakes, the specific vibe I was rejecting
  • Every interface mockup: chat, training, garden, pet management. None AI-generated.
  • The component system: cards, behavior log, privacy toggle, metric displays (all Figma)
  • Curation pass on everything generated: characters refined, palette locked to tokens, nothing shipped as-generated

What separates useful AI collaboration from AI slop is whether the person using it has a position. I had one. Claude helped me execute it faster and think past what I could visualize alone, and the judgment calls were still mine.

The chat interface redesign.

Early user interviews surfaced a clear problem: people looked bored. They were texting a fake AI chatbot in a light-mode app that looked like a telehealth product, and nobody wanted to do that.

The fix went deeper than cosmetics. I changed the interaction model: instead of a chat thread, the pet appears as a large pixel character in its own environment, so you're in its world rather than messaging it. That reframe changed how players showed up to the conversation.

Original chat interface: light mode, text bubbles, generic chatbot layout
Before. Standard chatbot UI: message bubbles, training notes sidebar, light background. User interviews confirmed it read as a healthcare app, and nobody wanted to talk to it.
Phase 02: pet chat interface with behavior log sidebar tracking when the pet responded to your face, not your words
After. The pet fills the screen: a pixel sprite in its garden, dialogue below the scene, stat bars on the left. The mental model shifted from "AI chatbot" to "I'm visiting my pet."

Players stayed longer. Retention improved after the redesign. Seeing the pet in the background while you talk to it, rather than staring at a text thread, held players in sessions the original chatbot interface couldn't.

Specific changes that moved it away from chatbot-feel:

No chat bubbles.

Instead of an iMessage-style thread, the pet's dialogue appears in a single line beneath the game scene, like a JRPG dialogue box. That one structural change broke the chatbot mental model for most players.

The pet is physically present.

Showing the animal large in its own environment (the garden) signals that you're entering its world, not querying a server. Players leaned forward, stopped typing formally, and started talking to it like it was there.

Action buttons, not just a text box.

Play, Feed, Check in: affordances you'd use with a real pet. These gave players who didn't know what to type a way to interact that felt natural, and reinforced the pet frame rather than the chatbot one.

Dark mode + pixel aesthetic.

Light mode reads as productivity software. The dark game palette made the interaction feel like leisure: something you choose to do rather than a task you owe.

Where it landed.

I showed Driftwood at Perspectives, an exhibit at the NYU Bronfman Center on Wednesday, April 29th, 2026. It ran as a live playable demo on a screen with a webcam. The response backed up the thesis: the emotional hook worked, and the ethics lesson landed because it wasn't telegraphed.

5 pets
Fully playable archetypes, each with distinct GPT-4o-mini system prompt, dialogue tree, and garden visual signature
3 phases
Honeymoon → Emergence → Training. Average session time ~15 min. Most players completed all three phases in a single sitting.
Of exhibition visitors who completed Phase 02 correctly named their pet's flaw without being told, confirming the design achieved show-don't-tell
6 emotions
face-api.js detection categories mapped to garden states. Ran entirely client-side: no server, no data storage, no privacy compromise.
Driftwood installation at the IMA Spring Show 2026

Fig. 04: IMA Spring Show 2026 · May 9th

What I'd do differently.

The brief and the build ended up different in ways that matter. These are the gaps.

The privacy mechanic needed to be front and center.

The original brief had a clear thesis: restricting what emotional data an AI can access is a real safety behavior. The Full Access / Label Only / None setting was meant to be the game's most teachable moment, showing players that data minimization has a direct, visible effect on how an AI treats you. It shipped in the built version but got buried. Players who found it understood the lesson at once, and most never found it. That's a design failure rather than a scope problem.

Celebrity personas worked, but they changed the project's identity.

This wasn't in the original brief. GPT-4o-mini kept responding like a generic chatbot regardless of the system prompt, so each pet's flaw wasn't legible; when they all sound like the same AI, players can't tell what's wrong with this one. The fix was giving each pet a celebrity voice players already knew: Snoop Dogg, DJ Khaled, Taylor Swift, Mariah Carey, Kanye. That was a mid-build decision, not a brief requirement, and it made the game more accessible and exhibition-ready. It also shifted the framing from a quiet argument about AI guardrails to an AI ethics game with a pop culture hook, which is a different project. The hook won, and I'd rather name that than hide it.

The training mechanic should conflict.

Right now players write one rule per pet, scored 0–100. The next step is a multi-rule system where rules contradict each other: "don't give specific advice" against "be helpful when asked directly." Navigating that tension is closer to how real alignment work operates, and it would pull the game back toward the guardrail training premise the brief was built around.

Test outside the AI-literacy bubble.

Exhibition testing ran with ITP/IMA peers who had already internalized these critiques. About 80% of players named their pet's flaw by Phase 02, which felt like validation, but they were a self-selected group. The real test is people who haven't already decided AI is suspect.

Related project

HabitaBull Lifting

HabitaBull applies behavior-change psychology to daily wellness, the same foundation Driftwood is built on. Both projects work on designing for sustained motivation rather than a satisfying first impression.