McGribble’s
← All docs

Art direction

Wet asphalt, one warm window, and a sign that has been on since 1987.

The establishing image

A roadside franchise at eleven at night, in rain, somewhere with pines and a water tower. Pink and cyan neon reflecting off the car park. One window lit warm amber with booths visible through it. A squad car idling on the shoulder with its lights on, doing nothing about anything. Three regulars queueing outside who are not from here and are not commented on.

Every other art decision is downstream of that image. The rule: the surreal element is never lit dramatically. An alien in the queue gets the same flat fluorescent treatment as the bin.

Palette

TokenValueJob
Night#050c11Wet asphalt, the ground of everything
Night 2#0a1a20Panels, alternating sections
Mist#16323aTreeline, distance, lines
Neon#ff2d8fThe sign. Brand. Used sparingly enough to still mean something.
Cyan#24e5ffTube light, secondary neon, interactive states
Window#ffb648The one warm thing in the frame
Phosphor#39ff88The KDS, and only the KDS
Siren#ff4a4aRush state, incinerate, the squad car

Neon is emissive, never a fill: colour arrives as glow, bloom and reflection on wet surfaces, not as large flat areas. The palette is dark, so all HUD text is checked to WCAG 2.2 AA and the CRT look is built from scanlines and bloom rather than from lowering contrast.

Typography

  • Display — Space Grotesk. Techy, slightly wrong, unpretentious.
  • Body — Inter. Gets out of the way.
  • Label / HUD / receipts — JetBrains Mono. Everything the machines say is monospaced: tickets, prices, timers, dockets, seeds.
  • The sign — Monoton. One typeface, one job, only ever inside the sign.

The typographic joke is the split: humans get a humanist sans, the franchise's machinery gets a monospace, and the machinery is always the one making the absurd claim.

The kitchen: HUD over bench

The KDS is not a screen you switch to. It is a phosphor-green overlay burned across the live 3D bench — the cook works underneath their own ticket rail, and never looks away from the food.

  • Tickets sit as translucent cards with scanlines, a countdown and a bump index (F1–F8).
  • The active ticket brightens; the rest dim to about 40% so the bench reads through them.
  • The overlay obeys the CRT vocabulary: curvature at the edges, phosphor bloom, a flicker at long intervals, and text that never drops below AA contrast against whatever is behind it.

The scatter

Claiming a new ticket with a half-built plate on the bench drops physics on every placed ingredient and throws them. A spider into the fryer, a peg into the ceiling light, sauce across the camera lens. About 1.4 seconds, one loud noise, nothing recoverable.

It is deliberately over-scaled — the register is physics-sandbox slapstick, the kind of thing where you microwave something you were warned about and the room reacts more strongly than any real room would. It teaches the rule in a single demonstration and never stops being funny. Under prefers-reduced-motion the plate simply clears.

Ingredients

Twelve primitives, chosen so that none of them are food and all of them are plausible objects in a workplace: Cobalt Spider, Hardwood Peg, Speed Stick Secret Sauce, Event Horizon Patty, Screaming Gherkin, 9V Battery Acid Fizz, DOS 3.1 Floppy Crisp, Ooze Gelato Glaze.

They are simple 3D primitives with strong silhouettes, because the plate must be readable at phone size and on a stream at low bitrate. Silhouette does the work that texture cannot afford to.

The fauna

The bench has residents: the Ceiling Clinger, the Vent Tick, the Bin Barnacle. They scuttle, they react to the hairdryer, they occasionally end up plated — sometimes by the cook, sometimes by their own initiative.

They exist for ambient incident: the kitchen should feel like it has a pest problem that management has been told about twice. They are original designs in the lineage of physics-sandbox pest comedy — the tone is the homage, and no character, asset, name or likeness is taken from any other game.

Cook stages

Raw → Sizzling → Golden → Seared → Crispy Void → Burnt Singularity.

Each stage has a name, an emissive colour, and a silhouette change, so the state survives colour-blindness, a bad monitor and a small screen. Burnt Singularity is a hole. It still gets served.

Sound

Everything is synthesised at runtime through the Web Audio API — no downloaded audio, which keeps the build tiny and the hosting free.

  • K-OWL 88.5 FM: generative lo-fi electric piano, vinyl dust, chill percussion. It never comments on events; it is just the radio the franchise leaves on.
  • SFX: a 1500W hairdryer turbine, skillet sizzle, sauce squirt, dot-matrix receipt screech, bump-bar beep, pneumatic chute whoosh, one cosmic owl hoot, and the scatter.
  • Every sound has a visual counterpart. The game is fully playable with the volume at zero.