Перейти к основному содержимому

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.

Поля

ПолеТипПо умолчаниюОписание
questRef<QuestEntry>——
countVar<Int>0The value that is being counted towards the target.
baseTargetVar<Int>0The per-player (solo) target. It is multiplied by the coop factor at runtime.
scaleByMemberCountBooleantrueScale the target by the number of coop owners (min 2) instead of the fixed multiplier.
coopMultiplierInt2Fixed multiplier used for coop islands when 'scaleByMemberCount' is off.
displayVar<String><count>/<target>The display supports the <count> and <target> tags. <target> is the scaled value.
Общие поля TypeWriter (children, criteria, priorityOverride)
ПолеТипПо умолчаниюОписание
childrenList<Ref<AudienceEntry>>empty—
criteriaList<Criteria>empty—
priorityOverrideOptional<Int>——