> ## Documentation Index
> Fetch the complete documentation index at: https://wiki.petto.sbs/llms.txt
> Use this file to discover all available pages before exploring further.

# Gerador de Petto Code

> Um site grátis que monta comandos personalizados em Petto Code com formulários, deixa você testar em um canal de teste e te dá o comando para colar.

## Visão geral

O **Gerador de Petto Code** é um site que escreve [Petto Code](https://wiki.petto.sbs/pt-br/automation/petto-code.md) para você. Você escolhe o que o comando faz com formulários, testa em um canal que parece e funciona como o Discord e copia o comando para o seu servidor.

Abra em **[codegen.petto.sbs](https://codegen.petto.sbs)**. É grátis e não precisa de login.

> [!NOTE]
>
> **Nada sai da página.** O gerador nunca mexe no seu servidor. Seus comandos só chegam ao Discord quando você mesmo cola o comando de instalação.

## Como funciona

**1. Monte**

Abra o **Builder**. Comece por uma das **21 receitas**, por um modelo oficial ou por um comando vazio. Preencha só as partes de que precisar: o nome, como ele começa, a resposta, botões, um formulário, reações, requisitos e extras. Variáveis como `{user}` ou `{server}` funcionam em qualquer lugar. O código é escrito e verificado enquanto você avança.

**2. Teste**

A aba **Try it** é um canal de teste que executa o comando com **o motor real do Petto**. Digite o comando, clique nos botões, escolha nos menus, preencha os formulários e reaja. Você vê o que ele imprimiria e o que faria: cargos dados ou tirados, DMs, mensagens apagadas, os dados salvos e um registro de cada uso. Dá para alternar entre **duas pessoas de teste** para ver o que outra pessoa vê.

**3. Instale**

A aba **Install** dá o comando `!customcommand code` pronto para colar no seu servidor, e o comando `!customcommand trigger` quando ele começa com um prefixo ou palavras próprias. Ela também dá um **código de compartilhamento** (`pc1.`) para `!customcommand import`.

```javascript theme={null}
!customcommand code verify {{ ... }}
!customcommand import pc1.<code> verify
```

![liam cola !customcommand code verify com o código em um bloco e o Petto responde que verify foi criado](https://mintcdn.com/wikipetto/ii5NsO0foe6CCGwz/images/discord/automation/pt-br/petto-code-generator-install-code.webp?fit=max\&auto=format\&n=ii5NsO0foe6CCGwz\&q=85\&s=183e83bdcb99e78a17e52c3e438ab9fe)

No Discord: o comando de instalação colado em um servidor; o Petto verifica o código e salva.

![liam cola !customcommand import com o código pc1. e o nome verify, e o Petto responde que verify foi importado](https://mintcdn.com/wikipetto/ii5NsO0foe6CCGwz/images/discord/automation/pt-br/petto-code-generator-install-import.webp?fit=max\&auto=format\&n=ii5NsO0foe6CCGwz\&q=85\&s=ec3a2a1a3e6fa24d0119752b67281c40)

No Discord: o mesmo comando instalado pelo código de compartilhamento.

> [!TIP]
>
> Quer mudar algo à mão? **Edit as code** abre o comando no editor de código, com cores, números de linha, uma verificação a cada tecla (com a linha e a coluna de um erro) e todas as funções e dados prontos para inserir.

## O que ele consegue montar

> [card] Texto e embeds
>
> Uma resposta no canal, na DM ou em outro canal, como texto ou como embed com campos, cores, imagens e o autor.

> [card] Botões e menus
>
> Botões e um menu de seleção que respondem, dão ou tiram um cargo ou abrem um formulário. Podem ficar travados para a pessoa que usou o comando.

> [card] Formulários
>
> Um formulário pop-up (modal) com campos de texto, menus de opções, botões de opção, caixas, seletores de membros, cargos e canais, arquivos para enviar e textos informativos. As respostas vão para uma mensagem, por exemplo para um canal da staff.

> [card] Reações
>
> Algo que acontece quando as pessoas reagem: um cargo, uma DM, uma resposta no canal ou uma mudança na mensagem. Uma reação pode ser só para a pessoa que usou o comando.

> [card] Cargos
>
> Dar, tirar ou alternar um cargo a partir de um comando, um botão, uma opção de menu ou uma reação.

> [card] Contadores e respostas aleatórias
>
> Um contador que sobe a cada uso ou clique, e uma resposta escolhida ao acaso de uma lista.

> [card] Intervalos e requisitos
>
> Com que frequência um comando pode ser usado, e de quais cargos ou canais ele precisa.

> [card] Moedas e rankings
>
> Dados salvos para cada membro: uma recompensa diária, um saldo e um ranking do servidor.

> [card] Gatilhos
>
> Começar com o prefixo do Petto, com um prefixo próprio (`?hello`) ou com uma mensagem que começa com, é exatamente ou contém certas palavras.

> [card] Receitas e modelos
>
> 21 receitas (verificação, menu de cargos, cargo por reação, sugestões, denúncias, moedas diárias, ranking, pedidos por reação e mais) e todos os modelos oficiais do bot.

## Mudar uma mensagem, só quem pediu, e fechá-la

Isso torna possíveis cartões de pedido e outras mensagens que mudam com o tempo **sem escrever código**.

* **Algumas partes do embed:** quando um botão, uma opção de menu ou uma reação muda a mensagem, ela pode manter o embed como está (com tudo o que o comando escreveu nele) e mudar só as partes que você preencher: um novo **título**, **descrição**, **rodapé** ou **cor**. Uma parte que você deixar vazia continua igual.
* **Só quem usou o comando:** para cada botão e cada reação. Qualquer outra pessoa que clicar no botão recebe *Isto não é para você*; a reação de qualquer outra pessoa é removida, com uma DM opcional como *Só quem pediu pode confirmar.* Uma reação sabe quem usou o comando porque o Petto guarda isso junto com a mensagem (`.Message.CommandUserID` no [Petto Code](https://wiki.petto.sbs/pt-br/automation/petto-code.md#quem-usou-o-comando)).
* **Fechar a mensagem pelo rodapé:** quando o rodapé do embed diz uma palavra, como *Entregue*, os botões, menus e reações dela param de responder. Uma reação é removida, e um clique recebe uma resposta opcional como *Este já está fechado.*

### Receita: Pedidos por reação

A receita **Pedidos por reação** junta as três coisas. `!req um bolo` envia um cartão com o pedido e apaga a mensagem do comando:

* 🦋 é para qualquer pessoa e muda o rodapé para *Pego por `{name}`*.
* 🎀 é **só para quem pediu** e muda o rodapé para *Entregue*. O 🎀 de qualquer outra pessoa é removido.
* Quando o rodapé diz *Entregue*, o cartão fica fechado e para de responder.

Abra em **Templates**, mude os textos e os emojis, teste no canal de teste como duas pessoas e instale.

![O cartão do pedido de chu de um bolo para o aniversário do servidor, com as reações de borboleta e laço para pegar e confirmar a entrega](https://mintcdn.com/wikipetto/LoL7QuPJ71yd9F_N/images/discord/automation/pt-br/petto-code-generator.webp?fit=max\&auto=format\&n=LoL7QuPJ71yd9F_N\&q=85\&s=6a6bcfc3116d3a7ffe988b5704a816b0)

No Discord: a receita Pedidos por reação instalada e usada com !req, executada pelo motor do Petto.

## Códigos de compartilhamento, nos dois sentidos

Um código de compartilhamento começa com `pc1.` e contém um comando inteiro.

* **Para fora:** a aba **Install** dá o código de compartilhamento do seu comando. Qualquer pessoa pode usá-lo no próprio servidor com `!customcommand import <share code> [name]`.
* **Para dentro:** cole um código de compartilhamento na aba **Import** para ler o código e verificá-lo **antes de usar**. Depois abra no editor para mudá-lo. A linha inteira também funciona, com `!customcommand import` na frente.

Um código de `!customcommand export` no Discord funciona no gerador, e um código do gerador funciona no Discord.

## Meus comandos

**My commands** guarda os comandos que você salva **no seu navegador**. Você pode exportá-los como um arquivo JSON e importá-los de novo em outro dispositivo. Nada é salvo em um servidor.

O site está em **inglês, espanhol e português**, com tema claro e escuro. Os textos padrão dos comandos seguem o idioma que você escolher.

## O mesmo motor do bot

> [!NOTE]
>
> O gerador executa **o mesmo motor de Petto Code do Petto**, com as mesmas verificações, funções e limites (10.000 caracteres, 10.000 passos, 250 ms de execução, 25 leituras e escritas de dados salvos por uso). **O que funciona no gerador funciona no seu servidor.**
>
> O que ele não consegue testar é o que depende do Discord: as permissões do Petto no canal, um cargo acima do cargo do Petto ou com permissões de moderação, ou alguém com as DMs fechadas. O Petto verifica isso quando o comando é executado. Veja [Limites e segurança](https://wiki.petto.sbs/pt-br/automation/petto-code.md#limites-e-segurança).

A documentação completa da linguagem está em **[code.petto.sbs](https://code.petto.sbs)**, com uma página sobre o gerador em [code.petto.sbs/generator](https://code.petto.sbs/generator).

Veja [Petto Code](https://wiki.petto.sbs/pt-br/automation/petto-code.md) para os comandos e [Comandos personalizados](https://wiki.petto.sbs/pt-br/automation/custom-commands.md) para comandos de texto simples e de embed.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.