> For the complete documentation index, see [llms.txt](https://docs.decentraland.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decentraland.org/contributor/contributor-pt/conteudo/tipos-de-entity/scenes.md).

# Cenas

Scenes são as [entidades](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md) que produzem comportamento em diferentes partes de Decentraland. Elas podem abranger vários parcels de terra, e os jogadores que passarem por elas em um World Explorer executarão o código especial fornecido pela cena.

Você pode encontrar um exemplo completo da vida real em [o manifesto desta cena](https://peer.decentraland.org/content/contents/bafkreidihplrc5cxarjkji2enmzhicpjoa2vrlqyyffnholmxb3o2xft3u) no content server da Foundation.

### Ponteiros <a href="#pointers" id="pointers"></a>

As Scenes têm um ou mais [ponteiros](https://github.com/decentraland/docs/tree/main/contributor/pointers/README.md) associados, na forma de strings de coordenadas de parcel, como `"0,0"`. Cada parcel que executa a cena será listada no [`ponteiros` array](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md#properties) do manifesto da entidade, e todos esses ponteiros serão resolvidos pelo content server para essa cena.

Em outras palavras, você pode escolher as coordenadas x/y de um parcel e localizar a cena que está sendo executada consultando o content server para o `"<x>,<y>"` ponteiro. É assim que os World Explorers decidem se devem ativar o comportamento de uma cena à medida que o jogador navega pelo mundo.

Um típico `ponteiros` array fica assim:

```json
{
  "pointers": [
    "-113,-134",
    "-113,-133",
    "-113,-132",
  ],
  // ... outras propriedades da entidade
}
```

Esses dados também estão disponíveis no `campo metadata.scene.parcels` detalhado abaixo, caso queira salvar apenas o objeto específico da cena no manifesto.

### Campos de Metadata

Há várias propriedades especiais para [entidades](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md) do tipo `scene` localizadas no `metadata` campo de nível superior.

| Campo                 | Valor                                                                                                                                                            |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `owner`               | Informações sobre o mantenedor da cena.                                                                                                                          |
| `main`                | O [nome interno do arquivo](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md#files) para o arquivo JavaScript principal desta cena. |
| `tags`                | Um array de rótulos de string descritivos desta cena.                                                                                                            |
| `display`             | Informações sobre a cena para os Explorers mostrarem aos jogadores (veja abaixo).                                                                                |
| `scene`               | Os parcels em que esta cena está ativa e sua localização central (veja abaixo).                                                                                  |
| `contact`             | Nome e endereço de email para contatar os criadores ou mantenedores da cena (veja abaixo).                                                                       |
| `spawnPoints`         | Locais e ângulos de câmera para jogadores que entrarem nesta cena (veja abaixo).                                                                                 |
| `requiredPermissions` | Permissões recomendadas para os Explorers solicitarem aos jogadores (veja abaixo).                                                                               |
| `featureToggles`      | Configurações para feature flags                                                                                                                                 |

{% hint style="info" %}
Lembre-se de que entities e seus metadata podem ter campos personalizados. Você pode encontrar algumas propriedades por aí que não estão listadas aqui.
{% endhint %}

#### Display

Em `metadata.display`, você encontrará propriedades úteis para informar os jogadores sobre a cena antes de entrarem nela.

| Campo             | Valor                                                                                                                                                                              |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`           | O nome de exibição desta cena.                                                                                                                                                     |
| `description`     | Uma descrição detalhada desta cena.                                                                                                                                                |
| `favicon`         | *Obsoleto* O [nome interno do arquivo](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md#files) para um ícone, exibido quando esta cena estiver ativa. |
| `navmapThumbnail` | O [nome interno do arquivo](https://github.com/decentraland/docs/tree/main/contributor/entities/README.md#files) para a miniatura desta cena no mapa-múndi.                        |

Um exemplo:

```json
{
  "title": "my_cool_scene",
  "favicon": "favicon.png",
  "navmapThumbnail": "thumbnail.png"
}
```

#### Cena

O `metadata.scene` é um objeto que descreve a posição desta cena no mapa-múndi.

| Campo     | Valor                                                   |
| --------- | ------------------------------------------------------- |
| `parcels` | Um array de ponteiros de parcel que executam esta cena. |
| `base`    | O ponteiro de parcel para o ponto de origem desta cena. |

Na prática, fica assim:

```json
{
  "parcels": [
    "17,-112", 
    "17,-113"
  ],
  "base": "17,-112"
}
```

O `base` campo está sempre incluído no `parcels` array.

#### Contato

O `metadata.contact` contém as informações de contato do proprietário ou mantenedor da cena.

| Campo   | Valor                                         |
| ------- | --------------------------------------------- |
| `name`  | Um nome para este contato.                    |
| `email` | (Opcional) Um endereço de email para contato. |

Em JSON:

```json
{
  "name": "cool_scene_maker",
  "email": "hello@decentraland.org"
}
```

Embora o `name` campo seja preenchido em cada cena, você verá que, na prática, o `email` campo costuma ser uma string vazia. Esta é uma escolha de privacidade feita pelo criador da cena.

#### Pontos de Spawn

O `metadata.spawnPoints` campo define um array de pontos e direções de câmera que determinam onde os jogadores que entrarem na cena devem aparecer e para onde devem estar olhando inicialmente. Deve haver pelo menos um ponto de spawn definido.

Cada item no array tem algumas propriedades:

| Campo          | Valor                                                                         |
| -------------- | ----------------------------------------------------------------------------- |
| `name`         | Um rótulo para identificar este ponto de spawn.                               |
| `position`     | A posição inicial em um `{ x, y, z }` objeto com coordenadas float.           |
| `cameraTarget` | A direção inicial da câmera em um `{ x, y, z }` objeto com coordenadas float. |
| `default`      | Se este ponto de spawn é usado, salvo indicação em contrário.                 |

Por exemplo:

```json
[
  {
    "name": "spawn1",
    "position": { "x": 10.02, "y": 5.27, "z": 15.23  },
    "cameraTarget": { "x": 10.02, "y": 6.27, "z": 31.23 },
    "default": true
  }
]
```

{% hint style="info" %}
**📔 Nota**: A Spawn Area e o Camera Target podem ser definidos usando o Creator Hub. Para mais informações, vá para a [Spawn Area](https://github.com/decentraland/docs/tree/main/creator/scene-editor/build/spawn-areas.md) documentação.
{% endhint %}

#### Permissões necessárias <a href="#permissions" id="permissions"></a>

Em `metadata.requiredPermissions` você encontrará um array de strings conhecidas declarando quais permissões devem ser solicitadas ao jogador antes que o World Explorer permita certas ações. Isso cabe ao Explorer; outros clients criados para outros propósitos podem optar por ignorar isso.

Este é o conjunto atual de permissões suportadas:

| Permissão                           | Objetivo                                                                      |
| ----------------------------------- | ----------------------------------------------------------------------------- |
| `USE_FETCH`                         | Permite que a cena faça requisições HTTP externas.                            |
| `USE_WEBSOCKET`                     | Permite que a cena use a API de WebSocket para estabelecer conexões externas. |
| `OPEN_EXTERNAL_LINK`                | Permite que a cena abra uma URL (em uma aba do navegador ou web view).        |
| `USE_WEB3_API`                      | Permite que a cena se comunique com uma Wallet.                               |
| `ALLOW_TO_TRIGGER_AVATAR_EMOTE`     | Permite que a cena anime o avatar do jogador com um emote.                    |
| `ALLOW_TO_MOVE_PLAYER_INSIDE_SCENE` | Permite que a cena altere a posição do jogador.                               |

#### Sinalizadores de recurso

O `metadata.featureToggles` campo permite que uma cena indique se certos recursos do World Explorer devem ser ativados ou desativados.

O campo contém um objeto no formato `{ [featureName]: 'enabled' | 'disabled' }`, como este:

```json
{
  "voiceChat": "enabled"
}
```

Atualmente, `voiceChat` é o único sinalizador de recurso com suporte comum.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.decentraland.org/contributor/contributor-pt/conteudo/tipos-de-entity/scenes.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
