incanto 0.4.3 → 0.6.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 (44) hide show
  1. package/dist/2d.d.ts +80 -6
  2. package/dist/2d.js +4 -4
  3. package/dist/3d.d.ts +200 -15
  4. package/dist/3d.js +4 -4
  5. package/dist/{audio-player-DqUR3XFs.d.ts → audio-player-DkBqRTs4.d.ts} +1 -1
  6. package/dist/{behavior-BAQq7HGM.d.ts → behavior-CWhW3oa6.d.ts} +54 -0
  7. package/dist/{create-game-CZHROKcT.js → create-game-B_sW_eiE.js} +59 -27
  8. package/dist/{create-game-DiTq3-fQ.js → create-game-DkbZCNaV.js} +292 -14
  9. package/dist/debug.d.ts +1 -1
  10. package/dist/{duplicate-DP2WPYom.js → duplicate-BEvGBtb_.js} +1 -1
  11. package/dist/{gameplay-Ccruc3Wd.js → gameplay-CDFgSG6z.js} +293 -24
  12. package/dist/gameplay.d.ts +113 -2
  13. package/dist/gameplay.js +2 -2
  14. package/dist/index.d.ts +139 -5
  15. package/dist/index.js +59 -6
  16. package/dist/{loader-CGs_G-r0.js → loader-B4OEXDZ8.js} +60 -0
  17. package/dist/{loader-Mo0KghCv.d.ts → loader-D2u0fVW2.d.ts} +1 -1
  18. package/dist/net.d.ts +1 -1
  19. package/dist/net.js +1 -1
  20. package/dist/{particle-sim-DYuSUxvK.js → particle-sim-CFkILGwh.js} +84 -3
  21. package/dist/{particle-sim-CbN4YUuH.d.ts → particle-sim-CwJ5rI_P.d.ts} +3 -0
  22. package/dist/{physics-2d-KuMWPTf6.js → physics-2d-Cgli1aju.js} +95 -10
  23. package/dist/{physics-3d-DmNCeh58.js → physics-3d-CBAQ12LY.js} +121 -43
  24. package/dist/react.d.ts +1 -1
  25. package/dist/react.js +1 -1
  26. package/dist/{register-DPEV9_9t.js → register-BJCfuuZ2.js} +79 -5
  27. package/dist/{register-B0gq63VW.js → register-C35HDZpm.js} +2 -2
  28. package/dist/{register-BRy8FNox.js → register-Dd7Juujf.js} +389 -49
  29. package/dist/{register-BuUV1_KB.js → register-Dl_ixIJe.js} +275 -2
  30. package/dist/test.d.ts +2 -2
  31. package/dist/test.js +10 -10
  32. package/editor/assets/{agent8-DryTXVd4.js → agent8-MciFwn0v.js} +1 -1
  33. package/editor/assets/index-mofVSmuA.js +7417 -0
  34. package/editor/index.html +1 -1
  35. package/package.json +1 -1
  36. package/schemas/scene.schema.json +980 -126
  37. package/skills/incanto-3d-models.md +24 -1
  38. package/skills/incanto-building-2d-games.md +6 -0
  39. package/skills/incanto-building-3d-games.md +46 -1
  40. package/skills/incanto-gameplay-behaviors.md +60 -0
  41. package/skills/incanto-hud.md +58 -0
  42. package/skills/incanto-node-reference.md +148 -0
  43. package/skills/incanto-physics-and-input.md +47 -0
  44. package/editor/assets/index-N8se-PhP.js +0 -7365
@@ -220,9 +220,21 @@
220
220
  {
221
221
  "$ref": "#/$defs/Foliage3D"
222
222
  },
223
+ {
224
+ "$ref": "#/$defs/HudLayer"
225
+ },
226
+ {
227
+ "$ref": "#/$defs/Joint2D"
228
+ },
229
+ {
230
+ "$ref": "#/$defs/Joint3D"
231
+ },
223
232
  {
224
233
  "$ref": "#/$defs/Label"
225
234
  },
235
+ {
236
+ "$ref": "#/$defs/LoftMesh3D"
237
+ },
226
238
  {
227
239
  "$ref": "#/$defs/MeshInstance3D"
228
240
  },
@@ -280,6 +292,15 @@
280
292
  {
281
293
  "$ref": "#/$defs/UILayer"
282
294
  },
295
+ {
296
+ "$ref": "#/$defs/UiBanner"
297
+ },
298
+ {
299
+ "$ref": "#/$defs/UiBar"
300
+ },
301
+ {
302
+ "$ref": "#/$defs/UiText"
303
+ },
283
304
  {
284
305
  "$ref": "#/$defs/VoxelGrid3D"
285
306
  },
@@ -377,6 +398,10 @@
377
398
  "type": "number",
378
399
  "default": 0
379
400
  },
401
+ "static": {
402
+ "type": "boolean",
403
+ "default": false
404
+ },
380
405
  "scale": {
381
406
  "type": "array",
382
407
  "items": {
@@ -505,6 +530,10 @@
505
530
  "maxItems": 3,
506
531
  "default": [0, 0, 0]
507
532
  },
533
+ "static": {
534
+ "type": "boolean",
535
+ "default": false
536
+ },
508
537
  "scale": {
509
538
  "type": "array",
510
539
  "items": {
@@ -663,6 +692,10 @@
663
692
  "type": "number",
664
693
  "default": 0
665
694
  },
695
+ "static": {
696
+ "type": "boolean",
697
+ "default": false
698
+ },
666
699
  "scale": {
667
700
  "type": "array",
668
701
  "items": {
@@ -754,6 +787,10 @@
754
787
  "maxItems": 3,
755
788
  "default": [0, 0, 0]
756
789
  },
790
+ "static": {
791
+ "type": "boolean",
792
+ "default": false
793
+ },
757
794
  "scale": {
758
795
  "type": "array",
759
796
  "items": {
@@ -963,6 +1000,10 @@
963
1000
  "maxItems": 3,
964
1001
  "default": [0, 0, 0]
965
1002
  },
1003
+ "static": {
1004
+ "type": "boolean",
1005
+ "default": false
1006
+ },
966
1007
  "scale": {
967
1008
  "type": "array",
968
1009
  "items": {
@@ -1049,6 +1090,10 @@
1049
1090
  "type": "number",
1050
1091
  "default": 0
1051
1092
  },
1093
+ "static": {
1094
+ "type": "boolean",
1095
+ "default": false
1096
+ },
1052
1097
  "scale": {
1053
1098
  "type": "array",
1054
1099
  "items": {
@@ -1155,6 +1200,10 @@
1155
1200
  "maxItems": 3,
1156
1201
  "default": [0, 0, 0]
1157
1202
  },
1203
+ "static": {
1204
+ "type": "boolean",
1205
+ "default": false
1206
+ },
1158
1207
  "scale": {
1159
1208
  "type": "array",
1160
1209
  "items": {
@@ -1253,6 +1302,10 @@
1253
1302
  "type": "number",
1254
1303
  "default": 0
1255
1304
  },
1305
+ "static": {
1306
+ "type": "boolean",
1307
+ "default": false
1308
+ },
1256
1309
  "scale": {
1257
1310
  "type": "array",
1258
1311
  "items": {
@@ -1361,6 +1414,10 @@
1361
1414
  "maxItems": 3,
1362
1415
  "default": [0, 0, 0]
1363
1416
  },
1417
+ "static": {
1418
+ "type": "boolean",
1419
+ "default": false
1420
+ },
1364
1421
  "scale": {
1365
1422
  "type": "array",
1366
1423
  "items": {
@@ -1541,6 +1598,10 @@
1541
1598
  "maxItems": 3,
1542
1599
  "default": [0, 0, 0]
1543
1600
  },
1601
+ "static": {
1602
+ "type": "boolean",
1603
+ "default": false
1604
+ },
1544
1605
  "scale": {
1545
1606
  "type": "array",
1546
1607
  "items": {
@@ -1707,6 +1768,10 @@
1707
1768
  "type": "number",
1708
1769
  "default": 0
1709
1770
  },
1771
+ "static": {
1772
+ "type": "boolean",
1773
+ "default": false
1774
+ },
1710
1775
  "scale": {
1711
1776
  "type": "array",
1712
1777
  "items": {
@@ -1819,6 +1884,10 @@
1819
1884
  "maxItems": 3,
1820
1885
  "default": [0, 0, 0]
1821
1886
  },
1887
+ "static": {
1888
+ "type": "boolean",
1889
+ "default": false
1890
+ },
1822
1891
  "scale": {
1823
1892
  "type": "array",
1824
1893
  "items": {
@@ -1929,6 +1998,10 @@
1929
1998
  "maxItems": 3,
1930
1999
  "default": [0, 0, 0]
1931
2000
  },
2001
+ "static": {
2002
+ "type": "boolean",
2003
+ "default": false
2004
+ },
1932
2005
  "scale": {
1933
2006
  "type": "array",
1934
2007
  "items": {
@@ -2061,6 +2134,10 @@
2061
2134
  "maxItems": 3,
2062
2135
  "default": [0, 0, 0]
2063
2136
  },
2137
+ "static": {
2138
+ "type": "boolean",
2139
+ "default": false
2140
+ },
2064
2141
  "scale": {
2065
2142
  "type": "array",
2066
2143
  "items": {
@@ -2198,7 +2275,7 @@
2198
2275
  },
2199
2276
  "required": ["name", "type"]
2200
2277
  },
2201
- "Label": {
2278
+ "HudLayer": {
2202
2279
  "type": "object",
2203
2280
  "properties": {
2204
2281
  "name": {
@@ -2208,7 +2285,7 @@
2208
2285
  "type": "string"
2209
2286
  },
2210
2287
  "type": {
2211
- "const": "Label"
2288
+ "const": "HudLayer"
2212
2289
  },
2213
2290
  "groups": {
2214
2291
  "type": "array",
@@ -2222,55 +2299,13 @@
2222
2299
  "props": {
2223
2300
  "type": "object",
2224
2301
  "properties": {
2225
- "position": {
2226
- "type": "array",
2227
- "items": {
2228
- "type": "number"
2229
- },
2230
- "minItems": 2,
2231
- "maxItems": 2,
2232
- "default": [0, 0]
2233
- },
2234
- "rotation": {
2235
- "type": "number",
2236
- "default": 0
2237
- },
2238
- "scale": {
2239
- "type": "array",
2240
- "items": {
2241
- "type": "number"
2242
- },
2243
- "minItems": 2,
2244
- "maxItems": 2,
2245
- "default": [1, 1]
2246
- },
2247
- "renderOrder": {
2302
+ "zIndex": {
2248
2303
  "type": "number",
2249
- "default": 0
2304
+ "default": 100
2250
2305
  },
2251
2306
  "visible": {
2252
2307
  "type": "boolean",
2253
2308
  "default": true
2254
- },
2255
- "text": {
2256
- "type": "string",
2257
- "default": ""
2258
- },
2259
- "fontSize": {
2260
- "type": "number",
2261
- "default": 16
2262
- },
2263
- "color": {
2264
- "type": "string",
2265
- "default": "#ffffff"
2266
- },
2267
- "font": {
2268
- "type": "string",
2269
- "default": "monospace"
2270
- },
2271
- "align": {
2272
- "type": "string",
2273
- "default": "left"
2274
2309
  }
2275
2310
  },
2276
2311
  "additionalProperties": false
@@ -2299,7 +2334,7 @@
2299
2334
  },
2300
2335
  "required": ["name", "type"]
2301
2336
  },
2302
- "MeshInstance3D": {
2337
+ "Joint2D": {
2303
2338
  "type": "object",
2304
2339
  "properties": {
2305
2340
  "name": {
@@ -2309,7 +2344,7 @@
2309
2344
  "type": "string"
2310
2345
  },
2311
2346
  "type": {
2312
- "const": "MeshInstance3D"
2347
+ "const": "Joint2D"
2313
2348
  },
2314
2349
  "groups": {
2315
2350
  "type": "array",
@@ -2328,61 +2363,73 @@
2328
2363
  "items": {
2329
2364
  "type": "number"
2330
2365
  },
2331
- "minItems": 3,
2332
- "maxItems": 3,
2333
- "default": [0, 0, 0]
2366
+ "minItems": 2,
2367
+ "maxItems": 2,
2368
+ "default": [0, 0]
2334
2369
  },
2335
2370
  "rotation": {
2336
- "type": "array",
2337
- "items": {
2338
- "type": "number"
2339
- },
2340
- "minItems": 3,
2341
- "maxItems": 3,
2342
- "default": [0, 0, 0]
2371
+ "type": "number",
2372
+ "default": 0
2373
+ },
2374
+ "static": {
2375
+ "type": "boolean",
2376
+ "default": false
2343
2377
  },
2344
2378
  "scale": {
2345
2379
  "type": "array",
2346
2380
  "items": {
2347
2381
  "type": "number"
2348
2382
  },
2349
- "minItems": 3,
2350
- "maxItems": 3,
2351
- "default": [1, 1, 1]
2383
+ "minItems": 2,
2384
+ "maxItems": 2,
2385
+ "default": [1, 1]
2386
+ },
2387
+ "renderOrder": {
2388
+ "type": "number",
2389
+ "default": 0
2352
2390
  },
2353
2391
  "visible": {
2354
2392
  "type": "boolean",
2355
2393
  "default": true
2356
2394
  },
2357
- "renderOrder": {
2358
- "type": "number",
2359
- "default": 0
2395
+ "type": {
2396
+ "type": "string",
2397
+ "enum": ["fixed", "revolute", "rope", "spring"],
2398
+ "default": "revolute"
2360
2399
  },
2361
- "mesh": {
2400
+ "target": {
2362
2401
  "type": "string",
2363
- "enum": ["box", "sphere", "capsule", "plane", "cylinder", "gem"],
2364
- "default": "box"
2402
+ "default": ""
2365
2403
  },
2366
- "size": {
2404
+ "anchor": {
2367
2405
  "type": "array",
2368
2406
  "items": {
2369
2407
  "type": "number"
2370
2408
  },
2371
- "minItems": 3,
2372
- "maxItems": 3,
2373
- "default": [1, 1, 1]
2409
+ "minItems": 2,
2410
+ "maxItems": 2,
2411
+ "default": [0, 0]
2374
2412
  },
2375
- "material": {
2376
- "type": "object",
2377
- "default": {}
2413
+ "targetAnchor": {
2414
+ "type": "array",
2415
+ "items": {
2416
+ "type": "number"
2417
+ },
2418
+ "minItems": 2,
2419
+ "maxItems": 2,
2420
+ "default": [0, 0]
2378
2421
  },
2379
- "castShadow": {
2380
- "type": "boolean",
2381
- "default": false
2422
+ "length": {
2423
+ "type": "number",
2424
+ "default": 0
2382
2425
  },
2383
- "receiveShadow": {
2384
- "type": "boolean",
2385
- "default": false
2426
+ "stiffness": {
2427
+ "type": "number",
2428
+ "default": 50
2429
+ },
2430
+ "damping": {
2431
+ "type": "number",
2432
+ "default": 5
2386
2433
  }
2387
2434
  },
2388
2435
  "additionalProperties": false
@@ -2411,9 +2458,8 @@
2411
2458
  },
2412
2459
  "required": ["name", "type"]
2413
2460
  },
2414
- "ModelInstance3D": {
2461
+ "Joint3D": {
2415
2462
  "type": "object",
2416
- "x-signals": ["animationFinished"],
2417
2463
  "properties": {
2418
2464
  "name": {
2419
2465
  "type": "string"
@@ -2422,7 +2468,7 @@
2422
2468
  "type": "string"
2423
2469
  },
2424
2470
  "type": {
2425
- "const": "ModelInstance3D"
2471
+ "const": "Joint3D"
2426
2472
  },
2427
2473
  "groups": {
2428
2474
  "type": "array",
@@ -2454,6 +2500,10 @@
2454
2500
  "maxItems": 3,
2455
2501
  "default": [0, 0, 0]
2456
2502
  },
2503
+ "static": {
2504
+ "type": "boolean",
2505
+ "default": false
2506
+ },
2457
2507
  "scale": {
2458
2508
  "type": "array",
2459
2509
  "items": {
@@ -2471,33 +2521,44 @@
2471
2521
  "type": "number",
2472
2522
  "default": 0
2473
2523
  },
2474
- "model": {
2524
+ "type": {
2475
2525
  "type": "string",
2476
- "default": ""
2526
+ "enum": ["fixed", "spherical", "rope", "spring"],
2527
+ "default": "spherical"
2477
2528
  },
2478
- "animation": {
2529
+ "target": {
2479
2530
  "type": "string",
2480
2531
  "default": ""
2481
2532
  },
2482
- "targetHeight": {
2483
- "type": "number",
2484
- "default": 0
2533
+ "anchor": {
2534
+ "type": "array",
2535
+ "items": {
2536
+ "type": "number"
2537
+ },
2538
+ "minItems": 3,
2539
+ "maxItems": 3,
2540
+ "default": [0, 0, 0]
2485
2541
  },
2486
- "castShadow": {
2487
- "type": "boolean",
2488
- "default": false
2542
+ "targetAnchor": {
2543
+ "type": "array",
2544
+ "items": {
2545
+ "type": "number"
2546
+ },
2547
+ "minItems": 3,
2548
+ "maxItems": 3,
2549
+ "default": [0, 0, 0]
2489
2550
  },
2490
- "animationLoop": {
2491
- "type": "boolean",
2492
- "default": true
2551
+ "length": {
2552
+ "type": "number",
2553
+ "default": 0
2493
2554
  },
2494
- "receiveShadow": {
2495
- "type": "boolean",
2496
- "default": false
2555
+ "stiffness": {
2556
+ "type": "number",
2557
+ "default": 50
2497
2558
  },
2498
- "tint": {
2499
- "type": "string",
2500
- "default": ""
2559
+ "damping": {
2560
+ "type": "number",
2561
+ "default": 5
2501
2562
  }
2502
2563
  },
2503
2564
  "additionalProperties": false
@@ -2526,9 +2587,8 @@
2526
2587
  },
2527
2588
  "required": ["name", "type"]
2528
2589
  },
2529
- "NetworkSpawner": {
2590
+ "Label": {
2530
2591
  "type": "object",
2531
- "x-signals": ["spawned", "despawned"],
2532
2592
  "properties": {
2533
2593
  "name": {
2534
2594
  "type": "string"
@@ -2537,7 +2597,7 @@
2537
2597
  "type": "string"
2538
2598
  },
2539
2599
  "type": {
2540
- "const": "NetworkSpawner"
2600
+ "const": "Label"
2541
2601
  },
2542
2602
  "groups": {
2543
2603
  "type": "array",
@@ -2551,32 +2611,495 @@
2551
2611
  "props": {
2552
2612
  "type": "object",
2553
2613
  "properties": {
2554
- "source": {
2555
- "type": "string",
2556
- "default": "users"
2614
+ "position": {
2615
+ "type": "array",
2616
+ "items": {
2617
+ "type": "number"
2618
+ },
2619
+ "minItems": 2,
2620
+ "maxItems": 2,
2621
+ "default": [0, 0]
2557
2622
  },
2558
- "scene": {
2559
- "type": "string",
2560
- "default": ""
2623
+ "rotation": {
2624
+ "type": "number",
2625
+ "default": 0
2561
2626
  },
2562
- "interpolate": {
2627
+ "static": {
2563
2628
  "type": "boolean",
2564
- "default": true
2565
- }
2566
- },
2567
- "additionalProperties": false
2568
- },
2569
- "script": {
2570
- "type": "object",
2571
- "properties": {
2572
- "name": {
2573
- "type": "string"
2629
+ "default": false
2574
2630
  },
2575
- "props": {
2576
- "type": "object"
2577
- }
2578
- },
2579
- "required": ["name"]
2631
+ "scale": {
2632
+ "type": "array",
2633
+ "items": {
2634
+ "type": "number"
2635
+ },
2636
+ "minItems": 2,
2637
+ "maxItems": 2,
2638
+ "default": [1, 1]
2639
+ },
2640
+ "renderOrder": {
2641
+ "type": "number",
2642
+ "default": 0
2643
+ },
2644
+ "visible": {
2645
+ "type": "boolean",
2646
+ "default": true
2647
+ },
2648
+ "text": {
2649
+ "type": "string",
2650
+ "default": ""
2651
+ },
2652
+ "fontSize": {
2653
+ "type": "number",
2654
+ "default": 16
2655
+ },
2656
+ "color": {
2657
+ "type": "string",
2658
+ "default": "#ffffff"
2659
+ },
2660
+ "font": {
2661
+ "type": "string",
2662
+ "default": "monospace"
2663
+ },
2664
+ "align": {
2665
+ "type": "string",
2666
+ "default": "left"
2667
+ }
2668
+ },
2669
+ "additionalProperties": false
2670
+ },
2671
+ "script": {
2672
+ "type": "object",
2673
+ "properties": {
2674
+ "name": {
2675
+ "type": "string"
2676
+ },
2677
+ "props": {
2678
+ "type": "object"
2679
+ }
2680
+ },
2681
+ "required": ["name"]
2682
+ },
2683
+ "network": {
2684
+ "type": "object"
2685
+ },
2686
+ "children": {
2687
+ "type": "array",
2688
+ "items": {
2689
+ "$ref": "#/$defs/node"
2690
+ }
2691
+ }
2692
+ },
2693
+ "required": ["name", "type"]
2694
+ },
2695
+ "LoftMesh3D": {
2696
+ "type": "object",
2697
+ "properties": {
2698
+ "name": {
2699
+ "type": "string"
2700
+ },
2701
+ "uid": {
2702
+ "type": "string"
2703
+ },
2704
+ "type": {
2705
+ "const": "LoftMesh3D"
2706
+ },
2707
+ "groups": {
2708
+ "type": "array",
2709
+ "items": {
2710
+ "type": "string"
2711
+ }
2712
+ },
2713
+ "tags": {
2714
+ "type": "object"
2715
+ },
2716
+ "props": {
2717
+ "type": "object",
2718
+ "properties": {
2719
+ "position": {
2720
+ "type": "array",
2721
+ "items": {
2722
+ "type": "number"
2723
+ },
2724
+ "minItems": 3,
2725
+ "maxItems": 3,
2726
+ "default": [0, 0, 0]
2727
+ },
2728
+ "rotation": {
2729
+ "type": "array",
2730
+ "items": {
2731
+ "type": "number"
2732
+ },
2733
+ "minItems": 3,
2734
+ "maxItems": 3,
2735
+ "default": [0, 0, 0]
2736
+ },
2737
+ "static": {
2738
+ "type": "boolean",
2739
+ "default": false
2740
+ },
2741
+ "scale": {
2742
+ "type": "array",
2743
+ "items": {
2744
+ "type": "number"
2745
+ },
2746
+ "minItems": 3,
2747
+ "maxItems": 3,
2748
+ "default": [1, 1, 1]
2749
+ },
2750
+ "visible": {
2751
+ "type": "boolean",
2752
+ "default": true
2753
+ },
2754
+ "renderOrder": {
2755
+ "type": "number",
2756
+ "default": 0
2757
+ },
2758
+ "sections": {
2759
+ "type": "array",
2760
+ "default": []
2761
+ },
2762
+ "slices": {
2763
+ "type": "number",
2764
+ "default": 24
2765
+ },
2766
+ "smooth": {
2767
+ "type": "number",
2768
+ "default": 4
2769
+ },
2770
+ "material": {
2771
+ "type": "object",
2772
+ "default": {}
2773
+ },
2774
+ "castShadow": {
2775
+ "type": "boolean",
2776
+ "default": false
2777
+ },
2778
+ "receiveShadow": {
2779
+ "type": "boolean",
2780
+ "default": false
2781
+ }
2782
+ },
2783
+ "additionalProperties": false
2784
+ },
2785
+ "script": {
2786
+ "type": "object",
2787
+ "properties": {
2788
+ "name": {
2789
+ "type": "string"
2790
+ },
2791
+ "props": {
2792
+ "type": "object"
2793
+ }
2794
+ },
2795
+ "required": ["name"]
2796
+ },
2797
+ "network": {
2798
+ "type": "object"
2799
+ },
2800
+ "children": {
2801
+ "type": "array",
2802
+ "items": {
2803
+ "$ref": "#/$defs/node"
2804
+ }
2805
+ }
2806
+ },
2807
+ "required": ["name", "type"]
2808
+ },
2809
+ "MeshInstance3D": {
2810
+ "type": "object",
2811
+ "properties": {
2812
+ "name": {
2813
+ "type": "string"
2814
+ },
2815
+ "uid": {
2816
+ "type": "string"
2817
+ },
2818
+ "type": {
2819
+ "const": "MeshInstance3D"
2820
+ },
2821
+ "groups": {
2822
+ "type": "array",
2823
+ "items": {
2824
+ "type": "string"
2825
+ }
2826
+ },
2827
+ "tags": {
2828
+ "type": "object"
2829
+ },
2830
+ "props": {
2831
+ "type": "object",
2832
+ "properties": {
2833
+ "position": {
2834
+ "type": "array",
2835
+ "items": {
2836
+ "type": "number"
2837
+ },
2838
+ "minItems": 3,
2839
+ "maxItems": 3,
2840
+ "default": [0, 0, 0]
2841
+ },
2842
+ "rotation": {
2843
+ "type": "array",
2844
+ "items": {
2845
+ "type": "number"
2846
+ },
2847
+ "minItems": 3,
2848
+ "maxItems": 3,
2849
+ "default": [0, 0, 0]
2850
+ },
2851
+ "static": {
2852
+ "type": "boolean",
2853
+ "default": false
2854
+ },
2855
+ "scale": {
2856
+ "type": "array",
2857
+ "items": {
2858
+ "type": "number"
2859
+ },
2860
+ "minItems": 3,
2861
+ "maxItems": 3,
2862
+ "default": [1, 1, 1]
2863
+ },
2864
+ "visible": {
2865
+ "type": "boolean",
2866
+ "default": true
2867
+ },
2868
+ "renderOrder": {
2869
+ "type": "number",
2870
+ "default": 0
2871
+ },
2872
+ "mesh": {
2873
+ "type": "string",
2874
+ "enum": ["box", "sphere", "capsule", "plane", "cylinder", "gem"],
2875
+ "default": "box"
2876
+ },
2877
+ "size": {
2878
+ "type": "array",
2879
+ "items": {
2880
+ "type": "number"
2881
+ },
2882
+ "minItems": 3,
2883
+ "maxItems": 3,
2884
+ "default": [1, 1, 1]
2885
+ },
2886
+ "material": {
2887
+ "type": "object",
2888
+ "default": {}
2889
+ },
2890
+ "castShadow": {
2891
+ "type": "boolean",
2892
+ "default": false
2893
+ },
2894
+ "receiveShadow": {
2895
+ "type": "boolean",
2896
+ "default": false
2897
+ }
2898
+ },
2899
+ "additionalProperties": false
2900
+ },
2901
+ "script": {
2902
+ "type": "object",
2903
+ "properties": {
2904
+ "name": {
2905
+ "type": "string"
2906
+ },
2907
+ "props": {
2908
+ "type": "object"
2909
+ }
2910
+ },
2911
+ "required": ["name"]
2912
+ },
2913
+ "network": {
2914
+ "type": "object"
2915
+ },
2916
+ "children": {
2917
+ "type": "array",
2918
+ "items": {
2919
+ "$ref": "#/$defs/node"
2920
+ }
2921
+ }
2922
+ },
2923
+ "required": ["name", "type"]
2924
+ },
2925
+ "ModelInstance3D": {
2926
+ "type": "object",
2927
+ "x-signals": ["animationFinished"],
2928
+ "properties": {
2929
+ "name": {
2930
+ "type": "string"
2931
+ },
2932
+ "uid": {
2933
+ "type": "string"
2934
+ },
2935
+ "type": {
2936
+ "const": "ModelInstance3D"
2937
+ },
2938
+ "groups": {
2939
+ "type": "array",
2940
+ "items": {
2941
+ "type": "string"
2942
+ }
2943
+ },
2944
+ "tags": {
2945
+ "type": "object"
2946
+ },
2947
+ "props": {
2948
+ "type": "object",
2949
+ "properties": {
2950
+ "position": {
2951
+ "type": "array",
2952
+ "items": {
2953
+ "type": "number"
2954
+ },
2955
+ "minItems": 3,
2956
+ "maxItems": 3,
2957
+ "default": [0, 0, 0]
2958
+ },
2959
+ "rotation": {
2960
+ "type": "array",
2961
+ "items": {
2962
+ "type": "number"
2963
+ },
2964
+ "minItems": 3,
2965
+ "maxItems": 3,
2966
+ "default": [0, 0, 0]
2967
+ },
2968
+ "static": {
2969
+ "type": "boolean",
2970
+ "default": false
2971
+ },
2972
+ "scale": {
2973
+ "type": "array",
2974
+ "items": {
2975
+ "type": "number"
2976
+ },
2977
+ "minItems": 3,
2978
+ "maxItems": 3,
2979
+ "default": [1, 1, 1]
2980
+ },
2981
+ "visible": {
2982
+ "type": "boolean",
2983
+ "default": true
2984
+ },
2985
+ "renderOrder": {
2986
+ "type": "number",
2987
+ "default": 0
2988
+ },
2989
+ "model": {
2990
+ "type": "string",
2991
+ "default": ""
2992
+ },
2993
+ "animation": {
2994
+ "type": "string",
2995
+ "default": ""
2996
+ },
2997
+ "targetHeight": {
2998
+ "type": "number",
2999
+ "default": 0
3000
+ },
3001
+ "castShadow": {
3002
+ "type": "boolean",
3003
+ "default": false
3004
+ },
3005
+ "animationLoop": {
3006
+ "type": "boolean",
3007
+ "default": true
3008
+ },
3009
+ "receiveShadow": {
3010
+ "type": "boolean",
3011
+ "default": false
3012
+ },
3013
+ "tint": {
3014
+ "type": "string",
3015
+ "default": ""
3016
+ },
3017
+ "metalness": {
3018
+ "type": "number",
3019
+ "default": -1
3020
+ },
3021
+ "roughness": {
3022
+ "type": "number",
3023
+ "default": -1
3024
+ }
3025
+ },
3026
+ "additionalProperties": false
3027
+ },
3028
+ "script": {
3029
+ "type": "object",
3030
+ "properties": {
3031
+ "name": {
3032
+ "type": "string"
3033
+ },
3034
+ "props": {
3035
+ "type": "object"
3036
+ }
3037
+ },
3038
+ "required": ["name"]
3039
+ },
3040
+ "network": {
3041
+ "type": "object"
3042
+ },
3043
+ "children": {
3044
+ "type": "array",
3045
+ "items": {
3046
+ "$ref": "#/$defs/node"
3047
+ }
3048
+ }
3049
+ },
3050
+ "required": ["name", "type"]
3051
+ },
3052
+ "NetworkSpawner": {
3053
+ "type": "object",
3054
+ "x-signals": ["spawned", "despawned"],
3055
+ "properties": {
3056
+ "name": {
3057
+ "type": "string"
3058
+ },
3059
+ "uid": {
3060
+ "type": "string"
3061
+ },
3062
+ "type": {
3063
+ "const": "NetworkSpawner"
3064
+ },
3065
+ "groups": {
3066
+ "type": "array",
3067
+ "items": {
3068
+ "type": "string"
3069
+ }
3070
+ },
3071
+ "tags": {
3072
+ "type": "object"
3073
+ },
3074
+ "props": {
3075
+ "type": "object",
3076
+ "properties": {
3077
+ "source": {
3078
+ "type": "string",
3079
+ "default": "users"
3080
+ },
3081
+ "scene": {
3082
+ "type": "string",
3083
+ "default": ""
3084
+ },
3085
+ "interpolate": {
3086
+ "type": "boolean",
3087
+ "default": true
3088
+ }
3089
+ },
3090
+ "additionalProperties": false
3091
+ },
3092
+ "script": {
3093
+ "type": "object",
3094
+ "properties": {
3095
+ "name": {
3096
+ "type": "string"
3097
+ },
3098
+ "props": {
3099
+ "type": "object"
3100
+ }
3101
+ },
3102
+ "required": ["name"]
2580
3103
  },
2581
3104
  "network": {
2582
3105
  "type": "object"
@@ -2677,6 +3200,10 @@
2677
3200
  "type": "number",
2678
3201
  "default": 0
2679
3202
  },
3203
+ "static": {
3204
+ "type": "boolean",
3205
+ "default": false
3206
+ },
2680
3207
  "scale": {
2681
3208
  "type": "array",
2682
3209
  "items": {
@@ -2763,6 +3290,10 @@
2763
3290
  "maxItems": 3,
2764
3291
  "default": [0, 0, 0]
2765
3292
  },
3293
+ "static": {
3294
+ "type": "boolean",
3295
+ "default": false
3296
+ },
2766
3297
  "scale": {
2767
3298
  "type": "array",
2768
3299
  "items": {
@@ -2849,6 +3380,10 @@
2849
3380
  "maxItems": 3,
2850
3381
  "default": [0, 0, 0]
2851
3382
  },
3383
+ "static": {
3384
+ "type": "boolean",
3385
+ "default": false
3386
+ },
2852
3387
  "scale": {
2853
3388
  "type": "array",
2854
3389
  "items": {
@@ -2943,6 +3478,10 @@
2943
3478
  "type": "number",
2944
3479
  "default": 0
2945
3480
  },
3481
+ "static": {
3482
+ "type": "boolean",
3483
+ "default": false
3484
+ },
2946
3485
  "scale": {
2947
3486
  "type": "array",
2948
3487
  "items": {
@@ -3139,6 +3678,10 @@
3139
3678
  "maxItems": 3,
3140
3679
  "default": [0, 0, 0]
3141
3680
  },
3681
+ "static": {
3682
+ "type": "boolean",
3683
+ "default": false
3684
+ },
3142
3685
  "scale": {
3143
3686
  "type": "array",
3144
3687
  "items": {
@@ -3334,6 +3877,10 @@
3334
3877
  "type": "number",
3335
3878
  "default": 0
3336
3879
  },
3880
+ "static": {
3881
+ "type": "boolean",
3882
+ "default": false
3883
+ },
3337
3884
  "scale": {
3338
3885
  "type": "array",
3339
3886
  "items": {
@@ -3454,6 +4001,10 @@
3454
4001
  "maxItems": 3,
3455
4002
  "default": [0, 0, 0]
3456
4003
  },
4004
+ "static": {
4005
+ "type": "boolean",
4006
+ "default": false
4007
+ },
3457
4008
  "scale": {
3458
4009
  "type": "array",
3459
4010
  "items": {
@@ -3568,6 +4119,10 @@
3568
4119
  "type": "number",
3569
4120
  "default": 0
3570
4121
  },
4122
+ "static": {
4123
+ "type": "boolean",
4124
+ "default": false
4125
+ },
3571
4126
  "scale": {
3572
4127
  "type": "array",
3573
4128
  "items": {
@@ -3683,6 +4238,10 @@
3683
4238
  "maxItems": 3,
3684
4239
  "default": [0, 0, 0]
3685
4240
  },
4241
+ "static": {
4242
+ "type": "boolean",
4243
+ "default": false
4244
+ },
3686
4245
  "scale": {
3687
4246
  "type": "array",
3688
4247
  "items": {
@@ -3821,6 +4380,10 @@
3821
4380
  "type": "number",
3822
4381
  "default": 0
3823
4382
  },
4383
+ "static": {
4384
+ "type": "boolean",
4385
+ "default": false
4386
+ },
3824
4387
  "scale": {
3825
4388
  "type": "array",
3826
4389
  "items": {
@@ -3912,6 +4475,10 @@
3912
4475
  "maxItems": 3,
3913
4476
  "default": [0, 0, 0]
3914
4477
  },
4478
+ "static": {
4479
+ "type": "boolean",
4480
+ "default": false
4481
+ },
3915
4482
  "scale": {
3916
4483
  "type": "array",
3917
4484
  "items": {
@@ -4002,6 +4569,10 @@
4002
4569
  "maxItems": 3,
4003
4570
  "default": [0, 0, 0]
4004
4571
  },
4572
+ "static": {
4573
+ "type": "boolean",
4574
+ "default": false
4575
+ },
4005
4576
  "scale": {
4006
4577
  "type": "array",
4007
4578
  "items": {
@@ -4217,6 +4788,10 @@
4217
4788
  "maxItems": 3,
4218
4789
  "default": [0, 0, 0]
4219
4790
  },
4791
+ "static": {
4792
+ "type": "boolean",
4793
+ "default": false
4794
+ },
4220
4795
  "scale": {
4221
4796
  "type": "array",
4222
4797
  "items": {
@@ -4390,6 +4965,277 @@
4390
4965
  },
4391
4966
  "required": ["name", "type"]
4392
4967
  },
4968
+ "UiBanner": {
4969
+ "type": "object",
4970
+ "x-signals": ["bannerShown"],
4971
+ "properties": {
4972
+ "name": {
4973
+ "type": "string"
4974
+ },
4975
+ "uid": {
4976
+ "type": "string"
4977
+ },
4978
+ "type": {
4979
+ "const": "UiBanner"
4980
+ },
4981
+ "groups": {
4982
+ "type": "array",
4983
+ "items": {
4984
+ "type": "string"
4985
+ }
4986
+ },
4987
+ "tags": {
4988
+ "type": "object"
4989
+ },
4990
+ "props": {
4991
+ "type": "object",
4992
+ "properties": {
4993
+ "anchor": {
4994
+ "type": "string",
4995
+ "enum": [
4996
+ "topLeft",
4997
+ "top",
4998
+ "topRight",
4999
+ "left",
5000
+ "center",
5001
+ "right",
5002
+ "bottomLeft",
5003
+ "bottom",
5004
+ "bottomRight"
5005
+ ],
5006
+ "default": "center"
5007
+ },
5008
+ "visible": {
5009
+ "type": "boolean",
5010
+ "default": true
5011
+ },
5012
+ "size": {
5013
+ "type": "number",
5014
+ "default": 42
5015
+ },
5016
+ "seconds": {
5017
+ "type": "number",
5018
+ "default": 2
5019
+ }
5020
+ },
5021
+ "additionalProperties": false
5022
+ },
5023
+ "script": {
5024
+ "type": "object",
5025
+ "properties": {
5026
+ "name": {
5027
+ "type": "string"
5028
+ },
5029
+ "props": {
5030
+ "type": "object"
5031
+ }
5032
+ },
5033
+ "required": ["name"]
5034
+ },
5035
+ "network": {
5036
+ "type": "object"
5037
+ },
5038
+ "children": {
5039
+ "type": "array",
5040
+ "items": {
5041
+ "$ref": "#/$defs/node"
5042
+ }
5043
+ }
5044
+ },
5045
+ "required": ["name", "type"]
5046
+ },
5047
+ "UiBar": {
5048
+ "type": "object",
5049
+ "properties": {
5050
+ "name": {
5051
+ "type": "string"
5052
+ },
5053
+ "uid": {
5054
+ "type": "string"
5055
+ },
5056
+ "type": {
5057
+ "const": "UiBar"
5058
+ },
5059
+ "groups": {
5060
+ "type": "array",
5061
+ "items": {
5062
+ "type": "string"
5063
+ }
5064
+ },
5065
+ "tags": {
5066
+ "type": "object"
5067
+ },
5068
+ "props": {
5069
+ "type": "object",
5070
+ "properties": {
5071
+ "anchor": {
5072
+ "type": "string",
5073
+ "enum": [
5074
+ "topLeft",
5075
+ "top",
5076
+ "topRight",
5077
+ "left",
5078
+ "center",
5079
+ "right",
5080
+ "bottomLeft",
5081
+ "bottom",
5082
+ "bottomRight"
5083
+ ],
5084
+ "default": "topLeft"
5085
+ },
5086
+ "visible": {
5087
+ "type": "boolean",
5088
+ "default": true
5089
+ },
5090
+ "value": {
5091
+ "type": "number",
5092
+ "default": 100
5093
+ },
5094
+ "max": {
5095
+ "type": "number",
5096
+ "default": 100
5097
+ },
5098
+ "width": {
5099
+ "type": "number",
5100
+ "default": 180
5101
+ },
5102
+ "height": {
5103
+ "type": "number",
5104
+ "default": 14
5105
+ },
5106
+ "color": {
5107
+ "type": "string",
5108
+ "default": "#4ade80"
5109
+ },
5110
+ "lowColor": {
5111
+ "type": "string",
5112
+ "default": "#ef4444"
5113
+ },
5114
+ "lowThreshold": {
5115
+ "type": "number",
5116
+ "default": 0.3
5117
+ },
5118
+ "background": {
5119
+ "type": "string",
5120
+ "default": "rgba(0,0,0,0.5)"
5121
+ },
5122
+ "label": {
5123
+ "type": "string",
5124
+ "default": ""
5125
+ }
5126
+ },
5127
+ "additionalProperties": false
5128
+ },
5129
+ "script": {
5130
+ "type": "object",
5131
+ "properties": {
5132
+ "name": {
5133
+ "type": "string"
5134
+ },
5135
+ "props": {
5136
+ "type": "object"
5137
+ }
5138
+ },
5139
+ "required": ["name"]
5140
+ },
5141
+ "network": {
5142
+ "type": "object"
5143
+ },
5144
+ "children": {
5145
+ "type": "array",
5146
+ "items": {
5147
+ "$ref": "#/$defs/node"
5148
+ }
5149
+ }
5150
+ },
5151
+ "required": ["name", "type"]
5152
+ },
5153
+ "UiText": {
5154
+ "type": "object",
5155
+ "properties": {
5156
+ "name": {
5157
+ "type": "string"
5158
+ },
5159
+ "uid": {
5160
+ "type": "string"
5161
+ },
5162
+ "type": {
5163
+ "const": "UiText"
5164
+ },
5165
+ "groups": {
5166
+ "type": "array",
5167
+ "items": {
5168
+ "type": "string"
5169
+ }
5170
+ },
5171
+ "tags": {
5172
+ "type": "object"
5173
+ },
5174
+ "props": {
5175
+ "type": "object",
5176
+ "properties": {
5177
+ "anchor": {
5178
+ "type": "string",
5179
+ "enum": [
5180
+ "topLeft",
5181
+ "top",
5182
+ "topRight",
5183
+ "left",
5184
+ "center",
5185
+ "right",
5186
+ "bottomLeft",
5187
+ "bottom",
5188
+ "bottomRight"
5189
+ ],
5190
+ "default": "topLeft"
5191
+ },
5192
+ "visible": {
5193
+ "type": "boolean",
5194
+ "default": true
5195
+ },
5196
+ "text": {
5197
+ "type": "string",
5198
+ "default": ""
5199
+ },
5200
+ "size": {
5201
+ "type": "number",
5202
+ "default": 16
5203
+ },
5204
+ "color": {
5205
+ "type": "string",
5206
+ "default": "#ffffff"
5207
+ },
5208
+ "shadow": {
5209
+ "type": "boolean",
5210
+ "default": true
5211
+ }
5212
+ },
5213
+ "additionalProperties": false
5214
+ },
5215
+ "script": {
5216
+ "type": "object",
5217
+ "properties": {
5218
+ "name": {
5219
+ "type": "string"
5220
+ },
5221
+ "props": {
5222
+ "type": "object"
5223
+ }
5224
+ },
5225
+ "required": ["name"]
5226
+ },
5227
+ "network": {
5228
+ "type": "object"
5229
+ },
5230
+ "children": {
5231
+ "type": "array",
5232
+ "items": {
5233
+ "$ref": "#/$defs/node"
5234
+ }
5235
+ }
5236
+ },
5237
+ "required": ["name", "type"]
5238
+ },
4393
5239
  "VoxelGrid3D": {
4394
5240
  "type": "object",
4395
5241
  "x-signals": ["blocksChanged"],
@@ -4433,6 +5279,10 @@
4433
5279
  "maxItems": 3,
4434
5280
  "default": [0, 0, 0]
4435
5281
  },
5282
+ "static": {
5283
+ "type": "boolean",
5284
+ "default": false
5285
+ },
4436
5286
  "scale": {
4437
5287
  "type": "array",
4438
5288
  "items": {
@@ -4524,6 +5374,10 @@
4524
5374
  "maxItems": 3,
4525
5375
  "default": [0, 0, 0]
4526
5376
  },
5377
+ "static": {
5378
+ "type": "boolean",
5379
+ "default": false
5380
+ },
4527
5381
  "scale": {
4528
5382
  "type": "array",
4529
5383
  "items": {