Showing posts with label Effects. Show all posts
Showing posts with label Effects. Show all posts

Friday, October 11, 2013

Handling Effects that use multiple Attributes.




As discussed previously on the blog, all Tests you make use one or more Attributes. The choice of which Attribute is applied is based on which Attribute governs a given Function.  For example, when you have an Effect that has a VOID Function, you add your FORCE Attribute to the final modifier that the Dice give you in order to determine whether you Win or Fail the Test.

This is straightforward for Effects that contain Functions that all use the same Attribute, but what about Effects that use different Attributes? Let's say you have the following Effect:

FOCUS [3d]: SHIELD "Body": { BLOCK ATTACK of "Body" [3]. ATTACK "Body": { VOID "Body" of "Attacker" on Contact via CHANNEL ("Fire") [2].} }

This is a flaming SHIELD Power that attempts to deal damage to anyone who comes in Contact with it.  BLOCK is governed by COUNTER, and VOID is governed by FORCE. 

To make a Test like this, you'd simply roll your FOCUS dice along with any BURDEN Dice the Test called for (a default of 1), and find your Attribute modifier as usual.  Then you'd apply this modifier to each Attribute used in the Effect separately to determine whether each set of Features using those Attributes went off properly. In this example, you'd apply the modifier to your COUNTER Attribute to determine whether the BLOCK worked, and then apply the same modifier to your FORCE Attribute to determine whether the VOID worked. 

Example:  Ardos has a spell up- the SHIELD described above. It's drawing on the COUNTER and FORCE of his mind. His mind's COUNTER is +1 and his mind FORCE is +3. When he is attacked by a club-wielding dwarf-troll, he rolls his 3 FOCUS dice against the Attack and gets (FOCUS 6,2,1 and BURDEN 2). This gives a +4 Attribute modifier and 1 Profit.  


The GM is delivering a simple VOID "Body" Effect, and the dwarf-troll rolls a modified +6 when he adds his FORCE in.


Adding his roll of +4 to his COUNTER of +1, Ardos gets a +5 for his BLOCK Feature. It isn't good enough to work. He then adds his roll to his FORCE of +3, for a result of +7 for the ATTACK Feature. 


The Troll has his own SHIELD in the form of his hide, so the GM rolls his defense- separately because it is the result of a separate Effect. He gets a +5, so the +7 VOID Effect gets through.  Ardos adds his Profit to the VOID Effect. 


The end result is that the SHIELD doesn't hinder the blow of the club, but the dwarf-troll pays a price for his aggression. 

To recap, when an Effect has Features that use different Attributes, roll once, and apply the same modifier to all of the Attributes being used. Then spread the Profit and Waste between the Effect's Feature's as desired. Only when Effects are truly separate should you roll separately.

I hope this is all clear, but if not, feel free to ask.

Wednesday, September 11, 2013

Update- What can contain what?



This should be the last post before I post the Element Summary - likely some time tomorrow.  That post will contain up-to-date definitions for the Elements which I'll fix as the game matures. I'll use it as a reference in future posts. 

After I get through these mechanical posts, I plan to try to put up some material that may be more interesting to people other than system junkies. I admit my posts have been getting a bit dry.

Frames and "Loose" Effects

Now that I'm handling INFLUENCEs as Powers, it's become much clearer that having loose Effects (Effects that aren't part of a Power) inside Frames makes little sense. It wasn't sitting right with me even as I wrote that it was possible. I think I was just trying to avoid cutting off options. The result was fuzzy thinking. 

Constant Effects inside a HOUSE or other Frame should have been represented by INFLUENCEs even when they were Frames. Without a Power containing them, they couldn't be used for actions inside the Frame- they wouldn't actually  do anything because the Effects would have no acceptable target type (such as an ATTACK's "unwilling Target").  

So, another change is in order.  For now, I'm going to try the rules that:


  • Frames can contain other Frames, Attributes, and Powers, but not loose Effects.
  • Powers can contain other Powers, and Effects.
  • Effects contain Functions.


All this gives me an inkling of an idea for allowing people to run a simplified subset of the total system at their table by abstracting lower levels of this hierarchy, but I won't speculate on how to do it in this post. It would need some real thought to work and I can't give it the proper effort at the moment. 

A Note

If you're frustrated by all of the changes I'm making to previously stated concepts, I apologize. The purpose of the blog, however, is to help me write a solid playtest document, and to take it from there.  
I'm avoiding correcting posts except for ones with the "Reference" tag as much as possible, because I want them there as a record of the process. 

I just thought that an open design process would be helpful, and it definitely has been so far. I appreciate all the comments and the help I've been getting in refining my ideas and the way that I express them.  

Thanks for reading.  

-Scott

Tuesday, September 10, 2013

Modeling the Real World.



You've probably noticed that Tribute doesn't have Elements for things like character-independent duration of Effects, range or reach, and size. Similarly, it doesn't have them for mass or inertia.


The problem I ran into with these was that if I made Elements for them,  they wouldn't be universal. They'd have no application beyond the physical world with the possible exception of  duration. On the other hand, they are inescapable in the physical world and it would be a glaring omission not to address them. Most campaigns will need them in some form. 

Here's how I will be modelling these types of things:

"Size" as an intrinsic aspect of the physical HOUSE  -"Body', for example. I plan to allow any HOUSE to serve as a battlefield with grid/zone combat or something similar, so I imagine that once I get to those rules, we'll get rules for size. The final rules will certainly involve modeling the ease  of targeting large things, or the difficulty of targeting small things with situational FOCUS.  It will also grant the INFLUENCE of "Reach" as described below. 

"Reach" as an INFLUENCE with { RELAY Effect [#]. } inside. 

"Inertia" as an INFLUENCE with { BRACE Position [#]. } inside. 

"Gravity" as an INFLUENCE with { RELAY Target with "Mass" to ("Center of  HOUSE") [#]. } inside.  So far, things fall at a constant speed, but I hope to make it possible to model gravitational acceleration for those who want it. It might have something to do with a refinement of CHARGE. The ground blocks you from falling into the core, unless you have insane mass...

"Mass" as an INFLUENCE with { BRACE ("Gravity", "Inertia" ) [#]. } inside, along with the INFLUENCE of its own "Gravity" for use when required . This means that Mass makes overcoming gravity and inertia harder for any objects that contain it, and that can they exert their own pull .

"Duration" as an INFLUENCE with { HOLD Effect [#]. } inside. 

As you can see, despite the Tribute notation, these effects aren't very complex. I continue to try to work out a more user-readable version of the notation. I just want to make sure I don't lose anything in translation, and that the results of any such verbose Expressions aren't too large. 


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!