Member
Join Date: Feb 2006
Posts: 30
|
Let's say that in a particular game system, the units' Movement values depend on whether the game is being played in 15mm or 25mm scale.
How would a user specify their scale when loading a game system into AB? Or would you have to design separate game systems for each game scale? |
#1 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 8,232
|
At 08:15 PM 2/19/2006, you wrote:
Quote:
Now the question becomes how to get AB to accommodate this situation. I'm going to assume there are standard conversion algorithms for going from one scale to the other. For example, all movement ranges are given in one scale and switching to the other is a matter of multiplying by X and then rounding off in some standardized fashion. If that's the case, then you can accomplish everything within a single "Finalize" script for the unit stat. For details on this, see the "Tips & Tricks" chapter and checkout the topic "Deciding When a Unit Stat Should Be Text or Numeric". If you use the second example as a reference, you can instead apply the adjustments you need. If the "native" scale is selected (determined by checking the ruleset tag), you don't need to apply any changes. If the alternate scale is chosen, you can apply the multiplier and rounding to the current value, then output the adjusted value. This approach has the added benefit of performing "just in time" modification. That means that any options that are selected for a unit will apply their adjustments to the movement in the "native" scale, and it will happen BEFORE anything gets output. So those adjustments will be factored into the scale adjustment and be properly reflected to the user. -Rob |
|
#2 |
Senior Member
Volunteer Data File Author
Join Date: Mar 2005
Location: New Hampshire, USA
Posts: 388
|
I will add a caution...While this works, the selectable units (those on the top section of AB) will show the "native" values rather then the ruleset values...it won't be until the user selects the unit (as in double click or drag and drop) that it will appear correctly...
At least according to my easily fallible memory... |
#3 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 8,232
|
At 03:52 PM 2/20/2006, you wrote:
Quote:
The Finalize script will be applied to all values being output. If you need to adjust the output value in some way that depends on user-selected options or child items associated with the unit, then that information will only be available for a unit in the roster. However, if you need to apply a change based on informaiton like "roster" tags or "ruleset" tags, it will be applied to everything properly. In the case of the "scale", this is somehting that would be controlled via rulesets and therefore apply to everything. -Rob |
|
#4 |
|
|