Interstitial Stories


Here’s the first interstitial story from the original Trust & Betrayal (1987)

Since you're in the neighborhood, you decide to stop by Feslym's house to pay your respects to his widow;  it is a gesture of respect for the Shepherdship and a way of showing your concern for her welfare.  Kira is a tightly-knit community and the tradition of looking after widows and widowers dates back to the earliest days of the colony.  You step onto the porch and open the outer door; to your surprise, % opens the inner door, heading outward, at exactly the same moment.  The two of you stare at each other for a second; one must yield the way to the other.  What do you do? \
\
  Wait for and go along with whatever action % takes.
  WI+99-BF5P% smiles and steps aside for you.
  D4+dF1P%barges past you without saying a word.
\
Demand that % step aside.
  IT+50-BD12-dA4-aF4P% steps aside without argument.
  50-BA4-aF1P% refuses to acknowledge your demand and brushes past you.
  A8-aD4+dF2P% tells you to go to hell and pushes you aside.
\
Step aside, hold the door open, and say, "After you, %!"
  DI+99-BA8+aF5P% smiles sweetly and thanks you.
  F8P% sneers triumphantly and barges past you.
\
Barge past %, pushing $ aside.
  D2/E+BD16-dF4P% meekly steps aside.
  50-BA4-aF2P% glares at you and stands ^ ground.
  D8+dA8-aF2P% shoves right back and stares you down.
\

Explanation
This is broken up into sections by the backslash character ‘\’. The first section presents a tiny story that ends with a set of options. Most of the introductory paragraph is conventional; the only oddity is the ‘%’ character. That is a special character that is translated to mean “the name of the other character in this story”. 

But it gets a lot hairier with the next four sections, each of which presents the player with a single option. The first line in the first option is “Wait for and go along with whatever action % takes.” This is the description of the option that is presented to the player. The next two lines are each comprised of three components mashed together. The first component is the effect of the player’s choice of this option on the attitude of the other player. This is calculated in a secret programming code that is so difficult to understand that I cannot recall it. The capital letters stand for interpersonal relationship values. The first seven characters are “WI+99-B” and they mean something like “take the other guy’s fear of you, then take the other guy’s admiration for you, add them together, and then take 99 and subtract it from the previous sum. If the result is less than zero, then jump to the next option. If the result is greater than zero, then perform the remaining calculation: “F5”, which means, well, I can’t remember. Lastly comes the “P” symbol, which means “show the remaining text to the player as the result of his decision.” 

Fixing this
Obviously, this method is entirely too cryptic to be useful. It was necessary back in 1987, when I had to minimize the amount of memory used for everything. Nowadays, I would want to present the idea in some kind of markup language like XML or HTML. Here’s a wild stab at the problem, meant only to illustrate what the result might look like:

<intro>Since you're in the neighborhood, you decide to stop by Feslym's house to pay your respects to his widow;  it is a gesture of respect for the Shepherdship and a way of showing your concern for her welfare.  Kira is a tightly-knit community and the tradition of looking after widows and widowers dates back to the earliest days of the colony.  You step onto the porch and open the outer door; to your surprise, <Name> opens the inner door, heading outward, at exactly the same moment.  The two of you stare at each other for a second; one must yield the way to the other.  What do you do?
</intro>

<Option>
   <Menu Text>Wait for and go along with whatever action <Name> takes.
   </Menu Text>
   <Response if Affection of Object for Subject less than -0.2>
      <increase Dominance of Object for Subject by 30%>
      <Output> <Object Name> barges past you without saying a word </Output>
   </Response>

There would be more to this code, of course, but this shows how the system would be programmed. It would be close to natural language with just enough code to make it readily parsible. I really don’t expect the actual system to look like this, but this is the style I’m aiming for. 

November 6, 2014