@genex-ai/cli-demo 0.61.0-dev.141 → 0.62.0-dev.143

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@genex-ai/cli-demo",
3
- "version": "0.61.0-dev.141",
3
+ "version": "0.62.0-dev.143",
4
4
  "description": "Set up your project's agent workspace (.claude/.codex/.cursor in the game folder), authorize, create a game project, generate AI assets, and publish (genex CLI).",
5
5
  "type": "module",
6
6
  "bin": {
@@ -12,6 +12,7 @@ export type MeshyMotionPolicy =
12
12
  export type MeshyLocomotionBindingMode = "loop" | "one-shot" | "pose";
13
13
 
14
14
  export interface MeshyLocomotionBinding {
15
+ actionId?: number;
15
16
  clip: string;
16
17
  mode: MeshyLocomotionBindingMode;
17
18
  phase?: number;
@@ -23,7 +24,20 @@ export interface MeshyCharacterManifest {
23
24
  revision: number;
24
25
  manifestVersion: number;
25
26
  rig: "meshy-biped";
26
- controllerPack?: { key: string; version: number };
27
+ controllerPack?: {
28
+ key: string;
29
+ version: number;
30
+ fingerprint?: string;
31
+ actionIds?: number[];
32
+ };
33
+ provenance?: {
34
+ provider: "meshy";
35
+ aiModel: "meshy-6";
36
+ apiVersion?: string;
37
+ poseMode: "a-pose" | "t-pose";
38
+ shouldRemesh: boolean;
39
+ targetPolycount: number;
40
+ };
27
41
  model: {
28
42
  url: string;
29
43
  heightMeters: number | null;
@@ -16,10 +16,12 @@ crossfades, transition rules, and multiplayer authority contract.
16
16
  npx genex character "stylized desert courier, practical layered clothing"
17
17
  ```
18
18
 
19
- The default request uses Meshy 6 to generate and texture an A-pose humanoid,
20
- validates the rig's arm pose, and retries the full generation once in a strict
21
- T-pose before requesting controller-pack animations when the A-pose is invalid.
22
- It remeshes and rigs the accepted model, adds the preview-reviewed neutral-v2
19
+ The default request uses Meshy 6 to generate, texture, remesh, and rig an
20
+ A-pose humanoid. It generates the required controller-pack actions for that
21
+ candidate and rejects bad structural or native motion instead of repairing it.
22
+ If any required check fails, it retries the complete workflow once in a strict
23
+ T-pose; optional actions start only after a full candidate passes. It remeshes
24
+ and rigs the accepted model, adds the immutable preview-reviewed neutral-v3
23
25
  idle/walk/run/crouch/jump controller pack,
24
26
  and stores every successful model
25
27
  and clip at permanent Genex asset URLs. It prints the complete Genex-credit
@@ -83,6 +85,17 @@ after preview without asking the player to disable cache.
83
85
  `playOneShot()` returns false and emits one warning when a requested clip is
84
86
  absent; treat that as an installation failure, not a successful action.
85
87
 
88
+ Meshy limb rotations are played unchanged. Never freeze hand tracks or apply
89
+ post-mixer arm, leg, or foot corrections. A bad native rig or clip must be
90
+ rejected and regenerated. Only horizontal root/hip translation is normalized
91
+ so Rapier remains authoritative.
92
+
93
+ A controller pack is an immutable exact action set. If a required binding is
94
+ absent, installation fails instead of substituting Meshy's rig-basic Walking
95
+ or Running animation. During Meshy validation, record the action ID actually
96
+ bound to every slot. A public preview is not evidence when the game is playing
97
+ a different clip or a rig-basic fallback.
98
+
86
99
  Load `$genex-threejs-character-controller` for the actual wiring. The install
87
100
  command copies the shared controller plus `character/meshy/meshy-loader.ts`.
88
101
  The manifest points at the current rigged model and compact animation-only GLBs
@@ -93,6 +106,8 @@ durations, nominal speeds, trajectories, and gameplay requirements.
93
106
 
94
107
  - Meshy clips play only on the exact character revision whose skeleton
95
108
  signature matches. There is no runtime retargeting in this lane.
109
+ - Do not repair hands, arms, or legs at runtime. Verify the installed manifest's
110
+ exact slot-to-action mappings; stop and regenerate when a native pose is bad.
96
111
  - Rapier owns the player transform. Animation tracks are normalized
97
112
  horizontally in place; never move the rendered character root separately.
98
113
  - `controller-loop` clips follow controller-local intent and measured speed.
@@ -50,6 +50,13 @@ after preview without asking the player to disable cache. `playOneShot()`
50
50
  returns false and emits one warning when a requested clip is absent; treat
51
51
  that as an installation failure, not a successful action.
52
52
 
53
+ Meshy limb rotations are played unchanged. Never freeze hand tracks or apply
54
+ post-mixer arm, leg, or foot corrections. A bad native rig or clip must be
55
+ rejected and regenerated. Only horizontal root/hip translation is normalized
56
+ so Rapier remains authoritative. A controller pack is an immutable exact
57
+ action set: if a required binding is absent, installation fails instead of
58
+ substituting Meshy's rig-basic Walking or Running animation.
59
+
53
60
  Because these files are game-owned, never run `genex controller character --force` over an edited
54
61
  fork as a migration strategy. Install a fresh copy elsewhere and port only the named changes.
55
62
 
@@ -200,6 +207,10 @@ slots, fallbacks, and cadence data. UAL clips still land in
200
207
  genre hints, `playOneShot` options, overrides, foot IK, and remote-player
201
208
  animation.
202
209
 
210
+ For Meshy characters, do not repair hands, arms, or legs at runtime. Verify
211
+ that the installed manifest binds the expected action IDs; if a native pose
212
+ is bad or a required binding is missing, stop and regenerate the character.
213
+
203
214
  ## Crouch (built in)
204
215
 
205
216
  `C` toggles crouch (capsule shrinks, speed drops to `crouchSpeedRatio ×
@@ -110,6 +110,11 @@ const anims = new CharacterAnimations(native.scene, native.clips, {
110
110
  });
111
111
  ```
112
112
 
113
+ During Meshy validation, record the action ID actually bound to every slot.
114
+ A public preview is not evidence when the game is playing a different clip or
115
+ a rig-basic fallback. The native loader plays every limb quaternion unchanged;
116
+ never freeze hand tracks or add post-mixer arm, leg, or foot corrections.
117
+
113
118
  The loader rejects clips whose manifest skeleton signature differs from the
114
119
  current model revision or whose tracks target missing bones. This is deliberate
115
120
  same-rig playback, not runtime retargeting. After adding an action, rerun the
@@ -54,6 +54,10 @@ everything twice.
54
54
  visibly crouched pose both respond. If a control calls `playOneShot()`, a
55
55
  false result or missing-clip warning is an installation failure even when
56
56
  locomotion continues normally.
57
+ During Meshy validation, record the action ID actually bound to every slot.
58
+ A public preview is not evidence when the game is playing a different clip
59
+ or a rig-basic fallback. Do not repair hands, arms, or legs at runtime: if a
60
+ native pose is bad or a required binding is missing, stop and regenerate.
57
61
  3. Capture one screenshot of live gameplay — of the **game**, not a sign-in
58
62
  gate or loading screen. A capture of the SDK's "Sign in to play" overlay is
59
63
  NOT gameplay evidence. Evidence captured in local test mode must be labeled