@almadar/std 16.203.0 → 16.205.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 (43) hide show
  1. package/behaviors/lolo/ui/game/atoms/std-choice-gate.lolo +1 -1
  2. package/behaviors/lolo/ui/game/atoms/std-fx-narrative.lolo +1 -1
  3. package/behaviors/lolo/ui/game/atoms/std-fx-particles.lolo +1 -1
  4. package/behaviors/lolo/ui/game/atoms/std-gate-lock.lolo +1 -1
  5. package/behaviors/lolo/ui/game/atoms/std-lives.lolo +1 -1
  6. package/behaviors/lolo/ui/game/atoms/std-loop-lock.lolo +1 -1
  7. package/behaviors/lolo/ui/game/atoms/std-objective-flow.lolo +1 -1
  8. package/behaviors/lolo/ui/game/atoms/std-pad-lock.lolo +1 -1
  9. package/behaviors/lolo/ui/game/atoms/std-patrol-hazard.lolo +1 -1
  10. package/behaviors/lolo/ui/game/atoms/std-pickup.lolo +1 -1
  11. package/behaviors/lolo/ui/game/atoms/std-platformer-body.lolo +1 -1
  12. package/behaviors/lolo/ui/game/atoms/std-tutorial-overlay.lolo +1 -1
  13. package/behaviors/lolo/ui/game/atoms/std-velocity-gate.lolo +1 -1
  14. package/behaviors/lolo/ui/game/organisms/std-platformer-puzzle.lolo +302 -0
  15. package/behaviors/registry/ui/game/atoms/std-choice-gate.orb +82 -2
  16. package/behaviors/registry/ui/game/atoms/std-fx-narrative.orb +1 -1
  17. package/behaviors/registry/ui/game/atoms/std-fx-particles.orb +82 -2
  18. package/behaviors/registry/ui/game/atoms/std-gate-lock.orb +48 -2
  19. package/behaviors/registry/ui/game/atoms/std-lives.orb +26 -2
  20. package/behaviors/registry/ui/game/atoms/std-loop-lock.orb +56 -2
  21. package/behaviors/registry/ui/game/atoms/std-objective-flow.orb +1 -1
  22. package/behaviors/registry/ui/game/atoms/std-pad-lock.orb +30 -2
  23. package/behaviors/registry/ui/game/atoms/std-patrol-hazard.orb +63 -2
  24. package/behaviors/registry/ui/game/atoms/std-pickup.orb +1 -1
  25. package/behaviors/registry/ui/game/atoms/std-platformer-body.orb +1 -1
  26. package/behaviors/registry/ui/game/atoms/std-tutorial-overlay.orb +24 -2
  27. package/behaviors/registry/ui/game/atoms/std-velocity-gate.orb +75 -2
  28. package/behaviors/registry/ui/game/organisms/std-platformer-puzzle.orb +2063 -0
  29. package/dist/behaviors/exports-reader.js +1235 -0
  30. package/dist/behaviors/functions/index.d.ts +115 -14
  31. package/dist/behaviors/functions/index.js +1232 -1
  32. package/dist/behaviors/index.d.ts +1 -1
  33. package/dist/behaviors/index.js +1236 -1
  34. package/dist/behaviors/query.js +1235 -0
  35. package/dist/behaviors-embeddings.hash.json +3 -3
  36. package/dist/behaviors-embeddings.json +29 -25
  37. package/dist/behaviors-registry.json +1805 -17
  38. package/dist/index.d.ts +1 -1
  39. package/dist/index.js +1236 -1
  40. package/dist/knob-embeddings.hash.json +3 -3
  41. package/dist/knob-embeddings.json +1 -1
  42. package/dist/registry/factory-signatures.json +1 -1
  43. package/package.json +2 -2
@@ -0,0 +1,2063 @@
1
+ {
2
+ "description": "Platformer + puzzle genre substrate organism. Composes the standard authorities — platformer-body, pickup, objective-flow, choice-gate, fx-particles, fx-narrative, tutorial-overlay — and enforces five trait-typed pillar slots: agency, challenge, goal, reward, feedback. Levels consume this organism, fill every slot with a local rebinding trait, and add their own geometry, render, and math rules. Math targets and grade levels stay downstream in the domain package; this substrate is domain-agnostic.",
3
+ "ledger": {
4
+ "entries": {
5
+ "ent_01M1P1PWCGZ32KZGR7NPPHHH8A": {
6
+ "bakedName": "PlatformerPuzzleData",
7
+ "curName": "PlatformerPuzzleData",
8
+ "id": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
9
+ "kind": "entity",
10
+ "owner": "workspace",
11
+ "renames": []
12
+ },
13
+ "evt_01M1P1PWCGCA0B2M2TKRGMCY69": {
14
+ "bakedName": "INIT",
15
+ "curName": "INIT",
16
+ "id": "evt_01M1P1PWCGCA0B2M2TKRGMCY69",
17
+ "kind": "event",
18
+ "owner": "workspace",
19
+ "parent": "trt_01M1P1PWCGWTGVDSK6G3F1DRAF",
20
+ "renames": []
21
+ },
22
+ "evt_01M1P1PWCGP4ZME1SNAC1FTXY8": {
23
+ "bakedName": "INIT",
24
+ "curName": "INIT",
25
+ "id": "evt_01M1P1PWCGP4ZME1SNAC1FTXY8",
26
+ "kind": "event",
27
+ "owner": "workspace",
28
+ "parent": "trt_01M1P1PWCGMYPY7PBYVE2D8RSP",
29
+ "renames": []
30
+ },
31
+ "orb_01M1P1PWCGCTCEX18N27Z786TC": {
32
+ "bakedName": "PlatformerPuzzleOrbital",
33
+ "curName": "PlatformerPuzzleOrbital",
34
+ "id": "orb_01M1P1PWCGCTCEX18N27Z786TC",
35
+ "kind": "orbital",
36
+ "owner": "workspace",
37
+ "renames": []
38
+ },
39
+ "pag_01M1P1PWCGN855SPWEAF4WTN2N": {
40
+ "bakedName": "PlatformerPuzzlePage",
41
+ "curName": "PlatformerPuzzlePage",
42
+ "id": "pag_01M1P1PWCGN855SPWEAF4WTN2N",
43
+ "kind": "page",
44
+ "owner": "workspace",
45
+ "renames": []
46
+ },
47
+ "trt_01M1P1PWCG0XJVK4S43DZ77B40": {
48
+ "bakedName": "PlatformerPuzzleNarrative",
49
+ "curName": "PlatformerPuzzleNarrative",
50
+ "id": "trt_01M1P1PWCG0XJVK4S43DZ77B40",
51
+ "kind": "trait",
52
+ "owner": "workspace",
53
+ "renames": []
54
+ },
55
+ "trt_01M1P1PWCG43Y342XV5PWGZ6S6": {
56
+ "bakedName": "PlatformerPuzzleBody",
57
+ "curName": "PlatformerPuzzleBody",
58
+ "id": "trt_01M1P1PWCG43Y342XV5PWGZ6S6",
59
+ "kind": "trait",
60
+ "owner": "workspace",
61
+ "renames": []
62
+ },
63
+ "trt_01M1P1PWCG635RBW7TY3DAXKFN": {
64
+ "bakedName": "PlatformerPuzzleChoice",
65
+ "curName": "PlatformerPuzzleChoice",
66
+ "id": "trt_01M1P1PWCG635RBW7TY3DAXKFN",
67
+ "kind": "trait",
68
+ "owner": "workspace",
69
+ "renames": []
70
+ },
71
+ "trt_01M1P1PWCG8G3Z3YWQJ5WQWJRZ": {
72
+ "bakedName": "PlatformerPuzzlePickup",
73
+ "curName": "PlatformerPuzzlePickup",
74
+ "id": "trt_01M1P1PWCG8G3Z3YWQJ5WQWJRZ",
75
+ "kind": "trait",
76
+ "owner": "workspace",
77
+ "renames": []
78
+ },
79
+ "trt_01M1P1PWCGMYPY7PBYVE2D8RSP": {
80
+ "bakedName": "PlatformerPuzzle",
81
+ "curName": "PlatformerPuzzle",
82
+ "id": "trt_01M1P1PWCGMYPY7PBYVE2D8RSP",
83
+ "kind": "trait",
84
+ "owner": "workspace",
85
+ "renames": []
86
+ },
87
+ "trt_01M1P1PWCGQWT8KN8HPR80C3P5": {
88
+ "bakedName": "PlatformerPuzzleObjective",
89
+ "curName": "PlatformerPuzzleObjective",
90
+ "id": "trt_01M1P1PWCGQWT8KN8HPR80C3P5",
91
+ "kind": "trait",
92
+ "owner": "workspace",
93
+ "renames": []
94
+ },
95
+ "trt_01M1P1PWCGWTGVDSK6G3F1DRAF": {
96
+ "bakedName": "PlatformerPuzzleNoopPreview",
97
+ "curName": "PlatformerPuzzleNoopPreview",
98
+ "id": "trt_01M1P1PWCGWTGVDSK6G3F1DRAF",
99
+ "kind": "trait",
100
+ "owner": "workspace",
101
+ "renames": []
102
+ },
103
+ "trt_01M1P1PWCGWV0WYY1GT1DKE4PX": {
104
+ "bakedName": "PlatformerPuzzleFx",
105
+ "curName": "PlatformerPuzzleFx",
106
+ "id": "trt_01M1P1PWCGWV0WYY1GT1DKE4PX",
107
+ "kind": "trait",
108
+ "owner": "workspace",
109
+ "renames": []
110
+ },
111
+ "trt_01M1P1PWCGYFE78J2FGK45GQFA": {
112
+ "bakedName": "PlatformerPuzzleTutorial",
113
+ "curName": "PlatformerPuzzleTutorial",
114
+ "id": "trt_01M1P1PWCGYFE78J2FGK45GQFA",
115
+ "kind": "trait",
116
+ "owner": "workspace",
117
+ "renames": []
118
+ }
119
+ },
120
+ "schemaVersion": 1
121
+ },
122
+ "name": "std-platformer-puzzle",
123
+ "orbitals": [
124
+ {
125
+ "entity": {
126
+ "fields": [
127
+ {
128
+ "name": "id",
129
+ "required": true,
130
+ "type": "string"
131
+ },
132
+ {
133
+ "default": {
134
+ "facingRight": true,
135
+ "grounded": false,
136
+ "height": 1.0,
137
+ "vx": 0.0,
138
+ "vy": 0.0,
139
+ "width": 1.0,
140
+ "x": 0.0,
141
+ "y": 0.0
142
+ },
143
+ "name": "body",
144
+ "properties": {
145
+ "facingRight": {
146
+ "name": "facingRight",
147
+ "required": false,
148
+ "type": "boolean"
149
+ },
150
+ "grounded": {
151
+ "name": "grounded",
152
+ "required": false,
153
+ "type": "boolean"
154
+ },
155
+ "height": {
156
+ "name": "height",
157
+ "required": true,
158
+ "type": "number"
159
+ },
160
+ "vx": {
161
+ "name": "vx",
162
+ "required": false,
163
+ "type": "number"
164
+ },
165
+ "vy": {
166
+ "name": "vy",
167
+ "required": false,
168
+ "type": "number"
169
+ },
170
+ "width": {
171
+ "name": "width",
172
+ "required": true,
173
+ "type": "number"
174
+ },
175
+ "x": {
176
+ "name": "x",
177
+ "required": true,
178
+ "type": "number"
179
+ },
180
+ "y": {
181
+ "name": "y",
182
+ "required": true,
183
+ "type": "number"
184
+ }
185
+ },
186
+ "type": "object"
187
+ },
188
+ {
189
+ "default": false,
190
+ "name": "fell",
191
+ "type": "boolean"
192
+ },
193
+ {
194
+ "default": "",
195
+ "name": "hazardId",
196
+ "type": "string"
197
+ },
198
+ {
199
+ "default": "",
200
+ "name": "goalId",
201
+ "type": "string"
202
+ },
203
+ {
204
+ "default": false,
205
+ "name": "skating",
206
+ "type": "boolean"
207
+ },
208
+ {
209
+ "default": [],
210
+ "items": {
211
+ "properties": {
212
+ "a": {
213
+ "name": "a",
214
+ "required": true,
215
+ "type": "number"
216
+ },
217
+ "b": {
218
+ "name": "b",
219
+ "required": false,
220
+ "type": "number"
221
+ },
222
+ "h": {
223
+ "name": "h",
224
+ "required": true,
225
+ "type": "number"
226
+ },
227
+ "k": {
228
+ "name": "k",
229
+ "required": true,
230
+ "type": "number"
231
+ },
232
+ "x0": {
233
+ "name": "x0",
234
+ "required": true,
235
+ "type": "number"
236
+ },
237
+ "x1": {
238
+ "name": "x1",
239
+ "required": true,
240
+ "type": "number"
241
+ }
242
+ },
243
+ "type": "object"
244
+ },
245
+ "name": "curveMods",
246
+ "type": "array"
247
+ },
248
+ {
249
+ "default": {},
250
+ "name": "tuning",
251
+ "properties": {
252
+ "gravity": {
253
+ "name": "gravity",
254
+ "required": false,
255
+ "type": "number"
256
+ },
257
+ "jumpStrength": {
258
+ "name": "jumpStrength",
259
+ "required": false,
260
+ "type": "number"
261
+ },
262
+ "moveSpeed": {
263
+ "name": "moveSpeed",
264
+ "required": false,
265
+ "type": "number"
266
+ }
267
+ },
268
+ "type": "object"
269
+ },
270
+ {
271
+ "default": [],
272
+ "items": {
273
+ "properties": {
274
+ "collected": {
275
+ "name": "collected",
276
+ "required": false,
277
+ "type": "boolean"
278
+ },
279
+ "glyph": {
280
+ "name": "glyph",
281
+ "required": false,
282
+ "type": "string"
283
+ },
284
+ "id": {
285
+ "name": "id",
286
+ "required": true,
287
+ "type": "string"
288
+ },
289
+ "kind": {
290
+ "name": "kind",
291
+ "required": true,
292
+ "type": "string"
293
+ },
294
+ "message": {
295
+ "name": "message",
296
+ "required": false,
297
+ "type": "string"
298
+ },
299
+ "x": {
300
+ "name": "x",
301
+ "required": true,
302
+ "type": "number"
303
+ },
304
+ "y": {
305
+ "name": "y",
306
+ "required": true,
307
+ "type": "number"
308
+ }
309
+ },
310
+ "type": "object"
311
+ },
312
+ "name": "pickups",
313
+ "type": "array"
314
+ },
315
+ {
316
+ "default": false,
317
+ "name": "pickupCompleted",
318
+ "type": "boolean"
319
+ },
320
+ {
321
+ "default": 0.0,
322
+ "name": "total",
323
+ "type": "number"
324
+ },
325
+ {
326
+ "default": [],
327
+ "items": {
328
+ "properties": {
329
+ "chosen": {
330
+ "name": "chosen",
331
+ "required": false,
332
+ "type": "string"
333
+ },
334
+ "hint": {
335
+ "name": "hint",
336
+ "required": false,
337
+ "type": "string"
338
+ },
339
+ "id": {
340
+ "name": "id",
341
+ "required": true,
342
+ "type": "string"
343
+ },
344
+ "options": {
345
+ "items": {
346
+ "properties": {
347
+ "correct": {
348
+ "name": "correct",
349
+ "required": true,
350
+ "type": "boolean"
351
+ },
352
+ "dx": {
353
+ "name": "dx",
354
+ "required": true,
355
+ "type": "number"
356
+ },
357
+ "id": {
358
+ "name": "id",
359
+ "required": true,
360
+ "type": "string"
361
+ },
362
+ "label": {
363
+ "name": "label",
364
+ "required": true,
365
+ "type": "string"
366
+ }
367
+ },
368
+ "type": "object"
369
+ },
370
+ "name": "options",
371
+ "required": true,
372
+ "type": "array"
373
+ },
374
+ "solved": {
375
+ "name": "solved",
376
+ "required": false,
377
+ "type": "boolean"
378
+ },
379
+ "x": {
380
+ "name": "x",
381
+ "required": true,
382
+ "type": "number"
383
+ },
384
+ "y": {
385
+ "name": "y",
386
+ "required": true,
387
+ "type": "number"
388
+ }
389
+ },
390
+ "type": "object"
391
+ },
392
+ "name": "choices",
393
+ "type": "array"
394
+ },
395
+ {
396
+ "default": "none",
397
+ "name": "result",
398
+ "type": "string"
399
+ },
400
+ {
401
+ "default": [],
402
+ "items": {
403
+ "properties": {
404
+ "animation": {
405
+ "name": "animation",
406
+ "required": false,
407
+ "type": "string"
408
+ },
409
+ "bornAt": {
410
+ "name": "bornAt",
411
+ "required": false,
412
+ "type": "number"
413
+ },
414
+ "color": {
415
+ "name": "color",
416
+ "required": false,
417
+ "type": "string"
418
+ },
419
+ "effect": {
420
+ "name": "effect",
421
+ "required": false,
422
+ "type": "string"
423
+ },
424
+ "id": {
425
+ "name": "id",
426
+ "required": true,
427
+ "type": "string"
428
+ },
429
+ "maxTtl": {
430
+ "name": "maxTtl",
431
+ "required": false,
432
+ "type": "number"
433
+ },
434
+ "message": {
435
+ "name": "message",
436
+ "required": false,
437
+ "type": "string"
438
+ },
439
+ "particleCount": {
440
+ "name": "particleCount",
441
+ "required": false,
442
+ "type": "number"
443
+ },
444
+ "size": {
445
+ "name": "size",
446
+ "required": false,
447
+ "type": "number"
448
+ },
449
+ "space": {
450
+ "name": "space",
451
+ "required": false,
452
+ "type": "string"
453
+ },
454
+ "ttl": {
455
+ "name": "ttl",
456
+ "required": true,
457
+ "type": "number"
458
+ },
459
+ "type": {
460
+ "name": "type",
461
+ "required": true,
462
+ "type": "string"
463
+ },
464
+ "vx": {
465
+ "name": "vx",
466
+ "required": false,
467
+ "type": "number"
468
+ },
469
+ "vy": {
470
+ "name": "vy",
471
+ "required": false,
472
+ "type": "number"
473
+ },
474
+ "vz": {
475
+ "name": "vz",
476
+ "required": false,
477
+ "type": "number"
478
+ },
479
+ "x": {
480
+ "name": "x",
481
+ "required": true,
482
+ "type": "number"
483
+ },
484
+ "y": {
485
+ "name": "y",
486
+ "required": false,
487
+ "type": "number"
488
+ },
489
+ "z": {
490
+ "name": "z",
491
+ "required": false,
492
+ "type": "number"
493
+ }
494
+ },
495
+ "type": "object"
496
+ },
497
+ "name": "fx",
498
+ "type": "array"
499
+ },
500
+ {
501
+ "default": 0.0,
502
+ "name": "narrativeSeq",
503
+ "type": "number"
504
+ },
505
+ {
506
+ "default": "",
507
+ "name": "lastNarrative",
508
+ "type": "string"
509
+ },
510
+ {
511
+ "default": 0.0,
512
+ "name": "step",
513
+ "type": "number"
514
+ },
515
+ {
516
+ "default": false,
517
+ "name": "done",
518
+ "type": "boolean"
519
+ },
520
+ {
521
+ "default": 0.0,
522
+ "name": "score",
523
+ "type": "number"
524
+ },
525
+ {
526
+ "default": 3.0,
527
+ "name": "lives",
528
+ "type": "number"
529
+ },
530
+ {
531
+ "default": 1.0,
532
+ "name": "objectivesLeft",
533
+ "type": "number"
534
+ },
535
+ {
536
+ "default": false,
537
+ "name": "celebrated",
538
+ "type": "boolean"
539
+ }
540
+ ],
541
+ "id": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
542
+ "name": "PlatformerPuzzleData",
543
+ "persistence": "runtime",
544
+ "shared": true
545
+ },
546
+ "id": "orb_01M1P1PWCGCTCEX18N27Z786TC",
547
+ "name": "PlatformerPuzzleOrbital",
548
+ "pages": [
549
+ {
550
+ "id": "pag_01M1P1PWCGN855SPWEAF4WTN2N",
551
+ "name": "PlatformerPuzzlePage",
552
+ "path": "/platformer-puzzle",
553
+ "traits": [
554
+ {
555
+ "ref": "PlatformerPuzzleBody",
556
+ "refId": "trt_01M1P1PWCG43Y342XV5PWGZ6S6"
557
+ },
558
+ {
559
+ "ref": "PlatformerPuzzlePickup",
560
+ "refId": "trt_01M1P1PWCG8G3Z3YWQJ5WQWJRZ"
561
+ },
562
+ {
563
+ "ref": "PlatformerPuzzleObjective",
564
+ "refId": "trt_01M1P1PWCGQWT8KN8HPR80C3P5"
565
+ },
566
+ {
567
+ "ref": "PlatformerPuzzleChoice",
568
+ "refId": "trt_01M1P1PWCG635RBW7TY3DAXKFN"
569
+ },
570
+ {
571
+ "ref": "PlatformerPuzzleFx",
572
+ "refId": "trt_01M1P1PWCGWV0WYY1GT1DKE4PX"
573
+ },
574
+ {
575
+ "ref": "PlatformerPuzzleNarrative",
576
+ "refId": "trt_01M1P1PWCG0XJVK4S43DZ77B40"
577
+ },
578
+ {
579
+ "ref": "PlatformerPuzzleTutorial",
580
+ "refId": "trt_01M1P1PWCGYFE78J2FGK45GQFA"
581
+ },
582
+ {
583
+ "ref": "PlatformerPuzzle",
584
+ "refId": "trt_01M1P1PWCGMYPY7PBYVE2D8RSP"
585
+ }
586
+ ]
587
+ }
588
+ ],
589
+ "traits": [
590
+ {
591
+ "config": {
592
+ "running": {
593
+ "default": true,
594
+ "type": "unknown"
595
+ }
596
+ },
597
+ "events": {
598
+ "BODY_FELL": "BODY_FELL",
599
+ "BODY_GOAL": "BODY_GOAL",
600
+ "BODY_HAZARD": "BODY_HAZARD",
601
+ "BODY_JUMPED": "BODY_JUMPED",
602
+ "BODY_LANDED": "BODY_LANDED",
603
+ "BODY_MOVED": "BODY_MOVED",
604
+ "BODY_SKATE_END": "BODY_SKATE_END",
605
+ "BODY_SKATE_START": "BODY_SKATE_START",
606
+ "CURVE_MOD_ADD": "CURVE_MOD_ADD",
607
+ "CURVE_MOD_CLEAR": "CURVE_MOD_CLEAR",
608
+ "JUMP": "JUMP",
609
+ "PLACE": "PLACE",
610
+ "SET_TUNING": "SET_TUNING",
611
+ "STEER": "STEER"
612
+ },
613
+ "id": "trt_01M1P1PWCG43Y342XV5PWGZ6S6",
614
+ "linkedEntity": "PlatformerPuzzleData",
615
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
616
+ "name": "PlatformerPuzzleBody",
617
+ "ref": "Body.traits.PlatformerBody"
618
+ },
619
+ {
620
+ "config": {
621
+ "running": {
622
+ "default": true,
623
+ "type": "unknown"
624
+ }
625
+ },
626
+ "events": {
627
+ "BODY_MOVED": "BODY_MOVED"
628
+ },
629
+ "id": "trt_01M1P1PWCG8G3Z3YWQJ5WQWJRZ",
630
+ "linkedEntity": "PlatformerPuzzleData",
631
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
632
+ "name": "PlatformerPuzzlePickup",
633
+ "ref": "Pickup.traits.Pickup"
634
+ },
635
+ {
636
+ "config": {
637
+ "running": {
638
+ "default": true,
639
+ "type": "unknown"
640
+ }
641
+ },
642
+ "events": {
643
+ "GAME_END": "GAME_END",
644
+ "PROGRESS": "PROGRESS"
645
+ },
646
+ "id": "trt_01M1P1PWCGQWT8KN8HPR80C3P5",
647
+ "linkedEntity": "PlatformerPuzzleData",
648
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
649
+ "name": "PlatformerPuzzleObjective",
650
+ "ref": "Gate.traits.ObjectiveFlow"
651
+ },
652
+ {
653
+ "config": {
654
+ "running": {
655
+ "default": true,
656
+ "type": "unknown"
657
+ }
658
+ },
659
+ "events": {
660
+ "BODY_MOVED": "BODY_MOVED"
661
+ },
662
+ "id": "trt_01M1P1PWCG635RBW7TY3DAXKFN",
663
+ "linkedEntity": "PlatformerPuzzleData",
664
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
665
+ "name": "PlatformerPuzzleChoice",
666
+ "ref": "Choice.traits.ChoiceGate"
667
+ },
668
+ {
669
+ "config": {
670
+ "running": {
671
+ "default": true,
672
+ "type": "unknown"
673
+ }
674
+ },
675
+ "events": {
676
+ "BURST": "BURST"
677
+ },
678
+ "id": "trt_01M1P1PWCGWV0WYY1GT1DKE4PX",
679
+ "linkedEntity": "PlatformerPuzzleData",
680
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
681
+ "name": "PlatformerPuzzleFx",
682
+ "ref": "Particles.traits.FxParticles"
683
+ },
684
+ {
685
+ "config": {
686
+ "running": {
687
+ "default": true,
688
+ "type": "unknown"
689
+ }
690
+ },
691
+ "events": {
692
+ "BURST": "BURST",
693
+ "NARRATE": "NARRATE"
694
+ },
695
+ "id": "trt_01M1P1PWCG0XJVK4S43DZ77B40",
696
+ "linkedEntity": "PlatformerPuzzleData",
697
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
698
+ "name": "PlatformerPuzzleNarrative",
699
+ "ref": "Narrative.traits.FxNarrative"
700
+ },
701
+ {
702
+ "config": {
703
+ "autoShow": {
704
+ "default": false,
705
+ "type": "unknown"
706
+ },
707
+ "previewTrait": {
708
+ "default": "@trait.PlatformerPuzzleNoopPreview",
709
+ "type": "unknown"
710
+ }
711
+ },
712
+ "events": {
713
+ "SHOW": "SHOW",
714
+ "TUTORIAL_DONE": "TUTORIAL_DONE"
715
+ },
716
+ "id": "trt_01M1P1PWCGYFE78J2FGK45GQFA",
717
+ "linkedEntity": "PlatformerPuzzleData",
718
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
719
+ "name": "PlatformerPuzzleTutorial",
720
+ "ref": "Tutorial.traits.TutorialOverlay"
721
+ },
722
+ {
723
+ "category": "interaction",
724
+ "entityRefIds": {
725
+ "PlatformerPuzzleData": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A"
726
+ },
727
+ "id": "trt_01M1P1PWCGWTGVDSK6G3F1DRAF",
728
+ "linkedEntity": "PlatformerPuzzleData",
729
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
730
+ "name": "PlatformerPuzzleNoopPreview",
731
+ "scope": "instance",
732
+ "stateMachine": {
733
+ "events": [
734
+ {
735
+ "id": "evt_01M1P1PWCGCA0B2M2TKRGMCY69",
736
+ "key": "INIT",
737
+ "name": "Initialize"
738
+ }
739
+ ],
740
+ "states": [
741
+ {
742
+ "isInitial": true,
743
+ "name": "idle"
744
+ }
745
+ ],
746
+ "transitions": [
747
+ {
748
+ "effects": [
749
+ [
750
+ "render-ui",
751
+ "overlay",
752
+ null
753
+ ]
754
+ ],
755
+ "event": "INIT",
756
+ "eventId": "evt_01M1P1PWCGCA0B2M2TKRGMCY69",
757
+ "from": "idle",
758
+ "to": "idle"
759
+ }
760
+ ]
761
+ }
762
+ },
763
+ {
764
+ "category": "interaction",
765
+ "config": {
766
+ "agencyTrait": {
767
+ "description": "Trait that provides player verbs and immediate response. Usually a rebinding of std-platformer-body, std-motion-body, or std-hero-nav.",
768
+ "label": "Agency trait",
769
+ "tier": "domain",
770
+ "type": "trait"
771
+ },
772
+ "backgroundAsset": {
773
+ "default": {},
774
+ "description": "Game-shell background panel sprite (theme chrome).",
775
+ "label": "Background Asset",
776
+ "properties": {
777
+ "animations": {
778
+ "items": {
779
+ "type": "string"
780
+ },
781
+ "name": "animations",
782
+ "required": false,
783
+ "type": "array"
784
+ },
785
+ "aspect": {
786
+ "name": "aspect",
787
+ "required": false,
788
+ "type": "string"
789
+ },
790
+ "atlas": {
791
+ "name": "atlas",
792
+ "required": false,
793
+ "type": "string"
794
+ },
795
+ "category": {
796
+ "name": "category",
797
+ "required": false,
798
+ "type": "string"
799
+ },
800
+ "dimension": {
801
+ "name": "dimension",
802
+ "required": false,
803
+ "type": "string"
804
+ },
805
+ "name": {
806
+ "name": "name",
807
+ "required": false,
808
+ "type": "string"
809
+ },
810
+ "role": {
811
+ "name": "role",
812
+ "required": false,
813
+ "type": "string"
814
+ },
815
+ "sprite": {
816
+ "name": "sprite",
817
+ "required": false,
818
+ "type": "string"
819
+ },
820
+ "style": {
821
+ "name": "style",
822
+ "required": false,
823
+ "type": "string"
824
+ },
825
+ "thumbnailUrl": {
826
+ "name": "thumbnailUrl",
827
+ "required": false,
828
+ "type": "string"
829
+ },
830
+ "url": {
831
+ "name": "url",
832
+ "required": false,
833
+ "type": "string"
834
+ },
835
+ "variant": {
836
+ "name": "variant",
837
+ "required": false,
838
+ "type": "string"
839
+ }
840
+ },
841
+ "tier": "presentation",
842
+ "type": "Asset"
843
+ },
844
+ "challengeTrait": {
845
+ "description": "Trait that provides the obstacle, decision, or opposition. Usually a rebinding of std-choice-gate, std-gate-lock, std-patrol-hazard, std-velocity-gate, std-loop-lock, or std-pad-lock.",
846
+ "label": "Challenge trait",
847
+ "tier": "domain",
848
+ "type": "trait"
849
+ },
850
+ "directionAssets": {
851
+ "default": {},
852
+ "description": "D-pad direction icon sprites.",
853
+ "label": "Direction Assets",
854
+ "properties": {
855
+ "down": {
856
+ "name": "down",
857
+ "properties": {
858
+ "animations": {
859
+ "items": {
860
+ "type": "string"
861
+ },
862
+ "name": "animations",
863
+ "required": false,
864
+ "type": "array"
865
+ },
866
+ "aspect": {
867
+ "name": "aspect",
868
+ "required": false,
869
+ "type": "string"
870
+ },
871
+ "atlas": {
872
+ "name": "atlas",
873
+ "required": false,
874
+ "type": "string"
875
+ },
876
+ "category": {
877
+ "name": "category",
878
+ "required": false,
879
+ "type": "string"
880
+ },
881
+ "dimension": {
882
+ "name": "dimension",
883
+ "required": false,
884
+ "type": "string"
885
+ },
886
+ "name": {
887
+ "name": "name",
888
+ "required": false,
889
+ "type": "string"
890
+ },
891
+ "role": {
892
+ "name": "role",
893
+ "required": false,
894
+ "type": "string"
895
+ },
896
+ "sprite": {
897
+ "name": "sprite",
898
+ "required": false,
899
+ "type": "string"
900
+ },
901
+ "style": {
902
+ "name": "style",
903
+ "required": false,
904
+ "type": "string"
905
+ },
906
+ "thumbnailUrl": {
907
+ "name": "thumbnailUrl",
908
+ "required": false,
909
+ "type": "string"
910
+ },
911
+ "url": {
912
+ "name": "url",
913
+ "required": false,
914
+ "type": "string"
915
+ },
916
+ "variant": {
917
+ "name": "variant",
918
+ "required": false,
919
+ "type": "string"
920
+ }
921
+ },
922
+ "required": false,
923
+ "type": "object"
924
+ },
925
+ "left": {
926
+ "name": "left",
927
+ "properties": {
928
+ "animations": {
929
+ "items": {
930
+ "type": "string"
931
+ },
932
+ "name": "animations",
933
+ "required": false,
934
+ "type": "array"
935
+ },
936
+ "aspect": {
937
+ "name": "aspect",
938
+ "required": false,
939
+ "type": "string"
940
+ },
941
+ "atlas": {
942
+ "name": "atlas",
943
+ "required": false,
944
+ "type": "string"
945
+ },
946
+ "category": {
947
+ "name": "category",
948
+ "required": false,
949
+ "type": "string"
950
+ },
951
+ "dimension": {
952
+ "name": "dimension",
953
+ "required": false,
954
+ "type": "string"
955
+ },
956
+ "name": {
957
+ "name": "name",
958
+ "required": false,
959
+ "type": "string"
960
+ },
961
+ "role": {
962
+ "name": "role",
963
+ "required": false,
964
+ "type": "string"
965
+ },
966
+ "sprite": {
967
+ "name": "sprite",
968
+ "required": false,
969
+ "type": "string"
970
+ },
971
+ "style": {
972
+ "name": "style",
973
+ "required": false,
974
+ "type": "string"
975
+ },
976
+ "thumbnailUrl": {
977
+ "name": "thumbnailUrl",
978
+ "required": false,
979
+ "type": "string"
980
+ },
981
+ "url": {
982
+ "name": "url",
983
+ "required": false,
984
+ "type": "string"
985
+ },
986
+ "variant": {
987
+ "name": "variant",
988
+ "required": false,
989
+ "type": "string"
990
+ }
991
+ },
992
+ "required": false,
993
+ "type": "object"
994
+ },
995
+ "right": {
996
+ "name": "right",
997
+ "properties": {
998
+ "animations": {
999
+ "items": {
1000
+ "type": "string"
1001
+ },
1002
+ "name": "animations",
1003
+ "required": false,
1004
+ "type": "array"
1005
+ },
1006
+ "aspect": {
1007
+ "name": "aspect",
1008
+ "required": false,
1009
+ "type": "string"
1010
+ },
1011
+ "atlas": {
1012
+ "name": "atlas",
1013
+ "required": false,
1014
+ "type": "string"
1015
+ },
1016
+ "category": {
1017
+ "name": "category",
1018
+ "required": false,
1019
+ "type": "string"
1020
+ },
1021
+ "dimension": {
1022
+ "name": "dimension",
1023
+ "required": false,
1024
+ "type": "string"
1025
+ },
1026
+ "name": {
1027
+ "name": "name",
1028
+ "required": false,
1029
+ "type": "string"
1030
+ },
1031
+ "role": {
1032
+ "name": "role",
1033
+ "required": false,
1034
+ "type": "string"
1035
+ },
1036
+ "sprite": {
1037
+ "name": "sprite",
1038
+ "required": false,
1039
+ "type": "string"
1040
+ },
1041
+ "style": {
1042
+ "name": "style",
1043
+ "required": false,
1044
+ "type": "string"
1045
+ },
1046
+ "thumbnailUrl": {
1047
+ "name": "thumbnailUrl",
1048
+ "required": false,
1049
+ "type": "string"
1050
+ },
1051
+ "url": {
1052
+ "name": "url",
1053
+ "required": false,
1054
+ "type": "string"
1055
+ },
1056
+ "variant": {
1057
+ "name": "variant",
1058
+ "required": false,
1059
+ "type": "string"
1060
+ }
1061
+ },
1062
+ "required": false,
1063
+ "type": "object"
1064
+ },
1065
+ "up": {
1066
+ "name": "up",
1067
+ "properties": {
1068
+ "animations": {
1069
+ "items": {
1070
+ "type": "string"
1071
+ },
1072
+ "name": "animations",
1073
+ "required": false,
1074
+ "type": "array"
1075
+ },
1076
+ "aspect": {
1077
+ "name": "aspect",
1078
+ "required": false,
1079
+ "type": "string"
1080
+ },
1081
+ "atlas": {
1082
+ "name": "atlas",
1083
+ "required": false,
1084
+ "type": "string"
1085
+ },
1086
+ "category": {
1087
+ "name": "category",
1088
+ "required": false,
1089
+ "type": "string"
1090
+ },
1091
+ "dimension": {
1092
+ "name": "dimension",
1093
+ "required": false,
1094
+ "type": "string"
1095
+ },
1096
+ "name": {
1097
+ "name": "name",
1098
+ "required": false,
1099
+ "type": "string"
1100
+ },
1101
+ "role": {
1102
+ "name": "role",
1103
+ "required": false,
1104
+ "type": "string"
1105
+ },
1106
+ "sprite": {
1107
+ "name": "sprite",
1108
+ "required": false,
1109
+ "type": "string"
1110
+ },
1111
+ "style": {
1112
+ "name": "style",
1113
+ "required": false,
1114
+ "type": "string"
1115
+ },
1116
+ "thumbnailUrl": {
1117
+ "name": "thumbnailUrl",
1118
+ "required": false,
1119
+ "type": "string"
1120
+ },
1121
+ "url": {
1122
+ "name": "url",
1123
+ "required": false,
1124
+ "type": "string"
1125
+ },
1126
+ "variant": {
1127
+ "name": "variant",
1128
+ "required": false,
1129
+ "type": "string"
1130
+ }
1131
+ },
1132
+ "required": false,
1133
+ "type": "object"
1134
+ }
1135
+ },
1136
+ "tier": "presentation",
1137
+ "type": "DirectionAssets"
1138
+ },
1139
+ "feedbackTrait": {
1140
+ "description": "Trait that provides visual, audio, or narrative feedback. Usually a rebinding of std-fx-particles, std-fx-narrative, std-tutorial-overlay, std-audio-cue, or std-zone-card.",
1141
+ "label": "Feedback trait",
1142
+ "tier": "domain",
1143
+ "type": "trait"
1144
+ },
1145
+ "goalTrait": {
1146
+ "description": "Trait that resolves the win condition. Usually a rebinding of std-objective-flow or std-objective-reach.",
1147
+ "label": "Goal trait",
1148
+ "tier": "domain",
1149
+ "type": "trait"
1150
+ },
1151
+ "hudBackgroundAsset": {
1152
+ "default": {},
1153
+ "description": "HUD panel background sprite (theme chrome).",
1154
+ "label": "HUD Background Asset",
1155
+ "properties": {
1156
+ "animations": {
1157
+ "items": {
1158
+ "type": "string"
1159
+ },
1160
+ "name": "animations",
1161
+ "required": false,
1162
+ "type": "array"
1163
+ },
1164
+ "aspect": {
1165
+ "name": "aspect",
1166
+ "required": false,
1167
+ "type": "string"
1168
+ },
1169
+ "atlas": {
1170
+ "name": "atlas",
1171
+ "required": false,
1172
+ "type": "string"
1173
+ },
1174
+ "category": {
1175
+ "name": "category",
1176
+ "required": false,
1177
+ "type": "string"
1178
+ },
1179
+ "dimension": {
1180
+ "name": "dimension",
1181
+ "required": false,
1182
+ "type": "string"
1183
+ },
1184
+ "name": {
1185
+ "name": "name",
1186
+ "required": false,
1187
+ "type": "string"
1188
+ },
1189
+ "role": {
1190
+ "name": "role",
1191
+ "required": false,
1192
+ "type": "string"
1193
+ },
1194
+ "sprite": {
1195
+ "name": "sprite",
1196
+ "required": false,
1197
+ "type": "string"
1198
+ },
1199
+ "style": {
1200
+ "name": "style",
1201
+ "required": false,
1202
+ "type": "string"
1203
+ },
1204
+ "thumbnailUrl": {
1205
+ "name": "thumbnailUrl",
1206
+ "required": false,
1207
+ "type": "string"
1208
+ },
1209
+ "url": {
1210
+ "name": "url",
1211
+ "required": false,
1212
+ "type": "string"
1213
+ },
1214
+ "variant": {
1215
+ "name": "variant",
1216
+ "required": false,
1217
+ "type": "string"
1218
+ }
1219
+ },
1220
+ "tier": "presentation",
1221
+ "type": "Asset"
1222
+ },
1223
+ "rewardTrait": {
1224
+ "description": "Trait that provides collectibles or scoring. Usually a rebinding of std-pickup, std-score, std-xp, or std-gold.",
1225
+ "label": "Reward trait",
1226
+ "tier": "domain",
1227
+ "type": "trait"
1228
+ }
1229
+ },
1230
+ "entityContract": {
1231
+ "provides": [],
1232
+ "requires": []
1233
+ },
1234
+ "entityRebindable": true,
1235
+ "entityRefIds": {
1236
+ "PlatformerPuzzleData": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A"
1237
+ },
1238
+ "id": "trt_01M1P1PWCGMYPY7PBYVE2D8RSP",
1239
+ "linkedEntity": "PlatformerPuzzleData",
1240
+ "linkedEntityId": "ent_01M1P1PWCGZ32KZGR7NPPHHH8A",
1241
+ "name": "PlatformerPuzzle",
1242
+ "scope": "instance",
1243
+ "stateMachine": {
1244
+ "events": [
1245
+ {
1246
+ "id": "evt_01M1P1PWCGP4ZME1SNAC1FTXY8",
1247
+ "key": "INIT",
1248
+ "name": "Initialize"
1249
+ }
1250
+ ],
1251
+ "states": [
1252
+ {
1253
+ "isInitial": true,
1254
+ "name": "active"
1255
+ }
1256
+ ],
1257
+ "transitions": [
1258
+ {
1259
+ "effects": [
1260
+ [
1261
+ "render-ui",
1262
+ "main",
1263
+ null
1264
+ ]
1265
+ ],
1266
+ "event": "INIT",
1267
+ "eventId": "evt_01M1P1PWCGP4ZME1SNAC1FTXY8",
1268
+ "from": "active",
1269
+ "to": "active"
1270
+ }
1271
+ ]
1272
+ }
1273
+ }
1274
+ ],
1275
+ "types": {
1276
+ "Asset": [
1277
+ {
1278
+ "name": "url",
1279
+ "type": "asset"
1280
+ },
1281
+ {
1282
+ "name": "atlas",
1283
+ "type": "asset"
1284
+ },
1285
+ {
1286
+ "name": "sprite",
1287
+ "type": "string"
1288
+ },
1289
+ {
1290
+ "name": "role",
1291
+ "type": "string"
1292
+ },
1293
+ {
1294
+ "name": "category",
1295
+ "type": "string"
1296
+ },
1297
+ {
1298
+ "name": "animations",
1299
+ "type": "[string]"
1300
+ },
1301
+ {
1302
+ "name": "style",
1303
+ "type": "string"
1304
+ },
1305
+ {
1306
+ "name": "variant",
1307
+ "type": "string"
1308
+ },
1309
+ {
1310
+ "name": "dimension",
1311
+ "type": "string"
1312
+ },
1313
+ {
1314
+ "name": "aspect",
1315
+ "type": "string"
1316
+ },
1317
+ {
1318
+ "name": "name",
1319
+ "type": "string"
1320
+ },
1321
+ {
1322
+ "name": "thumbnailUrl",
1323
+ "type": "string"
1324
+ }
1325
+ ],
1326
+ "BodyDriftRegion": [
1327
+ {
1328
+ "name": "id",
1329
+ "required": true,
1330
+ "type": "string"
1331
+ },
1332
+ {
1333
+ "name": "x0",
1334
+ "required": true,
1335
+ "type": "number"
1336
+ },
1337
+ {
1338
+ "name": "x1",
1339
+ "required": true,
1340
+ "type": "number"
1341
+ },
1342
+ {
1343
+ "name": "y0",
1344
+ "required": true,
1345
+ "type": "number"
1346
+ },
1347
+ {
1348
+ "name": "y1",
1349
+ "required": true,
1350
+ "type": "number"
1351
+ },
1352
+ {
1353
+ "name": "ax",
1354
+ "required": true,
1355
+ "type": "number"
1356
+ },
1357
+ {
1358
+ "name": "ay",
1359
+ "required": true,
1360
+ "type": "number"
1361
+ }
1362
+ ],
1363
+ "ChoiceGate": [
1364
+ {
1365
+ "name": "id",
1366
+ "required": true,
1367
+ "type": "string"
1368
+ },
1369
+ {
1370
+ "name": "x",
1371
+ "required": true,
1372
+ "type": "number"
1373
+ },
1374
+ {
1375
+ "name": "y",
1376
+ "required": true,
1377
+ "type": "number"
1378
+ },
1379
+ {
1380
+ "name": "hint",
1381
+ "type": "string"
1382
+ },
1383
+ {
1384
+ "name": "options",
1385
+ "properties": [
1386
+ {
1387
+ "name": "id",
1388
+ "required": true,
1389
+ "type": "string"
1390
+ },
1391
+ {
1392
+ "name": "dx",
1393
+ "required": true,
1394
+ "type": "number"
1395
+ },
1396
+ {
1397
+ "name": "label",
1398
+ "required": true,
1399
+ "type": "string"
1400
+ },
1401
+ {
1402
+ "name": "correct",
1403
+ "required": true,
1404
+ "type": "boolean"
1405
+ }
1406
+ ],
1407
+ "required": true,
1408
+ "type": "[object]"
1409
+ },
1410
+ {
1411
+ "name": "solved",
1412
+ "type": "boolean"
1413
+ },
1414
+ {
1415
+ "name": "chosen",
1416
+ "type": "string"
1417
+ }
1418
+ ],
1419
+ "ChoiceOption": [
1420
+ {
1421
+ "name": "id",
1422
+ "required": true,
1423
+ "type": "string"
1424
+ },
1425
+ {
1426
+ "name": "dx",
1427
+ "required": true,
1428
+ "type": "number"
1429
+ },
1430
+ {
1431
+ "name": "label",
1432
+ "required": true,
1433
+ "type": "string"
1434
+ },
1435
+ {
1436
+ "name": "correct",
1437
+ "required": true,
1438
+ "type": "boolean"
1439
+ }
1440
+ ],
1441
+ "CurveMod": [
1442
+ {
1443
+ "name": "x0",
1444
+ "required": true,
1445
+ "type": "number"
1446
+ },
1447
+ {
1448
+ "name": "x1",
1449
+ "required": true,
1450
+ "type": "number"
1451
+ },
1452
+ {
1453
+ "name": "a",
1454
+ "required": true,
1455
+ "type": "number"
1456
+ },
1457
+ {
1458
+ "name": "b",
1459
+ "type": "number"
1460
+ },
1461
+ {
1462
+ "name": "h",
1463
+ "required": true,
1464
+ "type": "number"
1465
+ },
1466
+ {
1467
+ "name": "k",
1468
+ "required": true,
1469
+ "type": "number"
1470
+ }
1471
+ ],
1472
+ "DirectionAssets": [
1473
+ {
1474
+ "name": "up",
1475
+ "properties": [
1476
+ {
1477
+ "name": "url",
1478
+ "type": "asset"
1479
+ },
1480
+ {
1481
+ "name": "atlas",
1482
+ "type": "asset"
1483
+ },
1484
+ {
1485
+ "name": "sprite",
1486
+ "type": "string"
1487
+ },
1488
+ {
1489
+ "name": "role",
1490
+ "type": "string"
1491
+ },
1492
+ {
1493
+ "name": "category",
1494
+ "type": "string"
1495
+ },
1496
+ {
1497
+ "name": "animations",
1498
+ "type": "[string]"
1499
+ },
1500
+ {
1501
+ "name": "style",
1502
+ "type": "string"
1503
+ },
1504
+ {
1505
+ "name": "variant",
1506
+ "type": "string"
1507
+ },
1508
+ {
1509
+ "name": "dimension",
1510
+ "type": "string"
1511
+ },
1512
+ {
1513
+ "name": "aspect",
1514
+ "type": "string"
1515
+ },
1516
+ {
1517
+ "name": "name",
1518
+ "type": "string"
1519
+ },
1520
+ {
1521
+ "name": "thumbnailUrl",
1522
+ "type": "string"
1523
+ }
1524
+ ],
1525
+ "type": "object"
1526
+ },
1527
+ {
1528
+ "name": "down",
1529
+ "properties": [
1530
+ {
1531
+ "name": "url",
1532
+ "type": "asset"
1533
+ },
1534
+ {
1535
+ "name": "atlas",
1536
+ "type": "asset"
1537
+ },
1538
+ {
1539
+ "name": "sprite",
1540
+ "type": "string"
1541
+ },
1542
+ {
1543
+ "name": "role",
1544
+ "type": "string"
1545
+ },
1546
+ {
1547
+ "name": "category",
1548
+ "type": "string"
1549
+ },
1550
+ {
1551
+ "name": "animations",
1552
+ "type": "[string]"
1553
+ },
1554
+ {
1555
+ "name": "style",
1556
+ "type": "string"
1557
+ },
1558
+ {
1559
+ "name": "variant",
1560
+ "type": "string"
1561
+ },
1562
+ {
1563
+ "name": "dimension",
1564
+ "type": "string"
1565
+ },
1566
+ {
1567
+ "name": "aspect",
1568
+ "type": "string"
1569
+ },
1570
+ {
1571
+ "name": "name",
1572
+ "type": "string"
1573
+ },
1574
+ {
1575
+ "name": "thumbnailUrl",
1576
+ "type": "string"
1577
+ }
1578
+ ],
1579
+ "type": "object"
1580
+ },
1581
+ {
1582
+ "name": "left",
1583
+ "properties": [
1584
+ {
1585
+ "name": "url",
1586
+ "type": "asset"
1587
+ },
1588
+ {
1589
+ "name": "atlas",
1590
+ "type": "asset"
1591
+ },
1592
+ {
1593
+ "name": "sprite",
1594
+ "type": "string"
1595
+ },
1596
+ {
1597
+ "name": "role",
1598
+ "type": "string"
1599
+ },
1600
+ {
1601
+ "name": "category",
1602
+ "type": "string"
1603
+ },
1604
+ {
1605
+ "name": "animations",
1606
+ "type": "[string]"
1607
+ },
1608
+ {
1609
+ "name": "style",
1610
+ "type": "string"
1611
+ },
1612
+ {
1613
+ "name": "variant",
1614
+ "type": "string"
1615
+ },
1616
+ {
1617
+ "name": "dimension",
1618
+ "type": "string"
1619
+ },
1620
+ {
1621
+ "name": "aspect",
1622
+ "type": "string"
1623
+ },
1624
+ {
1625
+ "name": "name",
1626
+ "type": "string"
1627
+ },
1628
+ {
1629
+ "name": "thumbnailUrl",
1630
+ "type": "string"
1631
+ }
1632
+ ],
1633
+ "type": "object"
1634
+ },
1635
+ {
1636
+ "name": "right",
1637
+ "properties": [
1638
+ {
1639
+ "name": "url",
1640
+ "type": "asset"
1641
+ },
1642
+ {
1643
+ "name": "atlas",
1644
+ "type": "asset"
1645
+ },
1646
+ {
1647
+ "name": "sprite",
1648
+ "type": "string"
1649
+ },
1650
+ {
1651
+ "name": "role",
1652
+ "type": "string"
1653
+ },
1654
+ {
1655
+ "name": "category",
1656
+ "type": "string"
1657
+ },
1658
+ {
1659
+ "name": "animations",
1660
+ "type": "[string]"
1661
+ },
1662
+ {
1663
+ "name": "style",
1664
+ "type": "string"
1665
+ },
1666
+ {
1667
+ "name": "variant",
1668
+ "type": "string"
1669
+ },
1670
+ {
1671
+ "name": "dimension",
1672
+ "type": "string"
1673
+ },
1674
+ {
1675
+ "name": "aspect",
1676
+ "type": "string"
1677
+ },
1678
+ {
1679
+ "name": "name",
1680
+ "type": "string"
1681
+ },
1682
+ {
1683
+ "name": "thumbnailUrl",
1684
+ "type": "string"
1685
+ }
1686
+ ],
1687
+ "type": "object"
1688
+ }
1689
+ ],
1690
+ "Fx": [
1691
+ {
1692
+ "name": "id",
1693
+ "required": true,
1694
+ "type": "string"
1695
+ },
1696
+ {
1697
+ "name": "type",
1698
+ "required": true,
1699
+ "type": "string"
1700
+ },
1701
+ {
1702
+ "name": "x",
1703
+ "required": true,
1704
+ "type": "number"
1705
+ },
1706
+ {
1707
+ "name": "z",
1708
+ "type": "number"
1709
+ },
1710
+ {
1711
+ "name": "y",
1712
+ "type": "number"
1713
+ },
1714
+ {
1715
+ "name": "message",
1716
+ "type": "string"
1717
+ },
1718
+ {
1719
+ "name": "ttl",
1720
+ "required": true,
1721
+ "type": "number"
1722
+ },
1723
+ {
1724
+ "name": "maxTtl",
1725
+ "type": "number"
1726
+ },
1727
+ {
1728
+ "name": "bornAt",
1729
+ "type": "number"
1730
+ },
1731
+ {
1732
+ "name": "space",
1733
+ "type": "string"
1734
+ },
1735
+ {
1736
+ "name": "effect",
1737
+ "type": "string"
1738
+ },
1739
+ {
1740
+ "name": "color",
1741
+ "type": "string"
1742
+ },
1743
+ {
1744
+ "name": "size",
1745
+ "type": "number"
1746
+ },
1747
+ {
1748
+ "name": "vx",
1749
+ "type": "number"
1750
+ },
1751
+ {
1752
+ "name": "vy",
1753
+ "type": "number"
1754
+ },
1755
+ {
1756
+ "name": "vz",
1757
+ "type": "number"
1758
+ },
1759
+ {
1760
+ "name": "particleCount",
1761
+ "type": "number"
1762
+ },
1763
+ {
1764
+ "name": "animation",
1765
+ "type": "string"
1766
+ }
1767
+ ],
1768
+ "FxPreset": [
1769
+ {
1770
+ "name": "type",
1771
+ "required": true,
1772
+ "type": "string"
1773
+ },
1774
+ {
1775
+ "name": "color",
1776
+ "type": "string"
1777
+ },
1778
+ {
1779
+ "name": "color2",
1780
+ "type": "string"
1781
+ },
1782
+ {
1783
+ "name": "size",
1784
+ "type": "number"
1785
+ },
1786
+ {
1787
+ "name": "shape",
1788
+ "type": "string"
1789
+ },
1790
+ {
1791
+ "name": "count",
1792
+ "type": "number"
1793
+ },
1794
+ {
1795
+ "name": "glow",
1796
+ "type": "number"
1797
+ },
1798
+ {
1799
+ "name": "gravity",
1800
+ "type": "number"
1801
+ },
1802
+ {
1803
+ "name": "vx",
1804
+ "type": "number"
1805
+ },
1806
+ {
1807
+ "name": "vy",
1808
+ "type": "number"
1809
+ },
1810
+ {
1811
+ "name": "vz",
1812
+ "type": "number"
1813
+ },
1814
+ {
1815
+ "name": "space",
1816
+ "type": "string"
1817
+ },
1818
+ {
1819
+ "name": "effect",
1820
+ "type": "string"
1821
+ },
1822
+ {
1823
+ "name": "particleCount",
1824
+ "type": "number"
1825
+ },
1826
+ {
1827
+ "name": "animation",
1828
+ "type": "string"
1829
+ }
1830
+ ],
1831
+ "NarrativeCue": [
1832
+ {
1833
+ "name": "text",
1834
+ "required": true,
1835
+ "type": "string"
1836
+ },
1837
+ {
1838
+ "name": "style",
1839
+ "type": "string"
1840
+ },
1841
+ {
1842
+ "name": "x",
1843
+ "type": "number"
1844
+ },
1845
+ {
1846
+ "name": "y",
1847
+ "type": "number"
1848
+ },
1849
+ {
1850
+ "name": "ttl",
1851
+ "type": "number"
1852
+ },
1853
+ {
1854
+ "name": "space",
1855
+ "type": "string"
1856
+ }
1857
+ ],
1858
+ "PickupFeature": [
1859
+ {
1860
+ "name": "id",
1861
+ "required": true,
1862
+ "type": "string"
1863
+ },
1864
+ {
1865
+ "name": "x",
1866
+ "required": true,
1867
+ "type": "number"
1868
+ },
1869
+ {
1870
+ "name": "y",
1871
+ "required": true,
1872
+ "type": "number"
1873
+ },
1874
+ {
1875
+ "name": "kind",
1876
+ "required": true,
1877
+ "type": "string"
1878
+ },
1879
+ {
1880
+ "name": "glyph",
1881
+ "type": "string"
1882
+ },
1883
+ {
1884
+ "name": "message",
1885
+ "type": "string"
1886
+ },
1887
+ {
1888
+ "name": "collected",
1889
+ "type": "boolean"
1890
+ }
1891
+ ],
1892
+ "PlatformerBody": [
1893
+ {
1894
+ "name": "x",
1895
+ "required": true,
1896
+ "type": "number"
1897
+ },
1898
+ {
1899
+ "name": "y",
1900
+ "required": true,
1901
+ "type": "number"
1902
+ },
1903
+ {
1904
+ "name": "width",
1905
+ "required": true,
1906
+ "type": "number"
1907
+ },
1908
+ {
1909
+ "name": "height",
1910
+ "required": true,
1911
+ "type": "number"
1912
+ },
1913
+ {
1914
+ "name": "vx",
1915
+ "type": "number"
1916
+ },
1917
+ {
1918
+ "name": "vy",
1919
+ "type": "number"
1920
+ },
1921
+ {
1922
+ "name": "grounded",
1923
+ "type": "boolean"
1924
+ },
1925
+ {
1926
+ "name": "facingRight",
1927
+ "type": "boolean"
1928
+ }
1929
+ ],
1930
+ "PlatformerCurveSample": [
1931
+ {
1932
+ "name": "x",
1933
+ "required": true,
1934
+ "type": "number"
1935
+ },
1936
+ {
1937
+ "name": "y",
1938
+ "required": true,
1939
+ "type": "number"
1940
+ }
1941
+ ],
1942
+ "PlatformerPlatform": [
1943
+ {
1944
+ "name": "id",
1945
+ "type": "string"
1946
+ },
1947
+ {
1948
+ "name": "x",
1949
+ "required": true,
1950
+ "type": "number"
1951
+ },
1952
+ {
1953
+ "name": "y",
1954
+ "required": true,
1955
+ "type": "number"
1956
+ },
1957
+ {
1958
+ "name": "width",
1959
+ "required": true,
1960
+ "type": "number"
1961
+ },
1962
+ {
1963
+ "name": "height",
1964
+ "required": true,
1965
+ "type": "number"
1966
+ },
1967
+ {
1968
+ "name": "type",
1969
+ "type": "string"
1970
+ }
1971
+ ],
1972
+ "PlatformerTuning": [
1973
+ {
1974
+ "name": "jumpStrength",
1975
+ "type": "number"
1976
+ },
1977
+ {
1978
+ "name": "moveSpeed",
1979
+ "type": "number"
1980
+ },
1981
+ {
1982
+ "name": "gravity",
1983
+ "type": "number"
1984
+ }
1985
+ ],
1986
+ "StyleDef": [
1987
+ {
1988
+ "name": "color",
1989
+ "required": true,
1990
+ "type": "string"
1991
+ },
1992
+ {
1993
+ "name": "size",
1994
+ "required": true,
1995
+ "type": "number"
1996
+ },
1997
+ {
1998
+ "name": "ttl",
1999
+ "required": true,
2000
+ "type": "number"
2001
+ },
2002
+ {
2003
+ "name": "effect",
2004
+ "required": true,
2005
+ "type": "string"
2006
+ }
2007
+ ],
2008
+ "TutorialStep": [
2009
+ {
2010
+ "name": "id",
2011
+ "required": true,
2012
+ "type": "string"
2013
+ },
2014
+ {
2015
+ "name": "title",
2016
+ "required": true,
2017
+ "type": "string"
2018
+ },
2019
+ {
2020
+ "name": "body",
2021
+ "type": "string"
2022
+ },
2023
+ {
2024
+ "name": "demoId",
2025
+ "type": "string"
2026
+ }
2027
+ ]
2028
+ },
2029
+ "uses": [
2030
+ {
2031
+ "as": "Body",
2032
+ "from": "std/behaviors/std-platformer-body"
2033
+ },
2034
+ {
2035
+ "as": "Pickup",
2036
+ "from": "std/behaviors/std-pickup"
2037
+ },
2038
+ {
2039
+ "as": "Gate",
2040
+ "from": "std/behaviors/std-objective-flow"
2041
+ },
2042
+ {
2043
+ "as": "Choice",
2044
+ "from": "std/behaviors/std-choice-gate"
2045
+ },
2046
+ {
2047
+ "as": "Particles",
2048
+ "from": "std/behaviors/std-fx-particles"
2049
+ },
2050
+ {
2051
+ "as": "Narrative",
2052
+ "from": "std/behaviors/std-fx-narrative"
2053
+ },
2054
+ {
2055
+ "as": "Tutorial",
2056
+ "from": "std/behaviors/std-tutorial-overlay"
2057
+ }
2058
+ ]
2059
+ }
2060
+ ],
2061
+ "schemaVersion": 1,
2062
+ "version": "1.0.0"
2063
+ }