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

Playing with time

How to know whether something occurred

The message sending protocols between a scene and a component, or between pies (through Connect) are extremely powerful, but not entirely consistent. A message sent from a component to the current scene is received by itself, but one sent to Connect is not received by itself. How can you trigger a response if no-one has responded?

There are a variety of ways:-

  1. send a message to your self with a delay of 2-3 seconds after you sent to message to Connect. If you get a response from Connect then set a. flag variable, and when you receive the message from yourself, consult (and reset) that variable.
  2. Use a variable in a similar way – assign it a value with some delay (2-3 seconds) and then have a detect trigger  on it, which checks the flag variable in the same way as the message sending (above).

In general, set an event to happen at some delay after sending your message to Connect and then use that event to see if a response has come in from Connect.

Sending and receiving mismatched messages

You can send messages in different ways, but Protopie requires you to receive them in the matching way. A common (and easy) mistake is to send a message to a 'parent' while wanting to receive it from the current scene.

Use Variables

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

The wrong variable type

This pitfall is not a big deal, but it can waste you time as you try to track down why your variable seems to have the wrong value (or no value). It can also bite you in a formula where your variable is of the wrong type for the formula.

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

Origami Studio, Figma and others

How do these other popular platforms compare?

Rough, Rapid, Right

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.

Distinctive initial variable values

It can sometimes be very helpful to use -99 and "null" for the initial values for your number and text variables.

Playing with time

Sending and receiving mismatched messages

Good Prototyping Practice

Origami Studio, Figma and others

Distinctive initial variable values

Viewing variables within Components

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

info@peoplecentereddesign.org

© 2026 David Gilmore