whether stat could be raised one more rank right now - affordable, and under its cap
adds points to the ledger - typically levels gained times however many a level grants
Raises stat's base value by one rank, spending whatever that rank costs.
false, spending nothing, if the rank is capped or not affordable
The unspent ledger, and only that.
Spent points are already saved: spend raises a stat's base value on the StatBlock,
so restoring that block restores every rank ever bought. Recording them a second time
here would be state kept in two places, which is exactly the kind of pair that drifts
the first time one path forgets to update the other.
Staticfrom
The seam
StatBlockandProgressionnever had: a levelling curve already tells a game how many levels it just gained, and a stat block already holds any named stat a game invents -lockpickingexactly as well asstrength- but nothing turns "gained a level" into "has a point to spend", or spends one with the usual rules a skill spend wants (a cap, a cost that rises the more of a stat is already bought).Deliberately not a wrapper around
Progressionitself: a game grants points from levelling (grant(levelsGained)afterProgression.addExperiencereturns a positive number), from a quest reward, from a trainer NPC, or all three - this only tracks the ledger and the spend rule, the same wayskillCheckis a dice roll and nothing about who is rolling it.Example