← Human in the Loop

HUMAN IN THE LOOP / BY VALLYSEED

A human point
of view.

The HITL style pack. Frames, characters, and the rules that bring our conversations to the screen.

14 FRAMES · 42 EXPRESSIONS · 3 FORMATS · v1.10.0

Human in the Loop / By VallySeedDownload the complete pack ↓PNG assets, local fonts, guides, and Hyperframes starters.
ZIP · 68 MB

HITL character expression guide

Version 1.1.0. 42 individually regenerated transparent PNGs: 21 per host.

The original sheets remain unchanged. These derivatives were regenerated at the user's request. The files are packaged for review and reuse; likeness remains subject to host review.

Expression selection

Within illustrated Oscar reflective opinion/explainer beats, use oscar.front.thinking by default, per his 2026-10-28 preference. For podcast video production, the camera/B-roll direction approved on 2026-10-30 lives in FRAME.md, under Podcast video production. The portrait complements real host footage. It is an illustrative pose, not a measured emotion label; keep another expression when the brief or scene calls for it.

ExpressionUse it forKeep in mind
Neutral / listeningDefault listening, introductions, speaker identification, and resetting after a reaction.A neutral face does not establish agreement.
Happy / smilingWarm welcomes, thanks, and a positive result that the host actually supports.Do not imply endorsement of a product or claim absent from the source.
LaughingA joke, a playful aside, or laughter present in the conversation; keep the reaction brief.Avoid inventing laughter or using it to mock a serious event.
ConfusedAn unresolved question, unclear terminology, or a workflow that needs explanation.Resolve it with an explanation rather than making the subject look unintelligent.
SkepticalSignal or Noise, a claim being checked, a missing source, or an explicit challenge in the discussion.Do not fabricate distrust or an accusation on a host’s behalf.
Shocked / surprisedAn unexpected result or surprise explicitly discussed by the host; a short reveal beat.Keep it out of routine facts and sensationalized thumbnails.
AnnoyedA minor repeated friction point or irritation the host actually describes.Keep the target and strength of the reaction faithful to the conversation.
Angry / frustratedA clearly expressed strong objection or frustration; use sparingly and with source context.Do not intensify disagreement into anger or attach it to a fabricated quote.
ThinkingPreferred character portrait within illustrated Oscar reflective unpopular-opinion and explainer beats; also weighing tradeoffs or posing a question. FRAME.md owns the camera/B-roll video production default.Illustrative thinking pose, not an asserted emotion in the live footage. Use another expression when the brief or scene calls for it.
ExcitedAn anticipated possibility, genuine enthusiasm, or a confirmed achievement in the discussion.Enthusiasm is not proof of a product’s capability.
Facepalm / embarrassedSelf-correction, an admitted mistake, or a light comic failure discussed by the host.Avoid assigning blame or ridicule to a person who was not the target in the source.
Smug / sarcasticAn unmistakably ironic or dry line; pair it with enough context to preserve the joke.Do not turn a factual statement into an implied insult.
WorriedA stated risk, uncertainty, or possible downside; lead into the evidence and mitigations.Distinguish a possible risk from an event that has happened.
Unimpressed / deadpanA deliberately flat reaction, anticlimax, or dry assessment present in the conversation.Do not imply the host dismissed something they actually endorsed.
Explaining / speakingNo Jargon Required, a step-by-step explanation, or guiding attention to a diagram.This is a still expression, not an aligned mouth shape or automatic lip-sync rig.

Angle and placement

  • Use front views for direct address and either side of a two-host composition.
  • Three-quarter-right portraits face viewer-right. Place them left of the explanation they look at; choose a front portrait on the right.
  • Use a fixed square box and object-fit: contain. Preserve the complete scalp, ears, glasses, beard, facepalm hand, and shoulders.
  • Place the character beside the focal idea, outside the source/caption area. Reset unrelated reactions to a listening pose; retain Oscar’s thinking pose through a reflective opinion/explainer beat.
  • Change whole portraits with a short anticipation and settle. Avoid distorting individual facial features or crossfading two fully visible faces.

Use in Hyperframes

Choose an asset in assets/characters/catalog.json, then put its file path directly in a static image element. The catalog is read during authoring, not fetched during a render.

<img id="oscar-reaction"
     src="assets/characters/expressions/oscar/front/skeptical.png"
     alt="Oscar, skeptical illustrated reaction"
     style="width:420px; height:420px; object-fit:contain" />

For an editable swap, bind the image source to a declared string variable with data-var-src. Give each timed wrapper a stable ID and animate its child. Predeclare all visible image assets for deterministic rendering.

A change of expression is a keyed image replacement: old portrait fades out, then the new portrait settles in. Reset unrelated reactions to listening, while keeping the preferred thinking pose through Oscar’s reflective beats. It does not create speech or mouth movement.

Rig and source scope

These are complete head-and-shoulders images. The draft mouth and rig-component atlases have not been aligned or validated, and are excluded from automatic lip sync. The 36 original full-body poses are included as references with source draft status; three Matt files retain explicit cleanup flags.

The canonical mapping uses the visible artwork: Oscar's extra front expressions come from oscar_expression_sheet_v1.png (the sheet containing facepalm); the similarly named front 3x2 sheet is an alternate six-expression set, not six new emotions. Matt's extra front expressions come from matt_expressions_front_3x2_v1.png.

Existing full-body poses

The pack also carries 36 original pose references (18 per host), copied unchanged. They retain source-draft status. Matt's marker and computer poses are flagged for edge/detail cleanup and are not selected as clean default cutouts.

PoseSuggested situation
standing presentingIntroduce a topic or hand the viewer into an explanation.
pointing leftDirect attention to the diagram or source on viewer-left.
pointing rightDirect attention to the diagram or source on viewer-right.
pointing toward viewerAsk the viewer a question or give one clear next step.
hands on hipsA confident setup before evaluating an idea.
arms crossedA stated reservation or considered assessment.
shruggingAn unresolved tradeoff or uncertainty in the conversation.
facepalmingAn admitted mistake or a light comic failure.
sitting at computerIntroduce a workbench demonstration or practical workflow.
typingShow an implementation or coding step tied to the actual discussion.
holding whiteboard markerWalk through a diagram after reviewing the source cutout edges.
holding clipboardA checklist, review plan, or quality gate.
holding smartphoneA mobile app example or device-related workflow.
thumbs upAn explicitly positive verdict supported by the host discussion.
celebratingA confirmed achievement or milestone.
arguing disagreeingA real disagreement or debate, without intensifying its tone.
looking at other characterA conversational handoff or listening beat.
looking up at infographicGuide attention to an explanation above the character.

Asset index

IDAnglePNG
oscar.front.neutralfrontPNG
oscar.front.happyfrontPNG
oscar.front.laughingfrontPNG
oscar.front.confusedfrontPNG
oscar.front.skepticalfrontPNG
oscar.front.shockedfrontPNG
oscar.front.annoyedfrontPNG
oscar.front.angryfrontPNG
oscar.front.thinkingfrontPNG
oscar.front.excitedfrontPNG
oscar.front.facepalmfrontPNG
oscar.front.sarcasticfrontPNG
oscar.front.worriedfrontPNG
oscar.front.deadpanfrontPNG
oscar.front.explainingfrontPNG
oscar.three-quarter-right.neutralthree-quarter-rightPNG
oscar.three-quarter-right.shockedthree-quarter-rightPNG
oscar.three-quarter-right.skepticalthree-quarter-rightPNG
oscar.three-quarter-right.laughingthree-quarter-rightPNG
oscar.three-quarter-right.confusedthree-quarter-rightPNG
oscar.three-quarter-right.excitedthree-quarter-rightPNG
matt.front.neutralfrontPNG
matt.front.happyfrontPNG
matt.front.laughingfrontPNG
matt.front.confusedfrontPNG
matt.front.skepticalfrontPNG
matt.front.shockedfrontPNG
matt.front.annoyedfrontPNG
matt.front.angryfrontPNG
matt.front.thinkingfrontPNG
matt.front.excitedfrontPNG
matt.front.facepalmfrontPNG
matt.front.sarcasticfrontPNG
matt.front.worriedfrontPNG
matt.front.deadpanfrontPNG
matt.front.explainingfrontPNG
matt.three-quarter-right.neutralthree-quarter-rightPNG
matt.three-quarter-right.shockedthree-quarter-rightPNG
matt.three-quarter-right.skepticalthree-quarter-rightPNG
matt.three-quarter-right.laughingthree-quarter-rightPNG
matt.three-quarter-right.confusedthree-quarter-rightPNG
matt.three-quarter-right.excitedthree-quarter-rightPNG