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).

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).

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.

Receive and Assign hazard

Receiving a message, and then assigning a value and then writing a conditional based on that value is that something that is quite a normal, conceptual pattern – but in Protopie it will often not work as expected. This is because responses to Protopie triggers all happen simultaneously and not in the order written.

Use Variables

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

Why use Protopie?

There are many prototyping tools out there, so what makes Protopie special – how is it different?

Arrays and multiple parameters

Protopie seems limited since a message can be sent using only one value as a parameter. However, arrays (written as text strings and manipulated by parseJson) can be used for contexts where multiple parameters need to be passed.

Origami Studio, Figma and others

How do these other popular platforms compare?

Use overridable variables in components

By using an overridable variable in your components you can have many instances of the component in your scene, but with different values for the same variable.

Sending a message to another scene

Playing with time

Put code inside components

Moving between Figma and Protopie

Origami Studio, Figma and others

Use Components

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

info@peoplecentereddesign.org

© 2026 David Gilmore