Difference between revisions of "Weird Science Gizmos (Savage)"

From HLKitWiki
Jump to: navigation, search
Line 25: Line 25:
 
<value id="Gizmo"/>
 
<value id="Gizmo"/>
 
</pre>
 
</pre>
 +
 +
We'll worry about how and when to assign these tags in the next section.
  
 
===Managing Shared Gizmos===
 
===Managing Shared Gizmos===
 +
 +
Gizmos that are shared need to be managed appropriately by the user. We currently only show the "Arcane" tab when a character has an arcane background, but we could always change that behavior. If we always showed the "Arcane" tab, then shared gizmos could be handled on it. The problem with this approach is that shared gizmos are more generally perceived as "gear" - instead of arcane powers by - by characters that are using them. As such, it would probably be better if we added a new tab panel named "Gizmos", and this tab would appear for every character. The sole purpose of this tab would be to track any shared gizmos.
 +
 +
Adding a new tab panel for something like this is not always a good idea. If your data files already possess lots of tabs across the top, adding new ones can make the interface more confusing to the user. However, the set of tabs for Savage Worlds are quite reasonable in number and the "Gear" tab is already
  
 
===Adding the Fields===
 
===Adding the Fields===

Revision as of 15:12, 23 January 2009

Context: HL KitAuthoring Examples … Savage Worlds Walk-Through 

Overview

We're going to dedicate a full section to this topic. The actual changes are not complex, but there are a variety of issues that need to be considered. This results in a series of steps that we'll address one at a time.

How Gizmos Differ

Gizmos are a special variety of arcane power. In addition to the power itself, gizmos need to be controlled. In general, the use of a gizmo entails use of the "Weird Science" skill. However, a "ray gun" gizmo might use the "Shooting" skill instead. We need to track the associated skill for each gizmo and allow the user to specify that skill.

Gizmos are devices, so they each have their own pool of power points. This pool needs to be tracked independently for each gizmo. That means we need to integrate the proper handling for trackers into gizmos and display them on the "In-Play" tab so that user can manage them.

The final wrinkle with gizmos is that they can be shared. This means that a character with no arcane background can possess a gizmo. We therefore have to allow all characters to possess gizmos, and gizmos from other characters must allow the player to specify the number of power points available to each gizmo. We even have to handle the case where a weird scientist has both his own gizmos and gizmos created by others.

Differentiating a Gizmo

The first thing we need to resolve is how we're going to differentiate a gizmo from a normal power. One option would be to handle gizmos and powers much like we do weapons. We could define a new "base" component that has all the common behaviors of the two, then have separate "Power" and "Gizmo" components with the distinct behaviors. This would entail adding a new component set for gizmos as well. While this approach would definitely work, it's a non-trivial amount of work, so we should only go that route if it's truly necessary.

Gizmos are a proper superset of powers (i.e. they add behaviors but don't change any behaviors). In addition, there are only two pieces of new information that need to be tracked for powers. This means that the various new components we're considering would each be relatively small. An easier solution might be to just add the gizmo behaviors to the "Power" component and then use a tag to indicate whether a power is actually a gizmo. Since the changes we need to make aren't very complicated, using a tag ought to be more than adequate, so we'll give this approach a try.

We're actually going to have two different types of gizmos when we're finished. We need to identify gizmos in general, which can be handled via one tag. We also need to differentiate between gizmos created by the character and gizmos borrowed from another character. We'll refer to borrowed gizmos as "foreign" gizmos, and we can handle this distinction via a second tag. For simplicity, we'll just define these tags within the "Helper" tag group, and the new tags should look like below.

<value id="Foreign"/>
<value id="Gizmo"/>

We'll worry about how and when to assign these tags in the next section.

Managing Shared Gizmos

Gizmos that are shared need to be managed appropriately by the user. We currently only show the "Arcane" tab when a character has an arcane background, but we could always change that behavior. If we always showed the "Arcane" tab, then shared gizmos could be handled on it. The problem with this approach is that shared gizmos are more generally perceived as "gear" - instead of arcane powers by - by characters that are using them. As such, it would probably be better if we added a new tab panel named "Gizmos", and this tab would appear for every character. The sole purpose of this tab would be to track any shared gizmos.

Adding a new tab panel for something like this is not always a good idea. If your data files already possess lots of tabs across the top, adding new ones can make the interface more confusing to the user. However, the set of tabs for Savage Worlds are quite reasonable in number and the "Gear" tab is already

Adding the Fields

Revising the Template

Tracking Power Points

Validation

-define and assign "Gizmo" tag via script -create new tab panel that shares the template -differentiate shared gizmo via "Foreign" tag -new table portal only shows foreign gizmos and old one only shows native gizmos -add fields for linked skill and power points -add Tracker component to Power compset -add portals to template for specifying skill and power points -determine whether menu and edit portals are visible - impacts height of template -position menu and edit portals -add tag to reset trackers to maximum -add script to setup power points -hide non-gizmos from list of trackers on in-play tab -verify gizmos have linked skill assigned -verify foreign gizmos have non-zero power points assigned -highlight menu in red if no selection is chosen