{
  "schema": 1,
  "title": "Paradise Runtime Asset Contract",
  "updated": "2026-09-15",
  "target": "high-fidelity ocean/shore fishing scene",
  "assets": [
    {
      "id": "alhena_bartender_billboard",
      "type": "transparent-character-card",
      "targetPath": "/assets/alhena-bartender-billboard.png",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "procedural modest bartender mesh behind ?alhenamesh=1",
      "requirements": [
        "transparent high-resolution modest bartender cutout",
        "grounded contact shadow",
        "subtle idle motion",
        "future replacement by rigged GLB when available"
      ]
    },
    {
      "id": "alhena_bartender_rig",
      "type": "rigged-character",
      "targetPath": "/assets/models/alhena-bartender.glb",
      "status": "needed",
      "loadByDefault": false,
      "currentFallback": "procedural modest bartender mesh",
      "requirements": [
        "modest beach bartender wardrobe",
        "facial expression blendshapes",
        "idle, serve, wave, talk, and look-at animations",
        "PBR skin, hair, cloth, apron, jewelry, and glass materials"
      ]
    },
    {
      "id": "black_lab_billboard",
      "type": "transparent-character-card",
      "targetPath": "/assets/alhena-black-lab.png",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "procedural articulated black lab mesh behind ?dogmesh=1",
      "requirements": [
        "transparent high-resolution black lab cutout",
        "grounded contact shadow",
        "subtle idle motion",
        "future replacement by rigged GLB when available"
      ]
    },
    {
      "id": "beach_bar_billboard",
      "type": "transparent-environment-card",
      "targetPath": "/assets/beach-bar-billboard.png",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "procedural bar mesh behind ?barmesh=1",
      "requirements": [
        "transparent high-resolution beach bar cutout",
        "grounded contact shadow",
        "subtle idle presentation motion",
        "future replacement by authored GLB/PBR environment kit"
      ]
    },
    {
      "id": "beach_house_billboard",
      "type": "transparent-environment-card",
      "targetPath": "/assets/beach-house-billboard.png",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "procedural beach house mesh behind ?housemesh=1",
      "requirements": [
        "transparent high-resolution beach house cutout",
        "warm lit window and readable material detail",
        "grounded contact shadow",
        "future replacement by authored GLB/PBR environment kit"
      ]
    },
    {
      "id": "palm_cluster_billboard",
      "type": "transparent-environment-card",
      "targetPath": "/assets/palm-cluster-billboard.png",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "procedural palm meshes behind ?palmmesh=1",
      "requirements": [
        "transparent high-resolution palm and tropical foliage cutout",
        "organic curved fronds with material detail",
        "grounded contact shadow",
        "future replacement by authored wind-animated GLB foliage"
      ]
    },
    {
      "id": "black_lab_rig",
      "type": "rigged-animal",
      "targetPath": "/assets/models/black-lab.glb",
      "status": "needed",
      "loadByDefault": false,
      "currentFallback": "procedural articulated black lab mesh",
      "requirements": [
        "walk, idle, sniff, sit, tail-wag, and look-at-player animations",
        "PBR black fur with warm rim response",
        "collar and tag mesh"
      ]
    },
    {
      "id": "shoreline_environment",
      "type": "environment",
      "targetPath": "/assets/models/paradise-shoreline.glb",
      "status": "candidate",
      "loadByDefault": false,
      "currentFallback": "procedural shore, dock, bar, beach house, shells, rocks, sea oats",
      "requirements": [
        "authored shoreline terrain",
        "beach house, dock, and bar meshes",
        "PBR sand, wet sand, wood, rope, glass, foliage, and shell material sets"
      ]
    },
    {
      "id": "spectral_ocean",
      "type": "shader-system",
      "targetPath": "inline:game/index.html#makeOceanPass+waterMat",
      "status": "active",
      "loadByDefault": true,
      "currentFallback": "none",
      "requirements": [
        "JONSWAP-inspired wave stack",
        "analytical normals",
        "Fresnel sky reflection",
        "subsurface scatter",
        "shoreline foam",
        "fog and tone mapping",
        "transparent geometric water carrier",
        "day/weather presets"
      ]
    }
  ]
}
