Coop Countable Objective
A countable objective that scales its target for coop islands
A countable objective whose target scales for cooperative islands. This is the working replacement for the previous metadata-based approach (CoopIslandQuestWrapperEntry wrote btcsky_coop_multiplier player metadata that no objective ever read). Here the scaling is intrinsic: the effective target — the value shown to the player and exposed through the <target> tag — is baseTarget × factor, computed live per player. The factor is: - 1 when the player is solo (no coopProfileId on their island), so the objective behaves exactly like a standard countable objective; - the number of coop owners (min 2) when [scaleByMemberCount] is true; - the fixed [coopMultiplier] otherwise. ## Wiring completion As with the engine's own countable objective, visibility is driven by [criteria]. To gate completion on the scaled amount, point the quest's completion criteria (or the counting fact's target) at this objective's <target> placeholder rather than a hardcoded number — it already reflects the scaled value, so coop members must collectively reach baseTarget × factor.
Поля
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
quest | Ref<QuestEntry> | — | — |
count | Var<Int> | 0 | The value that is being counted towards the target. |
baseTarget | Var<Int> | 0 | The per-player (solo) target. It is multiplied by the coop factor at runtime. |
scaleByMemberCount | Boolean | true | Scale the target by the number of coop owners (min 2) instead of the fixed multiplier. |
coopMultiplier | Int | 2 | Fixed multiplier used for coop islands when 'scaleByMemberCount' is off. |
display | Var<String> | <count>/<target> | The display supports the <count> and <target> tags. <target> is the scaled value. |
Общие поля TypeWriter (children, criteria, priorityOverride)
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
children | List<Ref<AudienceEntry>> | empty | — |
criteria | List<Criteria> | empty | — |
priorityOverride | Optional<Int> | — | — |