{
  "schemaVersion": "gf-origin-weapon-effect-candidates/1",
  "clientId": "origin",
  "id": "source:e91a2997d70d5ae22e624ac5c7bf3096aaf15ede6618c705711f2405aaedc855",
  "source": {
    "path": "item/model/W617.nif",
    "pathSha256": "3f0acd83c72caacdc7b07318c46d145e9d8b2c24429886be7563062a93fea18e",
    "sha256": "e91a2997d70d5ae22e624ac5c7bf3096aaf15ede6618c705711f2405aaedc855",
    "catalogSha256": "e91a2997d70d5ae22e624ac5c7bf3096aaf15ede6618c705711f2405aaedc855",
    "sizeBytes": 17913,
    "header": {
      "headerString": "Gamebryo File Format, Version 20.2.0.8",
      "versionRaw": 335675400,
      "endian": "ENDIAN_LITTLE",
      "userVersionRaw": 0
    },
    "blockCount": 13,
    "blockTypeCounts": {
      "NiAlphaProperty": 1,
      "NiMaterialProperty": 1,
      "NiNode": 3,
      "NiSourceTexture": 1,
      "NiStringExtraData": 2,
      "NiTexturingProperty": 1,
      "NiTriStrips": 1,
      "NiTriStripsData": 1,
      "NiVertexColorProperty": 1,
      "NiZBufferProperty": 1
    },
    "blockCatalog": [
      {
        "blockIndex": 0,
        "type": "NiNode",
        "name": "Scene Root",
        "sourceOffset": 443,
        "sourceSizeBytes": 102
      },
      {
        "blockIndex": 1,
        "type": "NiZBufferProperty",
        "name": "",
        "sourceOffset": 545,
        "sourceSizeBytes": 14
      },
      {
        "blockIndex": 2,
        "type": "NiVertexColorProperty",
        "name": "",
        "sourceOffset": 559,
        "sourceSizeBytes": 14
      },
      {
        "blockIndex": 3,
        "type": "NiTriStrips",
        "name": "W617",
        "sourceOffset": 573,
        "sourceSizeBytes": 103
      },
      {
        "blockIndex": 4,
        "type": "NiMaterialProperty",
        "name": "Material #512",
        "sourceOffset": 676,
        "sourceSizeBytes": 68
      },
      {
        "blockIndex": 5,
        "type": "NiAlphaProperty",
        "name": "",
        "sourceOffset": 744,
        "sourceSizeBytes": 15
      },
      {
        "blockIndex": 6,
        "type": "NiTexturingProperty",
        "name": "",
        "sourceOffset": 759,
        "sourceSizeBytes": 38
      },
      {
        "blockIndex": 7,
        "type": "NiSourceTexture",
        "name": "",
        "sourceOffset": 797,
        "sourceSizeBytes": 36
      },
      {
        "blockIndex": 8,
        "type": "NiTriStripsData",
        "name": "",
        "sourceOffset": 833,
        "sourceSizeBytes": 16884
      },
      {
        "blockIndex": 9,
        "type": "NiNode",
        "name": "W1",
        "sourceOffset": 17717,
        "sourceSizeBytes": 86
      },
      {
        "blockIndex": 10,
        "type": "NiStringExtraData",
        "name": "UserPropBuffer",
        "sourceOffset": 17803,
        "sourceSizeBytes": 8
      },
      {
        "blockIndex": 11,
        "type": "NiNode",
        "name": "W2",
        "sourceOffset": 17811,
        "sourceSizeBytes": 86
      },
      {
        "blockIndex": 12,
        "type": "NiStringExtraData",
        "name": "UserPropBuffer",
        "sourceOffset": 17897,
        "sourceSizeBytes": 8
      }
    ]
  },
  "extractor": {
    "path": "scripts/inspect-client-effects.py",
    "sha256": "51995a5f8e7f762483a63d7706cac90b6b57354d0d58e47193259772377c7a92",
    "sizeBytes": 103255,
    "nifToolsVersion": "0.1.1",
    "nifToolsArchiveSha256": "c8da8a1ffc57b6b28b8a59e19b53a2b2961a701220a68ecbfda652f22dd2ceaf"
  },
  "resumeKey": {
    "sourceSha256": "e91a2997d70d5ae22e624ac5c7bf3096aaf15ede6618c705711f2405aaedc855",
    "extractorSha256": "51995a5f8e7f762483a63d7706cac90b6b57354d0d58e47193259772377c7a92",
    "principalSelectionSha256": "7b53e7a2ebd9dc088cac2fe1a6be10eb5963c6ad79fc732e932ef46e9a3fe1c6",
    "texturesSha256": "dcec8d10ff7f38cd75964af77a0ec6008f326119a74104515977175ac2ab1c6c"
  },
  "principalSelection": {
    "principalGeometryBlockIndices": [
      3
    ],
    "selectionRule": "Largest textured geometry and meshes sharing its base texture",
    "selectionRuleStatus": "PROTOTYPE_MAPPING",
    "sha256": "7b53e7a2ebd9dc088cac2fe1a6be10eb5963c6ad79fc732e932ef46e9a3fe1c6",
    "excludedFromCandidateMeshes": true
  },
  "coordinateConversion": {
    "coordinateSystem": "NIF Z-up; original client units",
    "geometryValues": "Raw NiTriShapeData/NiTriStripsData values",
    "matrixConvention": "4x4 row arrays; column vectors; sourceMatrixWorld = parentWorld @ localNifTransform",
    "viewerConversion": "Scale 0.1, then rotate X by -PI/2, then sourceMatrixWorld, then source vertex",
    "billboard": "Mode and source transform are reported; no camera-facing transform is baked."
  },
  "extractionStatus": "complete",
  "candidateMeshCount": 0,
  "excludedPrincipalGeometryBlockIndices": [
    3
  ],
  "emitterMeshBlockIndices": [],
  "candidateMeshes": [],
  "particleSystems": [],
  "controllers": [],
  "textures": [
    {
      "sourceFileNameRaw": "W61701.dds",
      "sourcePath": "item/texture/W61701.dds",
      "sourceSizeBytes": 32896,
      "sourceSha256": "33bd8ac869a07a79056eb3d1d61b9cf436bf22133051c2dd63517284a23bf086",
      "resolution": {
        "status": "resolved",
        "method": "domain_texture_basename_unique",
        "path": "item/texture/W61701.dds"
      },
      "previewAsset": {
        "status": "written",
        "url": "effects/assets/33bd8ac8-w61701.png",
        "size": [
          256,
          256
        ],
        "alphaRange": [
          0,
          255
        ],
        "sizeBytes": 50037,
        "sha256": "b845ddca8b9bc00025c563b7cb083e831e47b000d14e7b120be85d14b7c2e9b5",
        "conversion": "Pillow Image.open(DDS).convert(RGBA).save(PNG)"
      },
      "sourceTextureBlockIndex": 7
    }
  ],
  "blockTypesNotExpanded": {
    "NiStringExtraData": 2
  },
  "semanticBoundary": {
    "candidateMeshes": "All static source meshes other than the catalog principal selection; exclusion from the converted main mesh does not establish that a candidate is an engine effect.",
    "emitters": "NiPSys emitter configuration, mesh references, controller keys, and properties are preserved; particle instances are not sampled or synthesized.",
    "engineCompared": false
  },
  "diagnostics": []
}
