I was optimistic that my solution of eliminating all spatial and temporal features from the design would work well, but I ran into an obstacle almost immediately. In order for Actor A to ‘go see’ Actor B, the verb must move both actors to their common stage. That’s a little too jerky for my taste. What if Actor B is in the middle of something when he’s suddenly teleported away?
Here’s another approach: there are no stages at all. Actor A creates a plan to visit Actor B, and that verb simply waits to execute until Actor B is free to see him.
No, that’s no good; what if Actor E wants to visit Actor A while A is waiting to see B? This is just too messy. THe nice thing about stages is that they make chance meetings possible and handle them neatly.
So it’s back to Square One. We revert to the idea of conventional stages but preserve the limit of two actors per stage.
It turns out that the main objection to the old way was the fact that the player sees a speech bubble that implies that somebody is telling him about an event whose subject is either Fate or the player. The solution to that problem hit me last night in bed (yes, I continue to think about these things whenever I have a free moment.)
The solution is to use three different bubbles. The original speech bubble will be used when somebody speaks to the player. There will be a thought bubble for the player as he is forming his command (Thanks to Francisco Baro for that idea), and for an event with odd subject, we use a simple rectangle. Like so: