incanto 0.12.0 → 0.14.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 (83) hide show
  1. package/README.md +22 -0
  2. package/bin/incanto-new.mjs +87 -0
  3. package/dist/2d.d.ts +2 -2
  4. package/dist/2d.js +3 -3
  5. package/dist/3d.d.ts +219 -82
  6. package/dist/3d.js +74 -4
  7. package/dist/{behavior-Bod1AyJS.d.ts → behavior-CPibUfnH.d.ts} +4 -2
  8. package/dist/{create-game-C_xf4gm9.js → create-game-Ct86zczq.js} +5 -5
  9. package/dist/{create-game-B2fewJUy.js → create-game-OSntcIiM.js} +5 -5
  10. package/dist/debug.d.ts +1 -1
  11. package/dist/{duplicate-BEvGBtb_.js → duplicate-BINwP0WG.js} +1 -1
  12. package/dist/{gameplay-Dn3yidJw.js → gameplay-sSqrUcnz.js} +75 -3
  13. package/dist/gameplay.d.ts +37 -2
  14. package/dist/gameplay.js +2 -2
  15. package/dist/index.d.ts +3 -3
  16. package/dist/index.js +4 -4
  17. package/dist/{loader-B4OEXDZ8.js → loader-BZqOKfI2.js} +3 -1
  18. package/dist/{loader-BcUDfNHn.d.ts → loader-DILt9PGC.d.ts} +1 -1
  19. package/dist/net.d.ts +1 -1
  20. package/dist/net.js +3 -3
  21. package/dist/{pathfinding-BSiXjd6W.d.ts → pathfinding-RWYkNKx9.d.ts} +1 -1
  22. package/dist/{physics-2d-B6D864oZ.js → physics-2d-BiIdl51r.js} +2 -2
  23. package/dist/{physics-3d-RLNaxRyw.js → physics-3d-D_kUdOjr.js} +2 -2
  24. package/dist/react.d.ts +1 -1
  25. package/dist/react.js +1 -1
  26. package/dist/{register-Cwc-yCYx.js → register-BFFE1Mh1.js} +2 -2
  27. package/dist/{register-ysLR3WQS.js → register-C9-16x_t.js} +562 -157
  28. package/dist/{register-BD6zgrv_.js → register-Djwckzgx.js} +2 -2
  29. package/dist/{register-DJZXxwAn.js → register-nObreUQR.js} +1 -1
  30. package/dist/test.d.ts +2 -2
  31. package/dist/test.js +10 -10
  32. package/editor/assets/{agent8-D_4QY8Aq.js → agent8-BDC4LhjC.js} +1 -1
  33. package/editor/assets/{index-s0DZuroe.js → index-7qOYg7t8.js} +74 -74
  34. package/editor/index.html +1 -1
  35. package/package.json +4 -2
  36. package/schemas/scene.schema.json +266 -6
  37. package/skills/incanto-3d-character.md +35 -0
  38. package/skills/incanto-building-3d-games.md +48 -0
  39. package/skills/incanto-environment.md +15 -16
  40. package/skills/incanto-gameplay-behaviors.md +23 -1
  41. package/skills/incanto-node-reference.md +54 -3
  42. package/templates-app/beacon-isle-3d/PROJECT/Context.md +44 -0
  43. package/templates-app/beacon-isle-3d/PROJECT/Requirements.md +16 -0
  44. package/templates-app/beacon-isle-3d/PROJECT/Status.md +38 -0
  45. package/templates-app/beacon-isle-3d/PROJECT/Structure.md +24 -0
  46. package/templates-app/beacon-isle-3d/docs/project-3d-rules.md +38 -0
  47. package/templates-app/beacon-isle-3d/generate-world.ts +812 -0
  48. package/templates-app/beacon-isle-3d/index.html +68 -0
  49. package/templates-app/beacon-isle-3d/package.json +26 -0
  50. package/templates-app/beacon-isle-3d/src/behaviors.ts +570 -0
  51. package/templates-app/beacon-isle-3d/src/game.scene.json +2969 -0
  52. package/templates-app/beacon-isle-3d/src/main.ts +33 -0
  53. package/templates-app/beacon-isle-3d/tsconfig.json +13 -0
  54. package/templates-app/beacon-isle-3d/verify.ts +285 -0
  55. package/templates-app/beacon-isle-3d/vite.config.ts +5 -0
  56. package/templates-app/tps-3d/PROJECT/Context.md +49 -0
  57. package/templates-app/tps-3d/PROJECT/Requirements.md +38 -0
  58. package/templates-app/tps-3d/PROJECT/Status.md +41 -0
  59. package/templates-app/tps-3d/PROJECT/Structure.md +44 -0
  60. package/templates-app/tps-3d/docs/project-3d-rules.md +38 -0
  61. package/templates-app/tps-3d/index.html +244 -0
  62. package/templates-app/tps-3d/package.json +25 -0
  63. package/templates-app/tps-3d/src/behaviors.ts +405 -0
  64. package/templates-app/tps-3d/src/game.scene.json +677 -0
  65. package/templates-app/tps-3d/src/main.ts +64 -0
  66. package/templates-app/tps-3d/tsconfig.json +13 -0
  67. package/templates-app/tps-3d/verify.ts +167 -0
  68. package/templates-app/tps-3d/vite.config.ts +5 -0
  69. package/templates-app/village-quest-3d/PROJECT/Context.md +39 -0
  70. package/templates-app/village-quest-3d/PROJECT/Requirements.md +36 -0
  71. package/templates-app/village-quest-3d/PROJECT/Status.md +26 -0
  72. package/templates-app/village-quest-3d/PROJECT/Structure.md +30 -0
  73. package/templates-app/village-quest-3d/docs/project-3d-rules.md +38 -0
  74. package/templates-app/village-quest-3d/index.html +68 -0
  75. package/templates-app/village-quest-3d/package.json +25 -0
  76. package/templates-app/village-quest-3d/src/behaviors.ts +529 -0
  77. package/templates-app/village-quest-3d/src/grove.scene.json +826 -0
  78. package/templates-app/village-quest-3d/src/main.ts +35 -0
  79. package/templates-app/village-quest-3d/src/quest.ts +18 -0
  80. package/templates-app/village-quest-3d/src/village.scene.json +680 -0
  81. package/templates-app/village-quest-3d/tsconfig.json +13 -0
  82. package/templates-app/village-quest-3d/verify.ts +254 -0
  83. package/templates-app/village-quest-3d/vite.config.ts +5 -0
@@ -0,0 +1,2969 @@
1
+ {
2
+ "format": 1,
3
+ "type": "scene",
4
+ "dimension": "3d",
5
+ "name": "BeaconIsle",
6
+ "environment": {
7
+ "sky": {
8
+ "type": "atmosphere",
9
+ "elevationDeg": 17,
10
+ "azimuthDeg": 224,
11
+ "turbidity": 3.2,
12
+ "rayleigh": 2.1
13
+ },
14
+ "fog": {
15
+ "near": 110,
16
+ "far": 560
17
+ },
18
+ "shadows": {
19
+ "mapSize": 2048,
20
+ "radius": 1.2
21
+ },
22
+ "exposure": 1.12,
23
+ "ambient": {
24
+ "color": "#ffe8d4",
25
+ "intensity": 0.66
26
+ },
27
+ "iblIntensity": 0.9,
28
+ "bloom": {
29
+ "threshold": 1.2,
30
+ "strength": 0.55
31
+ },
32
+ "post": {
33
+ "vignette": 0.28,
34
+ "saturation": 1.12,
35
+ "contrast": 1.02
36
+ }
37
+ },
38
+ "physics": {
39
+ "gravity": [0, -9.81, 0]
40
+ },
41
+ "input": {
42
+ "move": {
43
+ "type": "vector2",
44
+ "keys": {
45
+ "up": ["KeyW", "ArrowUp"],
46
+ "down": ["KeyS", "ArrowDown"],
47
+ "left": ["KeyA", "ArrowLeft"],
48
+ "right": ["KeyD", "ArrowRight"]
49
+ },
50
+ "touch": "joystick"
51
+ },
52
+ "jump": {
53
+ "type": "button",
54
+ "keys": ["Space"],
55
+ "touch": "button"
56
+ },
57
+ "sprint": {
58
+ "type": "button",
59
+ "keys": ["ShiftLeft", "ShiftRight"]
60
+ },
61
+ "interact": {
62
+ "type": "button",
63
+ "keys": ["KeyE"],
64
+ "touch": "button"
65
+ },
66
+ "attack": {
67
+ "type": "button",
68
+ "keys": ["Mouse0", "KeyF"],
69
+ "touch": "button"
70
+ }
71
+ },
72
+ "assets": {
73
+ "characters/base": {
74
+ "type": "model",
75
+ "url": "https://agent8-games.verse8.io/assets/3d/characters/realistic style/base-model.glb"
76
+ },
77
+ "anims/idle": {
78
+ "type": "animation",
79
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/idle-00.glb"
80
+ },
81
+ "anims/walk": {
82
+ "type": "animation",
83
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/walk.glb"
84
+ },
85
+ "anims/run": {
86
+ "type": "animation",
87
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/run-medium.glb"
88
+ },
89
+ "anims/runFast": {
90
+ "type": "animation",
91
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/run-fast.glb"
92
+ },
93
+ "anims/jump": {
94
+ "type": "animation",
95
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/jump.glb"
96
+ },
97
+ "anims/attack": {
98
+ "type": "animation",
99
+ "url": "https://agent8-games.verse8.io/assets/3d/animations/mixamorig/melee-attack.glb"
100
+ }
101
+ },
102
+ "root": {
103
+ "name": "Game",
104
+ "type": "Node",
105
+ "script": {
106
+ "name": "IsleDirector"
107
+ },
108
+ "children": [
109
+ {
110
+ "name": "Terrain",
111
+ "type": "Node3D",
112
+ "children": [
113
+ {
114
+ "name": "Ground",
115
+ "type": "StaticBody3D",
116
+ "props": {
117
+ "collider": {
118
+ "shape": "heightfield"
119
+ },
120
+ "static": true
121
+ },
122
+ "children": [
123
+ {
124
+ "name": "Surface",
125
+ "type": "Terrain3D",
126
+ "props": {
127
+ "size": [240, 240],
128
+ "maxHeight": 2.66,
129
+ "seed": 7411,
130
+ "theme": "island"
131
+ }
132
+ }
133
+ ]
134
+ },
135
+ {
136
+ "name": "Sea",
137
+ "type": "Water3D",
138
+ "props": {
139
+ "size": [1920, 1920],
140
+ "position": [0, 9.19, 0],
141
+ "opacity": 1
142
+ }
143
+ },
144
+ {
145
+ "name": "Tree1",
146
+ "type": "Tree3D",
147
+ "props": {
148
+ "type": "conifer",
149
+ "seed": 501533504,
150
+ "height": 4.84,
151
+ "position": [67.68, 12.03, 10.83],
152
+ "canopyColor": "#356a4c",
153
+ "trunkColor": "#71503a",
154
+ "static": true
155
+ }
156
+ },
157
+ {
158
+ "name": "Tree2",
159
+ "type": "Tree3D",
160
+ "props": {
161
+ "type": "conifer",
162
+ "seed": 997642543,
163
+ "height": 5.12,
164
+ "position": [88.36, 12.53, -27.51],
165
+ "canopyColor": "#3a6b4a",
166
+ "trunkColor": "#6a4c34",
167
+ "static": true
168
+ }
169
+ },
170
+ {
171
+ "name": "Tree3",
172
+ "type": "Tree3D",
173
+ "props": {
174
+ "type": "conifer",
175
+ "seed": 662504208,
176
+ "height": 5.63,
177
+ "position": [-56.2, 16.94, -35.76],
178
+ "canopyColor": "#3a6b4a",
179
+ "trunkColor": "#6a4c34",
180
+ "static": true
181
+ }
182
+ },
183
+ {
184
+ "name": "Tree4",
185
+ "type": "Tree3D",
186
+ "props": {
187
+ "type": "conifer",
188
+ "seed": 375332673,
189
+ "height": 5.17,
190
+ "position": [-57.91, 14.59, -73.12],
191
+ "canopyColor": "#2f5d44",
192
+ "trunkColor": "#6e4a32",
193
+ "static": true
194
+ }
195
+ },
196
+ {
197
+ "name": "Tree5",
198
+ "type": "Tree3D",
199
+ "props": {
200
+ "type": "conifer",
201
+ "seed": 704176987,
202
+ "height": 5.74,
203
+ "position": [-57.05, 18.26, -15.54],
204
+ "canopyColor": "#2c5740",
205
+ "trunkColor": "#5f4530",
206
+ "static": true
207
+ }
208
+ },
209
+ {
210
+ "name": "Tree6",
211
+ "type": "Tree3D",
212
+ "props": {
213
+ "type": "conifer",
214
+ "seed": 283343096,
215
+ "height": 5.22,
216
+ "position": [34.26, 16.26, 83.81],
217
+ "canopyColor": "#2f5d44",
218
+ "trunkColor": "#6e4a32",
219
+ "static": true
220
+ }
221
+ },
222
+ {
223
+ "name": "Tree7",
224
+ "type": "Tree3D",
225
+ "props": {
226
+ "type": "conifer",
227
+ "seed": 895789517,
228
+ "height": 5.53,
229
+ "position": [-38.82, 17.53, -6.04],
230
+ "canopyColor": "#356a4c",
231
+ "trunkColor": "#71503a",
232
+ "static": true
233
+ }
234
+ },
235
+ {
236
+ "name": "Clouds",
237
+ "type": "Node3D",
238
+ "children": [
239
+ {
240
+ "name": "Cloud1",
241
+ "type": "Node3D",
242
+ "props": {
243
+ "position": [35.79, 42.95, -79.59]
244
+ },
245
+ "children": [
246
+ {
247
+ "name": "Puff1",
248
+ "type": "MeshInstance3D",
249
+ "props": {
250
+ "mesh": "sphere",
251
+ "size": [1, 1, 1],
252
+ "position": [-2.65, -0.18, -0.04],
253
+ "scale": [2.13, 0.74, 1.34],
254
+ "material": {
255
+ "color": "#ffffff",
256
+ "roughness": 1,
257
+ "emissive": "#ffffff",
258
+ "emissiveIntensity": 0.25
259
+ }
260
+ }
261
+ },
262
+ {
263
+ "name": "Puff2",
264
+ "type": "MeshInstance3D",
265
+ "props": {
266
+ "mesh": "sphere",
267
+ "size": [1, 1, 1],
268
+ "position": [-1.07, 0.25, -0.13],
269
+ "scale": [2.58, 0.91, 1.66],
270
+ "material": {
271
+ "color": "#ffffff",
272
+ "roughness": 1,
273
+ "emissive": "#ffffff",
274
+ "emissiveIntensity": 0.25
275
+ }
276
+ }
277
+ },
278
+ {
279
+ "name": "Puff3",
280
+ "type": "MeshInstance3D",
281
+ "props": {
282
+ "mesh": "sphere",
283
+ "size": [1, 1, 1],
284
+ "position": [0, 0.18, -0.11],
285
+ "scale": [1.83, 0.85, 1.55],
286
+ "material": {
287
+ "color": "#ffffff",
288
+ "roughness": 1,
289
+ "emissive": "#ffffff",
290
+ "emissiveIntensity": 0.25
291
+ }
292
+ }
293
+ },
294
+ {
295
+ "name": "Puff4",
296
+ "type": "MeshInstance3D",
297
+ "props": {
298
+ "mesh": "sphere",
299
+ "size": [1, 1, 1],
300
+ "position": [1.58, 0.03, 0.59],
301
+ "scale": [1.59, 0.57, 1.04],
302
+ "material": {
303
+ "color": "#ffffff",
304
+ "roughness": 1,
305
+ "emissive": "#ffffff",
306
+ "emissiveIntensity": 0.25
307
+ }
308
+ }
309
+ },
310
+ {
311
+ "name": "Puff5",
312
+ "type": "MeshInstance3D",
313
+ "props": {
314
+ "mesh": "sphere",
315
+ "size": [1, 1, 1],
316
+ "position": [2.75, 0.2, -0.2],
317
+ "scale": [2.16, 0.85, 1.55],
318
+ "material": {
319
+ "color": "#ffffff",
320
+ "roughness": 1,
321
+ "emissive": "#ffffff",
322
+ "emissiveIntensity": 0.25
323
+ }
324
+ }
325
+ }
326
+ ]
327
+ },
328
+ {
329
+ "name": "Cloud2",
330
+ "type": "Node3D",
331
+ "props": {
332
+ "position": [90.37, 42.03, -102.39]
333
+ },
334
+ "children": [
335
+ {
336
+ "name": "Puff1",
337
+ "type": "MeshInstance3D",
338
+ "props": {
339
+ "mesh": "sphere",
340
+ "size": [1, 1, 1],
341
+ "position": [-1.61, 0.19, -0.13],
342
+ "scale": [1.5, 0.7, 1.27],
343
+ "material": {
344
+ "color": "#ffffff",
345
+ "roughness": 1,
346
+ "emissive": "#ffffff",
347
+ "emissiveIntensity": 0.25
348
+ }
349
+ }
350
+ },
351
+ {
352
+ "name": "Puff2",
353
+ "type": "MeshInstance3D",
354
+ "props": {
355
+ "mesh": "sphere",
356
+ "size": [1, 1, 1],
357
+ "position": [-0.74, 0.19, -0.16],
358
+ "scale": [2.7, 0.93, 1.69],
359
+ "material": {
360
+ "color": "#ffffff",
361
+ "roughness": 1,
362
+ "emissive": "#ffffff",
363
+ "emissiveIntensity": 0.25
364
+ }
365
+ }
366
+ },
367
+ {
368
+ "name": "Puff3",
369
+ "type": "MeshInstance3D",
370
+ "props": {
371
+ "mesh": "sphere",
372
+ "size": [1, 1, 1],
373
+ "position": [0.73, -0.16, 0.04],
374
+ "scale": [1.52, 0.65, 1.19],
375
+ "material": {
376
+ "color": "#ffffff",
377
+ "roughness": 1,
378
+ "emissive": "#ffffff",
379
+ "emissiveIntensity": 0.25
380
+ }
381
+ }
382
+ },
383
+ {
384
+ "name": "Puff4",
385
+ "type": "MeshInstance3D",
386
+ "props": {
387
+ "mesh": "sphere",
388
+ "size": [1, 1, 1],
389
+ "position": [1.99, 0.1, -0.38],
390
+ "scale": [2.35, 0.9, 1.63],
391
+ "material": {
392
+ "color": "#ffffff",
393
+ "roughness": 1,
394
+ "emissive": "#ffffff",
395
+ "emissiveIntensity": 0.25
396
+ }
397
+ }
398
+ }
399
+ ]
400
+ },
401
+ {
402
+ "name": "Cloud3",
403
+ "type": "Node3D",
404
+ "props": {
405
+ "position": [-80.57, 38.87, 103.61]
406
+ },
407
+ "children": [
408
+ {
409
+ "name": "Puff1",
410
+ "type": "MeshInstance3D",
411
+ "props": {
412
+ "mesh": "sphere",
413
+ "size": [1, 1, 1],
414
+ "position": [-1.6, 0.24, 0.42],
415
+ "scale": [2.77, 1.04, 1.89],
416
+ "material": {
417
+ "color": "#ffffff",
418
+ "roughness": 1,
419
+ "emissive": "#ffffff",
420
+ "emissiveIntensity": 0.25
421
+ }
422
+ }
423
+ },
424
+ {
425
+ "name": "Puff2",
426
+ "type": "MeshInstance3D",
427
+ "props": {
428
+ "mesh": "sphere",
429
+ "size": [1, 1, 1],
430
+ "position": [-0.57, 0.06, 0.54],
431
+ "scale": [1.55, 0.56, 1.01],
432
+ "material": {
433
+ "color": "#ffffff",
434
+ "roughness": 1,
435
+ "emissive": "#ffffff",
436
+ "emissiveIntensity": 0.25
437
+ }
438
+ }
439
+ },
440
+ {
441
+ "name": "Puff3",
442
+ "type": "MeshInstance3D",
443
+ "props": {
444
+ "mesh": "sphere",
445
+ "size": [1, 1, 1],
446
+ "position": [0.53, 0.26, 0.22],
447
+ "scale": [3.18, 1.14, 2.08],
448
+ "material": {
449
+ "color": "#ffffff",
450
+ "roughness": 1,
451
+ "emissive": "#ffffff",
452
+ "emissiveIntensity": 0.25
453
+ }
454
+ }
455
+ },
456
+ {
457
+ "name": "Puff4",
458
+ "type": "MeshInstance3D",
459
+ "props": {
460
+ "mesh": "sphere",
461
+ "size": [1, 1, 1],
462
+ "position": [2.15, 0.27, 0.21],
463
+ "scale": [2.8, 1.16, 2.1],
464
+ "material": {
465
+ "color": "#ffffff",
466
+ "roughness": 1,
467
+ "emissive": "#ffffff",
468
+ "emissiveIntensity": 0.25
469
+ }
470
+ }
471
+ }
472
+ ]
473
+ },
474
+ {
475
+ "name": "Cloud4",
476
+ "type": "Node3D",
477
+ "props": {
478
+ "position": [-62.49, 40.25, -67.89]
479
+ },
480
+ "children": [
481
+ {
482
+ "name": "Puff1",
483
+ "type": "MeshInstance3D",
484
+ "props": {
485
+ "mesh": "sphere",
486
+ "size": [1, 1, 1],
487
+ "position": [-2.71, 0.3, 0.14],
488
+ "scale": [2.22, 1.1, 2],
489
+ "material": {
490
+ "color": "#ffffff",
491
+ "roughness": 1,
492
+ "emissive": "#ffffff",
493
+ "emissiveIntensity": 0.25
494
+ }
495
+ }
496
+ },
497
+ {
498
+ "name": "Puff2",
499
+ "type": "MeshInstance3D",
500
+ "props": {
501
+ "mesh": "sphere",
502
+ "size": [1, 1, 1],
503
+ "position": [-1.1, -0.04, 0.36],
504
+ "scale": [2.29, 0.84, 1.53],
505
+ "material": {
506
+ "color": "#ffffff",
507
+ "roughness": 1,
508
+ "emissive": "#ffffff",
509
+ "emissiveIntensity": 0.25
510
+ }
511
+ }
512
+ },
513
+ {
514
+ "name": "Puff3",
515
+ "type": "MeshInstance3D",
516
+ "props": {
517
+ "mesh": "sphere",
518
+ "size": [1, 1, 1],
519
+ "position": [0, 0.18, 0.33],
520
+ "scale": [1.96, 0.68, 1.23],
521
+ "material": {
522
+ "color": "#ffffff",
523
+ "roughness": 1,
524
+ "emissive": "#ffffff",
525
+ "emissiveIntensity": 0.25
526
+ }
527
+ }
528
+ },
529
+ {
530
+ "name": "Puff4",
531
+ "type": "MeshInstance3D",
532
+ "props": {
533
+ "mesh": "sphere",
534
+ "size": [1, 1, 1],
535
+ "position": [1.03, 0, 0.11],
536
+ "scale": [3.25, 1.12, 2.04],
537
+ "material": {
538
+ "color": "#ffffff",
539
+ "roughness": 1,
540
+ "emissive": "#ffffff",
541
+ "emissiveIntensity": 0.25
542
+ }
543
+ }
544
+ },
545
+ {
546
+ "name": "Puff5",
547
+ "type": "MeshInstance3D",
548
+ "props": {
549
+ "mesh": "sphere",
550
+ "size": [1, 1, 1],
551
+ "position": [3.16, -0.17, 0.56],
552
+ "scale": [1.44, 0.72, 1.31],
553
+ "material": {
554
+ "color": "#ffffff",
555
+ "roughness": 1,
556
+ "emissive": "#ffffff",
557
+ "emissiveIntensity": 0.25
558
+ }
559
+ }
560
+ }
561
+ ]
562
+ },
563
+ {
564
+ "name": "Cloud5",
565
+ "type": "Node3D",
566
+ "props": {
567
+ "position": [53.64, 42.45, 30.66]
568
+ },
569
+ "children": [
570
+ {
571
+ "name": "Puff1",
572
+ "type": "MeshInstance3D",
573
+ "props": {
574
+ "mesh": "sphere",
575
+ "size": [1, 1, 1],
576
+ "position": [-2.68, 0.2, -0.26],
577
+ "scale": [2.53, 0.99, 1.8],
578
+ "material": {
579
+ "color": "#ffffff",
580
+ "roughness": 1,
581
+ "emissive": "#ffffff",
582
+ "emissiveIntensity": 0.25
583
+ }
584
+ }
585
+ },
586
+ {
587
+ "name": "Puff2",
588
+ "type": "MeshInstance3D",
589
+ "props": {
590
+ "mesh": "sphere",
591
+ "size": [1, 1, 1],
592
+ "position": [-1.45, -0.29, 0.32],
593
+ "scale": [3, 1.07, 1.95],
594
+ "material": {
595
+ "color": "#ffffff",
596
+ "roughness": 1,
597
+ "emissive": "#ffffff",
598
+ "emissiveIntensity": 0.25
599
+ }
600
+ }
601
+ },
602
+ {
603
+ "name": "Puff3",
604
+ "type": "MeshInstance3D",
605
+ "props": {
606
+ "mesh": "sphere",
607
+ "size": [1, 1, 1],
608
+ "position": [0, 0.06, 0.04],
609
+ "scale": [1.57, 0.66, 1.2],
610
+ "material": {
611
+ "color": "#ffffff",
612
+ "roughness": 1,
613
+ "emissive": "#ffffff",
614
+ "emissiveIntensity": 0.25
615
+ }
616
+ }
617
+ },
618
+ {
619
+ "name": "Puff4",
620
+ "type": "MeshInstance3D",
621
+ "props": {
622
+ "mesh": "sphere",
623
+ "size": [1, 1, 1],
624
+ "position": [1.39, 0.03, 0.3],
625
+ "scale": [2.02, 0.88, 1.6],
626
+ "material": {
627
+ "color": "#ffffff",
628
+ "roughness": 1,
629
+ "emissive": "#ffffff",
630
+ "emissiveIntensity": 0.25
631
+ }
632
+ }
633
+ },
634
+ {
635
+ "name": "Puff5",
636
+ "type": "MeshInstance3D",
637
+ "props": {
638
+ "mesh": "sphere",
639
+ "size": [1, 1, 1],
640
+ "position": [3.03, 0.05, 0.44],
641
+ "scale": [2.46, 1.03, 1.87],
642
+ "material": {
643
+ "color": "#ffffff",
644
+ "roughness": 1,
645
+ "emissive": "#ffffff",
646
+ "emissiveIntensity": 0.25
647
+ }
648
+ }
649
+ }
650
+ ]
651
+ },
652
+ {
653
+ "name": "Cloud6",
654
+ "type": "Node3D",
655
+ "props": {
656
+ "position": [-28.53, 42.22, 34.77]
657
+ },
658
+ "children": [
659
+ {
660
+ "name": "Puff1",
661
+ "type": "MeshInstance3D",
662
+ "props": {
663
+ "mesh": "sphere",
664
+ "size": [1, 1, 1],
665
+ "position": [-2.01, 0.05, 0.57],
666
+ "scale": [1.43, 0.63, 1.15],
667
+ "material": {
668
+ "color": "#ffffff",
669
+ "roughness": 1,
670
+ "emissive": "#ffffff",
671
+ "emissiveIntensity": 0.25
672
+ }
673
+ }
674
+ },
675
+ {
676
+ "name": "Puff2",
677
+ "type": "MeshInstance3D",
678
+ "props": {
679
+ "mesh": "sphere",
680
+ "size": [1, 1, 1],
681
+ "position": [-1.17, 0.15, -0.5],
682
+ "scale": [1.17, 0.56, 1.01],
683
+ "material": {
684
+ "color": "#ffffff",
685
+ "roughness": 1,
686
+ "emissive": "#ffffff",
687
+ "emissiveIntensity": 0.25
688
+ }
689
+ }
690
+ },
691
+ {
692
+ "name": "Puff3",
693
+ "type": "MeshInstance3D",
694
+ "props": {
695
+ "mesh": "sphere",
696
+ "size": [1, 1, 1],
697
+ "position": [0, 0.26, -0.55],
698
+ "scale": [2.33, 1.16, 2.1],
699
+ "material": {
700
+ "color": "#ffffff",
701
+ "roughness": 1,
702
+ "emissive": "#ffffff",
703
+ "emissiveIntensity": 0.25
704
+ }
705
+ }
706
+ },
707
+ {
708
+ "name": "Puff4",
709
+ "type": "MeshInstance3D",
710
+ "props": {
711
+ "mesh": "sphere",
712
+ "size": [1, 1, 1],
713
+ "position": [1.5, 0.07, -0.02],
714
+ "scale": [1.72, 0.81, 1.48],
715
+ "material": {
716
+ "color": "#ffffff",
717
+ "roughness": 1,
718
+ "emissive": "#ffffff",
719
+ "emissiveIntensity": 0.25
720
+ }
721
+ }
722
+ },
723
+ {
724
+ "name": "Puff5",
725
+ "type": "MeshInstance3D",
726
+ "props": {
727
+ "mesh": "sphere",
728
+ "size": [1, 1, 1],
729
+ "position": [2.23, -0.09, 0.09],
730
+ "scale": [2.15, 0.91, 1.65],
731
+ "material": {
732
+ "color": "#ffffff",
733
+ "roughness": 1,
734
+ "emissive": "#ffffff",
735
+ "emissiveIntensity": 0.25
736
+ }
737
+ }
738
+ }
739
+ ]
740
+ }
741
+ ]
742
+ },
743
+ {
744
+ "name": "Sun",
745
+ "type": "DirectionalLight3D",
746
+ "props": {
747
+ "position": [192, 360, 144],
748
+ "intensity": 1.7,
749
+ "castShadow": true,
750
+ "shadowArea": 288,
751
+ "color": "#fff4d6",
752
+ "static": true
753
+ }
754
+ },
755
+ {
756
+ "name": "FillLight",
757
+ "type": "DirectionalLight3D",
758
+ "props": {
759
+ "position": [-192, 192, -144],
760
+ "intensity": 0.4,
761
+ "color": "#b9d4ff",
762
+ "static": true
763
+ }
764
+ }
765
+ ]
766
+ },
767
+ {
768
+ "name": "Dressing",
769
+ "type": "Node3D",
770
+ "props": {
771
+ "static": true
772
+ },
773
+ "children": [
774
+ {
775
+ "name": "Grove1",
776
+ "type": "Tree3D",
777
+ "props": {
778
+ "type": "conifer",
779
+ "seed": 996154656,
780
+ "height": 6.696541063416875,
781
+ "position": [-78.36, 21.57, -3.17],
782
+ "count": 7,
783
+ "area": [14, 14],
784
+ "canopyColor": "#86a346",
785
+ "trunkColor": "#a39c8e",
786
+ "leafFadeStart": 160,
787
+ "leafFadeEnd": 420
788
+ }
789
+ },
790
+ {
791
+ "name": "Grove2",
792
+ "type": "Tree3D",
793
+ "props": {
794
+ "type": "conifer",
795
+ "seed": 357505381,
796
+ "height": 7.641666956162468,
797
+ "position": [-50.07, 18.23, 19.13],
798
+ "count": 7,
799
+ "area": [14, 14],
800
+ "canopyColor": "#4a7c3f",
801
+ "trunkColor": "#a39c8e",
802
+ "leafFadeStart": 160,
803
+ "leafFadeEnd": 420
804
+ }
805
+ },
806
+ {
807
+ "name": "Grove3",
808
+ "type": "Tree3D",
809
+ "props": {
810
+ "type": "broadleaf",
811
+ "seed": 961184095,
812
+ "height": 5.57485830610964,
813
+ "position": [-72.85, 21.61, 49.29],
814
+ "count": 7,
815
+ "area": [14, 14],
816
+ "canopyColor": "#b8862f",
817
+ "trunkColor": "#7a5a3a",
818
+ "leafFadeStart": 160,
819
+ "leafFadeEnd": 420
820
+ }
821
+ },
822
+ {
823
+ "name": "Grove4",
824
+ "type": "Tree3D",
825
+ "props": {
826
+ "type": "broadleaf",
827
+ "seed": 46928878,
828
+ "height": 6.582199774818076,
829
+ "position": [33.24, 12.98, -1.04],
830
+ "count": 7,
831
+ "area": [14, 14],
832
+ "canopyColor": "#b8862f",
833
+ "trunkColor": "#806044",
834
+ "leafFadeStart": 160,
835
+ "leafFadeEnd": 420
836
+ }
837
+ },
838
+ {
839
+ "name": "Grove5",
840
+ "type": "Tree3D",
841
+ "props": {
842
+ "type": "conifer",
843
+ "seed": 633592312,
844
+ "height": 6.437556267585037,
845
+ "position": [-45.22, 11.58, -93.14],
846
+ "count": 7,
847
+ "area": [14, 14],
848
+ "canopyColor": "#56883c",
849
+ "trunkColor": "#a39c8e",
850
+ "leafFadeStart": 160,
851
+ "leafFadeEnd": 420
852
+ }
853
+ },
854
+ {
855
+ "name": "Grove6",
856
+ "type": "Tree3D",
857
+ "props": {
858
+ "type": "conifer",
859
+ "seed": 365775923,
860
+ "height": 6.214120347568327,
861
+ "position": [-76.3, 21.75, 35.88],
862
+ "count": 7,
863
+ "area": [14, 14],
864
+ "canopyColor": "#2c5740",
865
+ "trunkColor": "#7a5a3a",
866
+ "leafFadeStart": 160,
867
+ "leafFadeEnd": 420
868
+ }
869
+ },
870
+ {
871
+ "name": "Grove7",
872
+ "type": "Tree3D",
873
+ "props": {
874
+ "type": "broadleaf",
875
+ "seed": 558958830,
876
+ "height": 5.550441294105361,
877
+ "position": [35.37, 13.02, 9.35],
878
+ "count": 7,
879
+ "area": [14, 14],
880
+ "canopyColor": "#4a7c3f",
881
+ "trunkColor": "#a39c8e",
882
+ "leafFadeStart": 160,
883
+ "leafFadeEnd": 420
884
+ }
885
+ },
886
+ {
887
+ "name": "Grove8",
888
+ "type": "Tree3D",
889
+ "props": {
890
+ "type": "conifer",
891
+ "seed": 707640274,
892
+ "height": 5.489254561133975,
893
+ "position": [31.77, 13.09, -15.27],
894
+ "count": 7,
895
+ "area": [14, 14],
896
+ "canopyColor": "#4a7c3f",
897
+ "trunkColor": "#5f4530",
898
+ "leafFadeStart": 160,
899
+ "leafFadeEnd": 420
900
+ }
901
+ },
902
+ {
903
+ "name": "Grove9",
904
+ "type": "Tree3D",
905
+ "props": {
906
+ "type": "conifer",
907
+ "seed": 698619637,
908
+ "height": 5.264061087338268,
909
+ "position": [-39.53, 14.56, -49.17],
910
+ "count": 7,
911
+ "area": [14, 14],
912
+ "canopyColor": "#56883c",
913
+ "trunkColor": "#a39c8e",
914
+ "leafFadeStart": 160,
915
+ "leafFadeEnd": 420
916
+ }
917
+ },
918
+ {
919
+ "name": "Grove10",
920
+ "type": "Tree3D",
921
+ "props": {
922
+ "type": "conifer",
923
+ "seed": 461486133,
924
+ "height": 6.32620329510565,
925
+ "position": [10.63, 16.79, 67.1],
926
+ "count": 7,
927
+ "area": [14, 14],
928
+ "canopyColor": "#4a7c3f",
929
+ "trunkColor": "#7a5a3a",
930
+ "leafFadeStart": 160,
931
+ "leafFadeEnd": 420
932
+ }
933
+ },
934
+ {
935
+ "name": "Grove11",
936
+ "type": "Tree3D",
937
+ "props": {
938
+ "type": "broadleaf",
939
+ "seed": 259170899,
940
+ "height": 7.0321777085848565,
941
+ "position": [-26.11, 12.96, -63.63],
942
+ "count": 7,
943
+ "area": [14, 14],
944
+ "canopyColor": "#4a7c3f",
945
+ "trunkColor": "#5f4530",
946
+ "leafFadeStart": 160,
947
+ "leafFadeEnd": 420
948
+ }
949
+ },
950
+ {
951
+ "name": "Grove12",
952
+ "type": "Tree3D",
953
+ "props": {
954
+ "type": "broadleaf",
955
+ "seed": 550505838,
956
+ "height": 7.897651722165209,
957
+ "position": [86.2, 13.82, 57.1],
958
+ "count": 7,
959
+ "area": [14, 14],
960
+ "canopyColor": "#4a7c3f",
961
+ "trunkColor": "#7a5a3a",
962
+ "leafFadeStart": 160,
963
+ "leafFadeEnd": 420
964
+ }
965
+ },
966
+ {
967
+ "name": "Grove13",
968
+ "type": "Tree3D",
969
+ "props": {
970
+ "type": "conifer",
971
+ "seed": 270863015,
972
+ "height": 6.492842540958161,
973
+ "position": [-39.31, 19.04, 56.73],
974
+ "count": 7,
975
+ "area": [14, 14],
976
+ "canopyColor": "#b8862f",
977
+ "trunkColor": "#5f4530",
978
+ "leafFadeStart": 160,
979
+ "leafFadeEnd": 420
980
+ }
981
+ },
982
+ {
983
+ "name": "Grove14",
984
+ "type": "Tree3D",
985
+ "props": {
986
+ "type": "conifer",
987
+ "seed": 407977278,
988
+ "height": 6.845912222481778,
989
+ "position": [-34.38, 18.76, 60.02],
990
+ "count": 7,
991
+ "area": [14, 14],
992
+ "canopyColor": "#56883c",
993
+ "trunkColor": "#a39c8e",
994
+ "leafFadeStart": 160,
995
+ "leafFadeEnd": 420
996
+ }
997
+ },
998
+ {
999
+ "name": "Grove15",
1000
+ "type": "Tree3D",
1001
+ "props": {
1002
+ "type": "broadleaf",
1003
+ "seed": 426783519,
1004
+ "height": 5.219586386396453,
1005
+ "position": [-33.14, 16.71, -17.79],
1006
+ "count": 7,
1007
+ "area": [14, 14],
1008
+ "canopyColor": "#86a346",
1009
+ "trunkColor": "#a39c8e",
1010
+ "leafFadeStart": 160,
1011
+ "leafFadeEnd": 420
1012
+ }
1013
+ },
1014
+ {
1015
+ "name": "Grove16",
1016
+ "type": "Tree3D",
1017
+ "props": {
1018
+ "type": "conifer",
1019
+ "seed": 63961802,
1020
+ "height": 5.766203415525659,
1021
+ "position": [-52.46, 20.86, 89.12],
1022
+ "count": 7,
1023
+ "area": [14, 14],
1024
+ "canopyColor": "#86a346",
1025
+ "trunkColor": "#806044",
1026
+ "leafFadeStart": 160,
1027
+ "leafFadeEnd": 420
1028
+ }
1029
+ },
1030
+ {
1031
+ "name": "Grove17",
1032
+ "type": "Tree3D",
1033
+ "props": {
1034
+ "type": "broadleaf",
1035
+ "seed": 973459530,
1036
+ "height": 7.882665852290268,
1037
+ "position": [-88, 25.67, 90.11],
1038
+ "count": 7,
1039
+ "area": [14, 14],
1040
+ "canopyColor": "#56883c",
1041
+ "trunkColor": "#806044",
1042
+ "leafFadeStart": 160,
1043
+ "leafFadeEnd": 420
1044
+ }
1045
+ },
1046
+ {
1047
+ "name": "Grove18",
1048
+ "type": "Tree3D",
1049
+ "props": {
1050
+ "type": "conifer",
1051
+ "seed": 498700192,
1052
+ "height": 5.520459832046288,
1053
+ "position": [-0.51, 14.63, -16.44],
1054
+ "count": 7,
1055
+ "area": [14, 14],
1056
+ "canopyColor": "#4a7c3f",
1057
+ "trunkColor": "#7a5a3a",
1058
+ "leafFadeStart": 160,
1059
+ "leafFadeEnd": 420
1060
+ }
1061
+ },
1062
+ {
1063
+ "name": "Grove19",
1064
+ "type": "Tree3D",
1065
+ "props": {
1066
+ "type": "conifer",
1067
+ "seed": 625088266,
1068
+ "height": 5.85006726320136,
1069
+ "position": [1.69, 16.73, 42.83],
1070
+ "count": 7,
1071
+ "area": [14, 14],
1072
+ "canopyColor": "#86a346",
1073
+ "trunkColor": "#a39c8e",
1074
+ "leafFadeStart": 160,
1075
+ "leafFadeEnd": 420
1076
+ }
1077
+ },
1078
+ {
1079
+ "name": "Grove20",
1080
+ "type": "Tree3D",
1081
+ "props": {
1082
+ "type": "broadleaf",
1083
+ "seed": 900773713,
1084
+ "height": 6.8039215334700245,
1085
+ "position": [-38.35, 19.04, 73.36],
1086
+ "count": 7,
1087
+ "area": [14, 14],
1088
+ "canopyColor": "#4a7c3f",
1089
+ "trunkColor": "#7a5a3a",
1090
+ "leafFadeStart": 160,
1091
+ "leafFadeEnd": 420
1092
+ }
1093
+ },
1094
+ {
1095
+ "name": "Grove21",
1096
+ "type": "Tree3D",
1097
+ "props": {
1098
+ "type": "broadleaf",
1099
+ "seed": 426312146,
1100
+ "height": 6.382715192014052,
1101
+ "position": [35.24, 14.67, 42.11],
1102
+ "count": 7,
1103
+ "area": [14, 14],
1104
+ "canopyColor": "#56883c",
1105
+ "trunkColor": "#7a5a3a",
1106
+ "leafFadeStart": 160,
1107
+ "leafFadeEnd": 420
1108
+ }
1109
+ },
1110
+ {
1111
+ "name": "Grove22",
1112
+ "type": "Tree3D",
1113
+ "props": {
1114
+ "type": "broadleaf",
1115
+ "seed": 798929443,
1116
+ "height": 5.802118046163143,
1117
+ "position": [-15.92, 17.27, 35.97],
1118
+ "count": 7,
1119
+ "area": [14, 14],
1120
+ "canopyColor": "#2c5740",
1121
+ "trunkColor": "#7a5a3a",
1122
+ "leafFadeStart": 160,
1123
+ "leafFadeEnd": 420
1124
+ }
1125
+ },
1126
+ {
1127
+ "name": "Grass1",
1128
+ "type": "Foliage3D",
1129
+ "props": {
1130
+ "kind": "grass",
1131
+ "style": "mesh",
1132
+ "position": [83.83, 13.64, 53.8],
1133
+ "area": [34, 34],
1134
+ "density": 10
1135
+ }
1136
+ },
1137
+ {
1138
+ "name": "Grass2",
1139
+ "type": "Foliage3D",
1140
+ "props": {
1141
+ "kind": "grass",
1142
+ "style": "mesh",
1143
+ "position": [48.69, 13.7, 42.89],
1144
+ "area": [34, 34],
1145
+ "density": 10
1146
+ }
1147
+ },
1148
+ {
1149
+ "name": "Grass3",
1150
+ "type": "Foliage3D",
1151
+ "props": {
1152
+ "kind": "grass",
1153
+ "style": "mesh",
1154
+ "position": [-37.46, 18.04, 29.71],
1155
+ "area": [34, 34],
1156
+ "density": 10
1157
+ }
1158
+ },
1159
+ {
1160
+ "name": "Grass4",
1161
+ "type": "Foliage3D",
1162
+ "props": {
1163
+ "kind": "grass",
1164
+ "style": "mesh",
1165
+ "position": [57.21, 16.3, 86.45],
1166
+ "area": [34, 34],
1167
+ "density": 10
1168
+ }
1169
+ },
1170
+ {
1171
+ "name": "Grass5",
1172
+ "type": "Foliage3D",
1173
+ "props": {
1174
+ "kind": "grass",
1175
+ "style": "mesh",
1176
+ "position": [-67.62, 16.83, -54.03],
1177
+ "area": [34, 34],
1178
+ "density": 10
1179
+ }
1180
+ },
1181
+ {
1182
+ "name": "Grass6",
1183
+ "type": "Foliage3D",
1184
+ "props": {
1185
+ "kind": "grass",
1186
+ "style": "mesh",
1187
+ "position": [0.75, 16.94, 89.68],
1188
+ "area": [34, 34],
1189
+ "density": 10
1190
+ }
1191
+ },
1192
+ {
1193
+ "name": "Grass7",
1194
+ "type": "Foliage3D",
1195
+ "props": {
1196
+ "kind": "grass",
1197
+ "style": "mesh",
1198
+ "position": [85.64, 12.48, -28.21],
1199
+ "area": [34, 34],
1200
+ "density": 10
1201
+ }
1202
+ },
1203
+ {
1204
+ "name": "Grass8",
1205
+ "type": "Foliage3D",
1206
+ "props": {
1207
+ "kind": "grass",
1208
+ "style": "mesh",
1209
+ "position": [58.99, 12.3, -5.25],
1210
+ "area": [34, 34],
1211
+ "density": 10
1212
+ }
1213
+ },
1214
+ {
1215
+ "name": "Grass9",
1216
+ "type": "Foliage3D",
1217
+ "props": {
1218
+ "kind": "grass",
1219
+ "style": "mesh",
1220
+ "position": [75.79, 11.98, -31.54],
1221
+ "area": [34, 34],
1222
+ "density": 10
1223
+ }
1224
+ },
1225
+ {
1226
+ "name": "Grass10",
1227
+ "type": "Foliage3D",
1228
+ "props": {
1229
+ "kind": "grass",
1230
+ "style": "mesh",
1231
+ "position": [28.8, 16.05, 70.6],
1232
+ "area": [34, 34],
1233
+ "density": 10
1234
+ }
1235
+ },
1236
+ {
1237
+ "name": "Grass11",
1238
+ "type": "Foliage3D",
1239
+ "props": {
1240
+ "kind": "grass",
1241
+ "style": "mesh",
1242
+ "position": [-74.91, 19.52, -21.04],
1243
+ "area": [34, 34],
1244
+ "density": 10
1245
+ }
1246
+ },
1247
+ {
1248
+ "name": "Grass12",
1249
+ "type": "Foliage3D",
1250
+ "props": {
1251
+ "kind": "grass",
1252
+ "style": "mesh",
1253
+ "position": [5.38, 16.51, 37.28],
1254
+ "area": [34, 34],
1255
+ "density": 10
1256
+ }
1257
+ },
1258
+ {
1259
+ "name": "Grass13",
1260
+ "type": "Foliage3D",
1261
+ "props": {
1262
+ "kind": "grass",
1263
+ "style": "mesh",
1264
+ "position": [-9.71, 15.43, -10.63],
1265
+ "area": [34, 34],
1266
+ "density": 10
1267
+ }
1268
+ },
1269
+ {
1270
+ "name": "Grass14",
1271
+ "type": "Foliage3D",
1272
+ "props": {
1273
+ "kind": "grass",
1274
+ "style": "mesh",
1275
+ "position": [-61.97, 20.04, 41.88],
1276
+ "area": [34, 34],
1277
+ "density": 10
1278
+ }
1279
+ },
1280
+ {
1281
+ "name": "Flowers1",
1282
+ "type": "Flowers3D",
1283
+ "props": {
1284
+ "position": [33.23, 14.62, 36.95],
1285
+ "area": [12, 12],
1286
+ "seed": 357653252
1287
+ }
1288
+ },
1289
+ {
1290
+ "name": "Flowers2",
1291
+ "type": "Flowers3D",
1292
+ "props": {
1293
+ "position": [-82.3, 19.31, -38.23],
1294
+ "area": [12, 12],
1295
+ "seed": 398696966
1296
+ }
1297
+ },
1298
+ {
1299
+ "name": "Flowers3",
1300
+ "type": "Flowers3D",
1301
+ "props": {
1302
+ "position": [-33.36, 18.6, 50.95],
1303
+ "area": [12, 12],
1304
+ "seed": 400708434
1305
+ }
1306
+ },
1307
+ {
1308
+ "name": "Flowers4",
1309
+ "type": "Flowers3D",
1310
+ "props": {
1311
+ "position": [-9.78, 17.14, 45.89],
1312
+ "area": [12, 12],
1313
+ "seed": 575315232
1314
+ }
1315
+ },
1316
+ {
1317
+ "name": "Flowers5",
1318
+ "type": "Flowers3D",
1319
+ "props": {
1320
+ "position": [55.02, 13.26, 39.6],
1321
+ "area": [12, 12],
1322
+ "seed": 73428741
1323
+ }
1324
+ },
1325
+ {
1326
+ "name": "Flowers6",
1327
+ "type": "Flowers3D",
1328
+ "props": {
1329
+ "position": [-49.05, 16.91, -30.14],
1330
+ "area": [12, 12],
1331
+ "seed": 258165764
1332
+ }
1333
+ },
1334
+ {
1335
+ "name": "Flowers7",
1336
+ "type": "Flowers3D",
1337
+ "props": {
1338
+ "position": [17.86, 16.44, 76.99],
1339
+ "area": [12, 12],
1340
+ "seed": 22178236
1341
+ }
1342
+ },
1343
+ {
1344
+ "name": "Flowers8",
1345
+ "type": "Flowers3D",
1346
+ "props": {
1347
+ "position": [-5.95, 13.7, -35.97],
1348
+ "area": [12, 12],
1349
+ "seed": 359604670
1350
+ }
1351
+ },
1352
+ {
1353
+ "name": "Flowers9",
1354
+ "type": "Flowers3D",
1355
+ "props": {
1356
+ "position": [-51.11, 18.29, -4.34],
1357
+ "area": [12, 12],
1358
+ "seed": 723951523
1359
+ }
1360
+ },
1361
+ {
1362
+ "name": "ShoreRocks",
1363
+ "type": "InstancedMesh3D",
1364
+ "props": {
1365
+ "mesh": "gem",
1366
+ "size": [0.6, 0.45, 0.6],
1367
+ "material": {
1368
+ "color": "#7e8590",
1369
+ "roughness": 0.95,
1370
+ "flatShading": true
1371
+ },
1372
+ "transforms": [
1373
+ [65.87, 9.27, -76.93, 166, 0.53],
1374
+ [101.47, 9.37, -83.3, 302, 1.6],
1375
+ [76.91, 9.7, -72.39, 85, 0.6],
1376
+ [44.4, 9.72, -68.56, 9, 0.65],
1377
+ [-12.82, 9.3, -101.57, 53, 0.88],
1378
+ [44.62, 9.54, -74.72, 332, 0.9],
1379
+ [58, 9.32, -73.07, 116, 1.26],
1380
+ [-88.35, 9.35, -111.06, 138, 0.81],
1381
+ [21.68, 10.03, -84.99, 78, 0.99],
1382
+ [-10.68, 9.62, -98.65, 293, 0.69],
1383
+ [1.69, 9.46, -100.2, 31, 0.8],
1384
+ [-14.77, 9.68, -98.01, 125, 0.64],
1385
+ [53.06, 9.23, -79.81, 120, 1],
1386
+ [3.15, 9.57, -98.98, 302, 0.71],
1387
+ [46.79, 9.35, -80.32, 332, 0.51],
1388
+ [-27.05, 9.96, -97.3, 219, 1.41],
1389
+ [41.91, 9.83, -68.51, 29, 0.72],
1390
+ [-5.36, 9.48, -100.07, 119, 1.51],
1391
+ [70.09, 9.96, -61.31, 195, 1.28],
1392
+ [29.06, 9.49, -89.12, 291, 1.02],
1393
+ [72.03, 9.72, -68.56, 17, 0.84],
1394
+ [76.59, 9.5, -76.24, 2, 1.46],
1395
+ [77.61, 10.11, -63.76, 102, 0.97],
1396
+ [88.88, 9.97, -71.71, 144, 1.27],
1397
+ [22.81, 10.1, -82.71, 44, 0.69],
1398
+ [-53.97, 9.68, -106.43, 172, 1.14],
1399
+ [31.22, 9.91, -78.35, 234, 0.82],
1400
+ [77.29, 9.35, -79.67, 37, 1.15],
1401
+ [15.4, 9.5, -96.98, 235, 0.82],
1402
+ [53.77, 10.11, -51.89, 150, 0.74],
1403
+ [82.2, 9.41, -80.35, 241, 0.59],
1404
+ [-83.75, 9.8, -109.91, 197, 0.76],
1405
+ [111.75, 9.57, -18.26, 259, 1.34],
1406
+ [83.12, 9.62, 113.87, 152, 1.19],
1407
+ [-35.65, 9.4, -103.97, 223, 1.44],
1408
+ [11.58, 9.85, -93.83, 88, 0.71],
1409
+ [25.71, 9.2, -96.34, 353, 1.2],
1410
+ [-62.69, 9.26, -108.36, 22, 1.54],
1411
+ [-4.49, 9.44, -100.45, 156, 1.11],
1412
+ [-20.78, 9.26, -102.31, 346, 1.25],
1413
+ [34.63, 9.68, -80.6, 154, 0.99],
1414
+ [-103.24, 9.43, -112.69, 253, 1.1],
1415
+ [3.1, 9.97, -94.51, 198, 1.05],
1416
+ [100.5, 9.94, -72.96, 156, 1.1],
1417
+ [34.58, 10.11, -70.23, 358, 0.84],
1418
+ [112.12, 9.53, -5.23, 346, 1.12],
1419
+ [81.07, 9.39, -80.26, 32, 0.57],
1420
+ [41.15, 10.02, 114.74, 333, 1.12],
1421
+ [7.6, 9.69, -96.94, 14, 0.67],
1422
+ [50.43, 9.69, -62.51, 206, 1.06]
1423
+ ],
1424
+ "castShadow": true,
1425
+ "receiveShadow": true
1426
+ }
1427
+ }
1428
+ ]
1429
+ },
1430
+ {
1431
+ "name": "Lighthouse",
1432
+ "type": "Node3D",
1433
+ "props": {
1434
+ "position": [-21.5, 18, 57.5],
1435
+ "static": true
1436
+ },
1437
+ "children": [
1438
+ {
1439
+ "name": "Tower",
1440
+ "type": "StaticBody3D",
1441
+ "props": {
1442
+ "collider": {
1443
+ "shape": "box",
1444
+ "size": [3, 11, 3]
1445
+ },
1446
+ "position": [0, 5.5, 0]
1447
+ },
1448
+ "children": [
1449
+ {
1450
+ "name": "Shaft",
1451
+ "type": "MeshInstance3D",
1452
+ "props": {
1453
+ "mesh": "cylinder",
1454
+ "size": [3, 11, 3],
1455
+ "material": {
1456
+ "color": "#e8e2d4",
1457
+ "roughness": 0.8
1458
+ },
1459
+ "castShadow": true,
1460
+ "receiveShadow": true
1461
+ }
1462
+ },
1463
+ {
1464
+ "name": "Band",
1465
+ "type": "MeshInstance3D",
1466
+ "props": {
1467
+ "mesh": "cylinder",
1468
+ "size": [3.06, 1.6, 3.06],
1469
+ "position": [0, 1.2, 0],
1470
+ "material": {
1471
+ "color": "#b8452e",
1472
+ "roughness": 0.8
1473
+ }
1474
+ }
1475
+ }
1476
+ ]
1477
+ },
1478
+ {
1479
+ "name": "Lamp",
1480
+ "type": "MeshInstance3D",
1481
+ "props": {
1482
+ "mesh": "gem",
1483
+ "size": [0.9, 1.4, 0.9],
1484
+ "position": [0, 11.6, 0],
1485
+ "material": {
1486
+ "color": "#fff2c4",
1487
+ "emissive": "#ffd982",
1488
+ "emissiveIntensity": 2.2
1489
+ }
1490
+ }
1491
+ },
1492
+ {
1493
+ "name": "LampLight",
1494
+ "type": "OmniLight3D",
1495
+ "props": {
1496
+ "position": [0, 11.6, 0],
1497
+ "color": "#ffd982",
1498
+ "intensity": 2.2,
1499
+ "range": 40
1500
+ }
1501
+ }
1502
+ ]
1503
+ },
1504
+ {
1505
+ "name": "Keeper",
1506
+ "type": "Node3D",
1507
+ "props": {
1508
+ "position": [-16.5, 17.85, 61.5]
1509
+ },
1510
+ "script": {
1511
+ "name": "Interactable",
1512
+ "props": {
1513
+ "action": "interact",
1514
+ "range": 3
1515
+ }
1516
+ },
1517
+ "children": [
1518
+ {
1519
+ "name": "Body",
1520
+ "type": "ModelInstance3D",
1521
+ "props": {
1522
+ "model": "$characters/base",
1523
+ "targetHeight": 1.68,
1524
+ "animation": "$anims/idle",
1525
+ "tint": "#d8b46a",
1526
+ "castShadow": true
1527
+ }
1528
+ },
1529
+ {
1530
+ "name": "Marker",
1531
+ "type": "Billboard3D",
1532
+ "props": {
1533
+ "position": [0, 2.2, 0],
1534
+ "mode": "y"
1535
+ },
1536
+ "children": [
1537
+ {
1538
+ "name": "Bang",
1539
+ "type": "MeshInstance3D",
1540
+ "props": {
1541
+ "mesh": "box",
1542
+ "size": [0.13, 0.46, 0.13],
1543
+ "material": {
1544
+ "color": "#ffd166",
1545
+ "emissive": "#ffd166",
1546
+ "emissiveIntensity": 1.8
1547
+ }
1548
+ }
1549
+ }
1550
+ ]
1551
+ },
1552
+ {
1553
+ "name": "HeadTrack",
1554
+ "type": "BoneLookAt3D",
1555
+ "props": {
1556
+ "target": "../Body",
1557
+ "bone": "Head",
1558
+ "lookAt": "../../Player",
1559
+ "maxAngleDeg": 80
1560
+ }
1561
+ },
1562
+ {
1563
+ "name": "TalkSfx",
1564
+ "type": "AudioPlayer",
1565
+ "props": {
1566
+ "preset": "blip",
1567
+ "volume": 0.5,
1568
+ "pitch": 0.9
1569
+ }
1570
+ },
1571
+ {
1572
+ "name": "AcceptSfx",
1573
+ "type": "AudioPlayer",
1574
+ "props": {
1575
+ "preset": "coin",
1576
+ "volume": 0.5
1577
+ }
1578
+ }
1579
+ ]
1580
+ },
1581
+ {
1582
+ "name": "Ward1",
1583
+ "type": "Node3D",
1584
+ "groups": ["ward"],
1585
+ "props": {
1586
+ "position": [-61.5, 17.27, -37.5]
1587
+ },
1588
+ "children": [
1589
+ {
1590
+ "name": "Plinth",
1591
+ "type": "StaticBody3D",
1592
+ "props": {
1593
+ "collider": {
1594
+ "shape": "box",
1595
+ "size": [1.6, 1.2, 1.6]
1596
+ },
1597
+ "position": [0, 0.6, 0]
1598
+ },
1599
+ "children": [
1600
+ {
1601
+ "name": "Stone",
1602
+ "type": "MeshInstance3D",
1603
+ "props": {
1604
+ "mesh": "cylinder",
1605
+ "size": [1.6, 1.2, 1.6],
1606
+ "material": {
1607
+ "color": "#7d8494",
1608
+ "roughness": 0.9
1609
+ },
1610
+ "castShadow": true,
1611
+ "receiveShadow": true
1612
+ }
1613
+ }
1614
+ ]
1615
+ },
1616
+ {
1617
+ "name": "Crystal",
1618
+ "type": "MeshInstance3D",
1619
+ "props": {
1620
+ "mesh": "gem",
1621
+ "size": [0.55, 1.1, 0.55],
1622
+ "position": [0, 1.75, 0],
1623
+ "material": {
1624
+ "color": "#243044",
1625
+ "emissive": "#66ddff",
1626
+ "emissiveIntensity": 0,
1627
+ "roughness": 0.2
1628
+ },
1629
+ "castShadow": true
1630
+ }
1631
+ },
1632
+ {
1633
+ "name": "Glow",
1634
+ "type": "OmniLight3D",
1635
+ "props": {
1636
+ "position": [0, 2, 0],
1637
+ "color": "#7fe3ff",
1638
+ "intensity": 0,
1639
+ "range": 16
1640
+ }
1641
+ },
1642
+ {
1643
+ "name": "LitFx",
1644
+ "type": "Particles3D",
1645
+ "props": {
1646
+ "position": [0, 2, 0],
1647
+ "preset": "magic",
1648
+ "rate": 0,
1649
+ "burst": 40,
1650
+ "blend": "add",
1651
+ "sizeStart": 80,
1652
+ "sizeEnd": 16,
1653
+ "renderOrder": 100
1654
+ }
1655
+ },
1656
+ {
1657
+ "name": "ChimeSfx",
1658
+ "type": "AudioPlayer",
1659
+ "props": {
1660
+ "preset": "powerup",
1661
+ "volume": 0.7,
1662
+ "spatial": true,
1663
+ "refDistance": 6,
1664
+ "maxDistance": 60
1665
+ }
1666
+ }
1667
+ ]
1668
+ },
1669
+ {
1670
+ "name": "Ward2",
1671
+ "type": "Node3D",
1672
+ "groups": ["ward"],
1673
+ "props": {
1674
+ "position": [58.5, 10.2, -52.5]
1675
+ },
1676
+ "children": [
1677
+ {
1678
+ "name": "Plinth",
1679
+ "type": "StaticBody3D",
1680
+ "props": {
1681
+ "collider": {
1682
+ "shape": "box",
1683
+ "size": [1.6, 1.2, 1.6]
1684
+ },
1685
+ "position": [0, 0.6, 0]
1686
+ },
1687
+ "children": [
1688
+ {
1689
+ "name": "Stone",
1690
+ "type": "MeshInstance3D",
1691
+ "props": {
1692
+ "mesh": "cylinder",
1693
+ "size": [1.6, 1.2, 1.6],
1694
+ "material": {
1695
+ "color": "#7d8494",
1696
+ "roughness": 0.9
1697
+ },
1698
+ "castShadow": true,
1699
+ "receiveShadow": true
1700
+ }
1701
+ }
1702
+ ]
1703
+ },
1704
+ {
1705
+ "name": "Crystal",
1706
+ "type": "MeshInstance3D",
1707
+ "props": {
1708
+ "mesh": "gem",
1709
+ "size": [0.55, 1.1, 0.55],
1710
+ "position": [0, 1.75, 0],
1711
+ "material": {
1712
+ "color": "#243044",
1713
+ "emissive": "#66ddff",
1714
+ "emissiveIntensity": 0,
1715
+ "roughness": 0.2
1716
+ },
1717
+ "castShadow": true
1718
+ }
1719
+ },
1720
+ {
1721
+ "name": "Glow",
1722
+ "type": "OmniLight3D",
1723
+ "props": {
1724
+ "position": [0, 2, 0],
1725
+ "color": "#7fe3ff",
1726
+ "intensity": 0,
1727
+ "range": 16
1728
+ }
1729
+ },
1730
+ {
1731
+ "name": "LitFx",
1732
+ "type": "Particles3D",
1733
+ "props": {
1734
+ "position": [0, 2, 0],
1735
+ "preset": "magic",
1736
+ "rate": 0,
1737
+ "burst": 40,
1738
+ "blend": "add",
1739
+ "sizeStart": 80,
1740
+ "sizeEnd": 16,
1741
+ "renderOrder": 100
1742
+ }
1743
+ },
1744
+ {
1745
+ "name": "ChimeSfx",
1746
+ "type": "AudioPlayer",
1747
+ "props": {
1748
+ "preset": "powerup",
1749
+ "volume": 0.7,
1750
+ "spatial": true,
1751
+ "refDistance": 6,
1752
+ "maxDistance": 60
1753
+ }
1754
+ }
1755
+ ]
1756
+ },
1757
+ {
1758
+ "name": "Ward3",
1759
+ "type": "Node3D",
1760
+ "groups": ["ward"],
1761
+ "props": {
1762
+ "position": [67.5, 13.07, 43.5]
1763
+ },
1764
+ "children": [
1765
+ {
1766
+ "name": "Plinth",
1767
+ "type": "StaticBody3D",
1768
+ "props": {
1769
+ "collider": {
1770
+ "shape": "box",
1771
+ "size": [1.6, 1.2, 1.6]
1772
+ },
1773
+ "position": [0, 0.6, 0]
1774
+ },
1775
+ "children": [
1776
+ {
1777
+ "name": "Stone",
1778
+ "type": "MeshInstance3D",
1779
+ "props": {
1780
+ "mesh": "cylinder",
1781
+ "size": [1.6, 1.2, 1.6],
1782
+ "material": {
1783
+ "color": "#7d8494",
1784
+ "roughness": 0.9
1785
+ },
1786
+ "castShadow": true,
1787
+ "receiveShadow": true
1788
+ }
1789
+ }
1790
+ ]
1791
+ },
1792
+ {
1793
+ "name": "Crystal",
1794
+ "type": "MeshInstance3D",
1795
+ "props": {
1796
+ "mesh": "gem",
1797
+ "size": [0.55, 1.1, 0.55],
1798
+ "position": [0, 1.75, 0],
1799
+ "material": {
1800
+ "color": "#243044",
1801
+ "emissive": "#66ddff",
1802
+ "emissiveIntensity": 0,
1803
+ "roughness": 0.2
1804
+ },
1805
+ "castShadow": true
1806
+ }
1807
+ },
1808
+ {
1809
+ "name": "Glow",
1810
+ "type": "OmniLight3D",
1811
+ "props": {
1812
+ "position": [0, 2, 0],
1813
+ "color": "#7fe3ff",
1814
+ "intensity": 0,
1815
+ "range": 16
1816
+ }
1817
+ },
1818
+ {
1819
+ "name": "LitFx",
1820
+ "type": "Particles3D",
1821
+ "props": {
1822
+ "position": [0, 2, 0],
1823
+ "preset": "magic",
1824
+ "rate": 0,
1825
+ "burst": 40,
1826
+ "blend": "add",
1827
+ "sizeStart": 80,
1828
+ "sizeEnd": 16,
1829
+ "renderOrder": 100
1830
+ }
1831
+ },
1832
+ {
1833
+ "name": "ChimeSfx",
1834
+ "type": "AudioPlayer",
1835
+ "props": {
1836
+ "preset": "powerup",
1837
+ "volume": 0.7,
1838
+ "spatial": true,
1839
+ "refDistance": 6,
1840
+ "maxDistance": 60
1841
+ }
1842
+ }
1843
+ ]
1844
+ },
1845
+ {
1846
+ "name": "Shade1_1",
1847
+ "type": "Node3D",
1848
+ "groups": ["shade", "shade-ward1"],
1849
+ "props": {
1850
+ "position": [-52.5, 17.71, -34.5]
1851
+ },
1852
+ "script": {
1853
+ "name": "PathFollow",
1854
+ "props": {
1855
+ "speed": 2.6,
1856
+ "loop": true
1857
+ }
1858
+ },
1859
+ "children": [
1860
+ {
1861
+ "name": "Body",
1862
+ "type": "MeshInstance3D",
1863
+ "props": {
1864
+ "mesh": "capsule",
1865
+ "size": [0.28, 0.62, 0.28],
1866
+ "material": {
1867
+ "color": "#141428",
1868
+ "emissive": "#3b2d8a",
1869
+ "emissiveIntensity": 0.5,
1870
+ "roughness": 0.6
1871
+ },
1872
+ "castShadow": true
1873
+ }
1874
+ },
1875
+ {
1876
+ "name": "Hood",
1877
+ "type": "MeshInstance3D",
1878
+ "props": {
1879
+ "mesh": "gem",
1880
+ "size": [0.3, 0.46, 0.3],
1881
+ "position": [0, 0.58, 0],
1882
+ "material": {
1883
+ "color": "#0e0e1e",
1884
+ "emissive": "#241a5e",
1885
+ "emissiveIntensity": 0.4
1886
+ }
1887
+ }
1888
+ },
1889
+ {
1890
+ "name": "EyeL",
1891
+ "type": "MeshInstance3D",
1892
+ "props": {
1893
+ "mesh": "sphere",
1894
+ "size": [0.05, 0.05, 0.05],
1895
+ "position": [-0.09, 0.6, 0.24],
1896
+ "material": {
1897
+ "color": "#ff4466",
1898
+ "emissive": "#ff4466",
1899
+ "emissiveIntensity": 2.4
1900
+ }
1901
+ }
1902
+ },
1903
+ {
1904
+ "name": "EyeR",
1905
+ "type": "MeshInstance3D",
1906
+ "props": {
1907
+ "mesh": "sphere",
1908
+ "size": [0.05, 0.05, 0.05],
1909
+ "position": [0.09, 0.6, 0.24],
1910
+ "material": {
1911
+ "color": "#ff4466",
1912
+ "emissive": "#ff4466",
1913
+ "emissiveIntensity": 2.4
1914
+ }
1915
+ }
1916
+ },
1917
+ {
1918
+ "name": "Wisp",
1919
+ "type": "Trail3D",
1920
+ "props": {
1921
+ "width": 0.3,
1922
+ "color": "#5a48c8",
1923
+ "opacity": 0.5,
1924
+ "seconds": 0.5,
1925
+ "additive": true,
1926
+ "position": [0, 0.2, 0]
1927
+ }
1928
+ },
1929
+ {
1930
+ "name": "Fang",
1931
+ "type": "Area3D",
1932
+ "props": {
1933
+ "position": [0, 0, 0.4],
1934
+ "collider": {
1935
+ "shape": "box",
1936
+ "size": [0.7, 1.2, 0.8]
1937
+ }
1938
+ },
1939
+ "script": {
1940
+ "name": "DamageOnContact",
1941
+ "props": {
1942
+ "amount": 20,
1943
+ "targetGroup": "player",
1944
+ "oncePerTarget": false,
1945
+ "repeatEvery": 1.2
1946
+ }
1947
+ }
1948
+ },
1949
+ {
1950
+ "name": "HissSfx",
1951
+ "type": "AudioPlayer",
1952
+ "props": {
1953
+ "preset": "hurt",
1954
+ "volume": 0.3,
1955
+ "pitch": 0.4,
1956
+ "spatial": true,
1957
+ "refDistance": 4,
1958
+ "maxDistance": 30
1959
+ }
1960
+ }
1961
+ ]
1962
+ },
1963
+ {
1964
+ "name": "Shade1_2",
1965
+ "type": "Node3D",
1966
+ "groups": ["shade", "shade-ward1"],
1967
+ "props": {
1968
+ "position": [-67.5, 18.16, -46.5]
1969
+ },
1970
+ "script": {
1971
+ "name": "PathFollow",
1972
+ "props": {
1973
+ "speed": 2.6,
1974
+ "loop": true
1975
+ }
1976
+ },
1977
+ "children": [
1978
+ {
1979
+ "name": "Body",
1980
+ "type": "MeshInstance3D",
1981
+ "props": {
1982
+ "mesh": "capsule",
1983
+ "size": [0.28, 0.62, 0.28],
1984
+ "material": {
1985
+ "color": "#141428",
1986
+ "emissive": "#3b2d8a",
1987
+ "emissiveIntensity": 0.5,
1988
+ "roughness": 0.6
1989
+ },
1990
+ "castShadow": true
1991
+ }
1992
+ },
1993
+ {
1994
+ "name": "Hood",
1995
+ "type": "MeshInstance3D",
1996
+ "props": {
1997
+ "mesh": "gem",
1998
+ "size": [0.3, 0.46, 0.3],
1999
+ "position": [0, 0.58, 0],
2000
+ "material": {
2001
+ "color": "#0e0e1e",
2002
+ "emissive": "#241a5e",
2003
+ "emissiveIntensity": 0.4
2004
+ }
2005
+ }
2006
+ },
2007
+ {
2008
+ "name": "EyeL",
2009
+ "type": "MeshInstance3D",
2010
+ "props": {
2011
+ "mesh": "sphere",
2012
+ "size": [0.05, 0.05, 0.05],
2013
+ "position": [-0.09, 0.6, 0.24],
2014
+ "material": {
2015
+ "color": "#ff4466",
2016
+ "emissive": "#ff4466",
2017
+ "emissiveIntensity": 2.4
2018
+ }
2019
+ }
2020
+ },
2021
+ {
2022
+ "name": "EyeR",
2023
+ "type": "MeshInstance3D",
2024
+ "props": {
2025
+ "mesh": "sphere",
2026
+ "size": [0.05, 0.05, 0.05],
2027
+ "position": [0.09, 0.6, 0.24],
2028
+ "material": {
2029
+ "color": "#ff4466",
2030
+ "emissive": "#ff4466",
2031
+ "emissiveIntensity": 2.4
2032
+ }
2033
+ }
2034
+ },
2035
+ {
2036
+ "name": "Wisp",
2037
+ "type": "Trail3D",
2038
+ "props": {
2039
+ "width": 0.3,
2040
+ "color": "#5a48c8",
2041
+ "opacity": 0.5,
2042
+ "seconds": 0.5,
2043
+ "additive": true,
2044
+ "position": [0, 0.2, 0]
2045
+ }
2046
+ },
2047
+ {
2048
+ "name": "Fang",
2049
+ "type": "Area3D",
2050
+ "props": {
2051
+ "position": [0, 0, 0.4],
2052
+ "collider": {
2053
+ "shape": "box",
2054
+ "size": [0.7, 1.2, 0.8]
2055
+ }
2056
+ },
2057
+ "script": {
2058
+ "name": "DamageOnContact",
2059
+ "props": {
2060
+ "amount": 20,
2061
+ "targetGroup": "player",
2062
+ "oncePerTarget": false,
2063
+ "repeatEvery": 1.2
2064
+ }
2065
+ }
2066
+ },
2067
+ {
2068
+ "name": "HissSfx",
2069
+ "type": "AudioPlayer",
2070
+ "props": {
2071
+ "preset": "hurt",
2072
+ "volume": 0.3,
2073
+ "pitch": 0.4,
2074
+ "spatial": true,
2075
+ "refDistance": 4,
2076
+ "maxDistance": 30
2077
+ }
2078
+ }
2079
+ ]
2080
+ },
2081
+ {
2082
+ "name": "Shade2_1",
2083
+ "type": "Node3D",
2084
+ "groups": ["shade", "shade-ward2"],
2085
+ "props": {
2086
+ "position": [67.5, 11.46, -49.5]
2087
+ },
2088
+ "script": {
2089
+ "name": "PathFollow",
2090
+ "props": {
2091
+ "speed": 2.6,
2092
+ "loop": true
2093
+ }
2094
+ },
2095
+ "children": [
2096
+ {
2097
+ "name": "Body",
2098
+ "type": "MeshInstance3D",
2099
+ "props": {
2100
+ "mesh": "capsule",
2101
+ "size": [0.28, 0.62, 0.28],
2102
+ "material": {
2103
+ "color": "#141428",
2104
+ "emissive": "#3b2d8a",
2105
+ "emissiveIntensity": 0.5,
2106
+ "roughness": 0.6
2107
+ },
2108
+ "castShadow": true
2109
+ }
2110
+ },
2111
+ {
2112
+ "name": "Hood",
2113
+ "type": "MeshInstance3D",
2114
+ "props": {
2115
+ "mesh": "gem",
2116
+ "size": [0.3, 0.46, 0.3],
2117
+ "position": [0, 0.58, 0],
2118
+ "material": {
2119
+ "color": "#0e0e1e",
2120
+ "emissive": "#241a5e",
2121
+ "emissiveIntensity": 0.4
2122
+ }
2123
+ }
2124
+ },
2125
+ {
2126
+ "name": "EyeL",
2127
+ "type": "MeshInstance3D",
2128
+ "props": {
2129
+ "mesh": "sphere",
2130
+ "size": [0.05, 0.05, 0.05],
2131
+ "position": [-0.09, 0.6, 0.24],
2132
+ "material": {
2133
+ "color": "#ff4466",
2134
+ "emissive": "#ff4466",
2135
+ "emissiveIntensity": 2.4
2136
+ }
2137
+ }
2138
+ },
2139
+ {
2140
+ "name": "EyeR",
2141
+ "type": "MeshInstance3D",
2142
+ "props": {
2143
+ "mesh": "sphere",
2144
+ "size": [0.05, 0.05, 0.05],
2145
+ "position": [0.09, 0.6, 0.24],
2146
+ "material": {
2147
+ "color": "#ff4466",
2148
+ "emissive": "#ff4466",
2149
+ "emissiveIntensity": 2.4
2150
+ }
2151
+ }
2152
+ },
2153
+ {
2154
+ "name": "Wisp",
2155
+ "type": "Trail3D",
2156
+ "props": {
2157
+ "width": 0.3,
2158
+ "color": "#5a48c8",
2159
+ "opacity": 0.5,
2160
+ "seconds": 0.5,
2161
+ "additive": true,
2162
+ "position": [0, 0.2, 0]
2163
+ }
2164
+ },
2165
+ {
2166
+ "name": "Fang",
2167
+ "type": "Area3D",
2168
+ "props": {
2169
+ "position": [0, 0, 0.4],
2170
+ "collider": {
2171
+ "shape": "box",
2172
+ "size": [0.7, 1.2, 0.8]
2173
+ }
2174
+ },
2175
+ "script": {
2176
+ "name": "DamageOnContact",
2177
+ "props": {
2178
+ "amount": 20,
2179
+ "targetGroup": "player",
2180
+ "oncePerTarget": false,
2181
+ "repeatEvery": 1.2
2182
+ }
2183
+ }
2184
+ },
2185
+ {
2186
+ "name": "HissSfx",
2187
+ "type": "AudioPlayer",
2188
+ "props": {
2189
+ "preset": "hurt",
2190
+ "volume": 0.3,
2191
+ "pitch": 0.4,
2192
+ "spatial": true,
2193
+ "refDistance": 4,
2194
+ "maxDistance": 30
2195
+ }
2196
+ }
2197
+ ]
2198
+ },
2199
+ {
2200
+ "name": "Shade2_2",
2201
+ "type": "Node3D",
2202
+ "groups": ["shade", "shade-ward2"],
2203
+ "props": {
2204
+ "position": [52.5, 10.73, -61.5]
2205
+ },
2206
+ "script": {
2207
+ "name": "PathFollow",
2208
+ "props": {
2209
+ "speed": 2.6,
2210
+ "loop": true
2211
+ }
2212
+ },
2213
+ "children": [
2214
+ {
2215
+ "name": "Body",
2216
+ "type": "MeshInstance3D",
2217
+ "props": {
2218
+ "mesh": "capsule",
2219
+ "size": [0.28, 0.62, 0.28],
2220
+ "material": {
2221
+ "color": "#141428",
2222
+ "emissive": "#3b2d8a",
2223
+ "emissiveIntensity": 0.5,
2224
+ "roughness": 0.6
2225
+ },
2226
+ "castShadow": true
2227
+ }
2228
+ },
2229
+ {
2230
+ "name": "Hood",
2231
+ "type": "MeshInstance3D",
2232
+ "props": {
2233
+ "mesh": "gem",
2234
+ "size": [0.3, 0.46, 0.3],
2235
+ "position": [0, 0.58, 0],
2236
+ "material": {
2237
+ "color": "#0e0e1e",
2238
+ "emissive": "#241a5e",
2239
+ "emissiveIntensity": 0.4
2240
+ }
2241
+ }
2242
+ },
2243
+ {
2244
+ "name": "EyeL",
2245
+ "type": "MeshInstance3D",
2246
+ "props": {
2247
+ "mesh": "sphere",
2248
+ "size": [0.05, 0.05, 0.05],
2249
+ "position": [-0.09, 0.6, 0.24],
2250
+ "material": {
2251
+ "color": "#ff4466",
2252
+ "emissive": "#ff4466",
2253
+ "emissiveIntensity": 2.4
2254
+ }
2255
+ }
2256
+ },
2257
+ {
2258
+ "name": "EyeR",
2259
+ "type": "MeshInstance3D",
2260
+ "props": {
2261
+ "mesh": "sphere",
2262
+ "size": [0.05, 0.05, 0.05],
2263
+ "position": [0.09, 0.6, 0.24],
2264
+ "material": {
2265
+ "color": "#ff4466",
2266
+ "emissive": "#ff4466",
2267
+ "emissiveIntensity": 2.4
2268
+ }
2269
+ }
2270
+ },
2271
+ {
2272
+ "name": "Wisp",
2273
+ "type": "Trail3D",
2274
+ "props": {
2275
+ "width": 0.3,
2276
+ "color": "#5a48c8",
2277
+ "opacity": 0.5,
2278
+ "seconds": 0.5,
2279
+ "additive": true,
2280
+ "position": [0, 0.2, 0]
2281
+ }
2282
+ },
2283
+ {
2284
+ "name": "Fang",
2285
+ "type": "Area3D",
2286
+ "props": {
2287
+ "position": [0, 0, 0.4],
2288
+ "collider": {
2289
+ "shape": "box",
2290
+ "size": [0.7, 1.2, 0.8]
2291
+ }
2292
+ },
2293
+ "script": {
2294
+ "name": "DamageOnContact",
2295
+ "props": {
2296
+ "amount": 20,
2297
+ "targetGroup": "player",
2298
+ "oncePerTarget": false,
2299
+ "repeatEvery": 1.2
2300
+ }
2301
+ }
2302
+ },
2303
+ {
2304
+ "name": "HissSfx",
2305
+ "type": "AudioPlayer",
2306
+ "props": {
2307
+ "preset": "hurt",
2308
+ "volume": 0.3,
2309
+ "pitch": 0.4,
2310
+ "spatial": true,
2311
+ "refDistance": 4,
2312
+ "maxDistance": 30
2313
+ }
2314
+ }
2315
+ ]
2316
+ },
2317
+ {
2318
+ "name": "Shade3_1",
2319
+ "type": "Node3D",
2320
+ "groups": ["shade", "shade-ward3"],
2321
+ "props": {
2322
+ "position": [76.5, 14.09, 46.5]
2323
+ },
2324
+ "script": {
2325
+ "name": "PathFollow",
2326
+ "props": {
2327
+ "speed": 2.6,
2328
+ "loop": true
2329
+ }
2330
+ },
2331
+ "children": [
2332
+ {
2333
+ "name": "Body",
2334
+ "type": "MeshInstance3D",
2335
+ "props": {
2336
+ "mesh": "capsule",
2337
+ "size": [0.28, 0.62, 0.28],
2338
+ "material": {
2339
+ "color": "#141428",
2340
+ "emissive": "#3b2d8a",
2341
+ "emissiveIntensity": 0.5,
2342
+ "roughness": 0.6
2343
+ },
2344
+ "castShadow": true
2345
+ }
2346
+ },
2347
+ {
2348
+ "name": "Hood",
2349
+ "type": "MeshInstance3D",
2350
+ "props": {
2351
+ "mesh": "gem",
2352
+ "size": [0.3, 0.46, 0.3],
2353
+ "position": [0, 0.58, 0],
2354
+ "material": {
2355
+ "color": "#0e0e1e",
2356
+ "emissive": "#241a5e",
2357
+ "emissiveIntensity": 0.4
2358
+ }
2359
+ }
2360
+ },
2361
+ {
2362
+ "name": "EyeL",
2363
+ "type": "MeshInstance3D",
2364
+ "props": {
2365
+ "mesh": "sphere",
2366
+ "size": [0.05, 0.05, 0.05],
2367
+ "position": [-0.09, 0.6, 0.24],
2368
+ "material": {
2369
+ "color": "#ff4466",
2370
+ "emissive": "#ff4466",
2371
+ "emissiveIntensity": 2.4
2372
+ }
2373
+ }
2374
+ },
2375
+ {
2376
+ "name": "EyeR",
2377
+ "type": "MeshInstance3D",
2378
+ "props": {
2379
+ "mesh": "sphere",
2380
+ "size": [0.05, 0.05, 0.05],
2381
+ "position": [0.09, 0.6, 0.24],
2382
+ "material": {
2383
+ "color": "#ff4466",
2384
+ "emissive": "#ff4466",
2385
+ "emissiveIntensity": 2.4
2386
+ }
2387
+ }
2388
+ },
2389
+ {
2390
+ "name": "Wisp",
2391
+ "type": "Trail3D",
2392
+ "props": {
2393
+ "width": 0.3,
2394
+ "color": "#5a48c8",
2395
+ "opacity": 0.5,
2396
+ "seconds": 0.5,
2397
+ "additive": true,
2398
+ "position": [0, 0.2, 0]
2399
+ }
2400
+ },
2401
+ {
2402
+ "name": "Fang",
2403
+ "type": "Area3D",
2404
+ "props": {
2405
+ "position": [0, 0, 0.4],
2406
+ "collider": {
2407
+ "shape": "box",
2408
+ "size": [0.7, 1.2, 0.8]
2409
+ }
2410
+ },
2411
+ "script": {
2412
+ "name": "DamageOnContact",
2413
+ "props": {
2414
+ "amount": 20,
2415
+ "targetGroup": "player",
2416
+ "oncePerTarget": false,
2417
+ "repeatEvery": 1.2
2418
+ }
2419
+ }
2420
+ },
2421
+ {
2422
+ "name": "HissSfx",
2423
+ "type": "AudioPlayer",
2424
+ "props": {
2425
+ "preset": "hurt",
2426
+ "volume": 0.3,
2427
+ "pitch": 0.4,
2428
+ "spatial": true,
2429
+ "refDistance": 4,
2430
+ "maxDistance": 30
2431
+ }
2432
+ }
2433
+ ]
2434
+ },
2435
+ {
2436
+ "name": "Shade3_2",
2437
+ "type": "Node3D",
2438
+ "groups": ["shade", "shade-ward3"],
2439
+ "props": {
2440
+ "position": [61.5, 13.7, 34.5]
2441
+ },
2442
+ "script": {
2443
+ "name": "PathFollow",
2444
+ "props": {
2445
+ "speed": 2.6,
2446
+ "loop": true
2447
+ }
2448
+ },
2449
+ "children": [
2450
+ {
2451
+ "name": "Body",
2452
+ "type": "MeshInstance3D",
2453
+ "props": {
2454
+ "mesh": "capsule",
2455
+ "size": [0.28, 0.62, 0.28],
2456
+ "material": {
2457
+ "color": "#141428",
2458
+ "emissive": "#3b2d8a",
2459
+ "emissiveIntensity": 0.5,
2460
+ "roughness": 0.6
2461
+ },
2462
+ "castShadow": true
2463
+ }
2464
+ },
2465
+ {
2466
+ "name": "Hood",
2467
+ "type": "MeshInstance3D",
2468
+ "props": {
2469
+ "mesh": "gem",
2470
+ "size": [0.3, 0.46, 0.3],
2471
+ "position": [0, 0.58, 0],
2472
+ "material": {
2473
+ "color": "#0e0e1e",
2474
+ "emissive": "#241a5e",
2475
+ "emissiveIntensity": 0.4
2476
+ }
2477
+ }
2478
+ },
2479
+ {
2480
+ "name": "EyeL",
2481
+ "type": "MeshInstance3D",
2482
+ "props": {
2483
+ "mesh": "sphere",
2484
+ "size": [0.05, 0.05, 0.05],
2485
+ "position": [-0.09, 0.6, 0.24],
2486
+ "material": {
2487
+ "color": "#ff4466",
2488
+ "emissive": "#ff4466",
2489
+ "emissiveIntensity": 2.4
2490
+ }
2491
+ }
2492
+ },
2493
+ {
2494
+ "name": "EyeR",
2495
+ "type": "MeshInstance3D",
2496
+ "props": {
2497
+ "mesh": "sphere",
2498
+ "size": [0.05, 0.05, 0.05],
2499
+ "position": [0.09, 0.6, 0.24],
2500
+ "material": {
2501
+ "color": "#ff4466",
2502
+ "emissive": "#ff4466",
2503
+ "emissiveIntensity": 2.4
2504
+ }
2505
+ }
2506
+ },
2507
+ {
2508
+ "name": "Wisp",
2509
+ "type": "Trail3D",
2510
+ "props": {
2511
+ "width": 0.3,
2512
+ "color": "#5a48c8",
2513
+ "opacity": 0.5,
2514
+ "seconds": 0.5,
2515
+ "additive": true,
2516
+ "position": [0, 0.2, 0]
2517
+ }
2518
+ },
2519
+ {
2520
+ "name": "Fang",
2521
+ "type": "Area3D",
2522
+ "props": {
2523
+ "position": [0, 0, 0.4],
2524
+ "collider": {
2525
+ "shape": "box",
2526
+ "size": [0.7, 1.2, 0.8]
2527
+ }
2528
+ },
2529
+ "script": {
2530
+ "name": "DamageOnContact",
2531
+ "props": {
2532
+ "amount": 20,
2533
+ "targetGroup": "player",
2534
+ "oncePerTarget": false,
2535
+ "repeatEvery": 1.2
2536
+ }
2537
+ }
2538
+ },
2539
+ {
2540
+ "name": "HissSfx",
2541
+ "type": "AudioPlayer",
2542
+ "props": {
2543
+ "preset": "hurt",
2544
+ "volume": 0.3,
2545
+ "pitch": 0.4,
2546
+ "spatial": true,
2547
+ "refDistance": 4,
2548
+ "maxDistance": 30
2549
+ }
2550
+ }
2551
+ ]
2552
+ },
2553
+ {
2554
+ "name": "Player",
2555
+ "type": "RigidBody3D",
2556
+ "groups": ["player"],
2557
+ "script": {
2558
+ "name": "Health",
2559
+ "props": {
2560
+ "max": 100,
2561
+ "invulnerableFor": 0.8
2562
+ }
2563
+ },
2564
+ "props": {
2565
+ "position": [-4.5, 18.73, 70.5],
2566
+ "fixedRotation": true,
2567
+ "friction": 0,
2568
+ "collider": {
2569
+ "shape": "capsule",
2570
+ "radius": 0.34,
2571
+ "height": 1
2572
+ }
2573
+ },
2574
+ "children": [
2575
+ {
2576
+ "name": "Controller",
2577
+ "type": "CharacterController3D",
2578
+ "props": {
2579
+ "view": "free",
2580
+ "camDistance": 5.2,
2581
+ "eyeHeight": 1.1,
2582
+ "maxSpeed": 4.4,
2583
+ "sprintMultiplier": 1.8,
2584
+ "pitchMin": -0.5,
2585
+ "pitchMax": 1.1,
2586
+ "animations": {
2587
+ "idle": "$anims/idle",
2588
+ "walk": "$anims/walk",
2589
+ "run": "$anims/run",
2590
+ "fastRun": "$anims/runFast",
2591
+ "airborne": "$anims/jump"
2592
+ }
2593
+ },
2594
+ "script": {
2595
+ "name": "SwordStrike"
2596
+ }
2597
+ },
2598
+ {
2599
+ "name": "Skin",
2600
+ "type": "ModelInstance3D",
2601
+ "props": {
2602
+ "model": "$characters/base",
2603
+ "targetHeight": 1.7,
2604
+ "animation": "$anims/idle",
2605
+ "castShadow": true,
2606
+ "position": [0, -0.85, 0]
2607
+ }
2608
+ },
2609
+ {
2610
+ "name": "SwordMount",
2611
+ "type": "BoneAttachment3D",
2612
+ "props": {
2613
+ "target": "../Skin",
2614
+ "bone": "RightHand"
2615
+ },
2616
+ "children": [
2617
+ {
2618
+ "name": "Blade",
2619
+ "type": "MeshInstance3D",
2620
+ "props": {
2621
+ "mesh": "box",
2622
+ "size": [0.045, 0.7, 0.045],
2623
+ "position": [0, 0.42, 0],
2624
+ "material": {
2625
+ "color": "#d8dde8",
2626
+ "metalness": 0.9,
2627
+ "roughness": 0.25
2628
+ },
2629
+ "castShadow": true
2630
+ }
2631
+ },
2632
+ {
2633
+ "name": "Guard",
2634
+ "type": "MeshInstance3D",
2635
+ "props": {
2636
+ "mesh": "box",
2637
+ "size": [0.16, 0.04, 0.06],
2638
+ "position": [0, 0.09, 0],
2639
+ "material": {
2640
+ "color": "#8a6d3a",
2641
+ "metalness": 0.7,
2642
+ "roughness": 0.4
2643
+ }
2644
+ }
2645
+ },
2646
+ {
2647
+ "name": "SwordTip",
2648
+ "type": "Node3D",
2649
+ "props": {
2650
+ "position": [0, 0.78, 0]
2651
+ },
2652
+ "children": [
2653
+ {
2654
+ "name": "SwingTrail",
2655
+ "type": "Trail3D",
2656
+ "props": {
2657
+ "width": 0.26,
2658
+ "color": "#ffe9b0",
2659
+ "opacity": 0.9,
2660
+ "seconds": 0.25,
2661
+ "additive": true,
2662
+ "emitting": false,
2663
+ "minDistance": 0.02
2664
+ }
2665
+ }
2666
+ ]
2667
+ }
2668
+ ]
2669
+ },
2670
+ {
2671
+ "name": "DashTrail",
2672
+ "type": "Trail3D",
2673
+ "props": {
2674
+ "width": 0.5,
2675
+ "color": "#ffffff",
2676
+ "opacity": 0.28,
2677
+ "seconds": 0.45,
2678
+ "emitting": false,
2679
+ "position": [0, -0.4, 0]
2680
+ }
2681
+ },
2682
+ {
2683
+ "name": "SwingSfx",
2684
+ "type": "AudioPlayer",
2685
+ "props": {
2686
+ "preset": "shoot",
2687
+ "volume": 0.35,
2688
+ "pitch": 0.55
2689
+ }
2690
+ },
2691
+ {
2692
+ "name": "HitSfx",
2693
+ "type": "AudioPlayer",
2694
+ "props": {
2695
+ "preset": "hit",
2696
+ "volume": 0.6
2697
+ }
2698
+ }
2699
+ ]
2700
+ },
2701
+ {
2702
+ "name": "Sky",
2703
+ "type": "Node",
2704
+ "script": {
2705
+ "name": "DayNight",
2706
+ "props": {
2707
+ "paused": true,
2708
+ "startHour": 17.5,
2709
+ "nightDarkness": 0.42,
2710
+ "maxSunElevationDeg": 48
2711
+ }
2712
+ }
2713
+ },
2714
+ {
2715
+ "name": "Boss",
2716
+ "type": "Node3D",
2717
+ "groups": ["boss"],
2718
+ "props": {
2719
+ "visible": false,
2720
+ "position": [-0.5, 16.87, 47.5]
2721
+ },
2722
+ "script": {
2723
+ "name": "PathFollow",
2724
+ "props": {
2725
+ "speed": 2,
2726
+ "loop": false
2727
+ }
2728
+ },
2729
+ "children": [
2730
+ {
2731
+ "name": "Body",
2732
+ "type": "MeshInstance3D",
2733
+ "props": {
2734
+ "mesh": "capsule",
2735
+ "size": [1.1, 2.6, 1.1],
2736
+ "position": [0, 2.4, 0],
2737
+ "material": {
2738
+ "color": "#171130",
2739
+ "emissive": "#41288f",
2740
+ "emissiveIntensity": 0.7,
2741
+ "roughness": 0.55
2742
+ },
2743
+ "castShadow": true
2744
+ }
2745
+ },
2746
+ {
2747
+ "name": "Crown",
2748
+ "type": "MeshInstance3D",
2749
+ "props": {
2750
+ "mesh": "gem",
2751
+ "size": [1, 1.2, 1],
2752
+ "position": [0, 4.6, 0],
2753
+ "material": {
2754
+ "color": "#0c0920",
2755
+ "emissive": "#6b46c8",
2756
+ "emissiveIntensity": 1.1,
2757
+ "flatShading": true
2758
+ },
2759
+ "castShadow": true
2760
+ }
2761
+ },
2762
+ {
2763
+ "name": "EyeL",
2764
+ "type": "MeshInstance3D",
2765
+ "props": {
2766
+ "mesh": "sphere",
2767
+ "size": [0.16, 0.16, 0.16],
2768
+ "position": [-0.34, 4.4, 0.8],
2769
+ "material": {
2770
+ "color": "#ff2f6b",
2771
+ "emissive": "#ff2f6b",
2772
+ "emissiveIntensity": 4
2773
+ }
2774
+ }
2775
+ },
2776
+ {
2777
+ "name": "EyeR",
2778
+ "type": "MeshInstance3D",
2779
+ "props": {
2780
+ "mesh": "sphere",
2781
+ "size": [0.16, 0.16, 0.16],
2782
+ "position": [0.34, 4.4, 0.8],
2783
+ "material": {
2784
+ "color": "#ff2f6b",
2785
+ "emissive": "#ff2f6b",
2786
+ "emissiveIntensity": 4
2787
+ }
2788
+ }
2789
+ },
2790
+ {
2791
+ "name": "ArmL",
2792
+ "type": "MeshInstance3D",
2793
+ "props": {
2794
+ "mesh": "capsule",
2795
+ "size": [0.4, 2, 0.4],
2796
+ "position": [-1.5, 2.6, 0],
2797
+ "rotation": [0, 0, 18],
2798
+ "material": {
2799
+ "color": "#171130",
2800
+ "emissive": "#41288f",
2801
+ "emissiveIntensity": 0.5
2802
+ },
2803
+ "castShadow": true
2804
+ }
2805
+ },
2806
+ {
2807
+ "name": "ArmR",
2808
+ "type": "MeshInstance3D",
2809
+ "props": {
2810
+ "mesh": "capsule",
2811
+ "size": [0.4, 2, 0.4],
2812
+ "position": [1.5, 2.6, 0],
2813
+ "rotation": [0, 0, -18],
2814
+ "material": {
2815
+ "color": "#171130",
2816
+ "emissive": "#41288f",
2817
+ "emissiveIntensity": 0.5
2818
+ },
2819
+ "castShadow": true
2820
+ }
2821
+ },
2822
+ {
2823
+ "name": "EyeGlow",
2824
+ "type": "OmniLight3D",
2825
+ "props": {
2826
+ "position": [0, 4.2, 0.6],
2827
+ "color": "#b46bff",
2828
+ "intensity": 0,
2829
+ "range": 26
2830
+ }
2831
+ },
2832
+ {
2833
+ "name": "Dread",
2834
+ "type": "Trail3D",
2835
+ "props": {
2836
+ "width": 1.2,
2837
+ "color": "#6b46c8",
2838
+ "opacity": 0.35,
2839
+ "seconds": 0.8,
2840
+ "additive": true,
2841
+ "position": [0, 1.2, 0],
2842
+ "emitting": false
2843
+ }
2844
+ },
2845
+ {
2846
+ "name": "Fang",
2847
+ "type": "Area3D",
2848
+ "props": {
2849
+ "position": [0, 1.2, 0.8],
2850
+ "collider": {
2851
+ "shape": "box",
2852
+ "size": [2.4, 3.2, 2.2]
2853
+ }
2854
+ },
2855
+ "script": {
2856
+ "name": "DamageOnContact",
2857
+ "props": {
2858
+ "amount": 35,
2859
+ "targetGroup": "player",
2860
+ "oncePerTarget": false,
2861
+ "repeatEvery": 1.5
2862
+ }
2863
+ }
2864
+ },
2865
+ {
2866
+ "name": "RoarSfx",
2867
+ "type": "AudioPlayer",
2868
+ "props": {
2869
+ "preset": "explosion",
2870
+ "volume": 0.7,
2871
+ "pitch": 0.35,
2872
+ "spatial": true,
2873
+ "refDistance": 10,
2874
+ "maxDistance": 90
2875
+ }
2876
+ }
2877
+ ]
2878
+ },
2879
+ {
2880
+ "name": "Camera",
2881
+ "type": "Camera3D",
2882
+ "props": {
2883
+ "current": true,
2884
+ "far": 900,
2885
+ "position": [-16.5, 23.85266860961914, 75.5]
2886
+ }
2887
+ },
2888
+ {
2889
+ "name": "WinSfx",
2890
+ "type": "AudioPlayer",
2891
+ "props": {
2892
+ "preset": "win",
2893
+ "volume": 0.7
2894
+ }
2895
+ },
2896
+ {
2897
+ "name": "HUD",
2898
+ "type": "HudLayer",
2899
+ "children": [
2900
+ {
2901
+ "name": "Quest",
2902
+ "type": "UiText",
2903
+ "uid": "n_bi_quest",
2904
+ "props": {
2905
+ "text": "Find the lighthouse keeper [E]",
2906
+ "size": 16,
2907
+ "anchor": "topLeft",
2908
+ "shadow": true
2909
+ }
2910
+ },
2911
+ {
2912
+ "name": "HP",
2913
+ "type": "UiBar",
2914
+ "uid": "n_bi_hp",
2915
+ "props": {
2916
+ "anchor": "topRight",
2917
+ "value": 100,
2918
+ "max": 100,
2919
+ "width": 170
2920
+ }
2921
+ },
2922
+ {
2923
+ "name": "Banner",
2924
+ "type": "UiBanner",
2925
+ "uid": "n_bi_banner",
2926
+ "props": {
2927
+ "anchor": "center"
2928
+ }
2929
+ },
2930
+ {
2931
+ "name": "Dialogue",
2932
+ "type": "UiDialogue",
2933
+ "uid": "n_bi_dialogue",
2934
+ "props": {
2935
+ "anchor": "bottom",
2936
+ "charsPerSecond": 45
2937
+ }
2938
+ },
2939
+ {
2940
+ "name": "Hint",
2941
+ "type": "UiText",
2942
+ "uid": "n_bi_hint",
2943
+ "props": {
2944
+ "text": "WASD move · Shift sprint · E interact · click/F strike",
2945
+ "size": 12,
2946
+ "color": "#dddddd",
2947
+ "anchor": "bottomRight",
2948
+ "shadow": true
2949
+ }
2950
+ }
2951
+ ]
2952
+ }
2953
+ ]
2954
+ },
2955
+ "connections": [
2956
+ {
2957
+ "signal": "interacted",
2958
+ "from": "Keeper",
2959
+ "to": "/root",
2960
+ "handler": "onTalk"
2961
+ },
2962
+ {
2963
+ "signal": "died",
2964
+ "from": "Player",
2965
+ "to": "/root",
2966
+ "handler": "onPlayerDown"
2967
+ }
2968
+ ]
2969
+ }