Friday, September 6, 2013

Introduction to building Expressions: Using the Elements.



Edit (10/2/13): I changed LIMIT back to BLOCK in the examples, and changed the numbers to reflect the current state of the game. 

If you want to understand the meanings of the Elements used here, don't look back to the introduction to the Elements series- those are only still on the blog as an archive of the development of the game. You'll always find current Element definitions listed here.
Now that you get the gist of the Elements, it's time to introduce you to building Expressions. Seeing how they work in context should make understanding the system easier. 

Throughout this post, you'll learn the basics of Expression creation, along with "Tribute Notation", which is the syntax behind Tribute Expressions.

As you'll see below, I've deliberately chosen a complex example for this post. Don't be intimidated. I made this choice to show the capability of the system to model your craziest ideas, and to explore a wide array of concepts. I'll do my best to explain everything that's happening. 

If you want to try building Effects- don't try to base them on the Elements; base them on your idea, and use the elements as components to model that idea, at least at first. 

Let's get started.

What are Expressions?

An Expression is one set of instructions for Effects that occur in relation to each other. Using the example  from the first post in this blog, an Expression might be:

MANEUVER "Body": { RELAY "Body" via CHANNEL ("Air") [ 5 ] }

Example Time: The Shield of Retribution.

Imagine that in a fantasy campaign you wanted to build a shield called the "Shield of Retribution" with a mirror finish, which upon reflecting the image of someone striking it, would transform them into a pig. 

First, break the concept down into its basic Properties in the order of their relevance or occurrence like so: 

1. It's a physical object- it has a HOUSE located in The World. 

2. It's a SHIELD that defends the Body. 

3. It activates (TRIGGERs) when a character strikes it (makes physical Contact with an ATTACK). 

4. Once TRIGGERed, it delivers an ATTACK that...

 3. Attempts to turn the attacker into a pig. (EXCHANGE "Body") 

For this example, let's not require the attacker to see his or her own reflection, though that is possible once we get to the rules I'll cover in an upcoming post.  

Let's start building it. 

1. It has a HOUSE in The World.

Tribute denotes Frames like HOUSEs as boxes, such as tables in a word processing program. If fact, that's how they will be presented all official content. 

Frames contain information on their Type, name, the Frame they're contained in, spaces for the Attributes they have, their Rank, space for any Effects that have been placed upon them directly, and a large space for listing their contents. 

Our (empty) example would look like this so far: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:



I used 5 as the Rank here to represent the health level of the HOUSE, it's just a placeholder until I figure out the math. I think I might have to use numbers like this rather than boxes to allow for a general Frame Template on character sheets. Moving on. 

 2. It's a SHIELD that defends the body.

It's a SHIELD, but it's also an IMPLEMENT, because it's not an innate Power and it can be taken away. You can build "compound Powers" by separating the Power types with a dash. They still function as one verb (or noun), but the meanings of the two are combined. 

Powers and their Targets followed by a colon are written in bold, followed by a left curly brace like so:

SHIELD-IMPLEMENT "Body":  {

As you can see, the Name of a Target is surrounded by quotes.  "Body" is a specific type of HOUSE in the campaign in question.  Placing what we have in the Frame, we get: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:

SHIELD-IMPLEMENT "Body": {

As an actual shield used in combat, it needs to be able to defend its wielder. It needs to BLOCK damage (VOID and SLICE) Effects. You'd write this after the open curly brace like so: 

BLOCK ( VOID, SLICE "Body" ) [3]. }

BLOCK is the verb, shown by the fact that is comes first, and the rest is collectively considered a noun.  The parentheses indicate that you're BLOCKing an Effect.


The two things that the BLOCK Function Targets are separated by a comma, to indicate that both of them are covered. "Body" is the Target HOUSE of the potential VOID or SLICE.What this property means is: ' BLOCK the Effect of VOID "Body" or SLICE "Body".  '


[3] is a placeholder value indicating the Rank of the BLOCK effect. 

Finally, the Effect is ended with a period that signifies the end of the statement, and a right curly brace to indicate the end of the Effect. 

The Effect so far looks like this: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:


SHIELD-IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }

For a mundane SHIELD, this would be considered done, but our order is much taller. Let's get to the fun stuff. 

3. It activates (TRIGGERs) when a character strikes it (makes physical Contact with an ATTACK).

This is the beginning of the interesting part of the Effect. It calls for a TRIGGER. When a TRIGGER activates an Effect based on a stimulus, rather than being used at will against another Target, the notation is: 

TRIGGER  *some Effect* on *some situation* [*Some Rank*]. }

TRIGGER is a verb here, because it comes first in the action. It means "Activate".

*Some Effect* stands for the Effect that is going to be TRIGGERed. We'll leave it blank for now because the Effect will be the transformation ATTACK, and we haven't gotten to that stage yet. 

The word "on" is one of the non-element words that are allowed in Tribute, in order to clarify an Expression's meaning. It means that the TRIGGER  is activated when a TRIGGERing condition occurs.

*Some situation* stands for the TRIGGERing condition, in this case, CONTACT with an ATTACK in The World. The World is the HOUSE of physicality. This segment would look like this: 

( CONTACT ATTACK in "The World" )

[*Some Rank*] is the Rank of the TRIGGER, not the contained Effect. It determines the modifier to any Tests that oppose activation. Let's just throw the number "5" in there for now. 

...and the Effect so far would be placed into the Frame like this:

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:


SHIELD -IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }


SHIELD "Body": { TRIGGER  *some Effect* on ( CONTACT ATTACK in "The World" ) [5]. }

4. Once TRIGGERed, it delivers an ATTACK that ...

This is the beginning of the *Some Effect* portion of the Expression. This Power contains another Power. It's a SHIELD that contains an ATTACK. 

Powers within Powers are placed inside parentheses. Inside the parentheses, they use the same exact notation rules as they would outside of them. The parentheses indicate that the term inside is to be treated as a discrete Effect of its own, rather than simply acting as a collective noun.

They begin with the Power's Type and its Target followed by a colon, and written in bold. Next comes the action that the Power takes, written within curly braces, like so: 

 ( ATTACK "Body": { *some action* ) }

This gives us: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:


SHIELD -IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }

SHIELD "Body": { TRIGGER ( ATTACK "Body": { *some action* ) }
on ( CONTACT ATTACK in "The World" ) [5]. }

3. ...Attempts to turn the attacker into a pig. (EXCHANGE "Body") 

The ATTACK Power contains a property- the ability to transform the attacker into a pig. This calls for the EXCHANGE Function. Here's the full property:

EXCHANGE Target "Body" for "Pig Body" from "Pig Bodies" at [1:1].

Instead of a Rank, an EXCHANGE Function's value is listed as a ratio- an EXCHANGE Rate. One part might be confusing now:

from "Pig Bodies"

If you remember from the article on Functions, the EXCHANGE element can't simply convert one thing to another, it trades one asset for another. In other words, you need to have ACCESS to an asset that you trade away, in order to receive something else. In this case, you EXCHANGE the body of the enemy (Target "Body") for a pig's body. But where does this pig's body come from? The answer is the Shield of Retribution itself. I'll explain more about this in the next section. 

The Shield of Retribution now looks like this: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:


SHIELD -IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }

SHIELD "Body": { TRIGGER ( ATTACK "Body": { EXCHANGE Target "Body" for "Pig Body" from "Pig Bodies" at [1:1]. ) } on ( CONTACT ATTACK in "The World" ) [5]. }

The Magic Pig's Body. 

In Tribute, to EXCHANGE a human body for a pig's body, you need a pig's body, at least one that exists as potential.

You'd look in the monsters and creatures section of the rules, or use your own pig stats, and record the pig's "Body" HOUSE somewhere. 

You don't need to place the entire HOUSE for a pig's body inside the Shield's Frame, instead, you'd reference a named POOL somewhere in the Shield's Frame like this: 

POOL: "Pig Bodies"

Note that the Frame type is underlined. Next, you'd reference the pig body's HOUSE in the POOL in the same way. This allows the Shield of Retribution to turn one Target into a pig at any one time, and to "contain" the victim's human body. Picture the victim's image appearing in the mirror finish of the shield...

To give the shield the ability to change multiple Targets into pigs, you'd place multiple pig bodies into the POOL, or give the POOL the Power to CONSTRUCT pig bodies when one is depleted. 

Each time you changed a victim, you'd record their specific body in a POOL designated "Victims" or something similar, as follows: 

"Body" of Garnak

Finally, if you have limited uses of the ATTACK, you'd want to build an Effect into the Shield that could change a Target back, perhaps upon the Target's death, like so: 

MANEUVER "Shield of Retribution": { TRIGGER ( ATTACK "Body": { EXCHANGE "Pig's Body" for "Body" of Target from "Victim Bodies" at [1:1]. ) } on VOID "Pig's Body" > (5) . }

If you followed the rest of this post, only the last part of the Expression may require a bit of explanation. I'm referring to this part: 

VOID "Pig's Body" > (5)

It means to TRIGGER the Effect when the pig's body has taken 5 VOID or more -our arbitrary value for the Health boxes in a HOUSE. This covers SLICE damage too, because a SLICE leaves a VOID on whatever it cuts. You may not have seen it, but I explain this in the updated post on Functions.  

The Shield of Retribution would now look like this: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS:
COUNTER:
FORCE:
Rank:    / 5
Effects:


SHIELD -IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }

SHIELD "Body": { TRIGGER ( ATTACK "Body": { EXCHANGE Target "Body" for "Pig Body" from "Pig Bodies" at [1:1]. ) } on ( CONTACT ATTACK in "The World" ) [5]. }

MANEUVER "Shield of Retribution": { TRIGGER ( ATTACK "Body": { EXCHANGE "Pig's Body" for "Body" of Target from "Victim Bodies" at [1:1]. ) } on VOID "Pig's Body" > (5) . }

POOL: "Pig Bodies"

POOL: "Victim Bodies"

Let's Plug it In.

The shield now needs some Attributes. Without them, it won't be able to make Tests. ATTACKS require opposed rolls (Tests), and rolls are governed by Attributes. In addition, any action can theoretically be opposed. 

Some of you might remember (and I don't blame you if you don't) that I said that a mundane SHIELD would be done after adding the BLOCK effect. The reason it didn't need Attributes at that stage was because IMPLEMENTs allow you to use your own Attributes to make Tests with them.

Looking at the Functions in use in the HOUSE, we find BLOCK, TRIGGER, and EXCHANGE. 

BLOCK is governed by COUNTER. 

TRIGGER and EXCHANGE are governed by ACCESS. 

This means that we need to buy some COUNTER and ACCESS. Since I don't have costs worked out, let's set them both at +3.

And finally, we have our completed Shield of Retribution: 

HOUSE
"Shield of Retribution"
"The World"
Frame Type
Name
Container
ACCESS: +3
COUNTER: +3
FORCE: Ø
Rank:    / 5
Effects:


SHIELD -IMPLEMENT "Body": { BLOCK ( VOID, SLICE "Body" ) [3]. }

SHIELD "Body": { TRIGGER ( ATTACK "Body": { EXCHANGE Target "Body" for "Pig Body" from "Pig Bodies" at [1:1]. ) } on ( CONTACT ATTACK in "The World" ) [5]. }

MANEUVER "Shield of Retribution": { TRIGGER ( ATTACK "Body": { EXCHANGE "Pig's Body" for "Body" of Target from "Victim Bodies" at [1:1]. ) } on VOID "Pig's Body" > (5) . }

POOL: "Pig Bodies"

POOL: "Victim Bodies"

That was a long post, I know, but I tried to explain in as much detail as possible to make sure I was clear. Most things you'd need to build for the game wouldn't be this difficult. Thanks for reading!






No comments:

Post a Comment