This page was generated with Wiki Builder. Do not change the format!
Info
A "Progression" in Destiny is best explained by an example. A Character's "Level" is a progression: it has Experience that can be earned, levels that can be gained, and is evaluated and displayed at various points in the game. A Character's "Faction Reputation" is also a progression for much the same reason. Progression is used by a variety of systems, and the definition of a Progression will generally only be useful if combining with live data (such as a character's DestinyCharacterProgressionComponent.progressions property, which holds that character's live Progression states). Fundamentally, a Progression measures your "Level" by evaluating the thresholds in its Steps (one step per level, except for the last step which can be repeated indefinitely for "Levels" that have no ceiling) against the total earned "progression points"/experience. (for simplicity purposes, we will henceforth refer to earned progression points as experience, though it need not be a mechanic that in any way resembles Experience in a traditional sense). Earned experience is calculated in a variety of ways, determined by the Progression's scope. These go from looking up a stored value to performing exceedingly obtuse calculations. This is why we provide live data in DestinyCharacterProgressionComponent.progressions, so you don't have to worry about those.
Schema
- Schema Type: Manifest Definition
- Type: object
- Mobile Manifest: Progressions
Properties
Name | Type | Description |
---|---|---|
displayProperties | DestinyProgressionDisplayPropertiesDefinition:Definition | |
scope | DestinyProgressionScope:Enum | The "Scope" of the progression indicates the source of the progression's live data. See the DestinyProgressionScope enum for more info: but essentially, a Progression can either be backed by a stored value, or it can be a calculated derivative of other values. |
repeatLastStep | boolean | If this is True, then the progression doesn't have a maximum level. |
source | string | If there's a description of how to earn this progression in the local config, this will be that localized description. |
steps | DestinyProgressionStepDefinition:Definition[] | Progressions are divided into Steps, which roughly equate to "Levels" in the traditional sense of a Progression. Notably, the last step can be repeated indefinitely if repeatLastStep is true, meaning that the calculation for your level is not as simple as comparing your current progress to the max progress of the steps. These and more calculations are done for you if you grab live character progression data, such as in the DestinyCharacterProgressionComponent. |
visible | boolean | If true, the Progression is something worth showing to users. If false, BNet isn't going to show it. But that doesn't mean you can't. We're all friends here. |
factionHash | Destiny.Definitions.DestinyFactionDefinition:integer:uint32:nullable | If the value exists, this is the hash identifier for the Faction that owns this Progression. This is purely for convenience, if you're looking at a progression and want to know if and who it's related to in terms of Faction Reputation. |
hash | integer:uint32 | The unique identifier for this entity. Guaranteed to be unique for the type of entity, but not globally. When entities refer to each other in Destiny content, it is this hash that they are referring to. |
index | integer:int32 | The index of the entity as it was found in the investment tables. |
redacted | boolean | If this is true, then there is an entity with this identifier/type combination, but BNet is not yet allowed to show it. Sorry! |
Example
{
// Type: DestinyProgressionDisplayPropertiesDefinition:Definition
"displayProperties": {
// Type: string
"displayUnitsName": "",
// Type: string
"description": "",
// Type: string
"name": "",
// Type: string
"icon": "",
// Type: boolean
"hasIcon": false
},
// Type: DestinyProgressionScope:Enum
"scope": {},
// Type: boolean
"repeatLastStep": false,
// Type: string
"source": "",
// Type: DestinyProgressionStepDefinition:Definition[]
"steps": [
// Type: DestinyProgressionStepDefinition:Definition
{
// Type: string
"stepName": "",
// Type: DestinyProgressionStepDisplayEffect:Enum
"displayEffectType": {},
// Type: integer:int32
"progressTotal": 0,
// Type: DestinyItemQuantity[]
"rewardItems": [
// Type: DestinyItemQuantity
{
// Type: Destiny.Definitions.DestinyInventoryItemDefinition:integer:uint32
"itemHash": 0,
// Type: integer:int64:nullable
"itemInstanceId": 0,
// Type: integer:int32
"quantity": 0
}
]
}
],
// Type: boolean
"visible": false,
// Type: Destiny.Definitions.DestinyFactionDefinition:integer:uint32:nullable
"factionHash": 0,
// Type: integer:uint32
"hash": 0,
// Type: integer:int32
"index": 0,
// Type: boolean
"redacted": false
}