{
  "version": 1,
  "title": "Quest puzzle materials",
  "generatedArtCount": 0,
  "migratedAssets": 8,
  "paletteCount": 10,
  "runtimeCombinations": 80,
  "gameplayIntegration": false,
  "renderer": "../overworld/material-render.js",
  "paletteFile": "palettes.json",
  "contract": "Original RGBA is copied unchanged. R/G/B encode the named material weights; black keeps original ink/interiors. Masks share exact exported art alpha. Linear-light shade comes from the shared pure renderer; no global hue shift. Source mask landmarks are hand-inspected and specific to these eight drawings. State pairs share base colours and the original union transform. Existing source/frame/pivot differences are preserved, not corrected by this migration.",
  "preservedFiles": [
    {
      "file": "art/incoming NEW/sprint-anchor-fixed.png",
      "sha256": "57ee7c8b870a666363626628e01929f0126f1a1c1d82fe59f5e10f3b4c16346d"
    },
    {
      "file": "public/art/quest/sprint/anchor-fixed.webp",
      "sha256": "40e53c34b9d60d24a080f988ea473791bc943f97b619607dbf9e0d0a56771127"
    },
    {
      "file": "public/art/quest/sprint/native/anchor-fixed.png",
      "sha256": "da8a2f2c53fe5fc38a244c29aed3e8d5a78a9862550c10bb8f89bd8b4fa538cb"
    },
    {
      "file": "public/art/quest/sprint/frames/anchor-fixed.png",
      "sha256": "8ce062df91ac9a7baee00216d9679f28994b8315d0792332267e732baec7aee2"
    },
    {
      "file": "art/incoming NEW/sprint-crate-ring.png",
      "sha256": "618db29950dee6ed560e6d1282601c95cc14613487ff70a09ce086c61c951618"
    },
    {
      "file": "public/art/quest/sprint/crate-ring.webp",
      "sha256": "791c09386ea6aa17a73a89dbd68ce337ea3784356943ccb6dd2896ee758dcfdb"
    },
    {
      "file": "public/art/quest/sprint/native/crate-ring.png",
      "sha256": "df9a1ee17da8e0247f4d273e550d6ae0842d475aa513f8538662be902938b84c"
    },
    {
      "file": "public/art/quest/sprint/frames/crate-ring.png",
      "sha256": "c9b5de43d79b9fd2880f5c4f9f0cea3cb8cfaf39489d8ba3cc6e5c9062afc5d7"
    },
    {
      "file": "art/incoming NEW/sprint-chest-closed.png",
      "sha256": "64871eb1d235c8d069f1b65d3e4602f1e94cae95082a5931abe4e6e8789d569c"
    },
    {
      "file": "public/art/quest/sprint/chest-closed.webp",
      "sha256": "3c7d3ab07bf06409ac4d3692b6295baa88f97ef4cd3fb4883f3f53ec253c3dc5"
    },
    {
      "file": "public/art/quest/sprint/native/chest-closed.png",
      "sha256": "5022c1986ea2f9cab5a01a7c5b16b1dba8a1927a5fa9ada78f869977bea3a541"
    },
    {
      "file": "public/art/quest/sprint/frames/chest-closed.png",
      "sha256": "567fa3edc90774efcaa021c6d3667fad5065583a9716e72b57d9cfde22b9a38a"
    },
    {
      "file": "art/incoming NEW/sprint-chest-open.png",
      "sha256": "f2d795d2085cb91e9b5938f98c05aa2849a9f31247343d9a1a2a8439b9631bd6"
    },
    {
      "file": "public/art/quest/sprint/chest-open.webp",
      "sha256": "863098264461b2dc6f4c884a2fd2ccb07d2f05e029748e670475e02a98d5ef2f"
    },
    {
      "file": "public/art/quest/sprint/native/chest-open.png",
      "sha256": "797a59016f5ff1ac0f1be1f055ef96624f03aa4a92ae2a23515d44a85d170fd9"
    },
    {
      "file": "public/art/quest/sprint/frames/chest-open.png",
      "sha256": "ea192c4f00eeb5935384260c464b8e62a15d921c9c714aa4caaa03fe2d348010"
    },
    {
      "file": "art/incoming NEW/sprint-plate-raised.png",
      "sha256": "ef545dd28f749624643697c073d3c3fc504a33d03e6c62c7ebbb6b8f215089b4"
    },
    {
      "file": "public/art/quest/sprint/plate-raised.webp",
      "sha256": "0cc3488545b52281752eabff2d142681520e8d46e1fd3ee5eeede7bd42dd7106"
    },
    {
      "file": "public/art/quest/sprint/native/plate-raised.png",
      "sha256": "b24796566cb1df28cc3fc29b09adb126ea07f75ac1f9a5968b30803453af7d74"
    },
    {
      "file": "public/art/quest/sprint/frames/plate-raised.png",
      "sha256": "db01d17bb24b2f0ab2b650bb5f80868b0bf542e7c43b5df12490e42c39c9feb3"
    },
    {
      "file": "art/incoming NEW/sprint-plate-pressed.png",
      "sha256": "db78a76ddb8a230675bded85e3cc9cf8c8d8caba4cb652b693d16adffd7795ed"
    },
    {
      "file": "public/art/quest/sprint/plate-pressed.webp",
      "sha256": "e8796d667e39d3679122804ced080f365a7245238f82ebac313f0e3423c227b3"
    },
    {
      "file": "public/art/quest/sprint/native/plate-pressed.png",
      "sha256": "89d884eda85850a4e7788670ab30cdaf579d8f3a40ebf2b9f024cc79f29f729a"
    },
    {
      "file": "public/art/quest/sprint/frames/plate-pressed.png",
      "sha256": "c0ae42d1a27383129239e40871309b8697d4e6615d8195765b6f00ff782cdb59"
    },
    {
      "file": "art/incoming NEW/sprint-gate-closed.png",
      "sha256": "8420d270092cedd86714c2e013410af9f5fc2c581f31f0a88591439426824b41"
    },
    {
      "file": "public/art/quest/sprint/gate-closed.webp",
      "sha256": "bef0291ba6aab89057edff339ead824284f21054c068396953f5221e0d8c98e5"
    },
    {
      "file": "public/art/quest/sprint/native/gate-closed.png",
      "sha256": "0623990a1356d28d82f12a7658355acdfcf74c293076df8a6ce002ec998ff0d0"
    },
    {
      "file": "public/art/quest/sprint/frames/gate-closed.png",
      "sha256": "75c92cdcfbf3d584880ad69b1aa172ff7acd8088e305a59aa03685f1aa1a9998"
    },
    {
      "file": "art/incoming NEW/sprint-gate-open.png",
      "sha256": "9dd8cacec9b2f0f88cf860e623dde386430c5975be8984c6745db9fe1db7bee4"
    },
    {
      "file": "public/art/quest/sprint/gate-open.webp",
      "sha256": "b36b7a93b0d1911a0fd2909674c45d2be430eda52ecbefb4cb7ff2f06866b1f4"
    },
    {
      "file": "public/art/quest/sprint/native/gate-open.png",
      "sha256": "7e036d1963c7781025f0fc61156450666ec435da1b203ec2863bc6688f3f7949"
    },
    {
      "file": "public/art/quest/sprint/frames/gate-open.png",
      "sha256": "598201bbcf735bc72330c52dc16ca1159c7517cb4522980f20e8453bfec8a37f"
    }
  ],
  "assets": [
    {
      "key": "anchor-fixed",
      "title": "Hook anchor",
      "group": [
        "anchor-fixed"
      ],
      "art": "anchor-fixed.webp",
      "native": "anchor-fixed-32.png",
      "double": "anchor-fixed-64.png",
      "originalSource": "art/incoming NEW/sprint-anchor-fixed.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "57ee7c8b870a666363626628e01929f0126f1a1c1d82fe59f5e10f3b4c16346d",
      "sourcePivot": [
        627,
        998
      ],
      "scale64": 0.07375886524822695,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        5,
        4,
        54,
        52
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "hook-target",
        "fixed"
      ],
      "materials": {
        "master": "anchor-fixed-materials.png",
        "native": "anchor-fixed-materials-32.png",
        "double": "anchor-fixed-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/anchor-fixed-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "stone",
            "baseColor": "#928065",
            "sourcePixels": 255073
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#a37840",
            "sourcePixels": 85188
          }
        ]
      },
      "paletteAtlases": {
        "native": "anchor-fixed-palettes-32.png",
        "double": "anchor-fixed-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "crate-ring",
      "title": "Pulling crate",
      "group": [
        "crate-ring"
      ],
      "art": "crate-ring.webp",
      "native": "crate-ring-32.png",
      "double": "crate-ring-64.png",
      "originalSource": "art/incoming NEW/sprint-crate-ring.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "618db29950dee6ed560e6d1282601c95cc14613487ff70a09ce086c61c951618",
      "sourcePivot": [
        626,
        916
      ],
      "scale64": 0.09171075837742504,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        6,
        4,
        52,
        52
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "hook-target",
        "pullable"
      ],
      "materials": {
        "master": "crate-ring-materials.png",
        "native": "crate-ring-materials-32.png",
        "double": "crate-ring-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/crate-ring-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "wood",
            "baseColor": "#b6773e",
            "sourcePixels": 179313
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#aa7635",
            "sourcePixels": 18594
          },
          {
            "channel": "B",
            "name": "trim",
            "baseColor": "#7d5136",
            "sourcePixels": 45641
          }
        ]
      },
      "paletteAtlases": {
        "native": "crate-ring-palettes-32.png",
        "double": "crate-ring-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "chest-closed",
      "title": "Chest · closed",
      "group": [
        "chest-closed",
        "chest-open"
      ],
      "art": "chest-closed.webp",
      "native": "chest-closed-32.png",
      "double": "chest-closed-64.png",
      "originalSource": "art/incoming NEW/sprint-chest-closed.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "64871eb1d235c8d069f1b65d3e4602f1e94cae95082a5931abe4e6e8789d569c",
      "sourcePivot": [
        627,
        947
      ],
      "scale64": 0.07172413793103448,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        7,
        17,
        49,
        34
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "interact",
        "container",
        "closed"
      ],
      "materials": {
        "master": "chest-closed-materials.png",
        "native": "chest-closed-materials-32.png",
        "double": "chest-closed-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/chest-closed-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "wood",
            "baseColor": "#94542e",
            "sourcePixels": 148726
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#d0963c",
            "sourcePixels": 87184
          }
        ]
      },
      "paletteAtlases": {
        "native": "chest-closed-palettes-32.png",
        "double": "chest-closed-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "chest-open",
      "title": "Chest · open",
      "group": [
        "chest-closed",
        "chest-open"
      ],
      "art": "chest-open.webp",
      "native": "chest-open-32.png",
      "double": "chest-open-64.png",
      "originalSource": "art/incoming NEW/sprint-chest-open.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "f2d795d2085cb91e9b5938f98c05aa2849a9f31247343d9a1a2a8439b9631bd6",
      "sourcePivot": [
        627,
        947
      ],
      "scale64": 0.07172413793103448,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        8,
        4,
        48,
        52
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "interact",
        "container",
        "open"
      ],
      "materials": {
        "master": "chest-open-materials.png",
        "native": "chest-open-materials-32.png",
        "double": "chest-open-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/chest-open-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "wood",
            "baseColor": "#94542e",
            "sourcePixels": 155342
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#d0963c",
            "sourcePixels": 62954
          }
        ]
      },
      "paletteAtlases": {
        "native": "chest-open-palettes-32.png",
        "double": "chest-open-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "plate-raised",
      "title": "Plate · raised",
      "group": [
        "plate-raised",
        "plate-pressed"
      ],
      "art": "plate-raised.webp",
      "native": "plate-raised-32.png",
      "double": "plate-raised-64.png",
      "originalSource": "art/incoming NEW/sprint-plate-raised.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "ef545dd28f749624643697c073d3c3fc504a33d03e6c62c7ebbb6b8f215089b4",
      "sourcePivot": [
        628,
        905
      ],
      "scale64": 0.09403254972875226,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        5,
        4,
        54,
        52
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "pressure-switch",
        "raised"
      ],
      "materials": {
        "master": "plate-raised-materials.png",
        "native": "plate-raised-materials-32.png",
        "double": "plate-raised-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/plate-raised-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "stone",
            "baseColor": "#8e805a",
            "sourcePixels": 149066
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#b6873e",
            "sourcePixels": 117638
          }
        ]
      },
      "paletteAtlases": {
        "native": "plate-raised-palettes-32.png",
        "double": "plate-raised-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "plate-pressed",
      "title": "Plate · pressed",
      "group": [
        "plate-raised",
        "plate-pressed"
      ],
      "art": "plate-pressed.webp",
      "native": "plate-pressed-32.png",
      "double": "plate-pressed-64.png",
      "originalSource": "art/incoming NEW/sprint-plate-pressed.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "db78a76ddb8a230675bded85e3cc9cf8c8d8caba4cb652b693d16adffd7795ed",
      "sourcePivot": [
        628,
        905
      ],
      "scale64": 0.09403254972875226,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        5,
        4,
        54,
        52
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "pressure-switch",
        "pressed"
      ],
      "materials": {
        "master": "plate-pressed-materials.png",
        "native": "plate-pressed-materials-32.png",
        "double": "plate-pressed-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/plate-pressed-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "stone",
            "baseColor": "#8e805a",
            "sourcePixels": 150840
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#b6873e",
            "sourcePixels": 117842
          },
          {
            "channel": "B",
            "name": "indicator",
            "baseColor": "#deb260",
            "sourcePixels": 5959
          }
        ]
      },
      "paletteAtlases": {
        "native": "plate-pressed-palettes-32.png",
        "double": "plate-pressed-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "gate-closed",
      "title": "Gate · closed",
      "group": [
        "gate-closed",
        "gate-open"
      ],
      "art": "gate-closed.webp",
      "native": "gate-closed-32.png",
      "double": "gate-closed-64.png",
      "originalSource": "art/incoming NEW/sprint-gate-closed.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "8420d270092cedd86714c2e013410af9f5fc2c581f31f0a88591439426824b41",
      "sourcePivot": [
        627.5,
        995
      ],
      "scale64": 0.06054054054054054,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        5,
        12,
        54,
        43
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "barrier",
        "closed"
      ],
      "materials": {
        "master": "gate-closed-materials.png",
        "native": "gate-closed-materials-32.png",
        "double": "gate-closed-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/gate-closed-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "stone",
            "baseColor": "#a38e6c",
            "sourcePixels": 298666
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#ac7b34",
            "sourcePixels": 76233
          }
        ]
      },
      "paletteAtlases": {
        "native": "gate-closed-palettes-32.png",
        "double": "gate-closed-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    },
    {
      "key": "gate-open",
      "title": "Gate · open",
      "group": [
        "gate-closed",
        "gate-open"
      ],
      "art": "gate-open.webp",
      "native": "gate-open-32.png",
      "double": "gate-open-64.png",
      "originalSource": "art/incoming NEW/sprint-gate-open.png",
      "sourceDimensions": [
        1254,
        1254
      ],
      "sourceSha256": "9dd8cacec9b2f0f88cf860e623dde386430c5975be8984c6745db9fe1db7bee4",
      "sourcePivot": [
        627.5,
        995
      ],
      "scale64": 0.06054054054054054,
      "frame": [
        32,
        32
      ],
      "doubleFrame": [
        64,
        64
      ],
      "pivot": [
        16,
        28
      ],
      "doublePivot": [
        32,
        56
      ],
      "visualBounds64": [
        4,
        12,
        56,
        44
      ],
      "logicalFootprint": {
        "tiles": [
          1,
          1
        ],
        "status": "Proposed puzzle footprint, separate from visual silhouette; not collision-tested."
      },
      "interactionTags": [
        "barrier",
        "open"
      ],
      "materials": {
        "master": "gate-open-materials.png",
        "native": "gate-open-materials-32.png",
        "double": "gate-open-materials-64.png",
        "preservedSource": "art/incoming NEW/quest-puzzle-materials/gate-open-materials-source.png",
        "zones": [
          {
            "channel": "R",
            "name": "stone",
            "baseColor": "#a38e6c",
            "sourcePixels": 326176
          },
          {
            "channel": "G",
            "name": "metal",
            "baseColor": "#ac7b34",
            "sourcePixels": 4571
          }
        ]
      },
      "paletteAtlases": {
        "native": "gate-open-palettes-32.png",
        "double": "gate-open-palettes-64.png",
        "columns": [
          "original",
          "spring",
          "summer",
          "autumn",
          "frost",
          "moonlight",
          "bog",
          "desert",
          "coral",
          "magical"
        ],
        "pivotPerCell": "Same pivot as the corresponding original frame."
      }
    }
  ]
}
