| Goal | UpgradeGoal |
| Description | An abstract base type that provides much of the shared functionality for Upgradeable Currency upgrade related Goals. |
| Example | N/A |
| Inheritance | Goal |
| Target | The target is specified by the derived implementation of UpgradeGoal.IsValid. |
| Target Amount | The target number of upgrades is specified via the derived implementation of IGoalData.Amount. |
| Progression | The Goal will be progressed by 1 each time a target Upgradeable Currency is upgraded by the player. |
| Post Activation | N/A |
| Remarks | |