Pickups
Pickups
XP, healing, Aether Seeds, field vacuum, relic boxes, and overload pickups.
Pickup Types
XP Gems
XP gems use player pickup radius for magnet pull, collect at gem collect distance, and feed ProgressionController.add_xp.

Health Drops
Health hearts roll from enemy health_drop_tier, multiply chance by reward multiplier, and heal by a tier-defined fraction.
Field Vacuum
Vacuum pickups tag nearby drops and increase pull speed so scattered rewards sweep into collection range.

Aether Seeds
Aether Seeds are persistent currency rewards with tiered pickup visuals and boss defaults.

Ultimate Overload
Overload pickups temporarily allow ultimate firing without spending charges.

Relic Boxes
Relic boxes open a relic reward choice and use the run relic pool.
Health Drop Data
| Field | Value |
|---|---|
pickup | {"collect_distance": 18.0, "core_color": [0.12, 0.86, 0.26, 1.0], "float_amplitude": 1.6, "float_speed": 2.8, "glow_color": [0.28, 1.0, 0.42, 0.28], "heart_color": [0.94, 1.0, 0.95, 1.0], "magnet_radius_bonus": 24.0, "magnet_speed": 360.0, "pulse_speed": 4.2} |
tiers | {"boss": {"drop_chance": 1.0, "heal_fraction": 0.6, "pickup_scale": 1.3}, "mini_boss": {"drop_chance": 0.6, "heal_fraction": 0.25, "pickup_scale": 1.15}, "normal": {"drop_chance": 0.0025, "heal_fraction": 0.12, "pickup_scale": 0.95}} |
Vacuum Drop Data
| Field | Value |
|---|---|
pickup | {"accent_color": [0.56, 0.92, 1.0, 0.8], "arrow_color": [0.88, 0.97, 1.0, 1.0], "collect_distance": 18.0, "core_color": [0.12, 0.58, 1.0, 1.0], "float_amplitude": 1.8, "float_speed": 3.0, "glow_color": [0.28, 0.82, 1.0, 0.24], "magnet_distance": 140.0, "magnet_speed": 460.0, "pulse_speed": 4.8} |
tiers | {"boss": {"drop_chance": 1.0, "pickup_scale": 1.25, "vacuum_duration": 9.0, "vacuum_speed_multiplier": 3.4}, "mini_boss": {"drop_chance": 0.04, "pickup_scale": 1.1, "vacuum_duration": 7.0, "vacuum_speed_multiplier": 3.0}, "normal": {"drop_chance": 0.0005, "pickup_scale": 0.95, "vacuum_duration": 5.5, "vacuum_speed_multiplier": 2.5}} |
Aether Seed Data
| Field | Value |
|---|---|
boss_defaults_by_tier | {"1": 12, "2": 20, "3": 30} |
pickup | {"accent_color": [1.0, 0.95, 0.45, 0.95], "collect_distance": 22.0, "core_color": [0.85, 1.0, 0.55, 1.0], "float_amplitude": 1.6, "float_speed": 2.6, "glow_color": [0.6, 1.0, 0.55, 0.28], "magnet_distance": 160.0, "magnet_speed": 520.0, "pickup_scale": 1.22, "pulse_speed": 4.4} |
scatter_radius | 45 |
tiers | {"mini_boss": {"count": 3, "drop_chance": 0.285}, "normal": {"count": 1, "drop_chance": 0.0058}} |
Ultimate Overload Data
| Field | Value |
|---|---|
pickup | {"collect_distance": 28.0, "core_color": [1.0, 0.35, 0.05, 1.0], "despawn_lifetime": 10.0, "float_amplitude": 2.0, "float_speed": 3.5, "glow_color": [1.0, 0.55, 0.1, 0.35], "magnet_radius_bonus": 80.0, "magnet_speed": 380.0, "overload_duration": 4.5, "pulse_speed": 5.0, "sprite_scale": 0.15} |
tiers | {"boss": {"drop_chance": 0.0, "pickup_scale": 1.3}, "mini_boss": {"drop_chance": 0.06, "pickup_scale": 1.15}, "normal": {"drop_chance": 0.0004, "pickup_scale": 1.0}} |