builtin-components-v1.json
tests/fixtures/builtin-components-v1.json
1{
2 "format": 1,
3 "components": [
4 {
5 "authority": "place",
6 "name": "AnimationState",
7 "persistence": "session",
8 "predicted": false,
9 "schema": {
10 "fields": {
11 "clip": {
12 "maxLength": 256,
13 "minLength": 1,
14 "type": "string"
15 },
16 "loop": {
17 "type": "boolean"
18 },
19 "speed": {
20 "max": 8,
21 "min": -8,
22 "type": "number"
23 },
24 "time": {
25 "max": 1000000000,
26 "min": 0,
27 "type": "number"
28 }
29 },
30 "type": "object"
31 },
32 "version": 1,
33 "visibility": "public"
34 },
35 {
36 "authority": "place",
37 "name": "AudioEmitter",
38 "persistence": "session",
39 "predicted": false,
40 "schema": {
41 "fields": {
42 "asset": {
43 "maxLength": 256,
44 "minLength": 1,
45 "type": "string"
46 },
47 "gain": {
48 "max": 4,
49 "min": 0,
50 "type": "number"
51 },
52 "loop": {
53 "type": "boolean"
54 },
55 "playing": {
56 "type": "boolean"
57 },
58 "range": {
59 "max": 10000,
60 "min": 0.001,
61 "type": "number"
62 },
63 "spatial": {
64 "type": "boolean"
65 }
66 },
67 "type": "object"
68 },
69 "version": 1,
70 "visibility": "public"
71 },
72 {
73 "authority": "trusted",
74 "name": "AuthorityDomain",
75 "persistence": "session",
76 "predicted": false,
77 "schema": {
78 "fields": {
79 "domain": {
80 "maxLength": 256,
81 "minLength": 1,
82 "type": "string"
83 },
84 "epoch": {
85 "type": "uint64"
86 },
87 "owner": {
88 "maxLength": 256,
89 "type": "string"
90 },
91 "profile": {
92 "type": "enum",
93 "values": [
94 "browser-owned",
95 "trusted-host"
96 ]
97 }
98 },
99 "type": "object"
100 },
101 "version": 1,
102 "visibility": "public"
103 },
104 {
105 "authority": "trusted",
106 "name": "BehaviorState",
107 "persistence": "session",
108 "predicted": false,
109 "schema": {
110 "fields": {
111 "enabled": {
112 "type": "boolean"
113 },
114 "module": {
115 "maxLength": 256,
116 "minLength": 1,
117 "type": "string"
118 },
119 "stateComponent": {
120 "maxLength": 256,
121 "minLength": 1,
122 "type": "string"
123 }
124 },
125 "type": "object"
126 },
127 "version": 1,
128 "visibility": "server"
129 },
130 {
131 "authority": "player",
132 "name": "CharacterMotor",
133 "persistence": "session",
134 "predicted": true,
135 "schema": {
136 "fields": {
137 "crouched": {
138 "type": "boolean"
139 },
140 "grounded": {
141 "type": "boolean"
142 },
143 "platform": {
144 "maxLength": 256,
145 "type": "string"
146 },
147 "velocity": {
148 "items": [
149 {
150 "max": 1000,
151 "min": -1000,
152 "type": "number"
153 },
154 {
155 "max": 1000,
156 "min": -1000,
157 "type": "number"
158 },
159 {
160 "max": 1000,
161 "min": -1000,
162 "type": "number"
163 }
164 ],
165 "type": "tuple"
166 }
167 },
168 "type": "object"
169 },
170 "version": 1,
171 "visibility": "public"
172 },
173 {
174 "authority": "place",
175 "name": "Collider",
176 "persistence": "authored",
177 "predicted": false,
178 "schema": {
179 "fields": {
180 "asset": {
181 "maxLength": 256,
182 "minLength": 1,
183 "type": "string"
184 },
185 "enabled": {
186 "type": "boolean"
187 },
188 "friction": {
189 "max": 4,
190 "min": 0,
191 "type": "number"
192 },
193 "groups": {
194 "integer": true,
195 "max": 4294967295,
196 "min": 0,
197 "type": "number"
198 },
199 "restitution": {
200 "max": 1,
201 "min": 0,
202 "type": "number"
203 },
204 "sensor": {
205 "type": "boolean"
206 }
207 },
208 "type": "object"
209 },
210 "version": 1,
211 "visibility": "public"
212 },
213 {
214 "authority": "player",
215 "name": "InputOwner",
216 "persistence": "session",
217 "predicted": true,
218 "schema": {
219 "fields": {
220 "player": {
221 "maxLength": 256,
222 "minLength": 1,
223 "type": "string"
224 }
225 },
226 "type": "object"
227 },
228 "version": 1,
229 "visibility": "owner"
230 },
231 {
232 "authority": "place",
233 "name": "Interaction",
234 "persistence": "authored",
235 "predicted": false,
236 "schema": {
237 "fields": {
238 "action": {
239 "maxLength": 256,
240 "minLength": 1,
241 "type": "string"
242 },
243 "enabled": {
244 "type": "boolean"
245 },
246 "label": {
247 "maxLength": 256,
248 "minLength": 1,
249 "type": "string"
250 },
251 "radius": {
252 "max": 100,
253 "min": 0.001,
254 "type": "number"
255 }
256 },
257 "type": "object"
258 },
259 "version": 1,
260 "visibility": "public"
261 },
262 {
263 "authority": "place",
264 "name": "Light",
265 "persistence": "authored",
266 "predicted": false,
267 "schema": {
268 "fields": {
269 "color": {
270 "items": [
271 {
272 "max": 1,
273 "min": 0,
274 "type": "number"
275 },
276 {
277 "max": 1,
278 "min": 0,
279 "type": "number"
280 },
281 {
282 "max": 1,
283 "min": 0,
284 "type": "number"
285 }
286 ],
287 "type": "tuple"
288 },
289 "innerAngle": {
290 "max": 3.141592653589793,
291 "min": 0,
292 "type": "number"
293 },
294 "intensity": {
295 "max": 100000,
296 "min": 0,
297 "type": "number"
298 },
299 "kind": {
300 "type": "enum",
301 "values": [
302 "point",
303 "spot",
304 "directional"
305 ]
306 },
307 "outerAngle": {
308 "max": 3.141592653589793,
309 "min": 0,
310 "type": "number"
311 },
312 "range": {
313 "max": 100000,
314 "min": 0,
315 "type": "number"
316 },
317 "shadows": {
318 "type": "boolean"
319 }
320 },
321 "type": "object"
322 },
323 "version": 1,
324 "visibility": "public"
325 },
326 {
327 "authority": "place",
328 "name": "MaterialRef",
329 "persistence": "authored",
330 "predicted": false,
331 "schema": {
332 "fields": {
333 "slots": {
334 "items": {
335 "fields": {
336 "asset": {
337 "maxLength": 256,
338 "minLength": 1,
339 "type": "string"
340 },
341 "slot": {
342 "maxLength": 256,
343 "minLength": 1,
344 "type": "string"
345 }
346 },
347 "type": "object"
348 },
349 "maxItems": 16,
350 "type": "array"
351 }
352 },
353 "type": "object"
354 },
355 "version": 1,
356 "visibility": "public"
357 },
358 {
359 "authority": "place",
360 "name": "Parent",
361 "persistence": "session",
362 "predicted": true,
363 "schema": {
364 "fields": {
365 "entity": {
366 "maxLength": 256,
367 "minLength": 1,
368 "type": "string"
369 }
370 },
371 "type": "object"
372 },
373 "version": 1,
374 "visibility": "public"
375 },
376 {
377 "authority": "trusted",
378 "name": "PersistentIdentity",
379 "persistence": "persistent",
380 "predicted": false,
381 "schema": {
382 "fields": {
383 "id": {
384 "maxLength": 256,
385 "minLength": 1,
386 "type": "string"
387 }
388 },
389 "type": "object"
390 },
391 "version": 1,
392 "visibility": "public"
393 },
394 {
395 "authority": "player",
396 "name": "PlaceMembership",
397 "persistence": "session",
398 "predicted": true,
399 "schema": {
400 "fields": {
401 "place": {
402 "maxLength": 256,
403 "minLength": 1,
404 "type": "string"
405 }
406 },
407 "type": "object"
408 },
409 "version": 1,
410 "visibility": "public"
411 },
412 {
413 "authority": "place",
414 "name": "RenderMesh",
415 "persistence": "authored",
416 "predicted": false,
417 "schema": {
418 "fields": {
419 "asset": {
420 "maxLength": 256,
421 "minLength": 1,
422 "type": "string"
423 },
424 "castShadow": {
425 "type": "boolean"
426 },
427 "lodBias": {
428 "max": 4,
429 "min": -4,
430 "type": "number"
431 },
432 "receiveShadow": {
433 "type": "boolean"
434 },
435 "visible": {
436 "type": "boolean"
437 }
438 },
439 "type": "object"
440 },
441 "version": 1,
442 "visibility": "public"
443 },
444 {
445 "authority": "place",
446 "name": "RigidBody",
447 "persistence": "session",
448 "predicted": false,
449 "schema": {
450 "fields": {
451 "angularVelocity": {
452 "items": [
453 {
454 "max": 10000,
455 "min": -10000,
456 "type": "number"
457 },
458 {
459 "max": 10000,
460 "min": -10000,
461 "type": "number"
462 },
463 {
464 "max": 10000,
465 "min": -10000,
466 "type": "number"
467 }
468 ],
469 "type": "tuple"
470 },
471 "gravityScale": {
472 "max": 10,
473 "min": -10,
474 "type": "number"
475 },
476 "kind": {
477 "type": "enum",
478 "values": [
479 "fixed",
480 "dynamic",
481 "kinematic"
482 ]
483 },
484 "linearVelocity": {
485 "items": [
486 {
487 "max": 10000,
488 "min": -10000,
489 "type": "number"
490 },
491 {
492 "max": 10000,
493 "min": -10000,
494 "type": "number"
495 },
496 {
497 "max": 10000,
498 "min": -10000,
499 "type": "number"
500 }
501 ],
502 "type": "tuple"
503 },
504 "mass": {
505 "max": 1000000,
506 "min": 0,
507 "type": "number"
508 },
509 "sleeping": {
510 "type": "boolean"
511 }
512 },
513 "type": "object"
514 },
515 "version": 1,
516 "visibility": "public"
517 },
518 {
519 "authority": "place",
520 "name": "Tags",
521 "persistence": "authored",
522 "predicted": false,
523 "schema": {
524 "fields": {
525 "values": {
526 "items": {
527 "maxLength": 64,
528 "minLength": 1,
529 "type": "string"
530 },
531 "maxItems": 64,
532 "type": "array"
533 }
534 },
535 "type": "object"
536 },
537 "version": 1,
538 "visibility": "public"
539 },
540 {
541 "authority": "player",
542 "name": "Transform",
543 "persistence": "session",
544 "predicted": true,
545 "schema": {
546 "fields": {
547 "position": {
548 "items": [
549 {
550 "max": 1000000,
551 "min": -1000000,
552 "type": "number"
553 },
554 {
555 "max": 1000000,
556 "min": -1000000,
557 "type": "number"
558 },
559 {
560 "max": 1000000,
561 "min": -1000000,
562 "type": "number"
563 }
564 ],
565 "type": "tuple"
566 },
567 "rotation": {
568 "type": "quaternion"
569 },
570 "scale": {
571 "items": [
572 {
573 "max": 10000,
574 "min": 0.0001,
575 "type": "number"
576 },
577 {
578 "max": 10000,
579 "min": 0.0001,
580 "type": "number"
581 },
582 {
583 "max": 10000,
584 "min": 0.0001,
585 "type": "number"
586 }
587 ],
588 "type": "tuple"
589 }
590 },
591 "type": "object"
592 },
593 "version": 2,
594 "visibility": "public"
595 }
596 ]
597}
598