Escenas

Las escenas son las entidadesarrow-up-right que producen comportamiento en diferentes partes de Decentraland. Pueden abarcar múltiples parcelas de tierra, y los jugadores que las recorran en un World Explorer ejecutarán código especial provisto por la escena.

Puedes encontrar un ejemplo completo de la vida real en el manifiesto de esta escenaarrow-up-right en el servidor de contenido de Foundation.

Punteros

Las escenas tienen uno o más pointersarrow-up-right en forma de cadenas de coordenadas de parcela, como "0,0". Cada parcela que ejecute la escena estará listada en la pointers matrizarrow-up-right del manifiesto de la entidad, y todos esos punteros serán resueltos por el servidor de contenido hacia esa escena.

En otras palabras, puedes elegir las coordenadas x/y de una parcela y localizar la escena que se está ejecutando consultando al servidor de contenido por el "<x>,<y>" puntero. Esta es la forma en que los World Explorers deciden si habilitar el comportamiento de una escena mientras el jugador navega por el mundo.

Una típica pointers matriz se ve así:

{
  "pointers": [
    "-113,-134",
    "-113,-133",
    "-113,-132",
  ],
  // ... otras propiedades de la entidad
}

Estos datos también están disponibles en el metadata.scene.parcels campo detallado más abajo, en caso de que quieras guardar solo el objeto específico de la escena en el manifiesto.

Campos de metadata

Hay varias propiedades especiales para entidadesarrow-up-right de tipo escena ubicadas en el metadata campo de nivel superior.

Campo
Valor

owner

Información sobre el mantenedor de la escena.

main

El nombre de archivo internoarrow-up-right a este archivo JavaScript principal de la escena.

tags

Un arreglo de etiquetas de texto descriptivas de esta escena.

display

Información sobre la escena para que los Explorers la muestren a los jugadores (ver más abajo).

escena

Las parcelas en las que esta escena está activa y su ubicación central (ver más abajo).

contact

Nombre y dirección de correo electrónico para contactar a los creadores o mantenedores de la escena (ver más abajo).

spawnPoints

Ubicaciones y ángulos de cámara para jugadores que ingresan a esta escena (ver más abajo).

requiredPermissions

Permisos recomendados para que los Explorers soliciten a los jugadores (ver más abajo).

featureToggles

Configuraciones para los flags de funciones

circle-info

Recuerda que las entidades y sus metadatos pueden tener campos personalizados. Puedes encontrar algunas propiedades por ahí que no estén listadas aquí.

Display

En metadata.display, encontrarás propiedades que son útiles para informar a los jugadores sobre la escena antes de que entren en ella.

Campo
Valor

title

El nombre para mostrar de esta escena.

description

Una descripción extendida de esta escena.

favicon

Obsoleto El nombre de archivo internoarrow-up-right a un icono, mostrado cuando esta escena está activa.

navmapThumbnail

El nombre de archivo internoarrow-up-right a la miniatura de esta escena para el mapa mundial.

Un ejemplo:

Scene

El metadata.scene la propiedad es un objeto que describe la posición de esta escena en el mapa mundial.

Campo
Valor

parcels

Un arreglo de punteros de parcela que ejecutan esta escena.

base

El puntero de parcela para el punto de origen de esta escena.

En la práctica, se ve así:

El base el campo siempre se incluye en la parcels matriz.

Contact

El metadata.contact el objeto contiene la información de contacto del propietario o mantenedor de la escena.

Campo
Valor

name

Un nombre para este contacto.

email

(Opcional) Una dirección de correo electrónico para contactar.

En JSON:

Mientras que el name campo se completa en cada escena, encontrarás que en la práctica el email campo suele ser una cadena vacía. Esta es una elección de privacidad hecha por el creador de la escena.

Spawn Points

El metadata.spawnPoints el campo define un arreglo de puntos y direcciones de cámara que determinan dónde deben aparecer los jugadores que ingresan a la escena y hacia dónde deben mirar inicialmente. Debe haber al menos un punto de aparición definido.

Cada elemento en la matriz tiene varias propiedades:

Campo
Valor

name

Una etiqueta para identificar este punto de aparición.

Enviado por el cliente a intervalos regulares (típicamente una vez por segundo), para actualizar a Archipelago sobre su posición y/o solicitar una asignación de isla.

La posición inicial en un { x, y, z } objeto con coordenadas en coma flotante.

cameraTarget

La dirección inicial de la cámara en un { x, y, z } objeto con coordenadas en coma flotante.

default

Si este punto de aparición se usa a menos que se especifique lo contrario.

Por ejemplo:

Permisos Requeridos

En metadata.requiredPermissions encontrarás un arreglo de cadenas bien conocidas que declaran qué permisos deben solicitarse al jugador antes de que el World Explorer permita ciertas acciones. Esto corresponde al Explorer; otros clientes construidos para diferentes propósitos pueden elegir ignorarlo.

Este es el conjunto actual de permisos soportados:

Permission
Propósito

USE_FETCH

Permitir que la escena realice solicitudes HTTP externas.

USE_WEBSOCKET

Permitir que la escena use la API WebSocket para establecer conexiones externas.

OPEN_EXTERNAL_LINK

Permitir que la escena abra una URL (en una pestaña del navegador o vista web).

USE_WEB3_API

Permitir que la escena se comunique con una wallet.

ALLOW_TO_TRIGGER_AVATAR_EMOTE

Permitir que la escena anime el avatar del jugador con un emote.

ALLOW_TO_MOVE_PLAYER_INSIDE_SCENE

Permitir que la escena cambie la posición del jugador.

Feature Toggles

El metadata.featureToggles el campo permite que una escena indique si ciertas funciones del World Explorer deben habilitarse o deshabilitarse.

El campo contiene un objeto de la forma { [featureName]: 'enabled' | 'disabled' }, como este:

Actualmente, voiceChat es la única bandera de función comúnmente soportada.

Última actualización