@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.
Files changed (308) hide show
  1. package/NOTICE +6 -0
  2. package/dist/CjsResMan.js +1374 -1318
  3. package/dist/CjsResMan.js.map +1 -1
  4. package/dist/format/CjsFormat.js +393 -164
  5. package/dist/format/CjsFormat.js.map +1 -1
  6. package/dist/format/CjsFormatStore.js +315 -0
  7. package/dist/format/CjsFormatStore.js.map +1 -0
  8. package/dist/format/CjsResourceProbe.js +66 -234
  9. package/dist/format/CjsResourceProbe.js.map +1 -1
  10. package/dist/format/payloadContract.js +47 -6
  11. package/dist/format/payloadContract.js.map +1 -1
  12. package/dist/formats/black/CjsBlackFormat.js +23 -6
  13. package/dist/formats/black/CjsBlackFormat.js.map +1 -1
  14. package/dist/formats/bnk/CjsBnkFormat.js +122 -120
  15. package/dist/formats/bnk/CjsBnkFormat.js.map +1 -1
  16. package/dist/formats/bnk/core/helpers.js +5 -15
  17. package/dist/formats/bnk/core/helpers.js.map +1 -1
  18. package/dist/formats/cmf/CjsCmfFormat.js +31 -14
  19. package/dist/formats/cmf/CjsCmfFormat.js.map +1 -1
  20. package/dist/formats/dds/CjsDdsFormat.js +29 -19
  21. package/dist/formats/dds/CjsDdsFormat.js.map +1 -1
  22. package/dist/formats/dds/core/helpers.js +4 -5
  23. package/dist/formats/dds/core/helpers.js.map +1 -1
  24. package/dist/formats/dxbc/CjsDxbcFormat.js +15 -13
  25. package/dist/formats/dxbc/CjsDxbcFormat.js.map +1 -1
  26. package/dist/formats/fbx/CjsFbxFormat.js +27 -19
  27. package/dist/formats/fbx/CjsFbxFormat.js.map +1 -1
  28. package/dist/formats/fbx/core/helpers.js +4 -4
  29. package/dist/formats/fbx/core/helpers.js.map +1 -1
  30. package/dist/formats/flac/CjsFlacFormat.js +19 -17
  31. package/dist/formats/flac/CjsFlacFormat.js.map +1 -1
  32. package/dist/formats/flac/core/helpers.js +5 -11
  33. package/dist/formats/flac/core/helpers.js.map +1 -1
  34. package/dist/formats/fsd/32/CjsFsd32Format.js +55 -0
  35. package/dist/formats/fsd/32/CjsFsd32Format.js.map +1 -0
  36. package/dist/formats/fsd/32/index.js +2 -0
  37. package/dist/formats/fsd/32/index.js.map +1 -0
  38. package/dist/formats/fsd/64/CjsFsd64Format.js +119 -0
  39. package/dist/formats/fsd/64/CjsFsd64Format.js.map +1 -0
  40. package/dist/formats/fsd/64/core/CjsFsd64Binary.js +393 -0
  41. package/dist/formats/fsd/64/core/CjsFsd64Binary.js.map +1 -0
  42. package/dist/formats/fsd/64/core/CjsFsd64Reader.js +138 -0
  43. package/dist/formats/fsd/64/core/CjsFsd64Reader.js.map +1 -0
  44. package/dist/formats/fsd/64/core/CjsFsd64SchemaDecoder.js +389 -0
  45. package/dist/formats/fsd/64/core/CjsFsd64SchemaDecoder.js.map +1 -0
  46. package/dist/formats/fsd/64/core/CjsFsd64SchemaReader.js +43 -0
  47. package/dist/formats/fsd/64/core/CjsFsd64SchemaReader.js.map +1 -0
  48. package/dist/formats/fsd/64/core/fsd64Records.js +60 -0
  49. package/dist/formats/fsd/64/core/fsd64Records.js.map +1 -0
  50. package/dist/formats/fsd/64/index.js +7 -0
  51. package/dist/formats/fsd/64/index.js.map +1 -0
  52. package/dist/formats/fsd/64/readers/CjsFsd64ReaderSetCharacterStaticData.js +33 -0
  53. package/dist/formats/fsd/64/readers/CjsFsd64ReaderSetCharacterStaticData.js.map +1 -0
  54. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentTypes.js +35 -0
  55. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentTypes.js.map +1 -0
  56. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentsInSpace.js +50 -0
  57. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAgentsInSpace.js.map +1 -0
  58. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAncestries.js +75 -0
  59. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAncestries.js.map +1 -0
  60. package/dist/formats/fsd/64/readers/CjsFsd64SchemaArchetypes.js +57 -0
  61. package/dist/formats/fsd/64/readers/CjsFsd64SchemaArchetypes.js.map +1 -0
  62. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAudioMetadata.js +201 -0
  63. package/dist/formats/fsd/64/readers/CjsFsd64SchemaAudioMetadata.js.map +1 -0
  64. package/dist/formats/fsd/64/readers/CjsFsd64SchemaBloodlines.js +73 -0
  65. package/dist/formats/fsd/64/readers/CjsFsd64SchemaBloodlines.js.map +1 -0
  66. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCategories.js +53 -0
  67. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCategories.js.map +1 -0
  68. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterAvatarBehaviors.js +44 -0
  69. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterAvatarBehaviors.js.map +1 -0
  70. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorLocations.js +38 -0
  71. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorLocations.js.map +1 -0
  72. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorNames.js +34 -0
  73. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterColorNames.js.map +1 -0
  74. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterModifierLocations.js +34 -0
  75. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterModifierLocations.js.map +1 -0
  76. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterPortraitResources.js +44 -0
  77. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterPortraitResources.js.map +1 -0
  78. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterResources.js +81 -0
  79. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterResources.js.map +1 -0
  80. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterSculptingLocations.js +34 -0
  81. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCharacterSculptingLocations.js.map +1 -0
  82. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCompressibleTypes.js +41 -0
  83. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCompressibleTypes.js.map +1 -0
  84. package/dist/formats/fsd/64/readers/CjsFsd64SchemaContrabandTypes.js +63 -0
  85. package/dist/formats/fsd/64/readers/CjsFsd64SchemaContrabandTypes.js.map +1 -0
  86. package/dist/formats/fsd/64/readers/CjsFsd64SchemaControlTowerResources.js +76 -0
  87. package/dist/formats/fsd/64/readers/CjsFsd64SchemaControlTowerResources.js.map +1 -0
  88. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationActivities.js +38 -0
  89. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationActivities.js.map +1 -0
  90. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoleGroups.js +74 -0
  91. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoleGroups.js.map +1 -0
  92. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoles.js +59 -0
  93. package/dist/formats/fsd/64/readers/CjsFsd64SchemaCorporationRoles.js.map +1 -0
  94. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributeCategories.js +46 -0
  95. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributeCategories.js.map +1 -0
  96. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributes.js +133 -0
  97. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaAttributes.js.map +1 -0
  98. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaEffects.js +236 -0
  99. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaEffects.js.map +1 -0
  100. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaUnits.js +60 -0
  101. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDogmaUnits.js.map +1 -0
  102. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDynamicItemAttributes.js +95 -0
  103. package/dist/formats/fsd/64/readers/CjsFsd64SchemaDynamicItemAttributes.js.map +1 -0
  104. package/dist/formats/fsd/64/readers/CjsFsd64SchemaEpicArcs.js +106 -0
  105. package/dist/formats/fsd/64/readers/CjsFsd64SchemaEpicArcs.js.map +1 -0
  106. package/dist/formats/fsd/64/readers/CjsFsd64SchemaExpertSystems.js +86 -0
  107. package/dist/formats/fsd/64/readers/CjsFsd64SchemaExpertSystems.js.map +1 -0
  108. package/dist/formats/fsd/64/readers/CjsFsd64SchemaFactions.js +117 -0
  109. package/dist/formats/fsd/64/readers/CjsFsd64SchemaFactions.js.map +1 -0
  110. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicIds.js +70 -0
  111. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicIds.js.map +1 -0
  112. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicMaterialSets.js +173 -0
  113. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGraphicMaterialSets.js.map +1 -0
  114. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGroups.js +77 -0
  115. package/dist/formats/fsd/64/readers/CjsFsd64SchemaGroups.js.map +1 -0
  116. package/dist/formats/fsd/64/readers/CjsFsd64SchemaIcons.js +62 -0
  117. package/dist/formats/fsd/64/readers/CjsFsd64SchemaIcons.js.map +1 -0
  118. package/dist/formats/fsd/64/readers/CjsFsd64SchemaMarketGroups.js +63 -0
  119. package/dist/formats/fsd/64/readers/CjsFsd64SchemaMarketGroups.js.map +1 -0
  120. package/dist/formats/fsd/64/readers/CjsFsd64SchemaMetaGroups.js +86 -0
  121. package/dist/formats/fsd/64/readers/CjsFsd64SchemaMetaGroups.js.map +1 -0
  122. package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporationDivisions.js +72 -0
  123. package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporationDivisions.js.map +1 -0
  124. package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporations.js +326 -0
  125. package/dist/formats/fsd/64/readers/CjsFsd64SchemaNpcCorporations.js.map +1 -0
  126. package/dist/formats/fsd/64/readers/CjsFsd64SchemaPaperdolls.js +279 -0
  127. package/dist/formats/fsd/64/readers/CjsFsd64SchemaPaperdolls.js.map +1 -0
  128. package/dist/formats/fsd/64/readers/CjsFsd64SchemaRaces.js +64 -0
  129. package/dist/formats/fsd/64/readers/CjsFsd64SchemaRaces.js.map +1 -0
  130. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchoolMap.js +40 -0
  131. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchoolMap.js.map +1 -0
  132. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchools.js +113 -0
  133. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSchools.js.map +1 -0
  134. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkillPlans.js +130 -0
  135. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkillPlans.js.map +1 -0
  136. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentCategories.js +38 -0
  137. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentCategories.js.map +1 -0
  138. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentPointValues.js +45 -0
  139. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentPointValues.js.map +1 -0
  140. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentRarities.js +44 -0
  141. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentRarities.js.map +1 -0
  142. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponents.js +163 -0
  143. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponents.js.map +1 -0
  144. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotCategories.js +37 -0
  145. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotCategories.js.map +1 -0
  146. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotConfigurations.js +77 -0
  147. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotConfigurations.js.map +1 -0
  148. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotNames.js +37 -0
  149. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotNames.js.map +1 -0
  150. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlots.js +74 -0
  151. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlots.js.map +1 -0
  152. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrTierThresholds.js +44 -0
  153. package/dist/formats/fsd/64/readers/CjsFsd64SchemaSkinrTierThresholds.js.map +1 -0
  154. package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationOperations.js +120 -0
  155. package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationOperations.js.map +1 -0
  156. package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationServices.js +49 -0
  157. package/dist/formats/fsd/64/readers/CjsFsd64SchemaStationServices.js.map +1 -0
  158. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeDogma.js +73 -0
  159. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeDogma.js.map +1 -0
  160. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeLists.js +122 -0
  161. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeLists.js.map +1 -0
  162. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeMaterials.js +83 -0
  163. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypeMaterials.js.map +1 -0
  164. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypes.js +194 -0
  165. package/dist/formats/fsd/64/readers/CjsFsd64SchemaTypes.js.map +1 -0
  166. package/dist/formats/fsd/64/readers/index.js +58 -0
  167. package/dist/formats/fsd/64/readers/index.js.map +1 -0
  168. package/dist/formats/fsd/CjsFsdFormat.js +62 -0
  169. package/dist/formats/fsd/CjsFsdFormat.js.map +1 -0
  170. package/dist/formats/fsd/index.js +9 -0
  171. package/dist/formats/fsd/index.js.map +1 -0
  172. package/dist/formats/gif/CjsGifFormat.js +26 -16
  173. package/dist/formats/gif/CjsGifFormat.js.map +1 -1
  174. package/dist/formats/gif/core/helpers.js +6 -18
  175. package/dist/formats/gif/core/helpers.js.map +1 -1
  176. package/dist/formats/gltf/CjsGltfFormat.js +25 -13
  177. package/dist/formats/gltf/CjsGltfFormat.js.map +1 -1
  178. package/dist/formats/gr2/CjsGr2Format.js +27 -6
  179. package/dist/formats/gr2/CjsGr2Format.js.map +1 -1
  180. package/dist/formats/hlsl/CjsHlslFormat.js +20 -16
  181. package/dist/formats/hlsl/CjsHlslFormat.js.map +1 -1
  182. package/dist/formats/hlsl/core/analysis.js +1 -1
  183. package/dist/formats/index.js +5 -0
  184. package/dist/formats/index.js.map +1 -1
  185. package/dist/formats/jpeg/CjsJpegFormat.js +26 -19
  186. package/dist/formats/jpeg/CjsJpegFormat.js.map +1 -1
  187. package/dist/formats/jpeg/core/helpers.js +6 -15
  188. package/dist/formats/jpeg/core/helpers.js.map +1 -1
  189. package/dist/formats/jpeg/core/jpeg.js +0 -3
  190. package/dist/formats/jpeg/core/jpeg.js.map +1 -1
  191. package/dist/formats/mp3/CjsMp3Format.js +19 -19
  192. package/dist/formats/mp3/CjsMp3Format.js.map +1 -1
  193. package/dist/formats/mp3/core/helpers.js +5 -11
  194. package/dist/formats/mp3/core/helpers.js.map +1 -1
  195. package/dist/formats/mp4/CjsMp4Format.js +20 -19
  196. package/dist/formats/mp4/CjsMp4Format.js.map +1 -1
  197. package/dist/formats/mp4/core/helpers.js +6 -15
  198. package/dist/formats/mp4/core/helpers.js.map +1 -1
  199. package/dist/formats/obj/CjsObjFormat.js +25 -12
  200. package/dist/formats/obj/CjsObjFormat.js.map +1 -1
  201. package/dist/formats/ogg/CjsOggFormat.js +26 -17
  202. package/dist/formats/ogg/CjsOggFormat.js.map +1 -1
  203. package/dist/formats/ogg/core/helpers.js +5 -16
  204. package/dist/formats/ogg/core/helpers.js.map +1 -1
  205. package/dist/formats/pickle/CjsPickleFormat.js +64 -5
  206. package/dist/formats/pickle/CjsPickleFormat.js.map +1 -1
  207. package/dist/formats/png/CjsPngFormat.js +28 -19
  208. package/dist/formats/png/CjsPngFormat.js.map +1 -1
  209. package/dist/formats/png/core/helpers.js +5 -14
  210. package/dist/formats/png/core/helpers.js.map +1 -1
  211. package/dist/formats/red/CjsRedFormat.js +19 -5
  212. package/dist/formats/red/CjsRedFormat.js.map +1 -1
  213. package/dist/formats/schemabound/CjsSchemaBoundFormat.js +48 -38
  214. package/dist/formats/schemabound/CjsSchemaBoundFormat.js.map +1 -1
  215. package/dist/formats/sqlite/CjsSqliteFormat.js +49 -41
  216. package/dist/formats/sqlite/CjsSqliteFormat.js.map +1 -1
  217. package/dist/formats/static/CjsStaticFormat.js +15 -57
  218. package/dist/formats/static/CjsStaticFormat.js.map +1 -1
  219. package/dist/formats/static/staticContainers.js +6 -6
  220. package/dist/formats/static/staticContainers.js.map +1 -1
  221. package/dist/formats/stl/CjsStlFormat.js +25 -12
  222. package/dist/formats/stl/CjsStlFormat.js.map +1 -1
  223. package/dist/formats/tga/CjsTgaFormat.js +26 -19
  224. package/dist/formats/tga/CjsTgaFormat.js.map +1 -1
  225. package/dist/formats/tga/core/helpers.js +7 -22
  226. package/dist/formats/tga/core/helpers.js.map +1 -1
  227. package/dist/formats/wav/CjsWavFormat.js +26 -19
  228. package/dist/formats/wav/CjsWavFormat.js.map +1 -1
  229. package/dist/formats/wav/core/helpers.js +7 -16
  230. package/dist/formats/wav/core/helpers.js.map +1 -1
  231. package/dist/formats/webgl/CjsWebglFormat.js +11 -13
  232. package/dist/formats/webgl/CjsWebglFormat.js.map +1 -1
  233. package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js +90 -12
  234. package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
  235. package/dist/formats/webgl/core/helpers.js +2 -2
  236. package/dist/formats/webgl/core/helpers.js.map +1 -1
  237. package/dist/formats/webgl/core/readGlslEffectContainer.js +8 -8
  238. package/dist/formats/webgl/core/readGlslEffectContainer.js.map +1 -1
  239. package/dist/formats/webgpu/CjsWebgpuFormat.js +11 -5
  240. package/dist/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
  241. package/dist/formats/webm/CjsWebmFormat.js +20 -19
  242. package/dist/formats/webm/CjsWebmFormat.js.map +1 -1
  243. package/dist/formats/webm/core/helpers.js +6 -15
  244. package/dist/formats/webm/core/helpers.js.map +1 -1
  245. package/dist/formats/webp/CjsWebpFormat.js +19 -17
  246. package/dist/formats/webp/CjsWebpFormat.js.map +1 -1
  247. package/dist/formats/webp/core/helpers.js +5 -11
  248. package/dist/formats/webp/core/helpers.js.map +1 -1
  249. package/dist/formats/wem/CjsWemFormat.js +128 -141
  250. package/dist/formats/wem/CjsWemFormat.js.map +1 -1
  251. package/dist/formats/wem/core/helpers.js +1 -114
  252. package/dist/formats/wem/core/helpers.js.map +1 -1
  253. package/dist/formats/wem/core/{resolve.js → probeCodecSupport.js} +11 -18
  254. package/dist/formats/wem/core/probeCodecSupport.js.map +1 -0
  255. package/dist/formats/yaml/CjsYamlFormat.js +20 -5
  256. package/dist/formats/yaml/CjsYamlFormat.js.map +1 -1
  257. package/dist/generated/index.js +2 -0
  258. package/dist/generated/index.js.map +1 -0
  259. package/dist/generated/resources/Tr2RaycastGeometryRes.js +34 -0
  260. package/dist/generated/resources/Tr2RaycastGeometryRes.js.map +1 -0
  261. package/dist/generated/resources/index.js +2 -0
  262. package/dist/generated/resources/index.js.map +1 -0
  263. package/dist/index.js +3 -1
  264. package/dist/index.js.map +1 -1
  265. package/dist/resource/CjsResource.js +134 -0
  266. package/dist/resource/CjsResource.js.map +1 -1
  267. package/dist/resource/ResourceRequirement.js +42 -0
  268. package/dist/resource/ResourceRequirement.js.map +1 -0
  269. package/dist/resource/Tr2LightProfileRes.js +2 -1
  270. package/dist/resource/Tr2LightProfileRes.js.map +1 -1
  271. package/dist/resource/geometry/TriGeometryRes.js +34 -7
  272. package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
  273. package/dist/resource/geometry/granny/Tr2GrannyStateRes.js +184 -7
  274. package/dist/resource/geometry/granny/Tr2GrannyStateRes.js.map +1 -1
  275. package/dist/resource/geometry/granny/TriGrannyRes.js +20 -8
  276. package/dist/resource/geometry/granny/TriGrannyRes.js.map +1 -1
  277. package/dist/resource/index.js +1 -0
  278. package/dist/resource/index.js.map +1 -1
  279. package/dist/resource/resourceBoundary.js +24 -1
  280. package/dist/resource/resourceBoundary.js.map +1 -1
  281. package/dist/resource/shader/Tr2EffectRes.js +2 -1
  282. package/dist/resource/shader/Tr2EffectRes.js.map +1 -1
  283. package/dist/resource/texture/CjsTextureArrayRes.js +2 -1
  284. package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
  285. package/dist/resource/texture/Tr2ImageRes.js +2 -1
  286. package/dist/resource/texture/Tr2ImageRes.js.map +1 -1
  287. package/dist/resource/texture/TriTextureRes.js +40 -2
  288. package/dist/resource/texture/TriTextureRes.js.map +1 -1
  289. package/docs/architecture.md +121 -116
  290. package/docs/concepts/format-capabilities.md +90 -0
  291. package/docs/formats/README.md +14 -6
  292. package/docs/formats/fsd.md +104 -0
  293. package/docs/formats/gr2.md +1 -1
  294. package/docs/formats/hlsl/reference/api.md +6 -4
  295. package/docs/formats/provenance.md +18 -0
  296. package/docs/formats/schemabound.md +10 -4
  297. package/docs/formats/static.md +26 -26
  298. package/docs/formats/webgpu/reference/api.md +4 -3
  299. package/docs/reference/classes/core.md +22 -2
  300. package/docs/reference/classes/formats.md +643 -1
  301. package/docs/reference/classes/resources.md +463 -453
  302. package/docs/reference/queues.md +205 -194
  303. package/docs/roadmap.md +14 -18
  304. package/format-notices/fsd/LICENSE +21 -0
  305. package/format-notices/fsd/NOTICE +11 -0
  306. package/package.json +70 -64
  307. package/dist/formats/wem/core/resolve.js.map +0 -1
  308. package/docs/concepts/format-type-resolution.md +0 -79
@@ -0,0 +1,130 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `skillplans.fsdbinary` bytes.
6
+ *
7
+ * `descriptionID`, `nameID` are localisation label identifiers; resolve them
8
+ * through `CjsFsdLocalization`.
9
+ *
10
+ * **Two layouts for one shape, in one file.** `milestones` and
11
+ * `skillRequirements` both hold `{level, typeID}`, and they are not the same
12
+ * record. A milestone is 12 bytes and carries its own presence word guarding
13
+ * `level`; a skill requirement is 8 bytes with none, so its level is always
14
+ * present. Reading either at the other's stride produces plausible, shifted
15
+ * nonsense.
16
+ *
17
+ * **A loader-string trap.** Binary string dedup makes `skillplansloader` appear
18
+ * to name no fields on the milestone class, because both names were already
19
+ * emitted for the outer record and are not repeated. Attributing field names by
20
+ * adjacency in the string run misassigns them here.
21
+ */
22
+ class CjsFsd64SchemaSkillPlans extends CjsFsd64SchemaReader {
23
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
24
+ "schema": "carbonenginejs.fsdBinarySchema",
25
+ "name": "skillPlans",
26
+ "schemaVersion": 1,
27
+ "path": "res:/staticdata/skillplans.fsdbinary",
28
+ "schemaID": "b8ebd28ca6475c3610f2fcb5c358359c",
29
+ "container": {
30
+ "type": "MAP",
31
+ "recordSize": 56,
32
+ "key": {
33
+ "type": "UINT_32_IDENTIFIER",
34
+ "offset": 0
35
+ },
36
+ "presence": {
37
+ "type": "UINT_32",
38
+ "offset": 52,
39
+ "allowedMask": 127
40
+ },
41
+ "fields": [{
42
+ "name": "milestones",
43
+ "type": "LIST",
44
+ "offset": 8,
45
+ "itemSize": 12,
46
+ "sourceName": "milestones",
47
+ "presenceMask": 8,
48
+ "item": {
49
+ "type": "OBJECT",
50
+ "presence": {
51
+ "type": "UINT_32",
52
+ "offset": 8,
53
+ "allowedMask": 1
54
+ },
55
+ "fields": [{
56
+ "name": "level",
57
+ "type": "UINT_32",
58
+ "offset": 0,
59
+ "sourceName": "level",
60
+ "presenceMask": 1
61
+ }, {
62
+ "name": "typeID",
63
+ "type": "UINT_32_IDENTIFIER",
64
+ "offset": 4,
65
+ "sourceName": "typeID"
66
+ }]
67
+ }
68
+ }, {
69
+ "name": "name",
70
+ "type": "STRING",
71
+ "offset": 16,
72
+ "sourceName": "name",
73
+ "presenceMask": 16
74
+ }, {
75
+ "name": "skillRequirements",
76
+ "type": "LIST",
77
+ "offset": 24,
78
+ "itemSize": 8,
79
+ "sourceName": "skillRequirements",
80
+ "item": {
81
+ "type": "OBJECT",
82
+ "fields": [{
83
+ "name": "level",
84
+ "type": "UINT_32",
85
+ "offset": 0,
86
+ "sourceName": "level"
87
+ }, {
88
+ "name": "typeID",
89
+ "type": "UINT_32_IDENTIFIER",
90
+ "offset": 4,
91
+ "sourceName": "typeID"
92
+ }]
93
+ }
94
+ }, {
95
+ "name": "careerPathID",
96
+ "type": "UINT_32_IDENTIFIER",
97
+ "offset": 32,
98
+ "sourceName": "careerPathID",
99
+ "presenceMask": 1
100
+ }, {
101
+ "name": "descriptionID",
102
+ "type": "UINT_32",
103
+ "offset": 36,
104
+ "sourceName": "descriptionID",
105
+ "presenceMask": 2
106
+ }, {
107
+ "name": "factionID",
108
+ "type": "UINT_32_IDENTIFIER",
109
+ "offset": 40,
110
+ "sourceName": "factionID",
111
+ "presenceMask": 4
112
+ }, {
113
+ "name": "nameID",
114
+ "type": "UINT_32",
115
+ "offset": 44,
116
+ "sourceName": "nameID",
117
+ "presenceMask": 32
118
+ }, {
119
+ "name": "npcCorporationDivision",
120
+ "type": "UINT_32",
121
+ "offset": 48,
122
+ "sourceName": "npcCorporationDivision",
123
+ "presenceMask": 64
124
+ }]
125
+ }
126
+ }));
127
+ }
128
+
129
+ export { CjsFsd64SchemaSkillPlans };
130
+ //# sourceMappingURL=CjsFsd64SchemaSkillPlans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkillPlans.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkillPlans.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `skillplans.fsdbinary` bytes.\n *\n * `descriptionID`, `nameID` are localisation label identifiers; resolve them\n * through `CjsFsdLocalization`.\n *\n * **Two layouts for one shape, in one file.** `milestones` and\n * `skillRequirements` both hold `{level, typeID}`, and they are not the same\n * record. A milestone is 12 bytes and carries its own presence word guarding\n * `level`; a skill requirement is 8 bytes with none, so its level is always\n * present. Reading either at the other's stride produces plausible, shifted\n * nonsense.\n *\n * **A loader-string trap.** Binary string dedup makes `skillplansloader` appear\n * to name no fields on the milestone class, because both names were already\n * emitted for the outer record and are not repeated. Attributing field names by\n * adjacency in the string run misassigns them here.\n */\nexport class CjsFsd64SchemaSkillPlans extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skillPlans\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/skillplans.fsdbinary\",\n \"schemaID\": \"b8ebd28ca6475c3610f2fcb5c358359c\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 56,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 52,\n \"allowedMask\": 127\n },\n \"fields\": [\n {\n \"name\": \"milestones\",\n \"type\": \"LIST\",\n \"offset\": 8,\n \"itemSize\": 12,\n \"sourceName\": \"milestones\",\n \"presenceMask\": 8,\n \"item\": {\n \"type\": \"OBJECT\",\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 8,\n \"allowedMask\": 1\n },\n \"fields\": [\n {\n \"name\": \"level\",\n \"type\": \"UINT_32\",\n \"offset\": 0,\n \"sourceName\": \"level\",\n \"presenceMask\": 1\n },\n {\n \"name\": \"typeID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 4,\n \"sourceName\": \"typeID\"\n }\n ]\n }\n },\n {\n \"name\": \"name\",\n \"type\": \"STRING\",\n \"offset\": 16,\n \"sourceName\": \"name\",\n \"presenceMask\": 16\n },\n {\n \"name\": \"skillRequirements\",\n \"type\": \"LIST\",\n \"offset\": 24,\n \"itemSize\": 8,\n \"sourceName\": \"skillRequirements\",\n \"item\": {\n \"type\": \"OBJECT\",\n \"fields\": [\n {\n \"name\": \"level\",\n \"type\": \"UINT_32\",\n \"offset\": 0,\n \"sourceName\": \"level\"\n },\n {\n \"name\": \"typeID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 4,\n \"sourceName\": \"typeID\"\n }\n ]\n }\n },\n {\n \"name\": \"careerPathID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 32,\n \"sourceName\": \"careerPathID\",\n \"presenceMask\": 1\n },\n {\n \"name\": \"descriptionID\",\n \"type\": \"UINT_32\",\n \"offset\": 36,\n \"sourceName\": \"descriptionID\",\n \"presenceMask\": 2\n },\n {\n \"name\": \"factionID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 40,\n \"sourceName\": \"factionID\",\n \"presenceMask\": 4\n },\n {\n \"name\": \"nameID\",\n \"type\": \"UINT_32\",\n \"offset\": 44,\n \"sourceName\": \"nameID\",\n \"presenceMask\": 32\n },\n {\n \"name\": \"npcCorporationDivision\",\n \"type\": \"UINT_32\",\n \"offset\": 48,\n \"sourceName\": \"npcCorporationDivision\",\n \"presenceMask\": 64\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkillPlans();\n"],"names":["CjsFsd64SchemaSkillPlans","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_skin_design_component_categories.fsdbinary` bytes.
6
+ *
7
+ * A key and an internal name, and nothing else. Three SKINR datasets share this
8
+ * layout exactly - the two slot-name tables are the others - so all three carry
9
+ * the same layout identity and differ only in which file they are read from.
10
+ *
11
+ * Solved against CCP's published export at build 3466501, every record.
12
+ */
13
+ class CjsFsd64SchemaSkinrComponentCategories extends CjsFsd64SchemaReader {
14
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
15
+ "schema": "carbonenginejs.fsdBinarySchema",
16
+ "name": "skinrComponentCategories",
17
+ "schemaVersion": 1,
18
+ "path": "res:/staticdata/ship_skin_design_component_categories.fsdbinary",
19
+ "schemaID": "cd2521438d1b750a28a532a11743a248",
20
+ "container": {
21
+ "type": "MAP",
22
+ "recordSize": 16,
23
+ "key": {
24
+ "type": "UINT_32_IDENTIFIER",
25
+ "offset": 0
26
+ },
27
+ "fields": [{
28
+ "name": "name",
29
+ "type": "STRING",
30
+ "offset": 8,
31
+ "sourceName": "name"
32
+ }]
33
+ }
34
+ }));
35
+ }
36
+
37
+ export { CjsFsd64SchemaSkinrComponentCategories };
38
+ //# sourceMappingURL=CjsFsd64SchemaSkinrComponentCategories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrComponentCategories.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentCategories.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_skin_design_component_categories.fsdbinary` bytes.\n *\n * A key and an internal name, and nothing else. Three SKINR datasets share this\n * layout exactly - the two slot-name tables are the others - so all three carry\n * the same layout identity and differ only in which file they are read from.\n *\n * Solved against CCP's published export at build 3466501, every record.\n */\nexport class CjsFsd64SchemaSkinrComponentCategories extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrComponentCategories\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_skin_design_component_categories.fsdbinary\",\n \"schemaID\": \"cd2521438d1b750a28a532a11743a248\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 16,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"name\",\n \"type\": \"STRING\",\n \"offset\": 8,\n \"sourceName\": \"name\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrComponentCategories();\n"],"names":["CjsFsd64SchemaSkinrComponentCategories","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,sCAAsC,SAASC,oBAAoB,CAChF;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,0BAA0B;AAClC,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,iEAAiE;AACzE,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,MAAM;AACd,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE;OACjB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
@@ -0,0 +1,45 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_skin_design_component_point_values.fsdbinary` bytes.
6
+ *
7
+ * A map of maps: rarity to a table of level to point cost. The record holds a
8
+ * nested sixteen-byte map header rather than fields, which is why its loader
9
+ * names no fields at all.
10
+ *
11
+ * Solved against CCP's published export at build 3466501, every record.
12
+ */
13
+ class CjsFsd64SchemaSkinrComponentPointValues extends CjsFsd64SchemaReader {
14
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
15
+ "schema": "carbonenginejs.fsdBinarySchema",
16
+ "name": "skinrComponentPointValues",
17
+ "schemaVersion": 1,
18
+ "path": "res:/staticdata/ship_skin_design_component_point_values.fsdbinary",
19
+ "schemaID": "04be2c695d43ef15a714f7df1cbd1d70",
20
+ "container": {
21
+ "type": "MAP",
22
+ "recordSize": 24,
23
+ "key": {
24
+ "type": "UINT_32_IDENTIFIER",
25
+ "offset": 0
26
+ },
27
+ "value": {
28
+ "type": "MAP",
29
+ "offset": 8,
30
+ "recordSize": 8,
31
+ "key": {
32
+ "type": "UINT_32_IDENTIFIER",
33
+ "offset": 0
34
+ },
35
+ "value": {
36
+ "type": "UINT_32",
37
+ "offset": 4
38
+ }
39
+ }
40
+ }
41
+ }));
42
+ }
43
+
44
+ export { CjsFsd64SchemaSkinrComponentPointValues };
45
+ //# sourceMappingURL=CjsFsd64SchemaSkinrComponentPointValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrComponentPointValues.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentPointValues.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_skin_design_component_point_values.fsdbinary` bytes.\n *\n * A map of maps: rarity to a table of level to point cost. The record holds a\n * nested sixteen-byte map header rather than fields, which is why its loader\n * names no fields at all.\n *\n * Solved against CCP's published export at build 3466501, every record.\n */\nexport class CjsFsd64SchemaSkinrComponentPointValues extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrComponentPointValues\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_skin_design_component_point_values.fsdbinary\",\n \"schemaID\": \"04be2c695d43ef15a714f7df1cbd1d70\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 24,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"value\": {\n \"type\": \"MAP\",\n \"offset\": 8,\n \"recordSize\": 8,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"value\": {\n \"type\": \"UINT_32\",\n \"offset\": 4\n }\n }\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrComponentPointValues();\n"],"names":["CjsFsd64SchemaSkinrComponentPointValues","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,uCAAuC,SAASC,oBAAoB,CACjF;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,2BAA2B;AACnC,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,mEAAmE;AAC3E,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,KAAK;AACb,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,KAAK,EAAE;AACH,UAAA,MAAM,EAAE,oBAAoB;AAC5B,UAAA,QAAQ,EAAE;SACb;AACD,QAAA,OAAO,EAAE;AACL,UAAA,MAAM,EAAE,SAAS;AACjB,UAAA,QAAQ,EAAE;AACd;AACJ;AACJ;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
@@ -0,0 +1,44 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_skin_design_component_rarities.fsdbinary` bytes.
6
+ *
7
+ * The six rarity tiers, each a localised name and a rank. `rank` and the
8
+ * record key happen to hold the same six values, so the two were told apart by
9
+ * the loader's field order rather than by their contents.
10
+ *
11
+ * Solved against CCP's published export at build 3466501, every record.
12
+ */
13
+ class CjsFsd64SchemaSkinrComponentRarities extends CjsFsd64SchemaReader {
14
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
15
+ "schema": "carbonenginejs.fsdBinarySchema",
16
+ "name": "skinrComponentRarities",
17
+ "schemaVersion": 1,
18
+ "path": "res:/staticdata/ship_skin_design_component_rarities.fsdbinary",
19
+ "schemaID": "e07fc7c3925f2ee23f72e9dc1f496aa4",
20
+ "container": {
21
+ "type": "MAP",
22
+ "recordSize": 12,
23
+ "key": {
24
+ "type": "UINT_32_IDENTIFIER",
25
+ "offset": 0
26
+ },
27
+ "fields": [{
28
+ "name": "nameID",
29
+ "type": "UINT_32",
30
+ "offset": 4,
31
+ "sourceName": "name",
32
+ "renamed": true
33
+ }, {
34
+ "name": "rank",
35
+ "type": "UINT_32",
36
+ "offset": 8,
37
+ "sourceName": "rank"
38
+ }]
39
+ }
40
+ }));
41
+ }
42
+
43
+ export { CjsFsd64SchemaSkinrComponentRarities };
44
+ //# sourceMappingURL=CjsFsd64SchemaSkinrComponentRarities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrComponentRarities.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponentRarities.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_skin_design_component_rarities.fsdbinary` bytes.\n *\n * The six rarity tiers, each a localised name and a rank. `rank` and the\n * record key happen to hold the same six values, so the two were told apart by\n * the loader's field order rather than by their contents.\n *\n * Solved against CCP's published export at build 3466501, every record.\n */\nexport class CjsFsd64SchemaSkinrComponentRarities extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrComponentRarities\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_skin_design_component_rarities.fsdbinary\",\n \"schemaID\": \"e07fc7c3925f2ee23f72e9dc1f496aa4\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 12,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"nameID\",\n \"type\": \"UINT_32\",\n \"offset\": 4,\n \"sourceName\": \"name\",\n \"renamed\": true\n },\n {\n \"name\": \"rank\",\n \"type\": \"UINT_32\",\n \"offset\": 8,\n \"sourceName\": \"rank\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrComponentRarities();\n"],"names":["CjsFsd64SchemaSkinrComponentRarities","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,oCAAoC,SAASC,oBAAoB,CAC9E;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,wBAAwB;AAChC,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,+DAA+D;AACvE,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,QAAQ;AAChB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE,MAAM;AACpB,QAAA,SAAS,EAAE;AACf,OAAC,EACD;AACI,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE;OACjB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
@@ -0,0 +1,163 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_skin_design_components.fsdbinary` bytes.
6
+ *
7
+ * The SKINR design components - the materials, patterns and finishes a design
8
+ * is assembled from - with the resource and icon each one paints with.
9
+ *
10
+ * This record refined the field-order rule the other datasets follow. Its
11
+ * fields are not alphabetical by offset outright: they are grouped by storage
12
+ * class first - the eight pointer fields, then the five four-byte scalars, then
13
+ * the embedded object and the boolean - and alphabetical *within* each group.
14
+ * Reading it as one alphabetical run puts every scalar in the wrong place.
15
+ *
16
+ * `projectionTypeU` and `projectionTypeV` are stored as `Clamp`, `Repeat`
17
+ * and `Border`, and **the stored value is wrong**: `Clamp` means
18
+ * `clamp-to-border` and `Border` means `clamp-to-edge`. The published export
19
+ * and the API carry the corrected values, so they are authoritative and this
20
+ * container is not. This reader returns what the file says, unaltered, because
21
+ * that is its job; correcting it belongs to whatever builds an export.
22
+ *
23
+ * Applying the correction in the intuitive direction mismatches 514 of the 544
24
+ * records, which is how it was caught before it was explained.
25
+ *
26
+ * Solved against CCP's published export at build 3466501: all 544 records and
27
+ * every one of their 928 associated-type entries.
28
+ */
29
+ class CjsFsd64SchemaSkinrComponents extends CjsFsd64SchemaReader {
30
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
31
+ "schema": "carbonenginejs.fsdBinarySchema",
32
+ "name": "skinrComponents",
33
+ "schemaVersion": 1,
34
+ "path": "res:/staticdata/ship_skin_design_components.fsdbinary",
35
+ "schemaID": "7d1bb9431be0bae657e4764fa25dd0ef",
36
+ "container": {
37
+ "type": "MAP",
38
+ "recordSize": 112,
39
+ "key": {
40
+ "type": "UINT_32_IDENTIFIER",
41
+ "offset": 0
42
+ },
43
+ "presence": {
44
+ "type": "UINT_32",
45
+ "offset": 104,
46
+ "allowedMask": 5
47
+ },
48
+ "fields": [{
49
+ "name": "associatedTypeIds",
50
+ "type": "LIST",
51
+ "offset": 8,
52
+ "itemSize": 8,
53
+ "item": {
54
+ "type": "OBJECT",
55
+ "fields": [{
56
+ "name": "licenseUsesGranted",
57
+ "type": "INT_32",
58
+ "offset": 0,
59
+ "sourceName": "license_uses_granted"
60
+ }, {
61
+ "name": "typeID",
62
+ "type": "UINT_32_IDENTIFIER",
63
+ "offset": 4,
64
+ "sourceName": "type_id"
65
+ }]
66
+ },
67
+ "sourceName": "associated_type_ids"
68
+ }, {
69
+ "name": "disallowedSlots",
70
+ "type": "LIST",
71
+ "offset": 16,
72
+ "itemSize": 4,
73
+ "item": {
74
+ "type": "UINT_32_IDENTIFIER",
75
+ "offset": 0
76
+ },
77
+ "sourceName": "disallowed_slots"
78
+ }, {
79
+ "name": "finish",
80
+ "type": "STRING",
81
+ "offset": 24,
82
+ "sourceName": "finish"
83
+ }, {
84
+ "name": "iconFile",
85
+ "type": "STRING",
86
+ "offset": 32,
87
+ "sourceName": "icon_file"
88
+ }, {
89
+ "name": "internalName",
90
+ "type": "STRING",
91
+ "offset": 40,
92
+ "sourceName": "internal_name"
93
+ }, {
94
+ "name": "projectionTypeU",
95
+ "type": "STRING",
96
+ "offset": 48,
97
+ "sourceName": "projection_type_u"
98
+ }, {
99
+ "name": "projectionTypeV",
100
+ "type": "STRING",
101
+ "offset": 56,
102
+ "sourceName": "projection_type_v"
103
+ }, {
104
+ "name": "resourceFile",
105
+ "type": "STRING",
106
+ "offset": 64,
107
+ "sourceName": "resource_file"
108
+ }, {
109
+ "name": "category",
110
+ "type": "UINT_32_IDENTIFIER",
111
+ "offset": 72,
112
+ "sourceName": "category"
113
+ }, {
114
+ "name": "descriptionID",
115
+ "type": "UINT_32",
116
+ "offset": 76,
117
+ "sourceName": "description",
118
+ "renamed": true
119
+ }, {
120
+ "name": "nameID",
121
+ "type": "UINT_32",
122
+ "offset": 80,
123
+ "sourceName": "name",
124
+ "renamed": true
125
+ }, {
126
+ "name": "originEvent",
127
+ "type": "UINT_32",
128
+ "offset": 84,
129
+ "sourceName": "origin_event"
130
+ }, {
131
+ "name": "rarity",
132
+ "type": "UINT_32_IDENTIFIER",
133
+ "offset": 88,
134
+ "sourceName": "rarity"
135
+ }, {
136
+ "name": "sequenceBinder",
137
+ "type": "OBJECT",
138
+ "offset": 92,
139
+ "fields": [{
140
+ "name": "count",
141
+ "type": "UINT_32",
142
+ "offset": 0,
143
+ "sourceName": "count"
144
+ }, {
145
+ "name": "itemTypeID",
146
+ "type": "UINT_32_IDENTIFIER",
147
+ "offset": 4,
148
+ "sourceName": "item_type_id"
149
+ }],
150
+ "sourceName": "sequence_binder"
151
+ }, {
152
+ "name": "published",
153
+ "type": "BOOLEAN",
154
+ "offset": 100,
155
+ "bit": 0,
156
+ "sourceName": "published"
157
+ }]
158
+ }
159
+ }));
160
+ }
161
+
162
+ export { CjsFsd64SchemaSkinrComponents };
163
+ //# sourceMappingURL=CjsFsd64SchemaSkinrComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrComponents.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrComponents.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_skin_design_components.fsdbinary` bytes.\n *\n * The SKINR design components - the materials, patterns and finishes a design\n * is assembled from - with the resource and icon each one paints with.\n *\n * This record refined the field-order rule the other datasets follow. Its\n * fields are not alphabetical by offset outright: they are grouped by storage\n * class first - the eight pointer fields, then the five four-byte scalars, then\n * the embedded object and the boolean - and alphabetical *within* each group.\n * Reading it as one alphabetical run puts every scalar in the wrong place.\n *\n * `projectionTypeU` and `projectionTypeV` are stored as `Clamp`, `Repeat`\n * and `Border`, and **the stored value is wrong**: `Clamp` means\n * `clamp-to-border` and `Border` means `clamp-to-edge`. The published export\n * and the API carry the corrected values, so they are authoritative and this\n * container is not. This reader returns what the file says, unaltered, because\n * that is its job; correcting it belongs to whatever builds an export.\n *\n * Applying the correction in the intuitive direction mismatches 514 of the 544\n * records, which is how it was caught before it was explained.\n *\n * Solved against CCP's published export at build 3466501: all 544 records and\n * every one of their 928 associated-type entries.\n */\nexport class CjsFsd64SchemaSkinrComponents extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrComponents\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_skin_design_components.fsdbinary\",\n \"schemaID\": \"7d1bb9431be0bae657e4764fa25dd0ef\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 112,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"presence\": {\n \"type\": \"UINT_32\",\n \"offset\": 104,\n \"allowedMask\": 5\n },\n \"fields\": [\n {\n \"name\": \"associatedTypeIds\",\n \"type\": \"LIST\",\n \"offset\": 8,\n \"itemSize\": 8,\n \"item\": {\n \"type\": \"OBJECT\",\n \"fields\": [\n {\n \"name\": \"licenseUsesGranted\",\n \"type\": \"INT_32\",\n \"offset\": 0,\n \"sourceName\": \"license_uses_granted\"\n },\n {\n \"name\": \"typeID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 4,\n \"sourceName\": \"type_id\"\n }\n ]\n },\n \"sourceName\": \"associated_type_ids\"\n },\n {\n \"name\": \"disallowedSlots\",\n \"type\": \"LIST\",\n \"offset\": 16,\n \"itemSize\": 4,\n \"item\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"sourceName\": \"disallowed_slots\"\n },\n {\n \"name\": \"finish\",\n \"type\": \"STRING\",\n \"offset\": 24,\n \"sourceName\": \"finish\"\n },\n {\n \"name\": \"iconFile\",\n \"type\": \"STRING\",\n \"offset\": 32,\n \"sourceName\": \"icon_file\"\n },\n {\n \"name\": \"internalName\",\n \"type\": \"STRING\",\n \"offset\": 40,\n \"sourceName\": \"internal_name\"\n },\n {\n \"name\": \"projectionTypeU\",\n \"type\": \"STRING\",\n \"offset\": 48,\n \"sourceName\": \"projection_type_u\"\n },\n {\n \"name\": \"projectionTypeV\",\n \"type\": \"STRING\",\n \"offset\": 56,\n \"sourceName\": \"projection_type_v\"\n },\n {\n \"name\": \"resourceFile\",\n \"type\": \"STRING\",\n \"offset\": 64,\n \"sourceName\": \"resource_file\"\n },\n {\n \"name\": \"category\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 72,\n \"sourceName\": \"category\"\n },\n {\n \"name\": \"descriptionID\",\n \"type\": \"UINT_32\",\n \"offset\": 76,\n \"sourceName\": \"description\",\n \"renamed\": true\n },\n {\n \"name\": \"nameID\",\n \"type\": \"UINT_32\",\n \"offset\": 80,\n \"sourceName\": \"name\",\n \"renamed\": true\n },\n {\n \"name\": \"originEvent\",\n \"type\": \"UINT_32\",\n \"offset\": 84,\n \"sourceName\": \"origin_event\"\n },\n {\n \"name\": \"rarity\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 88,\n \"sourceName\": \"rarity\"\n },\n {\n \"name\": \"sequenceBinder\",\n \"type\": \"OBJECT\",\n \"offset\": 92,\n \"fields\": [\n {\n \"name\": \"count\",\n \"type\": \"UINT_32\",\n \"offset\": 0,\n \"sourceName\": \"count\"\n },\n {\n \"name\": \"itemTypeID\",\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 4,\n \"sourceName\": \"item_type_id\"\n }\n ],\n \"sourceName\": \"sequence_binder\"\n },\n {\n \"name\": \"published\",\n \"type\": \"BOOLEAN\",\n \"offset\": 100,\n \"bit\": 0,\n \"sourceName\": \"published\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrComponents();\n"],"names":["CjsFsd64SchemaSkinrComponents","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_cosmetic_slot_categories.fsdbinary` bytes.
6
+ *
7
+ * Internal slot-category names such as `Material_slot`. Shares its layout with
8
+ * the component-category and slot-name tables.
9
+ *
10
+ * Solved against CCP's published export at build 3466501, every record.
11
+ */
12
+ class CjsFsd64SchemaSkinrSlotCategories extends CjsFsd64SchemaReader {
13
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
14
+ "schema": "carbonenginejs.fsdBinarySchema",
15
+ "name": "skinrSlotCategories",
16
+ "schemaVersion": 1,
17
+ "path": "res:/staticdata/ship_cosmetic_slot_categories.fsdbinary",
18
+ "schemaID": "cd2521438d1b750a28a532a11743a248",
19
+ "container": {
20
+ "type": "MAP",
21
+ "recordSize": 16,
22
+ "key": {
23
+ "type": "UINT_32_IDENTIFIER",
24
+ "offset": 0
25
+ },
26
+ "fields": [{
27
+ "name": "name",
28
+ "type": "STRING",
29
+ "offset": 8,
30
+ "sourceName": "name"
31
+ }]
32
+ }
33
+ }));
34
+ }
35
+
36
+ export { CjsFsd64SchemaSkinrSlotCategories };
37
+ //# sourceMappingURL=CjsFsd64SchemaSkinrSlotCategories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrSlotCategories.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotCategories.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_cosmetic_slot_categories.fsdbinary` bytes.\n *\n * Internal slot-category names such as `Material_slot`. Shares its layout with\n * the component-category and slot-name tables.\n *\n * Solved against CCP's published export at build 3466501, every record.\n */\nexport class CjsFsd64SchemaSkinrSlotCategories extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrSlotCategories\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_cosmetic_slot_categories.fsdbinary\",\n \"schemaID\": \"cd2521438d1b750a28a532a11743a248\",\n \"container\": {\n \"type\": \"MAP\",\n \"recordSize\": 16,\n \"key\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"fields\": [\n {\n \"name\": \"name\",\n \"type\": \"STRING\",\n \"offset\": 8,\n \"sourceName\": \"name\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrSlotCategories();\n"],"names":["CjsFsd64SchemaSkinrSlotCategories","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,iCAAiC,SAASC,oBAAoB,CAC3E;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,qBAAqB;AAC7B,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,yDAAyD;AACjE,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,MAAM;AACd,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,YAAY,EAAE;OACjB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}
@@ -0,0 +1,77 @@
1
+ import { CjsFsd64SchemaDecoder } from '../core/CjsFsd64SchemaDecoder.js';
2
+ import { CjsFsd64SchemaReader } from '../core/CjsFsd64SchemaReader.js';
3
+
4
+ /**
5
+ * Reads caller-supplied `ship_cosmetic_slot_configurations.fsdbinary` bytes.
6
+ *
7
+ * Which slots a ship gets. One configuration applies to all ships and carries
8
+ * `allowAllShips`; the rest name their ships explicitly. Both that flag and
9
+ `ships` are presence-guarded, so a configuration says either "all" or "these"
10
+ * and never both.
11
+ *
12
+ * Solved against CCP's published export at build 3466501, every record.
13
+ */
14
+ class CjsFsd64SchemaSkinrSlotConfigurations extends CjsFsd64SchemaReader {
15
+ static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({
16
+ "schema": "carbonenginejs.fsdBinarySchema",
17
+ "name": "skinrSlotConfigurations",
18
+ "schemaVersion": 1,
19
+ "path": "res:/staticdata/ship_cosmetic_slot_configurations.fsdbinary",
20
+ "schemaID": "723dfdc8ea43fdc560cce51be4ed50e5",
21
+ "container": {
22
+ "type": "MAP",
23
+ "recordSize": 48,
24
+ "key": {
25
+ "type": "UINT_32_IDENTIFIER",
26
+ "offset": 0
27
+ },
28
+ "presence": {
29
+ "type": "UINT_32",
30
+ "offset": 40,
31
+ "allowedMask": 3
32
+ },
33
+ "fields": [{
34
+ "name": "config",
35
+ "type": "LIST",
36
+ "offset": 8,
37
+ "itemSize": 4,
38
+ "item": {
39
+ "type": "UINT_32_IDENTIFIER",
40
+ "offset": 0
41
+ },
42
+ "sourceName": "config"
43
+ }, {
44
+ "name": "name",
45
+ "type": "STRING",
46
+ "offset": 16,
47
+ "sourceName": "name"
48
+ }, {
49
+ "name": "ships",
50
+ "type": "LIST",
51
+ "offset": 24,
52
+ "itemSize": 4,
53
+ "presenceMask": 2,
54
+ "item": {
55
+ "type": "UINT_32_IDENTIFIER",
56
+ "offset": 0
57
+ },
58
+ "sourceName": "ships"
59
+ }, {
60
+ "name": "priority",
61
+ "type": "UINT_32",
62
+ "offset": 32,
63
+ "sourceName": "priority"
64
+ }, {
65
+ "name": "allowAllShips",
66
+ "type": "BOOLEAN",
67
+ "offset": 36,
68
+ "bit": 0,
69
+ "presenceMask": 1,
70
+ "sourceName": "allow_all_ships"
71
+ }]
72
+ }
73
+ }));
74
+ }
75
+
76
+ export { CjsFsd64SchemaSkinrSlotConfigurations };
77
+ //# sourceMappingURL=CjsFsd64SchemaSkinrSlotConfigurations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CjsFsd64SchemaSkinrSlotConfigurations.js","sources":["../../../../../../src/formats/fsd/64/readers/CjsFsd64SchemaSkinrSlotConfigurations.js"],"sourcesContent":["import { CjsFsd64SchemaDecoder } from \"../core/CjsFsd64SchemaDecoder.js\";\nimport { CjsFsd64SchemaReader } from \"../core/CjsFsd64SchemaReader.js\";\n\n\n/**\n * Reads caller-supplied `ship_cosmetic_slot_configurations.fsdbinary` bytes.\n *\n * Which slots a ship gets. One configuration applies to all ships and carries\n * `allowAllShips`; the rest name their ships explicitly. Both that flag and\n `ships` are presence-guarded, so a configuration says either \"all\" or \"these\"\n * and never both.\n *\n * Solved against CCP's published export at build 3466501, every record.\n */\nexport class CjsFsd64SchemaSkinrSlotConfigurations extends CjsFsd64SchemaReader\n{\n static getFsdSchema = CjsFsd64SchemaReader.bindFsdSchema(CjsFsd64SchemaDecoder.defineSchema({\n \"schema\": \"carbonenginejs.fsdBinarySchema\",\n \"name\": \"skinrSlotConfigurations\",\n \"schemaVersion\": 1,\n \"path\": \"res:/staticdata/ship_cosmetic_slot_configurations.fsdbinary\",\n \"schemaID\": \"723dfdc8ea43fdc560cce51be4ed50e5\",\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\": 40,\n \"allowedMask\": 3\n },\n \"fields\": [\n {\n \"name\": \"config\",\n \"type\": \"LIST\",\n \"offset\": 8,\n \"itemSize\": 4,\n \"item\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"sourceName\": \"config\"\n },\n {\n \"name\": \"name\",\n \"type\": \"STRING\",\n \"offset\": 16,\n \"sourceName\": \"name\"\n },\n {\n \"name\": \"ships\",\n \"type\": \"LIST\",\n \"offset\": 24,\n \"itemSize\": 4,\n \"presenceMask\": 2,\n \"item\": {\n \"type\": \"UINT_32_IDENTIFIER\",\n \"offset\": 0\n },\n \"sourceName\": \"ships\"\n },\n {\n \"name\": \"priority\",\n \"type\": \"UINT_32\",\n \"offset\": 32,\n \"sourceName\": \"priority\"\n },\n {\n \"name\": \"allowAllShips\",\n \"type\": \"BOOLEAN\",\n \"offset\": 36,\n \"bit\": 0,\n \"presenceMask\": 1,\n \"sourceName\": \"allow_all_ships\"\n }\n ]\n }\n }));\n\n}\n\nexport default new CjsFsd64SchemaSkinrSlotConfigurations();\n"],"names":["CjsFsd64SchemaSkinrSlotConfigurations","CjsFsd64SchemaReader","getFsdSchema","bindFsdSchema","CjsFsd64SchemaDecoder","defineSchema"],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,qCAAqC,SAASC,oBAAoB,CAC/E;EACI,OAAOC,YAAY,GAAGD,oBAAoB,CAACE,aAAa,CAACC,qBAAqB,CAACC,YAAY,CAAC;AACxF,IAAA,QAAQ,EAAE,gCAAgC;AAC1C,IAAA,MAAM,EAAE,yBAAyB;AACjC,IAAA,eAAe,EAAE,CAAC;AAClB,IAAA,MAAM,EAAE,6DAA6D;AACrE,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,QAAQ;AAChB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,QAAQ,EAAE,CAAC;AACX,QAAA,UAAU,EAAE,CAAC;AACb,QAAA,MAAM,EAAE;AACJ,UAAA,MAAM,EAAE,oBAAoB;AAC5B,UAAA,QAAQ,EAAE;SACb;AACD,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,OAAO;AACf,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,UAAU,EAAE,CAAC;AACb,QAAA,cAAc,EAAE,CAAC;AACjB,QAAA,MAAM,EAAE;AACJ,UAAA,MAAM,EAAE,oBAAoB;AAC5B,UAAA,QAAQ,EAAE;SACb;AACD,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,YAAY,EAAE;AAClB,OAAC,EACD;AACI,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,KAAK,EAAE,CAAC;AACR,QAAA,cAAc,EAAE,CAAC;AACjB,QAAA,YAAY,EAAE;OACjB;AAET;AACJ,GAAC,CAAC,CAAC;AAEP;;;;"}