Sample technical presentation document

advertisement
Sample technical presentation document
Feel free to add questions if you think that anything is being left out, also feel free to
copy from documents that are posted already (for example, many of the answers in this
document come from Clement’s behavior documentation and my own).
What are you documenting?
Behaviors
Why is it important to the design of the system?
Behaviors allow individual entities interact within the system. An interaction
“Fitness” is calculated based on the acting entity’s “Attributes”. This “Fitness”
determines the result of the behavior execution. Behaviors also have the ability to
modify, create, and delete entities.
How is it cool?
It allows for completely dynamic entity interaction, it also allows for infinitely
complex behavior chaining – this means that a move behavior under certain
circumstances can trigger a move responding behavior which can trigger a defend
behavior, etc.
How is it used (or integrated with the system)?
Behaviors can be “installed” on entities by adding them to the
SendingBehaviorsTable or the ReactingBehaviorsTable. Various options can be
set the behavior so that the client will know how to handle the behavior. An
OptionalTag can be passed when the user tries to execute a behavior so that the
behavior can exhibit different behaviors within a single class (For example, a
barracks would have a BuildBehavior which takes in the unit’s xml file as an
OptionalTag).
Any interesting implementation details?
Because entities can be affected so many ways, we needed to have 3 different
kinds of behaviors. They are described below.
Sending
A sending behavior is the behavior that is executed to get an Entity to
actually do something. A sending behavior can be something like attack,
move, refuel, etc.
The sending behavior is responsible for creating the
initial Fitness
Reacting
A reacting behavior modifies the Fitness that the sending behavior creates.
This is used so factors in the environment can affect the sending fitness.
For example, a force field may have a DefendReacting Behavior which
boosts a troops Defend Behavior fitness. Terrain also has a MoveReacting
Behavior that affects any moving Entity’s speed and ability to move.
Responding
A responding behavior is the behavior that interacts with the sending
behavior. For example, Defend is the responding counterpart to Attack.
The responding behavior uses the Fitness calculation of its sending
behavior counterpart and its own Fitness calculation to determine the
“success” of the sending behavior. Responding behaviors can also be
affected by reacting behaviors.
Any use of special software?
Nope.
Any use of special design paradigms?
OOP
Any documents posted with more detail? If so, where?
http://www.bandgap.cs.rice.edu/sites/comp410s05/model/Shared%20Documents/
Behaviors%20in%20Tequila.doc
Download