Metadados da Cena
Aprenda como configurar uma cena e configurar seus metadados.
Uma cena é um projeto da Decentraland que é delimitado espacialmente e mapeado para um ou vários parcels. Se uma cena for implantada no mapa da Decentraland Genesis City, os jogadores podem experimentá‑la visitando as coordenadas da cena. Se uma cena for implantada em um World, os jogadores podem visitá‑la via URL.
Veja Arquivos em uma cena para uma lista de quais arquivos são usados em um projeto de cena.
Metadados
Para editar os metadados de uma cena no Scene Editor in Creator Hub, abra uma cena e clique no ícone de lápis.

Isto abre o menu da cena, onde você pode configurar múltiplas propriedades.

Alternativamente, você pode editar diretamente o scene.json arquivo, onde todos esses valores são armazenados.
📔 Nota: Não adicione campos personalizados ao scene.json arquivo que não sejam mencionados nesta página, pois isso pode causar problemas ao carregar sua cena.
Título da cena, descrição e imagem
É muito importante dar à sua cena um título, uma descrição e uma imagem em miniatura para atrair jogadores e ajudá‑los a saber o que esperar.
Os jogadores verão estes exibidos em um modal quando selecionarem os parcels da sua cena no mapa. Eles também verão isto em uma tela de confirmação ao serem teleportados até lá por outra cena. Configurar dados atraentes aqui pode ajudar significativamente a direcionar tráfego para sua cena.
Quando os jogadores navegam pelo mundo e entram na sua cena, eles conseguem ler o título da cena abaixo do minimapa.

Adicione estes dados através do menu da cena no Scene Editor.
A miniatura deve ser uma .png imagem de um tamanho recomendado de 228x160 pixels. O tamanho mínimo suportado é 196x143 pixels. A imagem pode ficar esticada se as proporções largura‑altura não corresponderem 228x160.
A imagem em navmapThumbnail deve ser um caminho para um arquivo de imagem na pasta do projeto. Também pode ser um link URL para uma imagem hospedada em outro lugar.
📔 Nota: Se você hospedar uma imagem em outro lugar, certifique‑se de que seja em um site que tenha políticas CORS permissivas para exibir conteúdo em outros sites.
Caso queira que outros desenvolvedores possam contatá‑lo, você também pode adicionar informações de contato à sua cena.
Categorias
Você pode adicionar categorias à sua cena para ajudar os jogadores a explorar a Decentraland. Estas são usadas no Decentraland Places dApp para categorizar cada lugar e facilitar para os jogadores encontrarem o que lhes interessa.
Categorias precisam ser escolhidas a partir de uma lista pré‑definida de opções:
🎨 Art
🕹️ Game
🃏 Casino
👥 Social
🎶 Music
👠 Fashion
🪙 Crypto
📚 Education
🛍️ Shop
🏢 Business
🏅 Sports
🏃 Parkour
Uma cena pode pertencer a mais de uma categoria, com um máximo de 3 categorias listadas.
No scene.json as categorias são listadas no tags array.
Estas são as categorias predefinidas:
artgamecasinosocialmusicfashioncryptoeducationshopbusinesssportsparkour
Por exemplo, uma cena poderia ser marcada como game e casino adicionando o seguinte ao scene.json
Depois disso, a cena é listada no Places dApp sob as game e casino categories.
Classificação por Idade
O Classificação por Idade o campo é usado para classificar o conteúdo da sua cena com base em sua adequação para diferentes faixas etárias. Ajuda a filtrar conteúdo para os jogadores. As seguintes opções estão disponíveis:
🟢
Tpara Teens (13+): Esta é a exigência mínima de idade conforme especificado nos Terms of Use. Opte por esta categoria se sua cena for limitada a violência moderada, conteúdo sugestivo ou de terror, jogo simulado e linguagem leve.🟡
Apara Adults (18+): Escolha esta categoria se sua cena apresentar qualquer um dos seguintes: linguagem ofensiva intensa, violência gráfica, conteúdo sexual explícito e/ou nudez, jogo com dinheiro real ou substâncias como álcool, tabaco e drogas.
Ao editar a Classificação por Idade via o scene.json , a classificação é um código de uma única letra, escreva ou T para adolescentes, ou A para adultos.

Conteúdo Restrito
Há uma terceira categoria para cenas: 🔴 R para Restricted. Esta classificação é aplicada manualmente por Moderadores de Conteúdo a cenas que violam a Content Policy. Violações podem incluir, mas não estão limitadas a:
Conteúdo suspeito ou spam
Conteúdo abusivo ou de ódio
Conteúdo sexual ou degradante
Abuso infantil
Assédio ou bullying
Promoção de terrorismo/violência
Violação de IP/Direitos autorais
Cenas com esta classificação não serão carregadas e ninguém poderá interagir com elas. Se sua cena se enquadrar nesta categoria, você deve revisá‑la e atualizá‑la para cumprir com a Content Policy.
Feature Toggles
Existem certas funcionalidades que podem ser desabilitadas em cenas específicas para que os jogadores não possam usá‑las abusivamente. Configure‑as na Settings aba das configurações da cena.

Atualmente, apenas a seguinte funcionalidade é tratada desta forma:
Voice Chat: Refere‑se a jogadores usando seus microfones para ter conversas por chat de voz com outros jogadores próximos.
Disable Portable Experiences: Esta configuração determinará o comportamento de qualquer portable experience de um jogador enquanto estiver dentro da sua cena. Isto inclui não apenas portable experiences mas também smart wearables. Com esta configuração, você pode escolher mantê‑las todas habilitadas (padrão), desativá‑las ou ocultar sua UI. Isto é útil para cenas onde portable experiences possam dar uma vantagem injusta a alguns jogadores, por exemplo usar um jetpack em um desafio de parkour. Também é recomendado impedir isso em cenas onde ocorrem transações em blockchain, e onde um portable experience malicioso poderia potencialmente se passar pela UI da cena.
No arquivo scene.json , estes toggles são gerenciados sob featureToggles. As funcionalidades correspondentes estão habilitadas por padrão, a menos que especificado como disabled no scene.json arquivo.
Se uma featureToggles propriedade não existir no seu scene.json arquivo, crie‑a no nível raiz da árvore json.
Gorjetas
Você pode receber gorjetas de jogadores que visitam sua cena. Para habilitar gorjetas, vá para a Detalhes aba nas configurações da cena e forneça um endereço Ethereum em Endereço da carteira do criador.
Você também pode fornecer o endereço de gorjeta (tipping) da sua cena no scene.json arquivo, sob o campo creator campo.
Quando um jogador visita sua cena, ele verá um ícone de cofrinho no canto superior esquerdo da tela. Clicar nele abre um modal onde podem enviar uma gorjeta. Esse menu também pode ser acessado abrindo as informações da sua cena no mapa.
O modal de gorjetas permite que o jogador selecione a quantidade de MANA que deseja enviar. O jogador deve possuir MANA em sua carteira para enviar uma gorjeta. Se o endereço que você forneceu estiver vinculado a um Decentraland NAME, este modal mostrará o nome do proprietário da carteira além do endereço Ethereum.
Você receberá uma notificação na aba de notificações do Decentraland sempre que um jogador lhe enviar uma gorjeta.
Local de spawn
O Spawn Settings no Settings aba definem onde os jogadores surgem quando acessam sua cena diretamente, seja digitando diretamente as coordenadas no navegador ou teleportando.

Sua cena pode ter objetos que bloqueiem os jogadores de se mover caso eles surjam em cima deles, como árvores ou escadas. Sua cena também pode ter terreno elevado. Para evitar que jogadores apareçam em locais onde não conseguem se mover, você pode definir múltiplas posições de spawn em locais específicos.
A posição consiste em coordenadas dentro da cena. Esses números referem‑se a uma posição dentro do parcel, similar ao que você usaria no código da cena em um componente Transform para position an entity.
📔 Nota: Todos os pontos de spawn devem estar dentro dos parcels que compõem a cena. Você não pode fazer um jogador surgir fora do espaço desses parcels.
Verifique a caixa Random Offset para deslocar aleatoriamente os jogadores que surgem ao redor do ponto de spawn. Isso evita que todos os jogadores apareçam sobrepostos uns aos outros quando surgem, o que fica especialmente ruim em cenas lotadas. O Max Offset valor é a distância máxima possível a partir do ponto de spawn original, tanto no eixo X quanto no Z.
Defina o Camera Target para controlar a direção que os jogadores enfrentam quando entram na sua cena. Isso lhe dá melhor controle sobre a primeira impressão deles e pode ajudar a conduzi‑los para uma direção específica. Por padrão isto aponta para {x: 8, y:1, z:8}, que é o centro da cena para cenas de parcel único, ou o centro do parcel inferior‑esquerdo para cenas maiores.
Clique em Adicionar ponto de spawn para listar quantos pontos de spawn você quiser. Os jogadores aparecerão aleatoriamente em um deles.
Spawn points in JSON
Os pontos de spawn também podem ser configurados via o scene.json arquivo, no spawnPoints campo.
Uma única cena pode ter múltiplos pontos de spawn. Isto é especialmente útil em cenas grandes. Para ter muitos pontos de spawn, simplesmente liste‑os como um array.
Quando há múltiplos pontos de spawn, é selecionado aquele mais próximo das coordenadas indicadas pelo jogador.
Se um ponto de spawn estiver marcado como default, ele será sempre usado, independentemente de ser o mais próximo. Se múltiplos pontos de spawn estiverem marcados como default, o mais próximo será selecionado.
Regiões de spawn
Você pode definir toda uma região na cena para atuar como ponto de spawn. Ao especificar um array de dois números para qualquer dimensão da posição, os jogadores aparecerão em um local aleatório dentro desse intervalo. Isso ajuda a impedir que jogadores que entram apareçam sobrepostos.
No exemplo acima, os jogadores podem aparecer em qualquer lugar do quadrado cujos cantos estão em 1,1,2 e 5,1,4.
Uma cena também pode ter múltiplas regiões de spawn, assim como pode ter múltiplos pontos de spawn.
Rotação
Você também pode especificar a rotação dos jogadores quando eles surgem, para que estejam voltados em uma direção específica.
Basta adicionar um campo cameraTarget aos dados do ponto de spawn. O valor de cameraTarget deve referenciar uma localização no espaço, com x, y e z coordenadas relativas à cena, assim como a position campo.
Este exemplo faz spawn de um jogador em 5, 1, 4 virado para leste em direção a 10, 1, 4. Se a posição de spawn for um intervalo, a rotação do jogador sempre corresponderá ao alvo indicado. Se houver vários pontos de spawn, cada um pode ter seu próprio alvo separado.
Permissões necessárias
O requiredPermissions a propriedade gerencia várias funcionalidades controladas que podem ser usadas de forma abusiva e prejudicar a experiência do jogador.
📔 Nota: As permissões são relevantes apenas em portable experiences e smart wearables. Cenas normais (tanto em parcelas quanto em Worlds) não são afetadas por essas permissões e são livres para usar a funcionalidade correspondente.
Essas funcionalidades são bloqueadas para uso na cena a menos que a permissão seja solicitada em scene.json arquivo.
Atualmente, as seguintes permissões são gerenciadas em wearables inteligentes e experiências portáteis:
ALLOW_TO_MOVE_PLAYER_INSIDE_SCENE: Refere-se a mover um PlayerALLOW_TO_TRIGGER_AVATAR_EMOTE: Refere-se a Tocar emotes no avatar do jogadorUSE_WEB3_API: Refere-se a interagir com as wallets do navegador do jogador, para fazer transações ou assinar mensagens.USE_FETCH: Refere-se a enviar requisições http para servidores de terceiros, usandofetchousignedFetchUSE_WEBSOCKET: Refere-se a abrir conexões websocket com servidores de terceirosOPEN_EXTERNAL_LINK: Refere-se a solicitar ao jogador que abra links para sites externos
Se uma requiredPermissions propriedade não existir no seu scene.json arquivo, crie‑a no nível raiz da árvore json.
Parcels da cena
Quando publicando uma cena, o conteúdo é carregado nas coordenadas atribuídas na configuração da cena. Uma cena pode incluir uma única parcela, ou uma lista de até dezenas delas.
Edite isso na segunda aba do menu da cena no Scene Editor.

Use os dropdowns e clique em Apply Layout para alterar as dimensões da sua cena. Você também pode clicar em cada parcela individual para desativá-la no seu layout.

A cena padrão tem suas coordenadas definidas para 0,0. Você não precisa alterar isso ao desenvolver uma cena offline, a menos que precise ocupar múltiplas parcelas. Você precisará alterar isso antes de publicar em coordenadas onde você tem permissões de deploy.
Você também pode alterar as coordenadas da cena no scene.json arquivo:
O base campo define qual parcela considerar como a parcela base. Se sua cena tem uma única parcela, a base deve ser essa parcela. Se sua cena tem várias parcelas, a base deve ser a parcela inferior-esquerda (Sul-Oeste). Todas as posições de entidades são medidas em relação ao canto Sul-Oeste desta parcela.
Para exibir múltiplas parcelas na pré-visualização da cena, liste tantas parcelas quanto você pretende usar. Elas não precisam ser exatamente as parcelas nas quais você fará o deploy, mas devem ser adjacentes e dispostas nas mesmas posições relativas.
📔 Nota: O maior tamanho de cena que você pode definir é de 45 x 45 parcelas.
Definir parcels via linha de comando
Você pode definir as parcels da sua cena executando o npx update-parcels comando na pasta da sua cena. Isso é especialmente útil para cenas grandes, pois você não precisa listar cada parcela envolvida.
Parcela única
Passe um único argumento com as coordenadas da cena. Essa coordenada também será definida como a parcela base.
npx update-parcels <parcel>
Por exemplo:
npx update-parcels 15,-26
Múltiplas parcelas
Passe dois argumentos: as parcelas Sul-Oeste e Norte-Leste. A parcela Sul-Oeste também é definida como a parcela base.
npx update-parcels <parcel> <parcel>
💡 Dica: A parcela Sul-Oeste é sempre aquela com os menores números tanto no X e Y coordenadas.
Por exemplo:
npx update-parcels 15,-26 17,-24
Este comando gera uma cena 3x3, com sua parcela base em 15,-26.
Personalizar Parcela Base
Passe três argumentos: as parcelas Sul-Oeste e Norte-Leste, e a parcela a ser usada como parcela base.
npx update-parcels <parcel> <parcel> <parcel>
📔 Nota: A parcela base deve ser uma das parcelas na cena.
Cenas não quadradas
Os comandos acima geram cenas em forma retangular. Cenas do Decentraland podem ter formas em L ou outras configurações. Você pode gerar um quadrado maior com npx update-parcels e então remover manualmente parcelas em excesso do scene.json arquivo.
📔 Nota: A parcela base deve ser uma das parcelas na cena.
Skybox - horário do dia
Você pode definir um horário fixo do dia para sua cena. Todos os jogadores verão a cena com esse horário, e o skybox não seguirá o ciclo dia/noite.
Abra as configurações da cena e clique na Settings aba para encontrar o Skybox seção. Desmarque a Auto opção e defina o horário do dia que você deseja.
Você também pode definir o horário do skybox no código da sua cena. Para isso, adicione a seção a seguir ao seu scene.json no nível raiz:
O número se refere ao número de segundos desde o início do dia, variando de 0 (representando 00:00) a 86400 (representando 24:00). Qualquer número maior que 86400 também é interpretado como meia-noite.
Aqui estão alguns exemplos adicionais de valores válidos:
0 segundos => 00:00
21600 segundos => 06:00
43200 segundos => 12:00
64800 segundos => 18:00
86400 segundos => 24:00
Configuração de World
Ao publicar em um Decentraland World, você pode configurar várias opções específicas de World no seu scene.json arquivo usando o worldConfiguration objeto.
Configuração básica de World
Para publicar em um World, você deve especificar o NAME ou domínio ENS no seu scene.json:
O name o especificado pode ser tanto um NAME do Decentraland quanto um domínio ENS e deve ser possuído pela wallet que assina o deploy (ou por qualquer wallet que tenha recebido permissão via Access Control Lists).
Configuração do serviço de comunicação
O fixedAdapter a propriedade indica qual Communication Service deve ser usado pela cena. Por enquanto, apenas o valor offline:offline é permitido. Quando definido, a cena não terá Communication Service algum, e cada usuário que entrar nesse world estará sempre sozinho. Se não definido, o servidor de conteúdo de Worlds gerará um valor apropriado baseado em como está configurado.
Configuração de listagem em Places
Todos os Worlds são automaticamente listados na página Places, a menos que você opte por não listar. Se você desejar optar por não indexar seus Worlds em Places, você pode adicionar o seguinte:
Exemplo completo
Aqui está um exemplo completo com todas as opções de configuração de World:
Veja Publicando em Worlds para mais informações sobre como publicar em Worlds.
Buscar metadata a partir do código da cena
Você pode precisar do código da sua cena para acessar campos dos metadata da cena, como as parcelas nas quais a cena está implantada, ou as posições dos pontos de spawn. Isso é especialmente útil para cenas que devem ser replicadas, ou para código que deve ser reutilizado em outras cenas. Também é muito útil para bibliotecas que precisam saber onde estão os limites da cena.
Para acessar esses dados, primeiro importe o getSceneInformation function:
Então você pode chamar a getSceneInformation() function, que retorna um objeto JSON que inclui a maioria dos conteúdos do arquivo scene.json. O exemplo abaixo mostra como acessar vários dos campos mais comuns na resposta dessa função:
📔 Nota: getSceneInformation() precisa ser executado como uma async function, já que a resposta pode demorar uma fração de segundo ou mais para retornar dados. Não use a função depreciada getSceneInfo() function.
O objeto retornado por getSceneInformation() includes the following:
baseUrl: A URL base onde o conteúdo da cena é hospedadocontent: Um array com todos os arquivos da cena, incluindo seu hash, que pode ser usado junto com a baseUrl para recuperá-los.metadataJson: O conteúdo completo do scene.json da cena, como uma string. Você deve parseá-lo para obter valores específicos.urn: O urn único para a cena como um todo.
O exemplo abaixo analisa o conteúdo de metadataJson para obter valores de propriedades no arquivo scene.json
Atualizado