This advanced path defines the complete Space Range exercise in strict JSON. The file is suitable for version control, review, reuse, and automated generation.

It does not require the beginner or intermediate path.

What this path covers

  1. Document structure, loading, and construction
  2. Metadata, brief, clock, integrator, and environment
  3. The shared ground network
  4. Spacecraft identity, orbit, physics, visualization, and controller
  5. Component classes, data, placement, and models
  6. Electrical and propellant topology
  7. The team-to-spacecraft relationship
  8. Passive mission objects
  9. Shared spacecraft and initial connections
  10. All question types and current scoring
  11. The event envelope and available types
  12. Component changes and error models
  13. Environmental and packet effects
  14. Parameter-triggered scoring
  15. End-to-end patterns, diagnostics, export, and handoff

What the JSON controls

A scenario can define:

  • operator-facing metadata and brief
  • simulation clock and solver
  • universe settings
  • shared ground stations
  • teams and credentials
  • spacecraft, components, controllers, and networks
  • collections and neutral assets
  • docking and interconnects
  • ground and passive space objects
  • timed events
  • scored questions

How the file reaches Studio

Open Space Range, select Load Scenario, review the loaded file under Script, and select Construct Scenario.

Do not open this file with Studio’s normal project or API simulation importer.

Source-of-truth rules

  • Use nested JSON while authoring.
  • Set critical defaults explicitly.
  • Treat Studio’s Console as part of the loader.
  • Validate every reference from teams to collections and spacecraft.
  • Test each event and question in Operator.
  • Keep the original source JSON even after exporting .zen.

WARNING

Loading definitions and constructing the world are separate actions. Construct Scenario clears the current Space Range world and builds a new one from this file.