@carbonenginejs/runtime-resource 0.19.2 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +6 -0
- package/dist/CjsResMan.js +1374 -1318
- package/dist/CjsResMan.js.map +1 -1
- package/dist/format/CjsFormat.js +393 -164
- package/dist/format/CjsFormat.js.map +1 -1
- package/dist/format/CjsFormatStore.js +315 -0
- package/dist/format/CjsFormatStore.js.map +1 -0
- package/dist/format/CjsResourceProbe.js +66 -234
- package/dist/format/CjsResourceProbe.js.map +1 -1
- package/dist/format/payloadContract.js +47 -6
- package/dist/format/payloadContract.js.map +1 -1
- package/dist/formats/black/CjsBlackFormat.js +23 -6
- package/dist/formats/black/CjsBlackFormat.js.map +1 -1
- package/dist/formats/bnk/CjsBnkFormat.js +122 -120
- package/dist/formats/bnk/CjsBnkFormat.js.map +1 -1
- package/dist/formats/bnk/core/helpers.js +5 -15
- package/dist/formats/bnk/core/helpers.js.map +1 -1
- package/dist/formats/cmf/CjsCmfFormat.js +31 -14
- package/dist/formats/cmf/CjsCmfFormat.js.map +1 -1
- package/dist/formats/dds/CjsDdsFormat.js +29 -19
- package/dist/formats/dds/CjsDdsFormat.js.map +1 -1
- package/dist/formats/dds/core/helpers.js +4 -5
- package/dist/formats/dds/core/helpers.js.map +1 -1
- package/dist/formats/dxbc/CjsDxbcFormat.js +15 -13
- package/dist/formats/dxbc/CjsDxbcFormat.js.map +1 -1
- package/dist/formats/fbx/CjsFbxFormat.js +27 -19
- package/dist/formats/fbx/CjsFbxFormat.js.map +1 -1
- package/dist/formats/fbx/core/helpers.js +4 -4
- package/dist/formats/fbx/core/helpers.js.map +1 -1
- package/dist/formats/flac/CjsFlacFormat.js +19 -17
- package/dist/formats/flac/CjsFlacFormat.js.map +1 -1
- package/dist/formats/flac/core/helpers.js +5 -11
- package/dist/formats/flac/core/helpers.js.map +1 -1
- package/dist/formats/fsd/32/CjsFsd32Format.js +55 -0
- package/dist/formats/fsd/32/CjsFsd32Format.js.map +1 -0
- package/dist/formats/fsd/32/index.js +2 -0
- package/dist/formats/fsd/32/index.js.map +1 -0
- package/dist/formats/fsd/64/CjsFsd64Format.js +119 -0
- package/dist/formats/fsd/64/CjsFsd64Format.js.map +1 -0
- package/dist/formats/fsd/64/core/CjsFsd64Binary.js +393 -0
- package/dist/formats/fsd/64/core/CjsFsd64Binary.js.map +1 -0
- package/dist/formats/fsd/64/core/CjsFsd64Reader.js +138 -0
- package/dist/formats/fsd/64/core/CjsFsd64Reader.js.map +1 -0
- package/dist/formats/fsd/64/core/CjsFsd64SchemaDecoder.js +389 -0
- package/dist/formats/fsd/64/core/CjsFsd64SchemaDecoder.js.map +1 -0
- package/dist/formats/fsd/64/core/CjsFsd64SchemaReader.js +43 -0
- package/dist/formats/fsd/64/core/CjsFsd64SchemaReader.js.map +1 -0
- package/dist/formats/fsd/64/core/fsd64Records.js +60 -0
- package/dist/formats/fsd/64/core/fsd64Records.js.map +1 -0
- package/dist/formats/fsd/64/index.js +7 -0
- package/dist/formats/fsd/64/index.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64ReaderSetCharacterStaticData.js +33 -0
- package/dist/formats/fsd/64/readers/CjsFsd64ReaderSetCharacterStaticData.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentTypes.js +35 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentTypes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentsInSpace.js +50 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentsInSpace.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAncestries.js +75 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAncestries.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaArchetypes.js +57 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaArchetypes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAudioMetadata.js +201 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaAudioMetadata.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaBloodlines.js +73 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaBloodlines.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCategories.js +53 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCategories.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterAvatarBehaviors.js +44 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterAvatarBehaviors.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorLocations.js +38 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorLocations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorNames.js +34 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorNames.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterModifierLocations.js +34 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterModifierLocations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterPortraitResources.js +44 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterPortraitResources.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterResources.js +81 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterResources.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterSculptingLocations.js +34 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterSculptingLocations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCompressibleTypes.js +41 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCompressibleTypes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaContrabandTypes.js +63 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaContrabandTypes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaControlTowerResources.js +76 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaControlTowerResources.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationActivities.js +38 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationActivities.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoleGroups.js +74 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoleGroups.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoles.js +59 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoles.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributeCategories.js +46 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributeCategories.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributes.js +133 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaEffects.js +236 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaEffects.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaUnits.js +60 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaUnits.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDynamicItemAttributes.js +95 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaDynamicItemAttributes.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaEpicArcs.js +106 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaEpicArcs.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaExpertSystems.js +86 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaExpertSystems.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaFactions.js +117 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaFactions.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicIds.js +70 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicIds.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicMaterialSets.js +173 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicMaterialSets.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGroups.js +77 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaGroups.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaIcons.js +62 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaIcons.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaMarketGroups.js +63 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaMarketGroups.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaMetaGroups.js +86 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaMetaGroups.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporationDivisions.js +72 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporationDivisions.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporations.js +326 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaPaperdolls.js +279 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaPaperdolls.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaRaces.js +64 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaRaces.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchoolMap.js +40 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchoolMap.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchools.js +113 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchools.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkillPlans.js +130 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkillPlans.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentCategories.js +38 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentCategories.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentPointValues.js +45 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentPointValues.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentRarities.js +44 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentRarities.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponents.js +163 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponents.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotCategories.js +37 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotCategories.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotConfigurations.js +77 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotConfigurations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotNames.js +37 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotNames.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlots.js +74 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlots.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrTierThresholds.js +44 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrTierThresholds.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationOperations.js +120 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationOperations.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationServices.js +49 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationServices.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeDogma.js +73 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeDogma.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeLists.js +122 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeLists.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeMaterials.js +83 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeMaterials.js.map +1 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypes.js +194 -0
- package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypes.js.map +1 -0
- package/dist/formats/fsd/64/readers/index.js +58 -0
- package/dist/formats/fsd/64/readers/index.js.map +1 -0
- package/dist/formats/fsd/CjsFsdFormat.js +62 -0
- package/dist/formats/fsd/CjsFsdFormat.js.map +1 -0
- package/dist/formats/fsd/index.js +9 -0
- package/dist/formats/fsd/index.js.map +1 -0
- package/dist/formats/gif/CjsGifFormat.js +26 -16
- package/dist/formats/gif/CjsGifFormat.js.map +1 -1
- package/dist/formats/gif/core/helpers.js +6 -18
- package/dist/formats/gif/core/helpers.js.map +1 -1
- package/dist/formats/gltf/CjsGltfFormat.js +25 -13
- package/dist/formats/gltf/CjsGltfFormat.js.map +1 -1
- package/dist/formats/gr2/CjsGr2Format.js +27 -6
- package/dist/formats/gr2/CjsGr2Format.js.map +1 -1
- package/dist/formats/hlsl/CjsHlslFormat.js +20 -16
- package/dist/formats/hlsl/CjsHlslFormat.js.map +1 -1
- package/dist/formats/hlsl/core/analysis.js +1 -1
- package/dist/formats/index.js +5 -0
- package/dist/formats/index.js.map +1 -1
- package/dist/formats/jpeg/CjsJpegFormat.js +26 -19
- package/dist/formats/jpeg/CjsJpegFormat.js.map +1 -1
- package/dist/formats/jpeg/core/helpers.js +6 -15
- package/dist/formats/jpeg/core/helpers.js.map +1 -1
- package/dist/formats/jpeg/core/jpeg.js +0 -3
- package/dist/formats/jpeg/core/jpeg.js.map +1 -1
- package/dist/formats/mp3/CjsMp3Format.js +19 -19
- package/dist/formats/mp3/CjsMp3Format.js.map +1 -1
- package/dist/formats/mp3/core/helpers.js +5 -11
- package/dist/formats/mp3/core/helpers.js.map +1 -1
- package/dist/formats/mp4/CjsMp4Format.js +20 -19
- package/dist/formats/mp4/CjsMp4Format.js.map +1 -1
- package/dist/formats/mp4/core/helpers.js +6 -15
- package/dist/formats/mp4/core/helpers.js.map +1 -1
- package/dist/formats/obj/CjsObjFormat.js +25 -12
- package/dist/formats/obj/CjsObjFormat.js.map +1 -1
- package/dist/formats/ogg/CjsOggFormat.js +26 -17
- package/dist/formats/ogg/CjsOggFormat.js.map +1 -1
- package/dist/formats/ogg/core/helpers.js +5 -16
- package/dist/formats/ogg/core/helpers.js.map +1 -1
- package/dist/formats/pickle/CjsPickleFormat.js +64 -5
- package/dist/formats/pickle/CjsPickleFormat.js.map +1 -1
- package/dist/formats/png/CjsPngFormat.js +28 -19
- package/dist/formats/png/CjsPngFormat.js.map +1 -1
- package/dist/formats/png/core/helpers.js +5 -14
- package/dist/formats/png/core/helpers.js.map +1 -1
- package/dist/formats/red/CjsRedFormat.js +19 -5
- package/dist/formats/red/CjsRedFormat.js.map +1 -1
- package/dist/formats/schemabound/CjsSchemaBoundFormat.js +48 -38
- package/dist/formats/schemabound/CjsSchemaBoundFormat.js.map +1 -1
- package/dist/formats/sqlite/CjsSqliteFormat.js +49 -41
- package/dist/formats/sqlite/CjsSqliteFormat.js.map +1 -1
- package/dist/formats/static/CjsStaticFormat.js +15 -57
- package/dist/formats/static/CjsStaticFormat.js.map +1 -1
- package/dist/formats/static/staticContainers.js +6 -6
- package/dist/formats/static/staticContainers.js.map +1 -1
- package/dist/formats/stl/CjsStlFormat.js +25 -12
- package/dist/formats/stl/CjsStlFormat.js.map +1 -1
- package/dist/formats/tga/CjsTgaFormat.js +26 -19
- package/dist/formats/tga/CjsTgaFormat.js.map +1 -1
- package/dist/formats/tga/core/helpers.js +7 -22
- package/dist/formats/tga/core/helpers.js.map +1 -1
- package/dist/formats/wav/CjsWavFormat.js +26 -19
- package/dist/formats/wav/CjsWavFormat.js.map +1 -1
- package/dist/formats/wav/core/helpers.js +7 -16
- package/dist/formats/wav/core/helpers.js.map +1 -1
- package/dist/formats/webgl/CjsWebglFormat.js +11 -13
- package/dist/formats/webgl/CjsWebglFormat.js.map +1 -1
- package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js +90 -12
- package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
- package/dist/formats/webgl/core/helpers.js +2 -2
- package/dist/formats/webgl/core/helpers.js.map +1 -1
- package/dist/formats/webgl/core/readGlslEffectContainer.js +8 -8
- package/dist/formats/webgl/core/readGlslEffectContainer.js.map +1 -1
- package/dist/formats/webgpu/CjsWebgpuFormat.js +11 -5
- package/dist/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
- package/dist/formats/webm/CjsWebmFormat.js +20 -19
- package/dist/formats/webm/CjsWebmFormat.js.map +1 -1
- package/dist/formats/webm/core/helpers.js +6 -15
- package/dist/formats/webm/core/helpers.js.map +1 -1
- package/dist/formats/webp/CjsWebpFormat.js +19 -17
- package/dist/formats/webp/CjsWebpFormat.js.map +1 -1
- package/dist/formats/webp/core/helpers.js +5 -11
- package/dist/formats/webp/core/helpers.js.map +1 -1
- package/dist/formats/wem/CjsWemFormat.js +128 -141
- package/dist/formats/wem/CjsWemFormat.js.map +1 -1
- package/dist/formats/wem/core/helpers.js +1 -114
- package/dist/formats/wem/core/helpers.js.map +1 -1
- package/dist/formats/wem/core/{resolve.js → probeCodecSupport.js} +11 -18
- package/dist/formats/wem/core/probeCodecSupport.js.map +1 -0
- package/dist/formats/yaml/CjsYamlFormat.js +20 -5
- package/dist/formats/yaml/CjsYamlFormat.js.map +1 -1
- package/dist/generated/index.js +2 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/resources/Tr2RaycastGeometryRes.js +34 -0
- package/dist/generated/resources/Tr2RaycastGeometryRes.js.map +1 -0
- package/dist/generated/resources/index.js +2 -0
- package/dist/generated/resources/index.js.map +1 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/resource/CjsResource.js +134 -0
- package/dist/resource/CjsResource.js.map +1 -1
- package/dist/resource/ResourceRequirement.js +42 -0
- package/dist/resource/ResourceRequirement.js.map +1 -0
- package/dist/resource/Tr2LightProfileRes.js +2 -1
- package/dist/resource/Tr2LightProfileRes.js.map +1 -1
- package/dist/resource/geometry/TriGeometryRes.js +34 -7
- package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
- package/dist/resource/geometry/granny/Tr2GrannyStateRes.js +184 -7
- package/dist/resource/geometry/granny/Tr2GrannyStateRes.js.map +1 -1
- package/dist/resource/geometry/granny/TriGrannyRes.js +20 -8
- package/dist/resource/geometry/granny/TriGrannyRes.js.map +1 -1
- package/dist/resource/index.js +1 -0
- package/dist/resource/index.js.map +1 -1
- package/dist/resource/resourceBoundary.js +24 -1
- package/dist/resource/resourceBoundary.js.map +1 -1
- package/dist/resource/shader/Tr2EffectRes.js +2 -1
- package/dist/resource/shader/Tr2EffectRes.js.map +1 -1
- package/dist/resource/texture/CjsTextureArrayRes.js +2 -1
- package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
- package/dist/resource/texture/Tr2ImageRes.js +2 -1
- package/dist/resource/texture/Tr2ImageRes.js.map +1 -1
- package/dist/resource/texture/TriTextureRes.js +40 -2
- package/dist/resource/texture/TriTextureRes.js.map +1 -1
- package/docs/architecture.md +121 -116
- package/docs/concepts/format-capabilities.md +90 -0
- package/docs/formats/README.md +14 -6
- package/docs/formats/fsd.md +104 -0
- package/docs/formats/gr2.md +1 -1
- package/docs/formats/hlsl/reference/api.md +6 -4
- package/docs/formats/provenance.md +18 -0
- package/docs/formats/schemabound.md +10 -4
- package/docs/formats/static.md +26 -26
- package/docs/formats/webgpu/reference/api.md +4 -3
- package/docs/reference/classes/core.md +22 -2
- package/docs/reference/classes/formats.md +643 -1
- package/docs/reference/classes/resources.md +463 -453
- package/docs/reference/queues.md +205 -194
- package/docs/roadmap.md +14 -18
- package/format-notices/fsd/LICENSE +21 -0
- package/format-notices/fsd/NOTICE +11 -0
- package/package.json +70 -64
- package/dist/formats/wem/core/resolve.js.map +0 -1
- package/docs/concepts/format-type-resolution.md +0 -79
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64ReaderSetCharacterStaticData.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64ReaderSetCharacterStaticData.js"],"sourcesContent":["import ancestriesReader from \"./CjsFsd64SchemaAncestries.js\";\nimport archetypesReader from \"./CjsFsd64SchemaArchetypes.js\";\nimport bloodlinesReader from \"./CjsFsd64SchemaBloodlines.js\";\nimport characterAvatarBehaviorsReader from \"./CjsFsd64SchemaCharacterAvatarBehaviors.js\";\nimport characterColorLocationsReader from \"./CjsFsd64SchemaCharacterColorLocations.js\";\nimport characterColorNamesReader from \"./CjsFsd64SchemaCharacterColorNames.js\";\nimport characterModifierLocationsReader from \"./CjsFsd64SchemaCharacterModifierLocations.js\";\nimport characterPortraitResourcesReader from \"./CjsFsd64SchemaCharacterPortraitResources.js\";\nimport characterResourcesReader from \"./CjsFsd64SchemaCharacterResources.js\";\nimport characterSculptingLocationsReader from \"./CjsFsd64SchemaCharacterSculptingLocations.js\";\nimport paperdollsReader from \"./CjsFsd64SchemaPaperdolls.js\";\nimport racesReader from \"./CjsFsd64SchemaRaces.js\";\n\nconst CHARACTER_STATIC_DATA_READERS = [\n ancestriesReader,\n archetypesReader,\n bloodlinesReader,\n characterAvatarBehaviorsReader,\n characterColorLocationsReader,\n characterColorNamesReader,\n characterModifierLocationsReader,\n characterPortraitResourcesReader,\n characterResourcesReader,\n characterSculptingLocationsReader,\n paperdollsReader,\n racesReader,\n];\n\nexport const CHARACTER_STATIC_DATA_PATHS =\n CHARACTER_STATIC_DATA_READERS.map(reader => reader.constructor.path);\n\n/**\n * File-specific character/staticdata readers.\n */\nexport class CjsFsd64ReaderSetCharacterStaticData\n{\n static create()\n {\n return [ ...CHARACTER_STATIC_DATA_READERS ];\n }\n\n static registerAll(registry)\n {\n for (const reader of this.create())\n {\n registry.Register(reader.constructor.path, reader);\n }\n\n return registry;\n }\n}\n\nexport default CjsFsd64ReaderSetCharacterStaticData;\n"],"names":["CHARACTER_STATIC_DATA_READERS","ancestriesReader","archetypesReader","bloodlinesReader","characterAvatarBehaviorsReader","characterColorLocationsReader","characterColorNamesReader","characterModifierLocationsReader","characterPortraitResourcesReader","characterResourcesReader","characterSculptingLocationsReader","paperdollsReader","racesReader","CHARACTER_STATIC_DATA_PATHS","map","reader","constructor","path","CjsFsd64ReaderSetCharacterStaticData","create","registerAll","registry","Register"],"mappings":";;;;;;;;;;;;;AAaA,MAAMA,6BAA6B,GAAG,CAClCC,gBAAgB,EAChBC,gBAAgB,EAChBC,gBAAgB,EAChBC,8BAA8B,EAC9BC,6BAA6B,EAC7BC,yBAAyB,EACzBC,gCAAgC,EAChCC,gCAAgC,EAChCC,wBAAwB,EACxBC,iCAAiC,EACjCC,gBAAgB,EAChBC,WAAW,CACd;AAEM,MAAMC,2BAA2B,GACpCb,6BAA6B,CAACc,GAAG,CAACC,MAAM,IAAIA,MAAM,CAACC,WAAW,CAACC,IAAI;;AAEvE;AACA;AACA;AACO,MAAMC,oCAAoC,CACjD;EACI,OAAOC,MAAMA,GACb;IACI,OAAO,CAAE,GAAGnB,6BAA6B,CAAE;AAC/C,EAAA;EAEA,OAAOoB,WAAWA,CAACC,QAAQ,EAC3B;IACI,KAAK,MAAMN,MAAM,IAAI,IAAI,CAACI,MAAM,EAAE,EAClC;MACIE,QAAQ,CAACC,QAAQ,CAACP,MAAM,CAACC,WAAW,CAACC,IAAI,EAAEF,MAAM,CAAC;AACtD,IAAA;AAEA,IAAA,OAAOM,QAAQ;AACnB,EAAA;AACJ;;;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Reads caller-supplied `agenttypes.fsdbinary` bytes.
|
|
6
|
+
*
|
|
7
|
+
* This is a scalar-valued map - a `uint32` key and a bare string, with no
|
|
8
|
+
* record of named fields at all. `agenttypesloader` naming no fields is the
|
|
9
|
+
* evidence for that, not a failure to read it: a loader with an empty field run
|
|
10
|
+
* is how this format spells a map whose value is a single value.
|
|
11
|
+
*/
|
|
12
|
+
class CjsFsd64SchemaAgentTypes extends CjsFsd64SchemaReader {
|
|
13
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
14
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
15
|
+
"name": "agentTypes",
|
|
16
|
+
"schemaVersion": 1,
|
|
17
|
+
"path": "res:/staticdata/agenttypes.fsdbinary",
|
|
18
|
+
"schemaID": "887f6fefedee7215c178f4db09731a3d",
|
|
19
|
+
"container": {
|
|
20
|
+
"type": "MAP",
|
|
21
|
+
"recordSize": 16,
|
|
22
|
+
"key": {
|
|
23
|
+
"type": "UINT_32_IDENTIFIER",
|
|
24
|
+
"offset": 0
|
|
25
|
+
},
|
|
26
|
+
"value": {
|
|
27
|
+
"type": "STRING",
|
|
28
|
+
"offset": 8
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { CjsFsd64SchemaAgentTypes };
|
|
35
|
+
//# sourceMappingURL=CjsFsd64SchemaAgentTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaAgentTypes.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaAgentTypes.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n/**\n * Reads caller-supplied `agenttypes.fsdbinary` bytes.\n *\n * This is a scalar-valued map - a `uint32` key and a bare string, with no\n * record of named fields at all. `agenttypesloader` naming no fields is the\n * evidence for that, not a failure to read it: a loader with an empty field run\n * is how this format spells a map whose value is a single value.\n */\nexport class CjsFsd64SchemaAgentTypes extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"agentTypes\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/agenttypes.fsdbinary\",\n \"schemaID\": \"887f6fefedee7215c178f4db09731a3d\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 16,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"value\": {\n \"type\": \"STRING\",\n \"offset\": 8\n }\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaAgentTypes();\n"],"names":["CjsFsd64SchemaAgentTypes","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,wBAAwB,SAASC,oBAAoB,CAClE;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,YAAY;AACpB,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,sCAAsC;AAC9C,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,WAAW,EAAE;AACT,MAAA,MAAM,EAAE,KAAK;AACb,MAAA,YAAY,EAAE,EAAE;AAChB,MAAA,KAAK,EAAE;AACH,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE;OACb;AACD,MAAA,OAAO,EAAE;AACL,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd;AACJ;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Reads caller-supplied `agentsinspace.fsdbinary` bytes.
|
|
6
|
+
*
|
|
7
|
+
* Four identifiers and no text, so this table needs no localisation. The key is
|
|
8
|
+
* the agent.
|
|
9
|
+
*/
|
|
10
|
+
class CjsFsd64SchemaAgentsInSpace extends CjsFsd64SchemaReader {
|
|
11
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
12
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
13
|
+
"name": "agentsInSpace",
|
|
14
|
+
"schemaVersion": 1,
|
|
15
|
+
"path": "res:/staticdata/agentsinspace.fsdbinary",
|
|
16
|
+
"schemaID": "e988f3b0c8940ca01fb730e9ff6c2618",
|
|
17
|
+
"container": {
|
|
18
|
+
"type": "MAP",
|
|
19
|
+
"recordSize": 20,
|
|
20
|
+
"key": {
|
|
21
|
+
"type": "UINT_32_IDENTIFIER",
|
|
22
|
+
"offset": 0
|
|
23
|
+
},
|
|
24
|
+
"fields": [{
|
|
25
|
+
"name": "dungeonID",
|
|
26
|
+
"type": "UINT_32_IDENTIFIER",
|
|
27
|
+
"offset": 4,
|
|
28
|
+
"sourceName": "dungeonID"
|
|
29
|
+
}, {
|
|
30
|
+
"name": "solarSystemID",
|
|
31
|
+
"type": "UINT_32_IDENTIFIER",
|
|
32
|
+
"offset": 8,
|
|
33
|
+
"sourceName": "solarSystemID"
|
|
34
|
+
}, {
|
|
35
|
+
"name": "spawnPointID",
|
|
36
|
+
"type": "UINT_32_IDENTIFIER",
|
|
37
|
+
"offset": 12,
|
|
38
|
+
"sourceName": "spawnPointID"
|
|
39
|
+
}, {
|
|
40
|
+
"name": "typeID",
|
|
41
|
+
"type": "UINT_32_IDENTIFIER",
|
|
42
|
+
"offset": 16,
|
|
43
|
+
"sourceName": "typeID"
|
|
44
|
+
}]
|
|
45
|
+
}
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export { CjsFsd64SchemaAgentsInSpace };
|
|
50
|
+
//# sourceMappingURL=CjsFsd64SchemaAgentsInSpace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaAgentsInSpace.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaAgentsInSpace.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n/**\n * Reads caller-supplied `agentsinspace.fsdbinary` bytes.\n *\n * Four identifiers and no text, so this table needs no localisation. The key is\n * the agent.\n */\nexport class CjsFsd64SchemaAgentsInSpace extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"agentsInSpace\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/agentsinspace.fsdbinary\",\n \"schemaID\": \"e988f3b0c8940ca01fb730e9ff6c2618\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 20,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"dungeonID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 4,\n \"sourceName\": \"dungeonID\"\n },\n {\n \"name\": \"solarSystemID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 8,\n \"sourceName\": \"solarSystemID\"\n },\n {\n \"name\": \"spawnPointID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 12,\n \"sourceName\": \"spawnPointID\"\n },\n {\n \"name\": \"typeID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 16,\n \"sourceName\": \"typeID\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaAgentsInSpace();\n"],"names":["CjsFsd64SchemaAgentsInSpace","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,2BAA2B,SAASC,oBAAoB,CACrE;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,eAAe;AACvB,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,yCAAyC;AACjD,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,WAAW,EAAE;AACT,MAAA,MAAM,EAAE,KAAK;AACb,MAAA,YAAY,EAAE,EAAE;AAChB,MAAA,KAAK,EAAE;AACH,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE;OACb;AACD,MAAA,QAAQ,EAAE,CACN;AACI,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,YAAY,EAAE;OACjB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/** Reads caller-supplied ancestry static-data bytes. */
|
|
5
|
+
class CjsFsd64SchemaAncestries extends CjsFsd64SchemaReader {
|
|
6
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
7
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
8
|
+
"name": "ancestries",
|
|
9
|
+
"schemaVersion": 1,
|
|
10
|
+
"path": "res:/staticdata/ancestries.fsdbinary",
|
|
11
|
+
"schemaID": "b6567424ddf32c2146f126dd23e0bb99",
|
|
12
|
+
"container": {
|
|
13
|
+
"type": "MAP",
|
|
14
|
+
"recordSize": 56,
|
|
15
|
+
"key": {
|
|
16
|
+
"type": "UINT_64_IDENTIFIER",
|
|
17
|
+
"offset": 0
|
|
18
|
+
},
|
|
19
|
+
"presence": {
|
|
20
|
+
"type": "UINT_32",
|
|
21
|
+
"offset": 52,
|
|
22
|
+
"allowedMask": 15
|
|
23
|
+
},
|
|
24
|
+
"fields": [{
|
|
25
|
+
"name": "shortDescription",
|
|
26
|
+
"type": "STRING",
|
|
27
|
+
"offset": 8,
|
|
28
|
+
"presenceMask": 8
|
|
29
|
+
}, {
|
|
30
|
+
"name": "bloodlineID",
|
|
31
|
+
"type": "INT_32_IDENTIFIER",
|
|
32
|
+
"offset": 16
|
|
33
|
+
}, {
|
|
34
|
+
"name": "charisma",
|
|
35
|
+
"type": "INT_32",
|
|
36
|
+
"offset": 20
|
|
37
|
+
}, {
|
|
38
|
+
"name": "descriptionID",
|
|
39
|
+
"type": "INT_32_IDENTIFIER",
|
|
40
|
+
"offset": 24,
|
|
41
|
+
"presenceMask": 1
|
|
42
|
+
}, {
|
|
43
|
+
"name": "iconID",
|
|
44
|
+
"type": "INT_32_IDENTIFIER",
|
|
45
|
+
"offset": 28,
|
|
46
|
+
"presenceMask": 2
|
|
47
|
+
}, {
|
|
48
|
+
"name": "intelligence",
|
|
49
|
+
"type": "INT_32",
|
|
50
|
+
"offset": 32
|
|
51
|
+
}, {
|
|
52
|
+
"name": "memory",
|
|
53
|
+
"type": "INT_32",
|
|
54
|
+
"offset": 36
|
|
55
|
+
}, {
|
|
56
|
+
"name": "nameID",
|
|
57
|
+
"type": "INT_32_IDENTIFIER",
|
|
58
|
+
"offset": 40,
|
|
59
|
+
"presenceMask": 4
|
|
60
|
+
}, {
|
|
61
|
+
"name": "perception",
|
|
62
|
+
"type": "INT_32",
|
|
63
|
+
"offset": 44
|
|
64
|
+
}, {
|
|
65
|
+
"name": "willpower",
|
|
66
|
+
"type": "INT_32",
|
|
67
|
+
"offset": 48
|
|
68
|
+
}]
|
|
69
|
+
}
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
var ancestriesReader = new CjsFsd64SchemaAncestries();
|
|
73
|
+
|
|
74
|
+
export { CjsFsd64SchemaAncestries, ancestriesReader as default };
|
|
75
|
+
//# sourceMappingURL=CjsFsd64SchemaAncestries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaAncestries.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaAncestries.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n/** Reads caller-supplied ancestry static-data bytes. */\nexport class CjsFsd64SchemaAncestries extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"ancestries\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ancestries.fsdbinary\",\n \"schemaID\": \"b6567424ddf32c2146f126dd23e0bb99\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 56,\n \"key\": {\n \"type\": \"UINT_64_IDENTIFIER\",\n \"offset\": 0\n },\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 52,\n \"allowedMask\": 15\n },\n \"fields\": [\n {\n \"name\": \"shortDescription\",\n \"type\": \"STRING\",\n \"offset\": 8,\n \"presenceMask\": 8\n },\n {\n \"name\": \"bloodlineID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 16\n },\n {\n \"name\": \"charisma\",\n \"type\": \"INT_32\",\n \"offset\": 20\n },\n {\n \"name\": \"descriptionID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 24,\n \"presenceMask\": 1\n },\n {\n \"name\": \"iconID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 28,\n \"presenceMask\": 2\n },\n {\n \"name\": \"intelligence\",\n \"type\": \"INT_32\",\n \"offset\": 32\n },\n {\n \"name\": \"memory\",\n \"type\": \"INT_32\",\n \"offset\": 36\n },\n {\n \"name\": \"nameID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 40,\n \"presenceMask\": 4\n },\n {\n \"name\": \"perception\",\n \"type\": \"INT_32\",\n \"offset\": 44\n },\n {\n \"name\": \"willpower\",\n \"type\": \"INT_32\",\n \"offset\": 48\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaAncestries();\n"],"names":["CjsFsd64SchemaAncestries","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAGA;AACO,MAAMA,wBAAwB,SAASC,oBAAoB,CAClE;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,YAAY;AACpB,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,sCAAsC;AAC9C,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,WAAW,EAAE;AACT,MAAA,MAAM,EAAE,KAAK;AACb,MAAA,YAAY,EAAE,EAAE;AAChB,MAAA,KAAK,EAAE;AACH,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE;OACb;AACD,MAAA,UAAU,EAAE;AACR,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,aAAa,EAAE;OAClB;AACD,MAAA,QAAQ,EAAE,CACN;AACI,QAAA,MAAM,EAAE,kBAAkB;AAC1B,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,YAAY;AACpB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;OACb;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;AAEA,uBAAe,IAAIL,wBAAwB,EAAE;;;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/** Reads caller-supplied archetype static-data bytes. */
|
|
5
|
+
class CjsFsd64SchemaArchetypes extends CjsFsd64SchemaReader {
|
|
6
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
7
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
8
|
+
"name": "archetypes",
|
|
9
|
+
"schemaVersion": 1,
|
|
10
|
+
"path": "res:/staticdata/archetypes.fsdbinary",
|
|
11
|
+
"schemaID": "5bef0b64a02856aa9e436407a8a523f2",
|
|
12
|
+
"container": {
|
|
13
|
+
"type": "MAP",
|
|
14
|
+
"recordSize": 40,
|
|
15
|
+
"key": {
|
|
16
|
+
"type": "UINT_64_IDENTIFIER",
|
|
17
|
+
"offset": 0
|
|
18
|
+
},
|
|
19
|
+
"presence": {
|
|
20
|
+
"type": "UINT_32",
|
|
21
|
+
"offset": 32,
|
|
22
|
+
"allowedMask": 15
|
|
23
|
+
},
|
|
24
|
+
"fields": [{
|
|
25
|
+
"name": "contentTags",
|
|
26
|
+
"type": "LIST",
|
|
27
|
+
"offset": 8,
|
|
28
|
+
"itemSize": 8,
|
|
29
|
+
"maximumCount": 100,
|
|
30
|
+
"item": {
|
|
31
|
+
"type": "STRING",
|
|
32
|
+
"offset": 0
|
|
33
|
+
},
|
|
34
|
+
"presenceMask": 1
|
|
35
|
+
}, {
|
|
36
|
+
"name": "location",
|
|
37
|
+
"type": "STRING",
|
|
38
|
+
"offset": 16,
|
|
39
|
+
"presenceMask": 4
|
|
40
|
+
}, {
|
|
41
|
+
"name": "descriptionID",
|
|
42
|
+
"type": "INT_32_IDENTIFIER",
|
|
43
|
+
"offset": 24,
|
|
44
|
+
"presenceMask": 2
|
|
45
|
+
}, {
|
|
46
|
+
"name": "titleID",
|
|
47
|
+
"type": "INT_32_IDENTIFIER",
|
|
48
|
+
"offset": 28,
|
|
49
|
+
"presenceMask": 8
|
|
50
|
+
}]
|
|
51
|
+
}
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
var archetypesReader = new CjsFsd64SchemaArchetypes();
|
|
55
|
+
|
|
56
|
+
export { CjsFsd64SchemaArchetypes, archetypesReader as default };
|
|
57
|
+
//# sourceMappingURL=CjsFsd64SchemaArchetypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaArchetypes.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaArchetypes.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n/** Reads caller-supplied archetype static-data bytes. */\nexport class CjsFsd64SchemaArchetypes extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"archetypes\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/archetypes.fsdbinary\",\n \"schemaID\": \"5bef0b64a02856aa9e436407a8a523f2\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 40,\n \"key\": {\n \"type\": \"UINT_64_IDENTIFIER\",\n \"offset\": 0\n },\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 32,\n \"allowedMask\": 15\n },\n \"fields\": [\n {\n \"name\": \"contentTags\",\n \"type\": \"LIST\",\n \"offset\": 8,\n \"itemSize\": 8,\n \"maximumCount\": 100,\n \"item\": {\n \"type\": \"STRING\",\n \"offset\": 0\n },\n \"presenceMask\": 1\n },\n {\n \"name\": \"location\",\n \"type\": \"STRING\",\n \"offset\": 16,\n \"presenceMask\": 4\n },\n {\n \"name\": \"descriptionID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 24,\n \"presenceMask\": 2\n },\n {\n \"name\": \"titleID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 28,\n \"presenceMask\": 8\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaArchetypes();\n"],"names":["CjsFsd64SchemaArchetypes","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAGA;AACO,MAAMA,wBAAwB,SAASC,oBAAoB,CAClE;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,YAAY;AACpB,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,sCAAsC;AAC9C,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,WAAW,EAAE;AACT,MAAA,MAAM,EAAE,KAAK;AACb,MAAA,YAAY,EAAE,EAAE;AAChB,MAAA,KAAK,EAAE;AACH,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE;OACb;AACD,MAAA,UAAU,EAAE;AACR,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,aAAa,EAAE;OAClB;AACD,MAAA,QAAQ,EAAE,CACN;AACI,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,UAAU,EAAE,CAAC;AACb,QAAA,cAAc,EAAE,GAAG;AACnB,QAAA,MAAM,EAAE;AACJ,UAAA,MAAM,EAAE,QAAQ;AAChB,UAAA,QAAQ,EAAE;SACb;AACD,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;OACnB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;AAEA,uBAAe,IAAIL,wBAAwB,EAAE;;;;"}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { CjsFsd64Binary } from '../core/CjsFsd64Binary.js';
|
|
2
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
3
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
4
|
+
|
|
5
|
+
const SECTIONS = Object.freeze([Object.freeze({
|
|
6
|
+
name: "Events",
|
|
7
|
+
countOffset: 8
|
|
8
|
+
}), Object.freeze({
|
|
9
|
+
name: "SoundBanks",
|
|
10
|
+
countOffset: 24
|
|
11
|
+
}), Object.freeze({
|
|
12
|
+
name: "WemFileIDs",
|
|
13
|
+
countOffset: 40
|
|
14
|
+
})]);
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Reads res:/staticdata/audiometadata.fsdbinary.
|
|
18
|
+
*
|
|
19
|
+
* The container publishes three independent maps from one root, which is why
|
|
20
|
+
* the schema's root is an OBJECT rather than a MAP. Each section's declared
|
|
21
|
+
* count is verified against the records actually decoded.
|
|
22
|
+
*/
|
|
23
|
+
class CjsFsd64SchemaAudioMetadata extends CjsFsd64SchemaReader {
|
|
24
|
+
Read(bytes) {
|
|
25
|
+
return AssertCounts(bytes, super.Read(bytes), value => value.size);
|
|
26
|
+
}
|
|
27
|
+
ReadJSON(bytes) {
|
|
28
|
+
return AssertCounts(bytes, super.ReadJSON(bytes), value => Object.keys(value).length);
|
|
29
|
+
}
|
|
30
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
31
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
32
|
+
"name": "audioMetadata",
|
|
33
|
+
"schemaVersion": 1,
|
|
34
|
+
"path": "res:/staticdata/audiometadata.fsdbinary",
|
|
35
|
+
"schemaID": "3a621daaa060f8e03eddfe9fe94963b5",
|
|
36
|
+
"container": {
|
|
37
|
+
"type": "OBJECT",
|
|
38
|
+
"headerSize": 48,
|
|
39
|
+
"fields": [{
|
|
40
|
+
"name": "Events",
|
|
41
|
+
"type": "MAP",
|
|
42
|
+
"offset": 0,
|
|
43
|
+
"recordSize": 72,
|
|
44
|
+
"key": {
|
|
45
|
+
"type": "STRING",
|
|
46
|
+
"offset": 0
|
|
47
|
+
},
|
|
48
|
+
"fields": [{
|
|
49
|
+
"name": "eventID",
|
|
50
|
+
"type": "UINT_64",
|
|
51
|
+
"offset": 8
|
|
52
|
+
}, {
|
|
53
|
+
"name": "eventsStoppedBy",
|
|
54
|
+
"type": "LIST",
|
|
55
|
+
"offset": 16,
|
|
56
|
+
"itemSize": 8,
|
|
57
|
+
"maximumCount": 256,
|
|
58
|
+
"item": {
|
|
59
|
+
"type": "STRING",
|
|
60
|
+
"offset": 0
|
|
61
|
+
}
|
|
62
|
+
}, {
|
|
63
|
+
"name": "playbackDuration",
|
|
64
|
+
"type": "OBJECT",
|
|
65
|
+
"offset": 24,
|
|
66
|
+
"fields": [{
|
|
67
|
+
"name": "playbackDurationType",
|
|
68
|
+
"type": "STRING",
|
|
69
|
+
"offset": 0
|
|
70
|
+
}, {
|
|
71
|
+
"name": "playbackDurationMin",
|
|
72
|
+
"type": "FLOAT_32",
|
|
73
|
+
"offset": 8
|
|
74
|
+
}, {
|
|
75
|
+
"name": "playbackDurationMax",
|
|
76
|
+
"type": "FLOAT_32",
|
|
77
|
+
"offset": 12
|
|
78
|
+
}]
|
|
79
|
+
}, {
|
|
80
|
+
"name": "soundbanks",
|
|
81
|
+
"type": "LIST",
|
|
82
|
+
"offset": 48,
|
|
83
|
+
"itemSize": 8,
|
|
84
|
+
"maximumCount": 256,
|
|
85
|
+
"item": {
|
|
86
|
+
"type": "STRING",
|
|
87
|
+
"offset": 0
|
|
88
|
+
}
|
|
89
|
+
}, {
|
|
90
|
+
"name": "wwiseID",
|
|
91
|
+
"type": "STRING",
|
|
92
|
+
"offset": 56
|
|
93
|
+
}, {
|
|
94
|
+
"name": "maxRadiusAttenuation",
|
|
95
|
+
"type": "FLOAT_32",
|
|
96
|
+
"offset": 64
|
|
97
|
+
}, {
|
|
98
|
+
"name": "is2D",
|
|
99
|
+
"type": "UINT_8",
|
|
100
|
+
"offset": 68
|
|
101
|
+
}, {
|
|
102
|
+
"name": "isLoop",
|
|
103
|
+
"type": "UINT_8",
|
|
104
|
+
"offset": 69
|
|
105
|
+
}, {
|
|
106
|
+
"name": "isVital",
|
|
107
|
+
"type": "UINT_8",
|
|
108
|
+
"offset": 70
|
|
109
|
+
}]
|
|
110
|
+
}, {
|
|
111
|
+
"name": "SoundBanks",
|
|
112
|
+
"type": "MAP",
|
|
113
|
+
"offset": 16,
|
|
114
|
+
"recordSize": 64,
|
|
115
|
+
"key": {
|
|
116
|
+
"type": "STRING",
|
|
117
|
+
"offset": 0
|
|
118
|
+
},
|
|
119
|
+
"fields": [{
|
|
120
|
+
"name": "id",
|
|
121
|
+
"type": "STRING",
|
|
122
|
+
"offset": 8
|
|
123
|
+
}, {
|
|
124
|
+
"name": "name",
|
|
125
|
+
"type": "STRING",
|
|
126
|
+
"offset": 16
|
|
127
|
+
}, {
|
|
128
|
+
"name": "parent",
|
|
129
|
+
"type": "MAP",
|
|
130
|
+
"offset": 24,
|
|
131
|
+
"recordSize": 16,
|
|
132
|
+
"key": {
|
|
133
|
+
"type": "STRING",
|
|
134
|
+
"offset": 0
|
|
135
|
+
},
|
|
136
|
+
"value": {
|
|
137
|
+
"type": "STRING",
|
|
138
|
+
"offset": 8
|
|
139
|
+
}
|
|
140
|
+
}, {
|
|
141
|
+
"name": "path",
|
|
142
|
+
"type": "STRING",
|
|
143
|
+
"offset": 40
|
|
144
|
+
}, {
|
|
145
|
+
"name": "shortId",
|
|
146
|
+
"type": "UINT_64",
|
|
147
|
+
"offset": 48
|
|
148
|
+
}, {
|
|
149
|
+
"name": "EssentialMedia",
|
|
150
|
+
"type": "UINT_8",
|
|
151
|
+
"offset": 56
|
|
152
|
+
}, {
|
|
153
|
+
"name": "EssentialSoundBank",
|
|
154
|
+
"type": "UINT_8",
|
|
155
|
+
"offset": 57
|
|
156
|
+
}]
|
|
157
|
+
}, {
|
|
158
|
+
"name": "WemFileIDs",
|
|
159
|
+
"type": "MAP",
|
|
160
|
+
"offset": 32,
|
|
161
|
+
"recordSize": 24,
|
|
162
|
+
"key": {
|
|
163
|
+
"type": "STRING",
|
|
164
|
+
"offset": 0
|
|
165
|
+
},
|
|
166
|
+
"fields": [{
|
|
167
|
+
"name": "SoundBank",
|
|
168
|
+
"type": "STRING",
|
|
169
|
+
"offset": 8
|
|
170
|
+
}, {
|
|
171
|
+
"name": "IsEssential",
|
|
172
|
+
"type": "UINT_64",
|
|
173
|
+
"offset": 16
|
|
174
|
+
}]
|
|
175
|
+
}]
|
|
176
|
+
}
|
|
177
|
+
}));
|
|
178
|
+
}
|
|
179
|
+
function AssertCounts(bytes, decoded, size) {
|
|
180
|
+
const schemaPath = CjsFsd64SchemaAudioMetadata.getFsdSchema().path;
|
|
181
|
+
const binary = new CjsFsd64Binary(bytes, {
|
|
182
|
+
path: schemaPath
|
|
183
|
+
});
|
|
184
|
+
for (const section of SECTIONS) {
|
|
185
|
+
const expected = binary.Uint64(binary.RootOffset + section.countOffset);
|
|
186
|
+
const actual = size(decoded[section.name]);
|
|
187
|
+
if (actual !== expected) {
|
|
188
|
+
const error = new Error(`Decoded ${actual} of ${expected} ${section.name} records from ${schemaPath}`);
|
|
189
|
+
error.code = "CJS_FSD_RECORD_COUNT_INVALID";
|
|
190
|
+
error.actualCount = actual;
|
|
191
|
+
error.expectedCount = expected;
|
|
192
|
+
error.path = schemaPath;
|
|
193
|
+
error.section = section.name;
|
|
194
|
+
throw error;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return decoded;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
export { CjsFsd64SchemaAudioMetadata };
|
|
201
|
+
//# sourceMappingURL=CjsFsd64SchemaAudioMetadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaAudioMetadata.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaAudioMetadata.js"],"sourcesContent":["import { CjsFsd64Binary } from \"../core/CjsFsd64Binary.js\";\nimport { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\nconst SECTIONS = Object.freeze([\n Object.freeze({ name: \"Events\", countOffset: 8 }),\n Object.freeze({ name: \"SoundBanks\", countOffset: 24 }),\n Object.freeze({ name: \"WemFileIDs\", countOffset: 40 }),\n]);\n\n/**\n * Reads res:/staticdata/audiometadata.fsdbinary.\n *\n * The container publishes three independent maps from one root, which is why\n * the schema's root is an OBJECT rather than a MAP. Each section's declared\n * count is verified against the records actually decoded.\n */\nexport class CjsFsd64SchemaAudioMetadata extends CjsFsd64SchemaReader\n{\n Read(bytes)\n {\n return AssertCounts(bytes, super.Read(bytes), value => value.size);\n }\n\n ReadJSON(bytes)\n {\n return AssertCounts(bytes, super.ReadJSON(bytes), value => Object.keys(value).length);\n }\n\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"audioMetadata\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/audiometadata.fsdbinary\",\n \"schemaID\": \"3a621daaa060f8e03eddfe9fe94963b5\",\n \"container\": {\n \"type\": \"OBJECT\",\n \"headerSize\": 48,\n \"fields\": [\n {\n \"name\": \"Events\",\n \"type\": \"MAP\",\n \"offset\": 0,\n \"recordSize\": 72,\n \"key\": {\n \"type\": \"STRING\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"eventID\",\n \"type\": \"UINT_64\",\n \"offset\": 8\n },\n {\n \"name\": \"eventsStoppedBy\",\n \"type\": \"LIST\",\n \"offset\": 16,\n \"itemSize\": 8,\n \"maximumCount\": 256,\n \"item\": {\n \"type\": \"STRING\",\n \"offset\": 0\n }\n },\n {\n \"name\": \"playbackDuration\",\n \"type\": \"OBJECT\",\n \"offset\": 24,\n \"fields\": [\n {\n \"name\": \"playbackDurationType\",\n \"type\": \"STRING\",\n \"offset\": 0\n },\n {\n \"name\": \"playbackDurationMin\",\n \"type\": \"FLOAT_32\",\n \"offset\": 8\n },\n {\n \"name\": \"playbackDurationMax\",\n \"type\": \"FLOAT_32\",\n \"offset\": 12\n }\n ]\n },\n {\n \"name\": \"soundbanks\",\n \"type\": \"LIST\",\n \"offset\": 48,\n \"itemSize\": 8,\n \"maximumCount\": 256,\n \"item\": {\n \"type\": \"STRING\",\n \"offset\": 0\n }\n },\n {\n \"name\": \"wwiseID\",\n \"type\": \"STRING\",\n \"offset\": 56\n },\n {\n \"name\": \"maxRadiusAttenuation\",\n \"type\": \"FLOAT_32\",\n \"offset\": 64\n },\n {\n \"name\": \"is2D\",\n \"type\": \"UINT_8\",\n \"offset\": 68\n },\n {\n \"name\": \"isLoop\",\n \"type\": \"UINT_8\",\n \"offset\": 69\n },\n {\n \"name\": \"isVital\",\n \"type\": \"UINT_8\",\n \"offset\": 70\n }\n ]\n },\n {\n \"name\": \"SoundBanks\",\n \"type\": \"MAP\",\n \"offset\": 16,\n \"recordSize\": 64,\n \"key\": {\n \"type\": \"STRING\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"id\",\n \"type\": \"STRING\",\n \"offset\": 8\n },\n {\n \"name\": \"name\",\n \"type\": \"STRING\",\n \"offset\": 16\n },\n {\n \"name\": \"parent\",\n \"type\": \"MAP\",\n \"offset\": 24,\n \"recordSize\": 16,\n \"key\": {\n \"type\": \"STRING\",\n \"offset\": 0\n },\n \"value\": {\n \"type\": \"STRING\",\n \"offset\": 8\n }\n },\n {\n \"name\": \"path\",\n \"type\": \"STRING\",\n \"offset\": 40\n },\n {\n \"name\": \"shortId\",\n \"type\": \"UINT_64\",\n \"offset\": 48\n },\n {\n \"name\": \"EssentialMedia\",\n \"type\": \"UINT_8\",\n \"offset\": 56\n },\n {\n \"name\": \"EssentialSoundBank\",\n \"type\": \"UINT_8\",\n \"offset\": 57\n }\n ]\n },\n {\n \"name\": \"WemFileIDs\",\n \"type\": \"MAP\",\n \"offset\": 32,\n \"recordSize\": 24,\n \"key\": {\n \"type\": \"STRING\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"SoundBank\",\n \"type\": \"STRING\",\n \"offset\": 8\n },\n {\n \"name\": \"IsEssential\",\n \"type\": \"UINT_64\",\n \"offset\": 16\n }\n ]\n }\n ]\n }\n }));\n\n}\n\nfunction AssertCounts(bytes, decoded, size)\n{\n const schemaPath = CjsFsd64SchemaAudioMetadata.getFsdSchema().path;\n const binary = new CjsFsd64Binary(bytes, { path: schemaPath });\n\n for (const section of SECTIONS)\n {\n const expected = binary.Uint64(binary.RootOffset + section.countOffset);\n const actual = size(decoded[section.name]);\n\n if (actual !== expected)\n {\n const error = new Error(\n `Decoded ${actual} of ${expected} ${section.name} records from ${schemaPath}`,\n );\n\n error.code = \"CJS_FSD_RECORD_COUNT_INVALID\";\n error.actualCount = actual;\n error.expectedCount = expected;\n error.path = schemaPath;\n error.section = section.name;\n throw error;\n }\n }\n\n return decoded;\n}\n\nexport default new CjsFsd64SchemaAudioMetadata();\n"],"names":["SECTIONS","Object","freeze","name","countOffset","CjsFsd64SchemaAudioMetadata","CjsFsd64SchemaReader","Read","bytes","AssertCounts","value","size","ReadJSON","keys","length","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema","decoded","schemaPath","path","binary","CjsFsd64Binary","section","expected","Uint64","RootOffset","actual","error","Error","code","actualCount","expectedCount"],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/** Reads caller-supplied bloodline static-data bytes. */
|
|
5
|
+
class CjsFsd64SchemaBloodlines extends CjsFsd64SchemaReader {
|
|
6
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
7
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
8
|
+
"name": "bloodlines",
|
|
9
|
+
"schemaVersion": 1,
|
|
10
|
+
"path": "res:/staticdata/bloodlines.fsdbinary",
|
|
11
|
+
"schemaID": "add33c4a6919aea07d486fd9042a3312",
|
|
12
|
+
"container": {
|
|
13
|
+
"type": "MAP",
|
|
14
|
+
"recordSize": 48,
|
|
15
|
+
"key": {
|
|
16
|
+
"type": "UINT_32_IDENTIFIER",
|
|
17
|
+
"offset": 0
|
|
18
|
+
},
|
|
19
|
+
"presence": {
|
|
20
|
+
"type": "UINT_32",
|
|
21
|
+
"offset": 44,
|
|
22
|
+
"allowedMask": 3
|
|
23
|
+
},
|
|
24
|
+
"fields": [{
|
|
25
|
+
"name": "charisma",
|
|
26
|
+
"type": "INT_32",
|
|
27
|
+
"offset": 4
|
|
28
|
+
}, {
|
|
29
|
+
"name": "corporationID",
|
|
30
|
+
"type": "INT_32_IDENTIFIER",
|
|
31
|
+
"offset": 8,
|
|
32
|
+
"presenceMask": 1
|
|
33
|
+
}, {
|
|
34
|
+
"name": "descriptionID",
|
|
35
|
+
"type": "INT_32_IDENTIFIER",
|
|
36
|
+
"offset": 12
|
|
37
|
+
}, {
|
|
38
|
+
"name": "iconID",
|
|
39
|
+
"type": "INT_32_IDENTIFIER",
|
|
40
|
+
"offset": 16,
|
|
41
|
+
"presenceMask": 2
|
|
42
|
+
}, {
|
|
43
|
+
"name": "intelligence",
|
|
44
|
+
"type": "INT_32",
|
|
45
|
+
"offset": 20
|
|
46
|
+
}, {
|
|
47
|
+
"name": "memory",
|
|
48
|
+
"type": "INT_32",
|
|
49
|
+
"offset": 24
|
|
50
|
+
}, {
|
|
51
|
+
"name": "nameID",
|
|
52
|
+
"type": "INT_32_IDENTIFIER",
|
|
53
|
+
"offset": 28
|
|
54
|
+
}, {
|
|
55
|
+
"name": "perception",
|
|
56
|
+
"type": "INT_32",
|
|
57
|
+
"offset": 32
|
|
58
|
+
}, {
|
|
59
|
+
"name": "raceID",
|
|
60
|
+
"type": "INT_32_IDENTIFIER",
|
|
61
|
+
"offset": 36
|
|
62
|
+
}, {
|
|
63
|
+
"name": "willpower",
|
|
64
|
+
"type": "INT_32",
|
|
65
|
+
"offset": 40
|
|
66
|
+
}]
|
|
67
|
+
}
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
var bloodlinesReader = new CjsFsd64SchemaBloodlines();
|
|
71
|
+
|
|
72
|
+
export { CjsFsd64SchemaBloodlines, bloodlinesReader as default };
|
|
73
|
+
//# sourceMappingURL=CjsFsd64SchemaBloodlines.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CjsFsd64SchemaBloodlines.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaBloodlines.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/** Reads caller-supplied bloodline static-data bytes. */\nexport class CjsFsd64SchemaBloodlines extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"bloodlines\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/bloodlines.fsdbinary\",\n \"schemaID\": \"add33c4a6919aea07d486fd9042a3312\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 48,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 44,\n \"allowedMask\": 3\n },\n \"fields\": [\n {\n \"name\": \"charisma\",\n \"type\": \"INT_32\",\n \"offset\": 4\n },\n {\n \"name\": \"corporationID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 8,\n \"presenceMask\": 1\n },\n {\n \"name\": \"descriptionID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 12\n },\n {\n \"name\": \"iconID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 16,\n \"presenceMask\": 2\n },\n {\n \"name\": \"intelligence\",\n \"type\": \"INT_32\",\n \"offset\": 20\n },\n {\n \"name\": \"memory\",\n \"type\": \"INT_32\",\n \"offset\": 24\n },\n {\n \"name\": \"nameID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 28\n },\n {\n \"name\": \"perception\",\n \"type\": \"INT_32\",\n \"offset\": 32\n },\n {\n \"name\": \"raceID\",\n \"type\": \"INT_32_IDENTIFIER\",\n \"offset\": 36\n },\n {\n \"name\": \"willpower\",\n \"type\": \"INT_32\",\n \"offset\": 40\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaBloodlines();\n"],"names":["CjsFsd64SchemaBloodlines","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACO,MAAMA,wBAAwB,SAASC,oBAAoB,CAClE;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,YAAY;AACpB,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,sCAAsC;AAC9C,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,WAAW,EAAE;AACT,MAAA,MAAM,EAAE,KAAK;AACb,MAAA,YAAY,EAAE,EAAE;AAChB,MAAA,KAAK,EAAE;AACH,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,QAAQ,EAAE;OACb;AACD,MAAA,UAAU,EAAE;AACR,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,aAAa,EAAE;OAClB;AACD,MAAA,QAAQ,EAAE,CACN;AACI,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,cAAc,EAAE;AACpB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,YAAY;AACpB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,QAAQ,EAAE;AACd,OAAC,EACD;AACI,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE;OACb;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;AAEA,uBAAe,IAAIL,wBAAwB,EAAE;;;;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
|
|
2
|
+
import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Reads caller-supplied `categories.fsdbinary` bytes.
|
|
6
|
+
*
|
|
7
|
+
* Decodes item categories; `name` is a localisation label identifier, not text. Resolve the identifiers through
|
|
8
|
+
* `CjsFsdLocalization` against the language table you want; this reader
|
|
9
|
+
* returns them rather than pretending to text it cannot supply.
|
|
10
|
+
*
|
|
11
|
+
* Offsets and presence masks were solved against CCP's published export at
|
|
12
|
+
* build 3466501, accepting only unanimous agreement across every record.
|
|
13
|
+
*/
|
|
14
|
+
class CjsFsd64SchemaCategories extends CjsFsd64SchemaReader {
|
|
15
|
+
static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
|
|
16
|
+
"schema": "carbonenginejs.fsdBinarySchema",
|
|
17
|
+
"name": "categories",
|
|
18
|
+
"schemaVersion": 1,
|
|
19
|
+
"path": "res:/staticdata/categories.fsdbinary",
|
|
20
|
+
"schemaID": "c5de77dba3d9503eb69b6378c15dd47a",
|
|
21
|
+
"container": {
|
|
22
|
+
"type": "MAP",
|
|
23
|
+
"recordSize": 40,
|
|
24
|
+
"key": {
|
|
25
|
+
"type": "UINT_32_IDENTIFIER",
|
|
26
|
+
"offset": 0
|
|
27
|
+
},
|
|
28
|
+
"presence": {
|
|
29
|
+
"type": "UINT_32",
|
|
30
|
+
"offset": 32,
|
|
31
|
+
"allowedMask": 3
|
|
32
|
+
},
|
|
33
|
+
"fields": [{
|
|
34
|
+
"name": "nameID",
|
|
35
|
+
"type": "UINT_32",
|
|
36
|
+
"offset": 20
|
|
37
|
+
}, {
|
|
38
|
+
"name": "iconID",
|
|
39
|
+
"type": "UINT_32_IDENTIFIER",
|
|
40
|
+
"offset": 24,
|
|
41
|
+
"presenceMask": 1
|
|
42
|
+
}, {
|
|
43
|
+
"name": "published",
|
|
44
|
+
"type": "BOOLEAN",
|
|
45
|
+
"offset": 28,
|
|
46
|
+
"bit": 0
|
|
47
|
+
}]
|
|
48
|
+
}
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export { CjsFsd64SchemaCategories };
|
|
53
|
+
//# sourceMappingURL=CjsFsd64SchemaCategories.js.map
|