@pixelvibing/cli 0.50.0 → 0.51.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.
@@ -4762,7 +4762,7 @@ const move = {
4762
4762
  );
4763
4763
  }
4764
4764
  };
4765
- const version = "0.50.0";
4765
+ const version = "0.51.0";
4766
4766
  const manifest = {
4767
4767
  version
4768
4768
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixelvibing/cli",
3
- "version": "0.50.0",
3
+ "version": "0.51.0",
4
4
  "description": "PixelVibing: pixel art game assets from the command line, and the Skills that teach coding assistants to make them.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://pixelvibing.com",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: pixelvibing-change
3
- description: Change art this game already has on PixelVibing — another of an object (a variant), an object or a creature changed as you say (an edit), or one set in motion (an animation) — through the PixelVibing MCP server's generate tool, from a picture the platform keeps. Use when a result is close but not right, or needs another like it, or has to move.
3
+ description: Change art this game already has on PixelVibing — another of an object (a variant), an object or a creature changed as you say (an edit), one set in motion (an animation) or drawn in a still pose (a pose), kept with its sprite — through the PixelVibing MCP server's generate tool, from a picture the platform keeps. Use when a result is close but not right, needs another like it, has to move, or needs a pose.
4
4
  ---
5
5
 
6
6
  # Changing a result
@@ -22,6 +22,7 @@ use only one a tool answered.
22
22
  { "project": "<id>", "kind": "variant", "source_image": "<image id>", "instruction": "in autumn colours", "max_percent": 40 }
23
23
  { "project": "<id>", "kind": "edit", "source_image": "<image id>", "source_name": "knight", "instruction": "give it a red cape", "max_percent": 40 }
24
24
  { "project": "<id>", "kind": "animate", "source_image": "<image id>", "instruction": "walks to the right", "enrich": false, "max_percent": 40 }
25
+ { "project": "<id>", "kind": "pose", "source_image": "<image id>", "instruction": "mid-walk", "into": { "sprite": "outfit/fox", "name": "mid-walk", "direction": "south" }, "max_percent": 40 }
25
26
  ```
26
27
 
27
28
  - **`variant`** draws another of an object, keeping what makes it that object; the
@@ -32,9 +33,31 @@ use only one a tool answered.
32
33
  its first frame to its last: what moves, how far, and how it returns. It takes no
33
34
  reference; the platform chooses how many frames. Pass `enrich: false` when the motion is
34
35
  written in full; leave it on for a person's few words.
36
+ - **`pose`** draws an object or a creature in a still pose. The instruction is the pose:
37
+ a label such as `mid-walk`, or what changes in a few words. It takes no reference.
35
38
 
36
- `get_job` follows the job; then `pixel-vibing-cli pull <job id>` lands it. An animation
37
- lands as `<name>/<n>`, one picture a frame, and an export packs its frames as an animation.
39
+ ## A sprite's motion
40
+
41
+ A sprite keeps its motion with it, in three groups, each piece at an address:
42
+
43
+ | Group | What it is | Address |
44
+ |---|---|---|
45
+ | views | one picture a direction | `<sprite> › view › <direction>` |
46
+ | poses | a still picture under a label, in a direction or more | `<sprite> › pose:<label> › <direction>` |
47
+ | animations | a named list of frames | `<sprite> › animation:<name>` |
48
+
49
+ `get_sprite_motion` with the project and the sprite's name answers all three, each picture
50
+ by its image id, and the sprite's own picture among `parts` — the `source_image` to animate or
51
+ pose it from. Give `generate` an `into` and an animation or a pose is kept with the sprite as
52
+ the job finishes: `{ "sprite": "object/windmill", "name": "sails-turning" }` for an animation,
53
+ `{ "sprite": "outfit/fox", "name": "mid-walk", "direction": "east" }` for a pose. The name is
54
+ kebab-case; a creature's animation is one the game plays, such as `walk-south`; a pose faces
55
+ south unless a direction is given. Drawn again at the same address, the new one takes the
56
+ address and the old one is still kept.
57
+
58
+ `get_job` follows the job; one kept with its sprite says so in its data's `kept`. Without
59
+ `into`, `pixel-vibing-cli pull <job id>` lands it: an animation lands as `<name>/<n>`, one
60
+ picture a frame, and an export packs its frames as an animation.
38
61
 
39
62
  ## Not here
40
63