Usage Pools
[Context: HL Kit … Basic Concepts and Terminology … Structural Building Blocks]
Most of the time, the information managed for a character simply involves tracking the current state. However, there are times when a history of changes needs to be maintained. To handle these situations, the Kit provides a mechanism referred to as a "usage pool".
Usage pools track both the current net value for the pool and a history of adjustments applied to the pool, up to a configurable maximum history size. A usage pool can be defined for an actor or for an individual pick. This makes it possible to use a usage pool to track the overall experience and cash accrued for an actor, as well as for tracking the individual experience and cash accrued for a single journal entry.
Usage pools are also invaluable for tracking damage and similar resources. Since a history is maintained, it becomes possible to easily undo damage that was sustained. It's also possible to show the history to the user for review, such as the sequence of damage and healing that took place during a lengthy combat.