incanto 0.70.0 → 0.72.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 (74) hide show
  1. package/bin/incanto-editor.mjs +15 -9
  2. package/bin/incanto-feel.mjs +11 -1
  3. package/bin/incanto-play.mjs +11 -1
  4. package/bin/incanto-playtest.mjs +11 -1
  5. package/bin/incanto-verify.mjs +36 -98
  6. package/dist/2d.d.ts +18 -3
  7. package/dist/2d.js +3 -3
  8. package/dist/3d.d.ts +3 -3
  9. package/dist/3d.js +6 -6
  10. package/dist/{agent8-CmNF01gA.js → agent8-BqZ0_O1u.js} +1 -1
  11. package/dist/{audio-player-DaMxqfNE.d.ts → audio-player-ioZ7VKC6.d.ts} +1 -1
  12. package/dist/{behavior-DZExDn9o.d.ts → behavior-Bf9P9oB2.d.ts} +12 -1
  13. package/dist/{create-game-Bwvh6q8A.js → create-game-C9rWqqAC.js} +37 -13
  14. package/dist/{create-game-C7ffQWW7.js → create-game-CmFAtLZp.js} +8 -7
  15. package/dist/debug.d.ts +1 -1
  16. package/dist/editor.js +1083 -1045
  17. package/dist/{environment-presets-D6Q5BxeE.js → environment-presets-BeHoaGhy.js} +3 -3
  18. package/dist/{frame-report-Dlq13Gyj.js → frame-report-D-_7YF2G.js} +1 -1
  19. package/dist/{gameplay-BfHkuzVb.js → gameplay-BlQe-M07.js} +108 -6
  20. package/dist/gameplay.d.ts +68 -4
  21. package/dist/gameplay.js +2 -2
  22. package/dist/index.d.ts +27 -4
  23. package/dist/index.js +4 -4
  24. package/dist/{loader-Cff09LMm.d.ts → loader-CBfQzB6S.d.ts} +10 -3
  25. package/dist/net.d.ts +2 -2
  26. package/dist/net.js +2 -2
  27. package/dist/{physics-2d-CE0Qvy3V.js → physics-2d-DrIgTlLk.js} +2 -2
  28. package/dist/{physics-3d-CpH-2gn5.js → physics-3d-BzOCw1VS.js} +3 -3
  29. package/dist/{picking-CQJ_PJKh.js → picking-C9McVJrO.js} +3 -3
  30. package/dist/react.d.ts +1 -1
  31. package/dist/react.js +1 -1
  32. package/dist/{register-6DYnKZcy.js → register-5IYfooAN.js} +49 -15
  33. package/dist/{register-Bkk0wSDB.js → register-C8HuRkOf.js} +100 -8
  34. package/dist/{replay-Dmw-PKQu.d.ts → replay-CBEChqXq.d.ts} +2 -2
  35. package/dist/{replay-DjAkAzMq.js → replay-datiAE-b.js} +15 -8
  36. package/dist/{save-slots-BXVg148r.js → save-slots-CEuJPUle.js} +102 -4
  37. package/dist/{split-screen-PL78oVXP.js → split-screen-Bm5DTElG.js} +3 -3
  38. package/dist/{split-screen--k-XpBjr.d.ts → split-screen-DkqLng6q.d.ts} +2 -2
  39. package/dist/{src-Cxfiv1Hg.js → src-DRSsRleD.js} +1 -1
  40. package/dist/{test-iHYVUcDK.js → test-Djuq3Vhq.js} +252 -24
  41. package/dist/test.d.ts +113 -5
  42. package/dist/test.js +3 -3
  43. package/dist/vite.d.ts +8 -1
  44. package/dist/vite.js +23 -6
  45. package/editor/assets/{agent8-D0MS174y.js → agent8-CMKz2cax.js} +1 -1
  46. package/editor/assets/{debug-BnXkKuYu.js → debug-DLrQm-az.js} +1 -1
  47. package/editor/assets/{index-CIu3uc3l.js → index-BEKuxYcE.js} +94 -94
  48. package/editor/index.html +1 -1
  49. package/package.json +1 -1
  50. package/schemas/scene.schema.json +4 -0
  51. package/skills/incanto-behaviors-and-scripts.md +30 -9
  52. package/skills/incanto-building-2d-games.md +26 -2
  53. package/skills/incanto-editor.md +4 -0
  54. package/skills/incanto-gameplay-behaviors.md +63 -1
  55. package/skills/incanto-hud.md +14 -0
  56. package/skills/incanto-node-reference.md +18 -2
  57. package/skills/incanto-playtesting.md +34 -0
  58. package/skills/incanto-save-slots.md +56 -1
  59. package/skills/incanto-scene-json-authoring.md +30 -0
  60. package/skills/incanto-verifying-your-game.md +11 -0
  61. package/templates-app/beacon-isle-3d/package.json +1 -1
  62. package/templates-app/beacon-isle-3d/src/game.scene.json +396 -386
  63. package/templates-app/molehill-2d/package.json +1 -1
  64. package/templates-app/molehill-2d/src/game.scene.json +10 -60
  65. package/templates-app/platformer-2d/package.json +1 -1
  66. package/templates-app/platformer-2d/src/game.scene.json +268 -504
  67. package/templates-app/star-survivor/package.json +1 -1
  68. package/templates-app/star-survivor/src/game.scene.json +23 -33
  69. package/templates-app/tps-3d/package.json +1 -1
  70. package/templates-app/tps-3d/src/game.scene.json +90 -105
  71. package/templates-app/village-quest-3d/package.json +1 -1
  72. package/templates-app/village-quest-3d/src/behaviors.ts +21 -4
  73. package/templates-app/village-quest-3d/src/grove.scene.json +99 -118
  74. package/templates-app/village-quest-3d/src/village.scene.json +449 -245
@@ -95,11 +95,13 @@
95
95
  "size": [40, 0.1, 32],
96
96
  "material": { "color": "#2f4030", "roughness": 1 },
97
97
  "receiveShadow": true
98
- }
98
+ },
99
+ "uid": "n_59iejmb7tb54ijvb"
99
100
  }
100
- ]
101
+ ],
102
+ "uid": "n_73otzfefdnae2iun"
101
103
  },
102
- { "name": "Maze", "type": "Node3D" },
104
+ { "name": "Maze", "type": "Node3D", "uid": "n_h177tnv2yrbka2el" },
103
105
  {
104
106
  "name": "Scenery",
105
107
  "type": "Node3D",
@@ -108,42 +110,26 @@
108
110
  {
109
111
  "name": "Pine1",
110
112
  "type": "Tree3D",
111
- "props": {
112
- "position": [-18, 0, -13],
113
- "type": "conifer",
114
- "seed": 7,
115
- "height": 9
116
- }
113
+ "props": { "position": [-18, 0, -13], "type": "conifer", "seed": 7, "height": 9 },
114
+ "uid": "n_a90mku2kgqe6o575"
117
115
  },
118
116
  {
119
117
  "name": "Pine2",
120
118
  "type": "Tree3D",
121
- "props": {
122
- "position": [18, 0, -12],
123
- "type": "conifer",
124
- "seed": 13,
125
- "height": 8
126
- }
119
+ "props": { "position": [18, 0, -12], "type": "conifer", "seed": 13, "height": 8 },
120
+ "uid": "n_ahe6c82jgxl1rwx0"
127
121
  },
128
122
  {
129
123
  "name": "Pine3",
130
124
  "type": "Tree3D",
131
- "props": {
132
- "position": [-17, 0, 12],
133
- "type": "dead",
134
- "seed": 29,
135
- "height": 7
136
- }
125
+ "props": { "position": [-17, 0, 12], "type": "dead", "seed": 29, "height": 7 },
126
+ "uid": "n_33lcyrwclvj8fvr6"
137
127
  },
138
128
  {
139
129
  "name": "Pine4",
140
130
  "type": "Tree3D",
141
- "props": {
142
- "position": [17, 0, 13],
143
- "type": "conifer",
144
- "seed": 41,
145
- "height": 10
146
- }
131
+ "props": { "position": [17, 0, 13], "type": "conifer", "seed": 41, "height": 10 },
132
+ "uid": "n_a5r1vzqmd33vfg6u"
147
133
  },
148
134
  {
149
135
  "name": "Moon",
@@ -154,9 +140,11 @@
154
140
  "color": "#aebaff",
155
141
  "castShadow": true,
156
142
  "shadowArea": 36
157
- }
143
+ },
144
+ "uid": "n_t5xhyypjq9p9wo1v"
158
145
  }
159
- ]
146
+ ],
147
+ "uid": "n_56bk6abnoirti11a"
160
148
  },
161
149
  {
162
150
  "name": "Wolves",
@@ -177,7 +165,8 @@
177
165
  "position": [0, 0, 0],
178
166
  "material": { "color": "#3b3b44", "roughness": 0.9 },
179
167
  "castShadow": true
180
- }
168
+ },
169
+ "uid": "n_hvh19izw042ftf2m"
181
170
  },
182
171
  {
183
172
  "name": "Head",
@@ -188,7 +177,8 @@
188
177
  "position": [0, 0.18, 0.75],
189
178
  "material": { "color": "#46464f", "roughness": 0.9 },
190
179
  "castShadow": true
191
- }
180
+ },
181
+ "uid": "n_anixrvdunyg5ig7c"
192
182
  },
193
183
  {
194
184
  "name": "EyeL",
@@ -197,12 +187,9 @@
197
187
  "mesh": "sphere",
198
188
  "size": [0.07, 0.07, 0.07],
199
189
  "position": [-0.1, 0.24, 1],
200
- "material": {
201
- "color": "#ff3030",
202
- "emissive": "#ff3030",
203
- "emissiveIntensity": 2
204
- }
205
- }
190
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
191
+ },
192
+ "uid": "n_u4tnj3uob17ap973"
206
193
  },
207
194
  {
208
195
  "name": "EyeR",
@@ -211,12 +198,9 @@
211
198
  "mesh": "sphere",
212
199
  "size": [0.07, 0.07, 0.07],
213
200
  "position": [0.1, 0.24, 1],
214
- "material": {
215
- "color": "#ff3030",
216
- "emissive": "#ff3030",
217
- "emissiveIntensity": 2
218
- }
219
- }
201
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
202
+ },
203
+ "uid": "n_mrv3i73dzv87j2yt"
220
204
  },
221
205
  {
222
206
  "name": "Tail",
@@ -228,7 +212,8 @@
228
212
  "rotation": [-20, 0, 0],
229
213
  "material": { "color": "#33333b", "roughness": 0.9 },
230
214
  "castShadow": true
231
- }
215
+ },
216
+ "uid": "n_bv1oq0stbwxsk9nx"
232
217
  },
233
218
  {
234
219
  "name": "GrowlSfx",
@@ -240,7 +225,8 @@
240
225
  "spatial": true,
241
226
  "refDistance": 3,
242
227
  "maxDistance": 24
243
- }
228
+ },
229
+ "uid": "n_7pidlrhnsw3irdcq"
244
230
  },
245
231
  {
246
232
  "name": "Fang",
@@ -278,7 +264,8 @@
278
264
  "position": [0, 0, 0],
279
265
  "material": { "color": "#3b3b44", "roughness": 0.9 },
280
266
  "castShadow": true
281
- }
267
+ },
268
+ "uid": "n_huh53r5qqbwpplfc"
282
269
  },
283
270
  {
284
271
  "name": "Head",
@@ -289,7 +276,8 @@
289
276
  "position": [0, 0.18, 0.75],
290
277
  "material": { "color": "#46464f", "roughness": 0.9 },
291
278
  "castShadow": true
292
- }
279
+ },
280
+ "uid": "n_jcylseta88wz18vo"
293
281
  },
294
282
  {
295
283
  "name": "EyeL",
@@ -298,12 +286,9 @@
298
286
  "mesh": "sphere",
299
287
  "size": [0.07, 0.07, 0.07],
300
288
  "position": [-0.1, 0.24, 1],
301
- "material": {
302
- "color": "#ff3030",
303
- "emissive": "#ff3030",
304
- "emissiveIntensity": 2
305
- }
306
- }
289
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
290
+ },
291
+ "uid": "n_q2zj3obgeju2679y"
307
292
  },
308
293
  {
309
294
  "name": "EyeR",
@@ -312,12 +297,9 @@
312
297
  "mesh": "sphere",
313
298
  "size": [0.07, 0.07, 0.07],
314
299
  "position": [0.1, 0.24, 1],
315
- "material": {
316
- "color": "#ff3030",
317
- "emissive": "#ff3030",
318
- "emissiveIntensity": 2
319
- }
320
- }
300
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
301
+ },
302
+ "uid": "n_wy1rugrika40wywt"
321
303
  },
322
304
  {
323
305
  "name": "Tail",
@@ -329,7 +311,8 @@
329
311
  "rotation": [-20, 0, 0],
330
312
  "material": { "color": "#33333b", "roughness": 0.9 },
331
313
  "castShadow": true
332
- }
314
+ },
315
+ "uid": "n_4j08hh7l0fpanx5j"
333
316
  },
334
317
  {
335
318
  "name": "GrowlSfx",
@@ -341,7 +324,8 @@
341
324
  "spatial": true,
342
325
  "refDistance": 3,
343
326
  "maxDistance": 24
344
- }
327
+ },
328
+ "uid": "n_b41lz424hn6e1jh1"
345
329
  },
346
330
  {
347
331
  "name": "Fang",
@@ -379,7 +363,8 @@
379
363
  "position": [0, 0, 0],
380
364
  "material": { "color": "#3b3b44", "roughness": 0.9 },
381
365
  "castShadow": true
382
- }
366
+ },
367
+ "uid": "n_mvoin4mls8z8ulg7"
383
368
  },
384
369
  {
385
370
  "name": "Head",
@@ -390,7 +375,8 @@
390
375
  "position": [0, 0.18, 0.75],
391
376
  "material": { "color": "#46464f", "roughness": 0.9 },
392
377
  "castShadow": true
393
- }
378
+ },
379
+ "uid": "n_1zzgov37kapgd0rn"
394
380
  },
395
381
  {
396
382
  "name": "EyeL",
@@ -399,12 +385,9 @@
399
385
  "mesh": "sphere",
400
386
  "size": [0.07, 0.07, 0.07],
401
387
  "position": [-0.1, 0.24, 1],
402
- "material": {
403
- "color": "#ff3030",
404
- "emissive": "#ff3030",
405
- "emissiveIntensity": 2
406
- }
407
- }
388
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
389
+ },
390
+ "uid": "n_tfu22qlxlb2becof"
408
391
  },
409
392
  {
410
393
  "name": "EyeR",
@@ -413,12 +396,9 @@
413
396
  "mesh": "sphere",
414
397
  "size": [0.07, 0.07, 0.07],
415
398
  "position": [0.1, 0.24, 1],
416
- "material": {
417
- "color": "#ff3030",
418
- "emissive": "#ff3030",
419
- "emissiveIntensity": 2
420
- }
421
- }
399
+ "material": { "color": "#ff3030", "emissive": "#ff3030", "emissiveIntensity": 2 }
400
+ },
401
+ "uid": "n_nhopab1x91nb3562"
422
402
  },
423
403
  {
424
404
  "name": "Tail",
@@ -430,7 +410,8 @@
430
410
  "rotation": [-20, 0, 0],
431
411
  "material": { "color": "#33333b", "roughness": 0.9 },
432
412
  "castShadow": true
433
- }
413
+ },
414
+ "uid": "n_k4o3v4lkw7evrgfz"
434
415
  },
435
416
  {
436
417
  "name": "GrowlSfx",
@@ -442,7 +423,8 @@
442
423
  "spatial": true,
443
424
  "refDistance": 3,
444
425
  "maxDistance": 24
445
- }
426
+ },
427
+ "uid": "n_2ph84bwixda1kbuf"
446
428
  },
447
429
  {
448
430
  "name": "Fang",
@@ -465,7 +447,8 @@
465
447
  ],
466
448
  "uid": "n_i8a3jrpoexdellnx"
467
449
  }
468
- ]
450
+ ],
451
+ "uid": "n_jcf0jbmnvgb2z0f0"
469
452
  },
470
453
  {
471
454
  "name": "ReturnPortal",
@@ -484,7 +467,8 @@
484
467
  "position": [0, 0.2, 0.6],
485
468
  "material": { "color": "#5c4632", "roughness": 0.9 },
486
469
  "castShadow": true
487
- }
470
+ },
471
+ "uid": "n_b71ljsug9hl7vk4o"
488
472
  },
489
473
  {
490
474
  "name": "Glow",
@@ -499,9 +483,11 @@
499
483
  "emissiveIntensity": 1.4,
500
484
  "opacity": 0.55
501
485
  }
502
- }
486
+ },
487
+ "uid": "n_lb720og0afhf0fyu"
503
488
  }
504
- ]
489
+ ],
490
+ "uid": "n_5n9vc6wfvxq5n57j"
505
491
  },
506
492
  {
507
493
  "name": "Player",
@@ -547,7 +533,8 @@
547
533
  "animation": "$anims/idle",
548
534
  "castShadow": true,
549
535
  "position": [0, -0.85, 0]
550
- }
536
+ },
537
+ "uid": "n_qo6gca2mjspved45"
551
538
  },
552
539
  {
553
540
  "name": "SwordMount",
@@ -563,7 +550,8 @@
563
550
  "position": [0, 0.42, 0],
564
551
  "material": { "color": "#d8dde8", "metalness": 0.9, "roughness": 0.25 },
565
552
  "castShadow": true
566
- }
553
+ },
554
+ "uid": "n_3g9kff8833vo3cz3"
567
555
  },
568
556
  {
569
557
  "name": "Guard",
@@ -573,7 +561,8 @@
573
561
  "size": [0.16, 0.04, 0.06],
574
562
  "position": [0, 0.09, 0],
575
563
  "material": { "color": "#8a6d3a", "metalness": 0.7, "roughness": 0.4 }
576
- }
564
+ },
565
+ "uid": "n_xf7bmy20wf32orm9"
577
566
  },
578
567
  {
579
568
  "name": "SwordTip",
@@ -591,23 +580,28 @@
591
580
  "additive": true,
592
581
  "emitting": false,
593
582
  "minDistance": 0.02
594
- }
583
+ },
584
+ "uid": "n_y0o189tyn7n7hwxn"
595
585
  }
596
- ]
586
+ ],
587
+ "uid": "n_zxht6p8wrr3vkqne"
597
588
  }
598
- ]
589
+ ],
590
+ "uid": "n_3bacwfb6wcybdag6"
599
591
  },
600
592
  {
601
593
  "name": "SwingSfx",
602
594
  "type": "AudioPlayer",
603
- "props": { "preset": "shoot", "volume": 0.35, "pitch": 0.55 }
595
+ "props": { "preset": "shoot", "volume": 0.35, "pitch": 0.55 },
596
+ "uid": "n_t75cjece3e6vj1hu"
604
597
  },
605
598
  {
606
599
  "name": "HitSfx",
607
600
  "type": "AudioPlayer",
608
- "props": { "preset": "hit", "volume": 0.6 }
601
+ "props": { "preset": "hit", "volume": 0.6 },
602
+ "uid": "n_yzaa0j2dsxx5rbt8"
609
603
  },
610
- { "name": "Catch", "type": "Respawn" }
604
+ { "name": "Catch", "type": "Respawn", "uid": "n_ozby55trbh9ch4gf" }
611
605
  ],
612
606
  "script": { "name": "Health", "props": { "max": 100, "invulnerableFor": 0.8 } },
613
607
  "uid": "n_3hp4w1vicxhqr375"
@@ -615,12 +609,14 @@
615
609
  {
616
610
  "name": "Camera",
617
611
  "type": "Camera3D",
618
- "props": { "current": true, "position": [0, 4, 19] }
612
+ "props": { "current": true, "position": [0, 4, 19] },
613
+ "uid": "n_qrf8b8vsd38eor5b"
619
614
  },
620
615
  {
621
616
  "name": "WinSfx",
622
617
  "type": "AudioPlayer",
623
- "props": { "preset": "win", "volume": 0.6 }
618
+ "props": { "preset": "win", "volume": 0.6 },
619
+ "uid": "n_9tzn60tx1kwgrhl3"
624
620
  },
625
621
  {
626
622
  "name": "HUD",
@@ -630,12 +626,7 @@
630
626
  "name": "Quest",
631
627
  "type": "UiText",
632
628
  "uid": "n_nmkf915b9r8d37nf",
633
- "props": {
634
- "text": "Wolves left: 3",
635
- "size": 16,
636
- "anchor": "topLeft",
637
- "shadow": true
638
- }
629
+ "props": { "text": "Wolves left: 3", "size": 16, "anchor": "topLeft", "shadow": true }
639
630
  },
640
631
  {
641
632
  "name": "HP",
@@ -669,36 +660,26 @@
669
660
  {
670
661
  "name": "PausedTitle",
671
662
  "type": "UiText",
672
- "props": { "text": "Paused", "size": 24 }
663
+ "props": { "text": "Paused", "size": 24 },
664
+ "uid": "n_ucyuyojea32g6zm4"
673
665
  },
674
666
  {
675
667
  "name": "ResumeHint",
676
668
  "type": "UiText",
677
- "props": {
678
- "text": "Esc to resume · R to restart",
679
- "size": 13,
680
- "color": "#c9d2dd"
681
- }
669
+ "props": { "text": "Esc to resume · R to restart", "size": 13, "color": "#c9d2dd" },
670
+ "uid": "n_rs5w00p3m62rmoy6"
682
671
  }
683
- ]
672
+ ],
673
+ "uid": "n_5wfhk1dbgyv25gxl"
684
674
  }
685
- ]
675
+ ],
676
+ "uid": "n_wwhwnwye7olskfer"
686
677
  }
687
678
  ],
688
679
  "uid": "n_tq2dy6amirvyfhlg"
689
680
  },
690
681
  "connections": [
691
- {
692
- "signal": "triggerEnter",
693
- "from": "ReturnPortal",
694
- "to": "/root",
695
- "handler": "onPortalEnter"
696
- },
697
- {
698
- "signal": "died",
699
- "from": "Player",
700
- "to": "/root",
701
- "handler": "onPlayerDown"
702
- }
682
+ { "signal": "triggerEnter", "from": "ReturnPortal", "to": "/root", "handler": "onPortalEnter" },
683
+ { "signal": "died", "from": "Player", "to": "/root", "handler": "onPlayerDown" }
703
684
  ]
704
685
  }