You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Object IDs are now the single source of truth for Asteroids Object Vector runtime identity. Runtime game selection uses `object.asteroids.*` IDs directly instead of resolving through `asset.asteroids.*` IDs or `vector.asteroids.*` editor IDs.
9
+
10
+
## Removed Or Replaced Runtime Identity
11
+
12
+
- Replaced Asteroids scene constants that selected `asset.asteroids.*` with `object.asteroids.*` constants.
13
+
- Replaced Asteroids scene render calls from `assetId` to `objectId` for ship, asteroid sizes, and UFO sizes.
-`asset.asteroids.*` remains in `workspace.tools.object-vector-studio-v2.assetLibrary` because those entries are editor/library assets that map to Object Vector objects. Runtime scene selection no longer depends on them.
19
+
-`vector.asteroids.*` remains in `workspace.tools.vector-map-editor.vectorMapDocument.vectors` and vector document asset refs because those are editor/vector-document geometry IDs, not game runtime object identities.
20
+
- Object Vector object records remain under `workspace.tools.object-vector-studio-v2.objects`; the runtime loader resolves these objects by object ID.
21
+
22
+
## Schema Changes
23
+
24
+
- Added `game.gameData.objectVectorRuntime.objectIds` to `tools/schemas/game.manifest.schema.json`.
25
+
- The schema constrains runtime object references with the `^object\.` identity pattern so asset IDs and vector IDs are rejected when this contract is used.
26
+
- Updated `games/Asteroids/game.manifest.json` to declare ship, asteroid, and UFO runtime object IDs in `game.gameData.objectVectorRuntime.objectIds`.
27
+
28
+
## Editor Controls
29
+
30
+
- Triangle-labeled Object Vector polygon shapes hide Add Point, Delete Point, and point selection controls.
31
+
- Editable non-triangle polygons retain Add Point and Delete Point behavior.
32
+
- Duplicate Frame now renders between Frame Earlier and Frame Later.
33
+
34
+
## Validation
35
+
36
+
- PASS - Asteroids game manifest validates against the updated schema.
37
+
- PASS - Asteroids small asteroid resolves by `objectId: object.asteroids.asteroid.small`.
38
+
- PASS - Object Vector Studio V2 loads Asteroids objects.
39
+
- PASS - Triangle/non-triangle polygon controls verified in Playwright.
40
+
- PASS - Duplicate Frame ordering verified in Playwright.
41
+
- PASS - `npm run test:workspace-v2` completed with 49 passed.
The full workspace-v2 run produced transient Asteroids manifest write-back output from existing save tests. That generated file noise was restored after validation; the final tracked diff contains only Object Vector Studio V2 dirty tracking and its Playwright test coverage.
40
+
Asset IDs remain in Object Vector Studio V2 assetLibrary as editor/library asset entries. Runtime game selection now uses object IDs directly.
<buttonid="objectVectorStudioV2DuplicateFrameButton" type="button" disabledtitle="Disabled until a state frame is selected">Duplicate Frame</button>
161
160
<buttonid="objectVectorStudioV2FrameEarlierButton" type="button" disabledtitle="Disabled until the selected frame can move earlier">Frame Earlier</button>
161
+
<buttonid="objectVectorStudioV2DuplicateFrameButton" type="button" disabledtitle="Disabled until a state frame is selected">Duplicate Frame</button>
162
162
<buttonid="objectVectorStudioV2FrameLaterButton" type="button" disabledtitle="Disabled until the selected frame can move later">Frame Later</button>
0 commit comments