G—P / FMX 430 / Semester / Week 08

Week 08 · Phase 2 — Interactivity

Blueprints I: making the world respond

Triggers, timelines, doors, pickups, and a first UI widget — the core grammar of interactivity. Then the agents come back from exile, wire a Blueprint through the editor's MCP server, and you learn the defining skill of the AI era: reading a graph you didn't write.

Session Fri Oct 23 · 10:00 am – 1:50 pm · CCB-134 Bring your laptop, your sandbox project, last week's light-toggle Blueprint
By the end of this session you can

2:00 · Brief The event-driven world

A level is a noun; a Blueprint makes it a verb. Everything interactive in Unreal — doors, elevators, pickups, entire game modes — reduces to the same sentence: when this event fires, run these nodes, changing this state. Learn to see that sentence and no graph will scare you.

Two kinds of wire

White wires are time: the order in which things execute, one pulse per event. Colored wires are data: values flowing into node inputs. Most beginner confusion is mixing these up. When you read any graph — yours, a classmate's, an agent's — trace the white wire first, then ask what data each node consumed.

The vocabulary for today

Reading before writing

From this week forward, half the Blueprints you touch will have been written by someone else — a marketplace asset, a template, or an agent acting through MCP. Studios already work this way. The skill that gets you hired isn't producing nodes; it's auditing them: what does this graph do, what state does it touch, and where would it break?

State of the Art · Agents get the keys to the editor

The Unreal MCP plugin you're using this week is first-party Epic — an MCP server inside the editor that Claude Code and other agents drive over local HTTP, with tools for actors, lighting, materials, Blueprints, and automation tests. It's Experimental: local-only, no auth, incomplete docs. Discussion: what new failure modes appear when an AI can touch your Blueprint graph directly?

Epic's Unreal MCP docs · VP Land analysis

2:45 · Guided lab A door, a pickup, a counter

Three classic interactions, built by hand, in order of difficulty. Everything the agent does at 4:00 you will have just done yourself — that's deliberate.

  1. Make the door actor

    Content browser → new Blueprint Class → Actor, name it BP_Door. Add a Static Mesh component (any door-ish mesh from your project or Fab) and a Box Collision component scaled to cover the approach area.

  2. Wire the trigger

    Select the Box Collision, add its On Component Begin Overlap event. Print String first — always prove the event fires before building on it. Walk into it in PIE.

  3. Animate with a timeline

    Add a Timeline node with a float track running 0→1 over about a second. Feed it into a Lerp driving the door mesh's relative rotation (closed → open) via Set Relative Rotation. Wire End Overlap to Reverse so the door closes behind you.

  4. Give it state

    Add a Boolean bLocked, default true, editable per-instance (Instance Editable). Branch on it before the timeline plays. Drop two doors in the level, lock one, and confirm they behave differently.

  5. Build the pickup

    New Actor Blueprint BP_Pickup: mesh, sphere collision, overlap event. On overlap: destroy the actor. Make it slowly rotate on Event Tick so it reads as "take me" — affordance is design, not decoration.

  6. Count what you collect

    The count has to live somewhere that outlives the pickup — put an Integer on the player (or Game Mode). From the pickup's overlap, get that owner, increment the count, then destroy. This is your first cross-Blueprint communication; casting gets formalized next week.

  7. Show it on screen

    Create a Widget Blueprint with a Text Block bound to the count. On BeginPlay (player), Create WidgetAdd to Viewport. Collect three pickups and watch the number move.

  8. Commit

    Push everything. The agent works on this exact scene next — the diff after its session is tonight's homework material.

4:00 · AI lab The agent wires a graph

Same problem, agent-assisted: describe an interaction in plain English, let Claude Code build it through Unreal MCP, then audit every node it placed. You just built these by hand, so you know exactly what right looks like.

Prompt 1 · Build from a spec
In this level, build a pressure-plate interaction: when the player stands on the plate near the locked door, the door unlocks and swings open over one second; when they step off, it closes and re-locks. Use a new Actor Blueprint and tell me every node you create.

With the editor running and ModelContextProtocol.StartServer active, watch the outliner and content browser while the agent works. Note whether it builds roughly your architecture — trigger, branch, timeline — or something stranger.

Prompt 2 · Make it explain
Open the Blueprint you just created and walk me through the event graph node by node: what each node does, what each wire carries, and what would break if I deleted it.

Now verify: open the graph yourself and check the explanation against the actual nodes. Agents narrate confidently even when the graph diverged from the plan — the graph is ground truth, not the prose.

Prompt 3 · The audit
Review your Blueprint for problems: events bound but never used, Tick doing work that could be event-driven, hard-coded references that break if I rename an actor. List issues, don't fix them yet.

Compare its self-review to your own read of the graph. Anything it missed — or invented — goes in your log. Then decide, node by node, what to keep.

Before you call it done

5:15 · Crit / share Graphs up

Screens up, event graphs visible. Each person shows one interaction — hand-built or agent-built — and the room reads it cold: trace the white wire out loud before the author explains anything. Where the room's reading and the author's intent diverge, that's this week's lesson made visible.

Homework — due before Week 9

TaskDeliverable
Finish annotating the agent-built Blueprint: comment boxes over every functional cluster, in your words.Annotated graph committed, plus screenshots in your AILOG.md entry.
Build one new interaction of your own design (elevator, light switch, secret wall — your call) using a trigger, a timeline, and state.Working Blueprint in your sandbox repo, demoed at next week's open.
Project 2 final push: Architectural Visualization is due at next week's crit.Hero stills, flythrough, and pipeline notes ready to show; AI development log current.

Resources