Use this page as the exact-key lookup beside the Sandbox event editor. For the full workflow—placing nodes, connecting actions, testing retries and saving maps—start with the Sandbox editor field guide.
Version check: this reference covers v0.65.0. A newer build may add choices. The keys shown by that build's Condition editor are authoritative.
Author-defined map variables
A Map Variable node uses a numeric key that you define. A Condition reads the same value with a var. prefix:
Variable node key: waves_seen
Condition metric: var.waves_seen
Keys match [A-Za-z_][A-Za-z0-9_]{0,31}: 1–32 ASCII letters, digits or underscores, beginning with a letter or underscore. Values are finite numbers from -1,000,000,000 through 1,000,000,000.
Set replaces the value. Add adds to it, treating a missing key as zero. Results are clamped to the supported range. Conditions compare with >=, >, ==, !=, < or <=, combining up to eight checks with ALL or ANY.
Variables last only for the current attempt. Retry, Reset Map and a fresh Fly entry clear them. They never change lifetime profile stats and cannot contain scripts or expressions.
Useful examples include waves_seen / var.waves_seen, stage / var.stage, doors_opened / var.doors_opened and hazards_fired / var.hazards_fired.
Current-run metrics
These values reset with the attempt:
| Key | Meaning |
|---|---|
run.kills |
Total ordinary enemy kills |
run.bosses |
Boss kills |
run.health |
Current lives or health hits |
run.shield |
Current shield charges |
run.score |
Current score |
run.elapsed |
Seconds played |
run.wave |
Survival wave or Boss Rush fight number |
run.damage |
Damage dealt |
Every enemy family supplies an attempt-local and a lifetime kill counter:
| Enemy | Run key | Lifetime key |
|---|---|---|
| Infected | run.kills.infected |
profile.kills.infected |
| Chaser | run.kills.chaser |
profile.kills.chaser |
| Drifter | run.kills.drifter |
profile.kills.drifter |
| Splitter | run.kills.splitter |
profile.kills.splitter |
| Mini | run.kills.mini |
profile.kills.mini |
| Sniper | run.kills.sniper |
profile.kills.sniper |
| Coil | run.kills.coil |
profile.kills.coil |
| Bulwark | run.kills.bulwark |
profile.kills.bulwark |
| Binder | run.kills.binder |
profile.kills.binder |
| Wasp | run.kills.wasp |
profile.kills.wasp |
| Picket | run.kills.picket |
profile.kills.picket |
| Blight | run.kills.blight |
profile.kills.blight |
| Driller | run.kills.driller |
profile.kills.driller |
| Turret | run.kills.turret |
profile.kills.turret |
| Lasher | run.kills.lasher |
profile.kills.lasher |
Pickup and collectible metrics
These counters also reset with the attempt:
| Pickup or collectible | Key |
|---|---|
| Plating | run.pickups.health |
| Barrier | run.pickups.shield |
| Nova | run.pickups.nova |
| Overclock | run.pickups.overclock |
| Anchored | run.pickups.anchor |
| Scatter | run.pickups.scatter |
| Heavy | run.pickups.heavy |
| Time Warp | run.pickups.timewarp |
| Double | run.pickups.bonus |
| Belt Feed | run.pickups.belt |
| Swarm | run.pickups.swarm |
| Salvo | run.pickups.salvo |
| Wide Beam | run.pickups.wide |
| Long Beam | run.pickups.reach |
| Signal Coin | run.pickups.token |
| Relay Pylon | run.pickups.pylon |
| Data Shard | run.pickups.data_shard |
| Access Card | run.pickups.keycard |
| Power Cell | run.pickups.power_cell |
| Specimen | run.pickups.specimen |
| Relay Chip | run.pickups.relay |
| Anomaly Relic | run.pickups.artifact |
| Combined total | run.pickups |
Lifetime profile metrics
These are read-only lifetime values. Do not use them to gate a fresh player's required path; reserve them for optional veteran branches or secrets.
| Key | Meaning |
|---|---|
profile.kills |
Lifetime ordinary enemy kills |
profile.bosses |
Lifetime boss kills |
profile.runs |
Lifetime completed runs |
profile.elapsed |
Lifetime seconds played |
profile.damage |
Lifetime damage dealt |
The per-enemy lifetime keys are listed beside their run equivalents above.
Achievement metrics
An achievement metric reads as 1 when earned and 0 otherwise:
| Key | Achievement |
|---|---|
profile.achievement.wing_commander |
WING COMMANDER |
profile.achievement.boss |
FIRST BLOOD |
profile.achievement.pack |
PACK HUNTER |
profile.achievement.carrier |
FLIGHT DECK |
profile.achievement.wave10 |
DOUBLE DIGITS |
profile.achievement.wave20 |
THE LONG HAUL |
profile.achievement.dire |
NO MERCY |
profile.achievement.untouched |
UNTOUCHED |
profile.achievement.iron_sights |
IRON SIGHTS |
profile.achievement.skeleton_crew |
HANDS OFF |
profile.achievement.billiards |
BILLIARDS |
profile.achievement.close_formation |
CLOSE FORMATION |
profile.achievement.mut_hardcore |
ONE LIFE |
profile.achievement.mut_purist |
AS SHE COMES |
profile.achievement.mut_storm |
WEATHER EYE |
profile.achievement.mut_swift |
RED SHIFT |
profile.achievement.mut_elite |
EVERY ONE OF THEM |
profile.achievement.mut_magazine |
COUNTING ROUNDS |
profile.achievement.kill_chaser_1 |
CHASER I |
profile.achievement.kill_chaser_2 |
CHASER II |
profile.achievement.kill_chaser_3 |
CHASER III |
profile.achievement.kill_mini_1 |
MINI I |
profile.achievement.kill_mini_2 |
MINI II |
profile.achievement.kill_mini_3 |
MINI III |
profile.achievement.kill_drifter_1 |
DRIFTER I |
profile.achievement.kill_drifter_2 |
DRIFTER II |
profile.achievement.kill_drifter_3 |
DRIFTER III |
profile.achievement.kill_sniper_1 |
SNIPER I |
profile.achievement.kill_sniper_2 |
SNIPER II |
profile.achievement.kill_sniper_3 |
SNIPER III |
profile.achievement.kill_bulwark_1 |
BULWARK I |
profile.achievement.kill_bulwark_2 |
BULWARK II |
profile.achievement.kill_bulwark_3 |
BULWARK III |
profile.achievement.kill_splitter_1 |
SPLITTER I |
profile.achievement.kill_splitter_2 |
SPLITTER II |
profile.achievement.kill_splitter_3 |
SPLITTER III |
profile.achievement.kill_coil_1 |
COIL I |
profile.achievement.kill_coil_2 |
COIL II |
profile.achievement.kill_coil_3 |
COIL III |
profile.achievement.kill_turret_1 |
TURRET I |
profile.achievement.kill_turret_2 |
TURRET II |
profile.achievement.kill_turret_3 |
TURRET III |
profile.achievement.kill_picket_1 |
PICKET I |
profile.achievement.kill_picket_2 |
PICKET II |
profile.achievement.kill_picket_3 |
PICKET III |
profile.achievement.kill_binder_1 |
BINDER I |
profile.achievement.kill_binder_2 |
BINDER II |
profile.achievement.kill_binder_3 |
BINDER III |
profile.achievement.kill_lasher_1 |
LASHER I |
profile.achievement.kill_lasher_2 |
LASHER II |
profile.achievement.kill_lasher_3 |
LASHER III |
profile.achievement.kill_wasp_1 |
WASP I |
profile.achievement.kill_wasp_2 |
WASP II |
profile.achievement.kill_wasp_3 |
WASP III |
profile.achievement.kill_blight_1 |
BLIGHT I |
profile.achievement.kill_blight_2 |
BLIGHT II |
profile.achievement.kill_blight_3 |
BLIGHT III |
profile.achievement.kill_driller_1 |
DRILLER I |
profile.achievement.kill_driller_2 |
DRILLER II |
profile.achievement.kill_driller_3 |
DRILLER III |
Defense and dynamic keys
The fixed defense metrics are available to every map, but read as zero when no shared Custom defense scenario is active:
| Key | Meaning |
|---|---|
defense.credits |
Attempt-local build credits |
defense.kills |
Goal attackers killed |
defense.leaks |
Attackers that reached a core |
defense.remaining |
Unresolved current-assault attackers |
defense.pending |
Pending assault deployments |
defense.assault |
Current assault number |
Each authored Core node adds defense.core.<core_id>, such as defense.core.relay_alpha, for its current health. A core ID is 1–48 letters, digits, underscores or hyphens. This family is dynamic because its IDs come from your map, just as var.<key> comes from your Variable nodes.
Choose the right scope
- Use
run.*for the current attempt. - Use
profile.*only for optional branches based on lifetime progress. - Use
var.*for authored stage, latch and counter state. - Use
defense.*for core and assault state.
A Map Note disappearing, a Timer expiring or an author note existing does not change a numeric variable by itself. Connect the real event output to a Variable action when you need state to change.
For examples of event sources, actions, connection limits, reset behavior and testing, continue in the Sandbox editor field guide.