# Instalar o recurso

Baixe o recurso fivedash, coloque no server.cfg, configure o config.lua e ligue a sua cidade ao painel.

Source: https://fivedash.fivex.gg/docs/pt/getting-started/install-resource

O recurso **fivedash** é o resource que liga a sua cidade FiveM ao painel. Ele detecta a framework sozinho e faz valer no jogo o que o FiveDash decide: libera e tira a whitelist (inclusive de quem sai do Discord), entrega as compras da loja no ID do jogador e manda os logs dos scripts. Esta página é para quem cuida do servidor (dono ou admin) e tem acesso aos arquivos da cidade.

## Antes de começar

* Função **Dono** ou **Admin** na organização. Membros veem **Só donos e admins da organização podem conectar o servidor.**
* A organização precisa estar com um plano ativo ou em teste. Veja [Planos e cobrança](https://fivedash.fivex.gg/docs/pt/getting-started/plans-and-billing).
* Acesso à pasta `resources` e ao `server.cfg` do servidor FiveM.
* A framework da cidade iniciada antes do fivedash. Para whitelist e entrega na loja, um driver MySQL iniciado: `oxmysql`, `mysql-async` ou `ghmattimysql`.

> Os módulos de cada servidor (Discord, Loja, Logs, Regras, CDN) ficam fechados até o recurso se conectar pela primeira vez. Ao abrir um deles aparece a tela **Conecte** + nome do servidor, com o subtítulo **Um passo antes de configurar os módulos**. A **Visão geral** do servidor fica sempre aberta.

## Onde conectar

Você pode conectar por dois caminhos. Os dois mostram os mesmos passos.

| Caminho                      | Como chegar                                                                                                                |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| Pela tela de bloqueio        | Abra qualquer módulo do servidor (ex.: **Discord**). A tela **Conecte** + nome do servidor aparece no lugar das páginas.   |
| Pela visão geral do servidor | **Servidor → Visão geral** → cartão **Conexão com o jogo** → **Conectar servidor**. Abre a janela **Conectar o servidor**. |

## Instalar e conectar

### Gere a chave do servidor

Clique em **Gerar chave**. A chave começa com `fdk_` e já vem dentro do recurso para download.

### Baixe o recurso

Em **Baixe o recurso**, clique em **Baixar fivedash.zip**. O arquivo já vem com a chave deste servidor no `config.lua` e funciona com qualquer framework.

### Extraia a pasta fivedash em resources

Descompacte o zip e coloque a pasta `fivedash` dentro de `resources` do servidor. Mantenha o nome da pasta `fivedash`. Já tinha o recurso instalado? Só cole a chave no `fivedash/config.lua` (veja abaixo).

### Inicie o recurso no server.cfg, depois da framework

Adicione a linha abaixo no `server.cfg`, depois da linha que inicia a sua framework.

### Reinicie o servidor

Reinicie a cidade, ou digite `refresh` e depois `ensure fivedash` no console. A tela mostra **Esperando o servidor se conectar…** e muda para **Conectado** sozinha. Os módulos abrem na hora.

Linha do `server.cfg`:

```bash
# depois da sua framework (ex.: ensure qb-core, ensure es_extended, ensure vrp)
ensure fivedash
```

Se você já tinha o recurso, a linha para colar no `fivedash/config.lua` é:

```lua
Key = "fdk_xxxxxxxx",
```

> A chave aparece só no momento em que é gerada e dá acesso ao servidor no FiveDash. Não compartilhe o `config.lua`. Se perder a chave, gere outra: a anterior para de funcionar na hora.

## O config.lua

O arquivo `fivedash/config.lua` é lido só pelo servidor: nunca vai para os jogadores. Depois de mudar algo, digite `restart fivedash` no console.

```lua
FiveDash = {
	Key = "fdk_xxxxxxxx",
	Framework = "auto",
	AutoUpdate = true,
	Debug = false,
}
```

| Campo        | O que faz                                                                                                                                        | Padrão                                                 |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------ |
| `Key`        | A chave do painel, gerada em **Servidor → Conexão com o jogo → Conectar servidor**. Sem ela, o servidor não se conecta ao FiveDash.              | Vazia (o download feito pelo painel já vem preenchido) |
| `Framework`  | A framework da cidade. `"auto"` detecta sozinho. Para forçar uma: `"creative-enchanted"`, `"qbox"`, `"qbcore"`, `"esx"`, `"ox-core"` ou `"vrp"`. | `"auto"`                                               |
| `AutoUpdate` | Instala sozinho as versões novas do recurso. O `config.lua` fica como está.                                                                      | `true`                                                 |
| `Debug`      | Mostra cada sincronização e comando no console.                                                                                                  | `false`                                                |

Junto do `config.lua` vêm mais dois arquivos de configuração: `loja.lua` (entrega das compras da loja) e `logs.lua` (logs enviados pelo export). Veja [Entrega no jogo](https://fivedash.fivex.gg/docs/pt/store/in-game-delivery) e [Recurso FiveM](https://fivedash.fivex.gg/docs/pt/developers/fivem-resource).

> As atualizações nunca apagam nem mudam o que você escreveu nesses arquivos. Opções novas aparecem sozinhas no fim do arquivo, e uma cópia do original fica em `config.lua.bak`.

## Frameworks suportadas

Com `Framework = "auto"`, o recurso procura a framework sozinho. Hoje ele reconhece:

| Framework                  | Valor para forçar      |
| -------------------------- | ---------------------- |
| Creative Network Enchanted | `"creative-enchanted"` |
| Qbox                       | `"qbox"`               |
| QBCore                     | `"qbcore"`             |
| ESX                        | `"esx"`                |
| ox_core                    | `"ox-core"`            |
| vRP / vRPex                | `"vrp"`                |

Sem framework reconhecida, a conexão com o painel funciona, mas a whitelist fica só no Discord e a loja entrega só por comandos. Detalhes de cada uma em [Frameworks](https://fivedash.fivex.gg/docs/pt/developers/frameworks).

## Como o recurso aparece no painel

Em **Servidor → Visão geral**, o cartão **Conexão com o jogo** mostra o estado da cidade.

| Campo                       | O que mostra                                                                                                                                                         |
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Status                      | **Conectado**, **Sem conexão** ou **Aguardando o servidor**. O servidor conta como conectado enquanto a última sincronização for recente (até cerca de 75 segundos). |
| **Framework**               | A framework detectada, ou **Nenhuma detectada**                                                                                                                      |
| **Whitelist pelo FiveDash** | **Ativa**, **Indisponível** ou **Sem suporte ainda**                                                                                                                 |
| **Última sincronização**    | **Nunca**, **agora há pouco**, **há 1 minuto**, **há N minutos**, **há N horas**                                                                                     |
| **Recurso**                 | A versão instalada do recurso                                                                                                                                        |

| Botão                      | O que faz                                                                                                                                                              |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Gerar nova chave**       | Cria outra chave. A anterior para de funcionar.                                                                                                                        |
| **Desconectar**            | Pede confirmação (**Desconectar o servidor?**). A chave atual para de funcionar e as liberações voltam a ficar só no Discord. Para conectar de novo, gere outra chave. |
| **Baixar a última versão** | Baixa o recurso mais novo sem chave no `config.lua`                                                                                                                    |

Quando sai uma versão nova, o cartão avisa: o servidor baixa sozinho e ela entra no próximo restart da cidade (ou com um comando no console). O `config.lua` fica como está.

## Comandos no console do servidor

| Comando            | O que faz                                                                                                                                           |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fivedash status`  | Mostra a framework, o estado da conexão com o painel, o servidor no FiveDash, o idioma, as sincronizações e as entregas da loja esperando jogadores |
| `fivedash detect`  | Procura a framework de novo e mostra as evidências encontradas                                                                                      |
| `fivedash loja`    | Comandos da entrega da loja                                                                                                                         |
| `fivedash logs`    | Comandos dos logs                                                                                                                                   |
| `restart fivedash` | Recarrega o recurso depois de mudar o `config.lua` ou para aplicar uma versão baixada                                                               |

## Perguntas frequentes

**Preciso de uma chave por servidor?** Sim. Cada servidor da organização tem a sua chave. Usar a mesma chave em dois servidores ligados ao mesmo tempo faz o painel recusar a conexão.

**Posso usar convars em vez do config.lua?** Sim. `fivedash_key`, `fivedash_framework`, `fivedash_debug` e `fivedash_locale` funcionam e valem mais que o arquivo. Use `set`, nunca `sets`, para a chave não ficar pública.

**O console diz que a chave não parece certa.** A chave precisa começar com `fdk_`. Copie de novo ou gere outra. Veja [Problemas comuns](https://fivedash.fivex.gg/docs/pt/help/troubleshooting).

## Próximos passos

[Bot do Discord](https://fivedash.fivex.gg/docs/pt/discord/bot)

Conecte o bot da cidade.

[Entrega no jogo](https://fivedash.fivex.gg/docs/pt/store/in-game-delivery)

Como as compras chegam ao jogador.

[Frameworks](https://fivedash.fivex.gg/docs/pt/developers/frameworks)

O que cada framework suporta.

[Problemas comuns](https://fivedash.fivex.gg/docs/pt/help/troubleshooting)

Recurso que não conecta ou não sincroniza.
