{
  "format": "preylab-environment-reference",
  "version": 1,
  "modelVersion": 4,
  "coordinateUnits": "normalized XYZ; physical distances scale with dish volume",
  "camera": "focus and zoom are observer-only",
  "importSupported": true,
  "portableContract": {
    "format": "preylab.environment",
    "schemaVersion": 1,
    "schema": "environment-preset-v1.schema.json",
    "scope": "new empty dish only",
    "examples": [
      "examples/environment-steady-light.json",
      "examples/environment-day-night.json",
      "examples/environment-nutrient-limited.json"
    ]
  },
  "appPreferences": {
    "format": "preylab.app-preferences",
    "schemaVersion": 1,
    "schema": "app-preferences-preset-v1.schema.json"
  },
  "defaults": {
    "volume": 1,
    "light": 68,
    "temperature": 22,
    "nutrients": 55,
    "drift": 35,
    "lamp": {
      "pitch": 0,
      "azimuth": 0,
      "turbidity": 1,
      "beamDiameter": 100
    },
    "cycle": {
      "enabled": false,
      "periodMs": 120000,
      "duty": 0.5,
      "transitionMs": 10000,
      "phaseMs": 0,
      "anchorAt": 0
    }
  },
  "chemical": {
    "channels": [
      "mate",
      "aversive",
      "kin",
      "food",
      "rot",
      "toxin-irritant",
      "toxin-motor",
      "toxin-sensory",
      "alga-warning",
      "alga-surplus"
    ],
    "packetCap": 256
  },
  "propagules": {
    "particleCap": 128,
    "featureToggle": "fusionPropagules",
    "gamete": {
      "family": "flagellar-alga",
      "genes": {
        "fusionCapacityAtLeast": 0.7,
        "crossAffinityAtLeast": 0.5
      },
      "maturitySeconds": 30,
      "releaseCooldownSeconds": 30,
      "bodyMassCost": 0.2,
      "energyCost": 10,
      "viabilitySeconds": 45,
      "physicalXYZFusion": true
    },
    "spore": {
      "family": "amoeboid-prototype",
      "genes": {
        "sporeInvestmentAtLeast": 0.7
      },
      "maturitySeconds": 30,
      "releaseCooldownSeconds": 30,
      "bodyMassCost": 0.25,
      "energyCost": 12,
      "viabilitySeconds": 90,
      "requires": "floor organics, 5 s viable age, open cell/support slot"
    }
  }
}
