@helix3/helix-cli 0.1.18-helix3.265 → 0.1.18-helix3.266
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/bridge-plugins/helix.bridge.unreal/bin/unreal-skeletal-mesh-extract.js +10 -1
- package/bridge-plugins/helix.bridge.unreal/test/handler.test.js +17 -0
- package/bridge-recipes/unreal/helix-character-creator-female/README.md +57 -0
- package/bridge-recipes/unreal/helix-character-creator-female/all.json +18 -0
- package/bridge-recipes/unreal/helix-character-creator-female/back.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/back.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/base-female-face.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/base-female.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/bottom.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/bottom.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/eyewear.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/eyewear.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/footwear.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/footwear.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/gloves.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/gloves.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/hair.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/hair.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/headwear.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/headwear.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/mask.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/mask.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/neck.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/neck.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/outfit.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/outfit.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/top.addon.json +1 -0
- package/bridge-recipes/unreal/helix-character-creator-female/top.json +1 -0
- package/package.json +1 -1
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_abs.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_expression.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_jbeam.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_materials.cpython-312.pyc +0 -0
|
@@ -22,6 +22,15 @@ const PROFILE_SET_SCHEMA = 'helix.bridge.unreal-asset-set/1';
|
|
|
22
22
|
const CAPABILITY = 'unreal.project.extract';
|
|
23
23
|
const MAX_PROFILE_BYTES = 64 * 1024;
|
|
24
24
|
const MAX_PROJECT_ENTRIES = 100_000;
|
|
25
|
+
// Mirrors src/bridge/detect.ts's DIRECTORY_EXCLUDES (kept in sync by hand: this plugin script
|
|
26
|
+
// runs standalone via `spawn`, not through the built CLI, so it cannot import that module).
|
|
27
|
+
// Binaries/Intermediate/Saved/DerivedDataCache are large, regenerable Unreal build/cache
|
|
28
|
+
// directories that never contain a .uproject and were the reason a real project (hundreds of
|
|
29
|
+
// GB of Perforce-synced Engine + build caches) blew straight through the entry-count limit
|
|
30
|
+
// below without ever reaching the actual project file.
|
|
31
|
+
const PROJECT_WALK_EXCLUDES = new Set([
|
|
32
|
+
'.git', 'node_modules', 'Intermediate', 'Saved', 'DerivedDataCache', 'Library', '.godot', 'Binaries',
|
|
33
|
+
]);
|
|
25
34
|
const LOG_TAIL_BYTES = 16 * 1024;
|
|
26
35
|
const FBX_HEADER_BYTES = 1024;
|
|
27
36
|
const FBX_BINARY_HEADER = Buffer.from('Kaydara FBX Binary \0\x1a\0', 'binary');
|
|
@@ -230,7 +239,7 @@ function findProject(sourcePath) {
|
|
|
230
239
|
const path = join(directory, entry.name);
|
|
231
240
|
if (entry.isSymbolicLink()) fail(`Unreal project snapshot contains a symlink: ${path}`);
|
|
232
241
|
if (entry.isDirectory()) {
|
|
233
|
-
pending.push(path);
|
|
242
|
+
if (!PROJECT_WALK_EXCLUDES.has(entry.name)) pending.push(path);
|
|
234
243
|
} else if (entry.isFile() && extname(entry.name).toLowerCase() === '.uproject') {
|
|
235
244
|
projects.push(path);
|
|
236
245
|
}
|
|
@@ -255,3 +255,20 @@ test('requires exactly one uproject in the immutable source snapshot', () => {
|
|
|
255
255
|
assert.equal(result.status, 1);
|
|
256
256
|
assert.match(result.stderr, /exactly one \.uproject file; found 2/);
|
|
257
257
|
});
|
|
258
|
+
|
|
259
|
+
test('does not walk into Binaries/Intermediate/Saved/DerivedDataCache when finding the .uproject', () => {
|
|
260
|
+
const entry = fixture();
|
|
261
|
+
// A real Perforce-synced Unreal project's build/cache directories can hold hundreds of
|
|
262
|
+
// thousands of files; simulate that here with just enough entries (and a decoy .uproject
|
|
263
|
+
// inside one of them) to prove the walk skips them entirely rather than merely tolerating them.
|
|
264
|
+
for (const excluded of ['Binaries', 'Intermediate', 'Saved', 'DerivedDataCache']) {
|
|
265
|
+
const dir = join(entry.project, excluded, 'Nested');
|
|
266
|
+
mkdirSync(dir, { recursive: true });
|
|
267
|
+
for (let i = 0; i < 10; i += 1) writeFileSync(join(dir, `junk-${i}.bin`), '');
|
|
268
|
+
}
|
|
269
|
+
writeFileSync(join(entry.project, 'Intermediate', 'Decoy.uproject'), '{}');
|
|
270
|
+
const result = run(entry);
|
|
271
|
+
assert.equal(result.status, 0, result.stderr);
|
|
272
|
+
const response = JSON.parse(result.stdout);
|
|
273
|
+
assert.equal(response.artifacts[0].kind, 'format.fbx');
|
|
274
|
+
});
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# HELIX Character Creator Female
|
|
2
|
+
|
|
3
|
+
Female mirror of `helix-character-creator-male/`: curated Unreal asset profiles for the
|
|
4
|
+
canonical HELIX Base Female and one representative wearable for every supported customizer
|
|
5
|
+
slot, scaffolded 2026-09-26 by the wearables-import research pass
|
|
6
|
+
(`/Users/jack/Developer/helix-workspace/run/open-alpha-qa/wearables-import/inventory.md`).
|
|
7
|
+
|
|
8
|
+
The profiles expect the `/HelixCharacterCreator` plugin mount, same as the male directory. Run
|
|
9
|
+
these through the packaged `helix.bridge.unreal` adapter: `--type character` for the base body/
|
|
10
|
+
face, `--type addon --input host=... --input addon=...` for wearables.
|
|
11
|
+
|
|
12
|
+
**Published compatibility host: Universal Item `bcafa7e1-9487-422d-8c08-e152b81f1f45`** ("Base
|
|
13
|
+
Female", creator `testcreator`, package v1.2.0, Face V1, published but not on the public
|
|
14
|
+
marketplace list — no marketplaceDistributions, same orphan-publish pattern as HELIX Starter and
|
|
15
|
+
Male Cargo Bottom, so it will not surface from a normal marketplace search).
|
|
16
|
+
|
|
17
|
+
Every `*.addon.json` profile is bound to that host twice, mirroring the male pattern exactly:
|
|
18
|
+
`hostItemId` selects `bcafa7e1-9487-422d-8c08-e152b81f1f45`, while `hostSha256` must equal the
|
|
19
|
+
bytes of the host GLB. **That GLB's sha256 was independently downloaded and re-hashed for this
|
|
20
|
+
scaffold** (not taken on trust from the reporting agent):
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
curl -sL -o female-base.glb "https://eu.uni-items-web.dev.helix-cdn.com/universal-items/bcafa7e1-9487-422d-8c08-e152b81f1f45/bce4c302-7d1e-4360-99c1-d5c2972dfc6e/web/female-base.web.glb"
|
|
24
|
+
shasum -a 256 female-base.glb
|
|
25
|
+
# 8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760 (1,789,588 bytes, valid glTF-binary v2)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Known metadata bug, not fixed here:** the Universal Item API's own `sizeBytes` field for this
|
|
29
|
+
asset reports `753656`, which does not match the actual downloaded byte count (1,789,588) or a
|
|
30
|
+
real GLB parse. Use the sha256 above, measured from the actual bytes, not anything derived from
|
|
31
|
+
that stale field. Worth a bug report against whatever wrote that metadata.
|
|
32
|
+
|
|
33
|
+
Each `<slot>.json` here names one confirmed (`find`-verified, not guessed) representative female
|
|
34
|
+
asset per slot, picked from the full 220-item wearable survey in `inventory.md`:
|
|
35
|
+
|
|
36
|
+
| Slot | Representative | Unreal source |
|
|
37
|
+
| --- | --- | --- |
|
|
38
|
+
| top | Female Basic Tee | `Characters/Clothes/Woman/W_Basic_T_Shirt/W_Basic_T_Shirt` |
|
|
39
|
+
| bottom | Female Cargo Bottom | `Characters/Clothes/Woman/W_Cargo_Pants/W_Cargo_Pants` |
|
|
40
|
+
| footwear | Female Chunky Knit Sneakers | `Characters/Clothes/Woman/Chunky_Knit_Sneakers/SKM_W_Chunky_Knit_Sneakers` |
|
|
41
|
+
| gloves | Female NEO Arcane Heir Gloves | `Characters/Clothes/Woman/NEO_Arcane_Heir_Gloves/SKM_W_NEO_Arcane_Heir_Gloves` |
|
|
42
|
+
| mask | Female Cyberpunk ONI Mask | `Characters/Clothes/Woman/Cyberpunk_ONI_Mask/SKM_W_Cyberpunk_ONI_Mask` |
|
|
43
|
+
| headwear | Female Cap | `Characters/Clothes/Woman/W_Cap/W_Cap` |
|
|
44
|
+
| eyewear | Female Sport Sunglasses | `Characters/Clothes/Woman/Sport_Sunglasses/SKM_W_Sport_Sunglasses` |
|
|
45
|
+
| neck | Female Chain | `Characters/Clothes/Woman/W_Chain/SK_W_Chain` |
|
|
46
|
+
| back | Female Black Bag | `Characters/Clothes/Woman/W_BlackBag/W_BlackBag_skinning` |
|
|
47
|
+
| hair | Female Hair A1 | `Characters/Hairs/Female/Hair_A1/SK_Hair_A1_F` |
|
|
48
|
+
| outfit | Female Firefight Outfit | `Characters/Clothes/Woman/SK_W_Firefight_Outfit/SK_W_Firefight_Outfit_skinning` |
|
|
49
|
+
|
|
50
|
+
`female-cap.addon.json` carries the same `technical-fabric-ripstop` palette family forced on
|
|
51
|
+
`male-cap.addon.json`, for visual-review parity with the Palette Pilot batch — change it if the
|
|
52
|
+
pilot phase wants a different reviewed family for the female cap.
|
|
53
|
+
|
|
54
|
+
None of these files have been run through `bridge import` yet — they are unexecuted scaffolding
|
|
55
|
+
only, mirroring the shape of the male recipes exactly. The pilot phase should smoke-test
|
|
56
|
+
`all.json` first (13-asset batch, same shape as the male `all.json`), then work through the
|
|
57
|
+
remaining ~219 female/male to-do items in `inventory.md` following this same pattern.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "helix.bridge.unreal-asset-set/1",
|
|
3
|
+
"assets": [
|
|
4
|
+
{ "slug": "base-female", "assetPath": "/HelixCharacterCreator/MetaHumans/Characters/F_Default/MC_Test/Body/SKM_MC_Female_Default_BodyMesh", "exportMorphTargets": true },
|
|
5
|
+
{ "slug": "base-female-face", "assetPath": "/HelixCharacterCreator/MetaHumans/Characters/F_Default/MC_Test/Face/SKM_MC_Female_Default_FaceMesh", "exportMorphTargets": true },
|
|
6
|
+
{ "slug": "female-basic-tee", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/W_Basic_T_Shirt/W_Basic_T_Shirt", "exportMorphTargets": true },
|
|
7
|
+
{ "slug": "female-cargo-bottom", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/W_Cargo_Pants/W_Cargo_Pants", "exportMorphTargets": true },
|
|
8
|
+
{ "slug": "female-chunky-knit-sneakers", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/Chunky_Knit_Sneakers/SKM_W_Chunky_Knit_Sneakers", "exportMorphTargets": true },
|
|
9
|
+
{ "slug": "female-neo-arcane-heir-gloves", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/NEO_Arcane_Heir_Gloves/SKM_W_NEO_Arcane_Heir_Gloves", "exportMorphTargets": true },
|
|
10
|
+
{ "slug": "female-cyberpunk-oni-mask", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/Cyberpunk_ONI_Mask/SKM_W_Cyberpunk_ONI_Mask", "exportMorphTargets": true },
|
|
11
|
+
{ "slug": "female-cap", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/W_Cap/W_Cap", "exportMorphTargets": true },
|
|
12
|
+
{ "slug": "female-sport-sunglasses", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/Sport_Sunglasses/SKM_W_Sport_Sunglasses", "exportMorphTargets": true },
|
|
13
|
+
{ "slug": "female-chain", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/W_Chain/SK_W_Chain", "exportMorphTargets": true },
|
|
14
|
+
{ "slug": "female-black-bag", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/W_BlackBag/W_BlackBag_skinning", "exportMorphTargets": true },
|
|
15
|
+
{ "slug": "female-hair-a1", "assetPath": "/HelixCharacterCreator/Characters/Hairs/Female/Hair_A1/SK_Hair_A1_F", "exportMorphTargets": true },
|
|
16
|
+
{ "slug": "female-firefight-outfit", "assetPath": "/HelixCharacterCreator/Characters/Clothes/Woman/SK_W_Firefight_Outfit/SK_W_Firefight_Outfit_skinning", "exportMorphTargets": true }
|
|
17
|
+
]
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Black Bag","slug":"female-black-bag","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.back@1","socket":"back","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-black-bag","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/W_BlackBag/W_BlackBag_skinning","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"base-female-face","assetPath":"/HelixCharacterCreator/MetaHumans/Characters/F_Default/MC_Test/Face/SKM_MC_Female_Default_FaceMesh","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"base-female","assetPath":"/HelixCharacterCreator/MetaHumans/Characters/F_Default/MC_Test/Body/SKM_MC_Female_Default_BodyMesh","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Cargo Bottom","slug":"female-cargo-bottom","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.bottom@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-cargo-bottom","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/W_Cargo_Pants/W_Cargo_Pants","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Sport Sunglasses","slug":"female-sport-sunglasses","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.eyewear@1","socket":"head","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-sport-sunglasses","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/Sport_Sunglasses/SKM_W_Sport_Sunglasses","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Chunky Knit Sneakers","slug":"female-chunky-knit-sneakers","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.footwear@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-chunky-knit-sneakers","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/Chunky_Knit_Sneakers/SKM_W_Chunky_Knit_Sneakers","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female NEO Arcane Heir Gloves","slug":"female-neo-arcane-heir-gloves","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.gloves@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-neo-arcane-heir-gloves","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/NEO_Arcane_Heir_Gloves/SKM_W_NEO_Arcane_Heir_Gloves","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Hair A1","slug":"female-hair-a1","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.hair@1","socket":"head","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-hair-a1","assetPath":"/HelixCharacterCreator/Characters/Hairs/Female/Hair_A1/SK_Hair_A1_F","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Cap","slug":"female-cap","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.headwear@1","socket":"head","nodes":[],"palette":{"action":"forceFamilyId","familyId":"technical-fabric-ripstop","familyVersion":"1.0.0","presetId":"clean","overrides":{}},"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-cap","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/W_Cap/W_Cap","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Cyberpunk ONI Mask","slug":"female-cyberpunk-oni-mask","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.mask@1","socket":"head","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-cyberpunk-oni-mask","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/Cyberpunk_ONI_Mask/SKM_W_Cyberpunk_ONI_Mask","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Chain","slug":"female-chain","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.neck@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-chain","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/W_Chain/SK_W_Chain","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Firefight Outfit","slug":"female-firefight-outfit","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.outfit@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-firefight-outfit","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/SK_W_Firefight_Outfit/SK_W_Firefight_Outfit_skinning","exportMorphTargets":true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge-character-addon-profile/1","title":"Female Basic Tee","slug":"female-basic-tee","hostItemId":"bcafa7e1-9487-422d-8c08-e152b81f1f45","hostSha256":"8e75dfafb8c1bed53fa49fca633195385f5890bed1adae4fb2d28d3dea5b8760","slotType":"character.top@1","socket":"chest","nodes":[],"ops":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion":"helix.bridge.unreal-asset/1","slug":"female-basic-tee","assetPath":"/HelixCharacterCreator/Characters/Clothes/Woman/W_Basic_T_Shirt/W_Basic_T_Shirt","exportMorphTargets":true}
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|