Skip to content

UX Prototyping & Protopie

  • Principles
    • Educational
    • Figma Integration
  • Patterns, Pitfalls, Ploys
    • Patterns
    • Pitfalls
    • Ploys
  • More …
    • People-Centered Design
    • Thinking about AI
  • Principles
    • Educational
    • Figma Integration
  • Patterns, Pitfalls, Ploys
    • Patterns
    • Pitfalls
    • Ploys
  • More …
    • People-Centered Design
    • Thinking about AI

Sending a message to another scene

Can you make something happen elsewhere?

For all the power of message sending, only the current scene is active at one time and there is (currently) no possibility of sending a message to a different scene.  Of course, that is unlikely to be your main intent, but it is easy to have a message that is sent to the current scene, or even to a Connect’d pie, and then to fall for the erroneous assumption that another scene in your pie also knows what these others know. When you implicitly make this assumption it can prove to be very challenging to uncover the flaw in your pie.

So, what should you do if you want another scene to know about events in another scene?  Variables are the solution – use ‘all scenes’ flag variables to indicate some event  and then when you jump to the relevant scene you can consult that variable and take steps to tweak the scene accordingly (and reset the flag variable in the process).

Use Variables

Variables are very powerful simplifying tool and they do not seem to have any impact on Protopie's performance.

Sending messages to two places

Whilst it is important to be careful in sending messages to the right places, it is also very powerful to send a message to two different places at the same time (or maybe with a small delay).

How to inspect variables inside a component

Even all-Scenes variables are not accessible inside a component. And this can lead to hard to find errors when a variable with the same name is used in a component, but its value is not sync'd with the scenes.

Good Prototyping Practice

IDEO's 3R prototyping principles from the late 1990s still apply - "Right, Rough, Rapid" but in the UX and UI space they are easily misunderstood.

Put code inside components

Protopie code can get complex and hard to follow surprisingly quickly. Putting as much code as possible within your components can keep your main scenes simpler and cleaner.

Playing with time

A message sent to the current scene will be received by the object that sent it. But a message sent to Protopie Studio (Connect) will not be received by the pie that sent it. B ut what if there is nothing out there to respond to it?

Origami Studio, Figma and others

How do these other popular platforms compare?

Keep trigger and response names visible

It is very important to annotate your code with what it is actually doing, but keeping the trigger and response names helps someone new to the project (or you in three month's time.

Distinctive initial variable values

Rough, Rapid, Right

Arrays and multiple parameters

Check if Protopie Connect is present

Moving between Figma and Protopie

Use overridable variables in components

  • Welcome
  • What’s New?
  • About
  • Welcome
  • What’s New?
  • About

info@peoplecentereddesign.org

© 2026 David Gilmore