| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

Boxes

Page history last edited by LauraJMixon 15 years ago

These are temporary places to store intermediate values; they save you time and tedium. There are three kinds of boxes:

 

  • Verb-level boxes
  • Role-level boxes
  • Global (storyworld-level) boxes

 

Boxes hold onto a particular item for you within a given scope, or level. (For instance, a RoleActor box holds onto a specific Actor throughout the Role. A VerbActorBox holds onto a specific Actor designation for use throughout that Verb's scripts, within all its roles. A GlobalEventBox will hold onto a particular Event for use throughout the storyworld as a whole.) Boxes are useful when you have a fairly hairy script, or a script that involves HistoryBook lookups. For instance, the PastActor of an Event with a bunch of different parameters, which you want to refer back to multiple times.

 

There are Boxes for each of the major data types: Actors, Props, Stages, Events, and Verbs, as well as one BNumber box.

 

There are also four Global Box sets, again with one Box for each of the listed data types. These Boxes never forget the values you put into them; if you store something into a Box during one calculation, you can come back to it much later in a completely different calculation and it will still have that value in it.

 

Here is an example for how to use Boxes. It is not uncommon to use the same script for an Inclination and the Desirable script for a key WordSocket. Suppose you have a character who might want to run a con, and must choose both whom to run it on, and how likely he is to run the con, based on how gullible the intended target is. In a case like this, you can use a single script to both select a desired DirObject for the scam, and to determine how likely the ReactingActor is to run the con on that DirObject.

 

These two uses are confined to a single Roleconman—so the appropriate Box to use would be a RoleBox. In fact, in this example, you need two RoleBoxes: one to pick the proposed DirObject (RoleActorBox), and another to give the BNumber corresponding to ReactingActor's perception of the DirObject's gullibility (RoleBNumberBox).

 

Before you can use a Box in your scripts, you must first fill it. You do this either in Consequences (for a VerbBox) or Emotional Reactions (for a RoleBox). Once it is filled, it becomes available throughout the rest of that Verb or Role, respectively.

 

In our example, the FillRoleActorBox script will look like this:

 

PickBestActor:

   NOT

        AreSameActor of:

              ReactingActor

             CandidateActor

   BInverse of:

        pGullible_Skeptical of:

             ReactingActor

             CandidateActor

 

This picks the Actor who the conman believes is the most gullible (note that we eliminated the conman himself from his gullibility consideration. Also, to get the most gullible Actor, we needed to invert the Attribute).

 

Next you would choose FillRoleBNumberBox. The script would look like this:

 

pGullible_Skeptical of:

   ReactingActor

        RoleActorBox

 

This fills the Box with a BNumber corresponding to the conman's perception of his chosen target's gullibility.

 

Now you can use the following script for the Inclination to run the con:

 

RoleBNumberBox

 

For the DirObject Acceptable WordSocket, you would use:

 

AreSameActor:

   CandidateActor

   RoleActorBox

 

Ta-da! No muss, no fuss.

 

Where Boxes really save you time and effort is when you have a script that involves numerous Attributes, Lookups, and PickBests, which you use multiple times within a given Role or Verb. If you intend use a script more than once, use Boxes.

 

Here's how you know when to use a VerbBox versus a RoleBox. If the item you want to use in multiple places is confined to a single Role, you must use a Role box. If you intend to use that Box throughout the Verb, use a VerbBox.

 

Global Boxes work in a similar way to VerbBoxes and RoleBoxes, but they apply to the storyworld as a whole. Be forewarned: it is all too easy to get into trouble using Global Boxes. We strongly urge that, if you want to use any Global Boxes, you decide at the very beginning exactly what that Global Box will hold and never, ever change that in mid-stream. Otherwise, you'll get confused about the meaning of the Global Box and create monster headaches for yourself.

 

Previous Tutorial: Sappho

 


Creative Commons License  This tutorial by Storytron, Inc. is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

 

Comments (0)

You don't have permission to comment on this page.