Datacore
What it is
A stat-category artifact that listens for the run-time event-complete signal and grants a tier-scaled number of free random ship upgrades each time the player finishes an event. The artifact has no passive behavior between procs and no per-frame state — it is dormant until the next event resolves, then fires once and goes quiet again.
The reward-card flavor reads as a salvaged engineering datacore that converts event completion into immediate ship modifications. Mechanically it is a one-shot upgrade pipe attached to the event lifecycle, so the practical payoff scales with how many events the run actually surfaces.
Identity
| Field | Value |
|---|---|
| Name | Datacore |
| Category | Stat |
| Trigger type | Signal |
| Trigger signal | Event complete |
| Damage tag | none (type-agnostic) |
| Banner on proc | yes |
| Primary color | #ffaa00 |
| Secondary color | #cc8800 |
| Bright color | #ffcc44 |
| Reward-card text | ”When you complete an event, you gain a free random ship upgrade.” |
The reward-card label is identical across all four tiers; tier differentiation is numeric only and is not reflected in the on-card copy.
Per-tier values
The artifact declares four authored tiers indexed 0 to 3 (uncommon → rare → epic → legendary). A fifth common tier is prepended at runtime, reusing the uncommon values record but differentiated by the global flat-bonus curve. Only the upgrades field is consumed by the artifact’s action chain; the other fields in the values record are declared but inert at the action layer.
| Tier | Rarity | Free upgrades on event complete | Heal fraction (declared) | Invuln seconds (declared) | Event spawn multiplier (declared) |
|---|---|---|---|---|---|
| 0 | Common | 2 | 0.00 | 0 | 1.00 |
| 1 | Uncommon | 2 | 0.00 | 0 | 1.00 |
| 2 | Rare | 2 | 0.75 | 5 | 1.20 |
| 3 | Epic | 3 | 1.00 | 8 | 1.40 |
| 4 | Legendary | 4 | 1.00 | 15 | 1.75 |
Common and uncommon share the same upgrades count because the runtime tier-0 entry copies the uncommon values record; common-vs-uncommon differentiation comes from the global per-artifact flat-bonus curve rather than from these numbers. The heal, invuln, and event-spawn fields appear in the source but are not referenced by this artifact’s action chain — see EXTRACT-CANDIDATE below.
Effect
On each event-complete signal, the artifact fires a single effect with two actions in the same frame plus a banner notification.
| Element | Value |
|---|---|
| Trigger type | Signal |
| Trigger signal | Event complete |
| Conditions | none |
| Banner shown | yes |
| Action 1 | Custom handler — grant random upgrade, count = tier upgrades |
| Action 2 | Flash artifact icon in HUD |
| Per-frame state | none |
| Cooldown | none (gated by event-complete signal frequency) |
The grant-random-upgrade handler is a custom action — the artifact does not pick the specific upgrade itself; it delegates to a runtime handler that rolls a free random ship upgrade and applies it. The handler is invoked once per proc with a count parameter bound to the active tier’s upgrades value, so a legendary tier yields four upgrades from a single event-complete signal rather than four separate procs.
The flash-artifact action is the standard HUD blink shared across artifacts. There is no separate VFX action declared, no audio cue is configured, and no per-tier visual scaling is authored.
Stacking rules
| Rule | Value |
|---|---|
| Stacking mode | n/a (no time-limited buff) |
| Max stacks | n/a |
| Counter behavior | n/a |
| Cooldown | none |
| Concurrent procs | each event-complete signal fires once |
The artifact applies an instantaneous reward — random ship upgrades — rather than a time-limited buff, so there is no buff stack to refresh or accumulate. Each event-complete signal produces exactly one proc, and the proc grants the tier’s upgrade count in a single batch.
Two events completing on the same frame would each fire the trigger once, producing two independent action chains and two separate batches of upgrades. The applied upgrades themselves are permanent additions to the ship and stack with any existing upgrades through the normal upgrade composition rules — Datacore does not constrain or de-duplicate against upgrades the player already owns.
EXTRACT-CANDIDATE flags
- Inert declared values. The source declares
healPct,invulnTime, andeventSpawnMultper tier, but the effect chain only references$upgrades. These fields look like leftovers from a shared event-trigger template or a planned future action set — they have no runtime effect on this artifact today. Worth documenting on the artifacts roll-up that values-record fields without a corresponding action reference are inert, so authors do not assume declared numbers always apply. event_completesignal contract. The exact definition of when the event-complete signal fires — which event types emit it, whether it fires on event failure or cancellation, ordering relative to event reward drops — belongs on theeventspage or a dedicated signals reference rather than duplicated per artifact.grant_random_upgradecustom handler. The custom action delegates to a runtime handler that owns the upgrade-pool selection, weighting, exclusion rules, and stacking semantics for upgrades the player already owns. The handler’s behavior is shared infrastructure and should be documented once on an effect-engine / custom-handler reference page.- Common tier handling. The shared
ArtifactDefshape documents that the runtime prepends a 5th common tier on top of the four listed tiers, with the common tier sharing the uncommon values record and differentiating only through a separate per-artifact flat-bonus layer. The Datacore source does not declare a flat-bonus field, so common-tier behavior depends entirely on engine-level defaults. This belongs on theartifactsroll-up page, not duplicated per entity. - Event-trigger artifact family. Datacore sits inside a family of artifacts keyed off the event-complete signal (alongside an event-healer variant that restores hull, grants invuln, and buffs damage on the same signal). The full family comparison and the design rule that each variant trades a different reward axis off the same trigger belong on the
artifactsroll-up or a dedicated event-trigger family page. - Banner and flash actions. The banner-on-proc flag and the flash-artifact action are shared primitives across many artifacts; their exact UI behavior is engine-side and should be described on the artifacts roll-up.
- No proc audio cue. The artifact omits
procAudioCue, which per the type comment means silent default behavior. The repo’s stated rule that common-trigger procs should have their own audio suggests Datacore is a candidate for an audio pass — worth flagging on an artifact-authoring guide rather than as Datacore-specific copy.
Summary
Datacore is an event-complete signal artifact in the stat category. Its single effect grants a tier-scaled batch of free random ship upgrades and flashes the artifact icon. Tier scales the upgrade count only: 2 / 2 / 2 / 3 / 4 across common → legendary. The other fields in the per-tier values record (heal fraction, invuln seconds, event spawn multiplier) are declared but inert at this artifact’s action layer. There is no time-limited buff, so stacking rules do not apply — each event-complete signal produces exactly one batch of upgrades, with no cooldown beyond the signal’s own pacing.