---
title: "Guia de criação do OP.GG Champion Build Builder"
description: "Referência de criação, Markdown bruto, validação e recuperação para assistentes AI e agentes de navegador."
language: pt
canonical: https://op.gg/pt/lol/user-guides/help
---

# Guia de criação do OP.GG Champion Build Builder

> Instruções para assistentes AI e agentes de navegador que explicam ou operam o OP.GG Champion Build Builder.

Este é o guia legível por máquina em Português para o criador atual.

- HTML canônico: https://op.gg/pt/lol/user-guides/help
- URL do Markdown: https://op.gg/pt/lol/user-guides/help.md
- URL de nova build: https://op.gg/pt/lol/user-guides/new
- URL da lista de builds: https://op.gg/pt/lol/user-guides

## Escolha um modo de criação

- Use o editor de formulário por padrão.
- Use Markdown bruto apenas quando o usuário solicitar o formato fonte ou quando uma grande edição de texto exigir controle direto.
- Antes de carregar uma amostra ou substituir conteúdo, verifique o rascunho existente e o estado de salvamento automático.
- Sempre inspecione a Prévia e seu estado de validação antes de publicar.

## Autenticação e persistência do rascunho

- O rascunho é salvo no navegador atual, não na sua conta.
- O mesmo rascunho não aparece automaticamente em outro navegador ou outro dispositivo.
- Depois que você publica com sucesso, o rascunho desse guia é removido deste navegador.
- Markdown bruto é um modo avançado para editar diretamente a estrutura do documento.
- Se o código fonte bruto tiver um problema, talvez você não consiga voltar ao modo de formulário até corrigir os diagnósticos.
- O Summoner Card é conteúdo fixo e não pode ser editado diretamente no Markdown bruto.
- Não manipule localStorage diretamente nem contorne a autenticação necessária para publicar.

## Crie uma build com o editor de formulário

1. Abra a URL exata de Nova build listada acima.
2. Verifique se um rascunho existente do navegador foi restaurado e confirme o status de salvamento automático.
3. Defina o campeão, o título, a posição e o patch.
4. Adicione objetivo ou tags personalizadas e um Summoner Card opcional quando solicitado.
5. Use + Adicionar bloco ou o comando / para adicionar os blocos necessários.
6. Preencha cada bloco e depois organize os blocos em ordem de leitura.
7. Abra a Prévia e inspecione cada problema de validação e o documento público resultante.
8. Publique apenas dentro do escopo solicitado pelo usuário e somente depois que autenticação e validação passarem.

## Tipos de bloco compatíveis

| Nome exibido ao usuário | Tipo canônico | Diretiva bruta |
| --- | --- | --- |
| Texto | `text` | `CommonMark paragraph` |
| Título 1 | `heading1` | `##` |
| Título 2 | `heading2` | `###` |
| Build de itens | `ItemBuild` | `opgg lol ItemBuild` |
| Build de runas | `RuneBuild` | `opgg lol RuneBuild` |
| Build de runas Classic | `ClassicRuneBuild` | `opgg lol ClassicRuneBuild 1` |
| Build de maestrias Classic | `ClassicMasteryBuild` | `opgg lol ClassicMasteryBuild 1` |
| Ordem de habilidades | `SkillOrder` | `opgg lol SkillOrder` |
| Feitiços de invocador | `SummonerSpells` | `opgg lol SummonerSpells` |
| Tier List | `TierList` | `opgg lol TierList` |
| Planejador de rota da selva | `JungleRoute` | `opgg lol JungleRoute` |
| Prévia de link | `LinkEmbed` | `opgg lol LinkEmbed 1` |
| Registro de partida | `MatchRecord` | `opgg lol MatchRecord 1` |
| YouTube | `YouTube` | `opgg YouTube` |
| Summoner Card | `SummonerCard` | Cápsula somente leitura. Adicione pelo formulário |

Não apresente opaque ou hr como blocos normais que o usuário pode adicionar. SummonerCard é uma cápsula fixa, não um bloco de corpo repetível.

## Formato de documento em Markdown bruto

O código fonte do criador é um formato de documento OP.GG incorporado ao Markdown. Ele é diferente do CommonMark usado para entregar esta página de ajuda.

```markdown
# Build da Ahri mid

---
GameMode: LIVE
Champion: Ahri
Position: mid
Patch: latest
> Exemplo de build focada na rota
---

## Como jogar

Explique o plano aqui.
```

- O primeiro H1 é o título da build.
- A seção de metadados fica entre delimitadores --- logo após o H1.
- GameMode é RANKED ou CLASSIC e seleciona o conjunto de recursos do documento.
- Position precisa ser top, jungle, mid, adc ou support.
- Títulos H2 e H3 exibidos são mapeados para blocos heading1 e heading2 do criador.

## Referências de recursos

Use IDs estáveis da Riot nos tokens de fonte em vez de nomes de exibição específicos do locale.

```text
<@lol-champion-103>
<@lol-item-1054>
<@lol-spell-4>
<@lol-rune-8005>
<@lol-shard-5008>
<@lol-skill-103-Q>
```

- Tokens de campeão, item, feitiço, runa e fragmento exigem IDs inteiros positivos.
- Tokens de habilidade exigem um ID de campeão positivo e Q, W, E ou R em maiúsculas.
- Não use links de recurso opgg:// antigos em novo código fonte.
- Nomes e ícones são resolvidos a partir do locale atual e do patch selecionado durante a renderização.

## Referência de blocos estruturados

Os exemplos válidos abaixo são gerados pelo serializador atual. Mantenha inalterados a ordem de listas compactas, strings entre aspas, IDs numéricos e enums em maiúsculas.

### Build de itens (`ItemBuild`)

- Use quando: compartilhar escolhas de itens iniciais, botas, core e itens situacionais
- Caminho na UI: + Adicionar bloco → Build de itens, ou digite / em um parágrafo vazio e escolha Build de itens.
- Diretiva bruta: `opgg lol ItemBuild`
- Campos serializados em ordem: `starter, boots, core, situational`
- Requisito de criação: use arrays compatíveis com o serializador contendo IDs de item positivos
- Estado de sucesso: os quatro grupos de itens são renderizados na ordem serializada
- Falha comum: um campo obrigatório que não seja array invalida a cerca. IDs não positivos ou nomes de exibição podem não resolver para recursos

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol ItemBuild latest
starter: [1054]
boots: [3020]
core: [6655,3089]
situational: []
```
````

Exemplo inválido comum:

````markdown
```opgg lol ItemBuild latest
starter: 1054
boots: []
core: []
situational: []
```
````

### Build de runas (`RuneBuild`)

- Use quando: compartilhar caminhos de runas, runas selecionadas e fragmentos de atributos
- Caminho na UI: + Adicionar bloco → Build de runas, ou digite / em um parágrafo vazio e escolha Build de runas.
- Diretiva bruta: `opgg lol RuneBuild`
- Campos serializados em ordem: `primaryStyle, secondaryStyle, primaryRunes, secondaryRunes, shards`
- Requisito de criação: mantenha enums numéricos de caminho produzidos pelo serializador e IDs positivos de runa ou fragmento
- Estado de sucesso: os dois caminhos, seleções de runas e fragmentos são renderizados
- Falha comum: uma lista de runas obrigatória que não seja array invalida a cerca. Estilos ou referências não canônicos podem não renderizar como esperado

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol RuneBuild latest
primaryStyle: 8000
secondaryStyle: 8100
primaryRunes: [8005,8009,9103,8014]
secondaryRunes: [8126,8141]
shards: [5008,5010,5001]
```
````

Exemplo inválido comum:

````markdown
```opgg lol RuneBuild latest
primaryStyle: 8000
secondaryStyle: 8100
primaryRunes: 8005
secondaryRunes: []
shards: []
```
````

### Build de runas Classic (`ClassicRuneBuild`)

- Use quando: compartilhar uma página de runas Classic com 30 espaços
- Caminho na UI: + Adicionar bloco → Build de runas Classic, ou digite / em um parágrafo vazio e escolha Build de runas Classic.
- Diretiva bruta: `opgg lol ClassicRuneBuild 1`
- Campos serializados em ordem: `ruleset, slots`
- Requisito de criação: use o conjunto de regras CLASSIC_1 com no máximo 30 pares de espaço e ID de runa. Cada espaço precisa ser um inteiro único de 1 a 30, cada ID de runa precisa ser um inteiro positivo, e cada runa precisa corresponder ao tipo do espaço
- Estado de sucesso: cada runa Classic selecionada é renderizada em um espaço do tipo correspondente
- Falha comum: um conjunto de regras sem suporte, espaço duplicado, runa atribuída a um tipo de espaço incompatível ou runa JADE desconhecida bloqueia a publicação

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol ClassicRuneBuild 1
ruleset: CLASSIC_1
slots: [[1,775253],[10,775317]]
```
````

Exemplo inválido comum:

````markdown
```opgg lol ClassicRuneBuild 1
ruleset: CLASSIC_1
slots: [[1,5273],[1,5317]]
```
````

### Build de maestrias Classic (`ClassicMasteryBuild`)

- Use quando: compartilhar uma distribuição de árvores de maestria Classic
- Caminho na UI: + Adicionar bloco → Build de maestrias Classic, ou digite / em um parágrafo vazio e escolha Build de maestrias Classic.
- Diretiva bruta: `opgg lol ClassicMasteryBuild 1`
- Campos serializados em ordem: `ruleset, ranks`
- Requisito de criação: use o conjunto de regras CLASSIC_1 com no máximo 60 pares de ID de maestria e nível. Cada ID de maestria positivo pode aparecer uma vez, níveis precisam ser inteiros de 1 a 5 e não podem exceder o máximo de cada maestria, pré requisitos precisam ser atendidos, e o total não pode passar de 30 pontos
- Estado de sucesso: os níveis selecionados são renderizados nas árvores de maestria Classic
- Falha comum: um conjunto de regras sem suporte, maestria duplicada, nível inválido ou maestria JADE desconhecida bloqueia a publicação

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol ClassicMasteryBuild 1
ruleset: CLASSIC_1
ranks: [[512,4],[514,2]]
```
````

Exemplo inválido comum:

````markdown
```opgg lol ClassicMasteryBuild 1
ruleset: CLASSIC_1
ranks: [[511,1],[511,4]]
```
````

### Ordem de habilidades (`SkillOrder`)

- Use quando: mostrar prioridade de habilidades e ordem nível por nível
- Caminho na UI: + Adicionar bloco → Ordem de habilidades, ou digite / em um parágrafo vazio e escolha Ordem de habilidades.
- Diretiva bruta: `opgg lol SkillOrder`
- Campos serializados em ordem: `priority, order`
- Requisito de criação: prioridade e ordem podem conter apenas Q, W, E e R
- Estado de sucesso: a prioridade e a sequência são renderizadas na ordem salva
- Falha comum: uma chave de habilidade desconhecida invalida a cerca

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol SkillOrder latest
priority: [Q,E,W,R]
order: [Q,E,W,Q,Q,R]
```
````

Exemplo inválido comum:

````markdown
```opgg lol SkillOrder latest
priority: [Q,X,W,R]
order: [Q,X]
```
````

### Feitiços de invocador (`SummonerSpells`)

- Use quando: recomendar um par de feitiços de invocador
- Caminho na UI: + Adicionar bloco → Feitiços de invocador, ou digite / em um parágrafo vazio e escolha Feitiços de invocador.
- Diretiva bruta: `opgg lol SummonerSpells`
- Campos serializados em ordem: `spells`
- Requisito de criação: use um array de IDs de feitiço inteiros positivos
- Estado de sucesso: o par de feitiços selecionado é renderizado
- Falha comum: um valor de spells que não seja array invalida a cerca. IDs não positivos ou nomes de exibição podem não resolver para feitiços

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol SummonerSpells latest
spells: [4,12]
```
````

Exemplo inválido comum:

````markdown
```opgg lol SummonerSpells latest
spells: 4
```
````

### Tier List (`TierList`)

- Use quando: ranquear recursos de campeão, item ou runa em linhas rotuladas
- Caminho na UI: + Adicionar bloco → Tier List, ou digite / em um parágrafo vazio e escolha Tier List.
- Diretiva bruta: `opgg lol TierList`
- Campos serializados em ordem: `schemaVersion, segment, assetType, preset, rows, unranked, ```, ## Synergy, > Teamfight impact, ```opgg lol TierList latest, schemaVersion, segment, index, ```, ### Best, Reliable pairings, ```opgg lol TierList latest, schemaVersion, segment, index, ```, ### Good, ```opgg lol TierList latest, schemaVersion, segment`
- Requisito de criação: pelo menos um recurso válido precisa ser colocado em um tier
- Estado de sucesso: linhas, IDs de paleta, descrições e recursos ranqueados são renderizados em ordem
- Falha comum: um enum desconhecido, ID de cor, recurso duplicado ou área de ranking vazia bloqueia a publicação

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol TierList latest
schemaVersion: 1
segment: START
assetType: CHAMPION
preset: SYNERGY
rows: [[1,[79]],[4,[75]]]
unranked: []
```

## Synergy

> Teamfight impact

```opgg lol TierList latest
schemaVersion: 1
segment: ROW
index: 0
```

### Best

Reliable pairings

```opgg lol TierList latest
schemaVersion: 1
segment: ROW
index: 1
```

### Good

```opgg lol TierList latest
schemaVersion: 1
segment: END
```
````

Exemplo inválido comum:

````markdown
```opgg lol TierList latest
schemaVersion: 1
segment: START
assetType: CHAMPION
preset: CUSTOM
rows: [[99,[103]],[2,[]]]
unranked: []
```

## Matchups

```opgg lol TierList latest
schemaVersion: 1
segment: ROW
index: 0
```

### S

```opgg lol TierList latest
schemaVersion: 1
segment: ROW
index: 1
```

### A

```opgg lol TierList latest
schemaVersion: 1
segment: END
```
````

### Planejador de rota da selva (`JungleRoute`)

- Use quando: descrever e comparar rotas da selva
- Caminho na UI: + Adicionar bloco → Planejador de rota da selva, ou digite / em um parágrafo vazio e escolha Planejador de rota da selva.
- Diretiva bruta: `opgg lol JungleRoute`
- Campos serializados em ordem: `map, title, plans`
- Requisito de criação: pelo menos um plano precisa ter duas ou mais visitas. Os horários de chegada inseridos precisam ser estritamente crescentes
- Estado de sucesso: a rota ordenada aparece no minimapa e na lista de visitas
- Falha comum: um horário de chegada inserido que não aumenta deixa a rota incompleta

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol JungleRoute latest
map: 1
title: "Blue-side opening"
plans: [[PLAN_A,"Primary route",[[5,CLEAR,95],[4,CLEAR,120]]],[PLAN_B,"Alternative route",[]]]
```
````

Exemplo inválido comum:

````markdown
```opgg lol JungleRoute latest
map: 1
title: "Opening"
plans: [[PLAN_A,"Primary",[[5,CLEAR,120,""],[4,CLEAR,95,""]]],[PLAN_B,"Alternative",[]]]
```
````

### Prévia de link (`LinkEmbed`)

- Use quando: mostrar uma página externa compatível como prévia
- Caminho na UI: + Adicionar bloco → Prévia de link, ou digite / em um parágrafo vazio e escolha Prévia de link.
- Diretiva bruta: `opgg lol LinkEmbed 1`
- Campos serializados em ordem: `url`
- Requisito de criação: use uma URL absoluta http ou https sintaticamente válida
- Estado de sucesso: a prévia do link pretendido é resolvida
- Falha comum: uma URL insegura ou malformada invalida a cerca. Confirme separadamente a prévia resolvida

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol LinkEmbed 1
url: "http://www.op.gg/"
```
````

Exemplo inválido comum:

````markdown
```opgg lol LinkEmbed 1
url: "javascript:alert(1)"
```
````

### Registro de partida (`MatchRecord`)

- Use quando: citar um participante de uma partida específica do OP.GG
- Caminho na UI: + Adicionar bloco → Registro de partida, ou digite / em um parágrafo vazio e escolha Registro de partida.
- Diretiva bruta: `opgg lol MatchRecord 1`
- Campos serializados em ordem: `match`
- Requisito de criação: região, ID da partida, timestamp positivo e ID de participante de 1 a 32 precisam ser válidos
- Estado de sucesso: o jogador e o registro de partida pretendidos são carregados
- Falha comum: uma região sem suporte, ID de partida, timestamp ou ID de participante malformado invalida a cerca

Exemplo válido gerado pelo serializador:

````markdown
```opgg lol MatchRecord 1
match: [KR,"KR_1234567890",1785141570000,4]
```
````

Exemplo inválido comum:

````markdown
```opgg lol MatchRecord 1
match: [KR,"KR_1234567890",1785141570000,0]
```
````

### YouTube (`YouTube`)

- Use quando: incorporar um vídeo relevante do YouTube
- Caminho na UI: + Adicionar bloco → YouTube, ou digite / em um parágrafo vazio e escolha YouTube.
- Diretiva bruta: `opgg YouTube`
- Campos serializados em ordem: `videoId`
- Requisito de criação: use um ID de vídeo do YouTube compatível
- Estado de sucesso: o player do vídeo pretendido é carregado
- Falha comum: um ID de vídeo inválido ou sem suporte bloqueia a publicação

Exemplo válido gerado pelo serializador:

````markdown
```opgg YouTube
videoId: M7lc1UVf-VE
```
````

Exemplo inválido comum:

````markdown
```opgg YouTube
videoId: not-a-video-id
```
````

## Validação da prévia e da publicação

Trate estes códigos como identificadores internos. Explique a ação de recuperação ao usuário em vez de expor apenas o código.

| Código interno | Significado | Recuperação |
| --- | --- | --- |
| `EMPTY_TITLE` | O título da build está vazio. | Insira um título. |
| `EMPTY_BODY` | Não há conteúdo publicável no corpo. | Adicione texto ou um bloco compatível. |
| `EMPTY_TIER_LIST` | Uma Tier List não tem recurso ranqueado. | Mova pelo menos um recurso para um tier. |
| `INCOMPLETE_JUNGLE_ROUTE` | Nenhuma rota tem duas ou mais visitas, ou um horário de chegada inserido não aumenta. | Complete uma rota e corrija a ordem dos horários de chegada. |
| `INCOMPATIBLE_GAME_MODE_BLOCK` | Um bloco não está disponível no modo de jogo selecionado no documento. | Altere GameMode ou substitua o bloco por um compatível com esse modo. |
| `INVALID_CLASSIC_BUILD` | Um espaço de runa Classic ou uma distribuição de maestrias viola as regras Classic. | Para runas Classic, associe cada runa ao tipo de espaço correto. Para maestrias Classic, mantenha cada nível dentro do máximo da maestria, cumpra os pré requisitos e distribua no máximo 30 pontos. |
| `INVALID_MATCH_RECORD_FENCE` | Uma referência MatchRecord é inválida. | Cole um link válido de partida do OP.GG e resolva novamente. |
| `INVALID_LINK_EMBED_FENCE` | Uma referência LinkEmbed é inválida. | Use uma URL válida em formato compatível. |
| `INVALID_YOUTUBE_FENCE` | Uma referência do YouTube é inválida. | Use uma URL ou ID de vídeo do YouTube compatível. |
| `INVALID_GAME_MODE_METADATA` | Os metadados GameMode não são RANKED nem CLASSIC. | Defina GameMode como RANKED ou CLASSIC. |
| `INVALID_SUMMONER_CARD_CAPSULE` | A cápsula fixa SummonerCard é inválida. | Remova-a ou selecione a conta Riot novamente no modo de formulário. |
| `OPAQUE_DIAGNOSTIC` | Conteúdo bruto preservado tem um diagnóstico. | Corrija ou remova o código fonte bruto diagnosticado. |
| `FORM_CONVERSION_BLOCKED` | Conteúdo bruto não pode ser convertido com segurança para blocos de formulário. | Resolva todos os diagnósticos brutos antes de voltar ao modo de formulário. |

## Editar ou duplicar uma build existente

- Ao editar um guia publicado, campeão, posição e patch ficam bloqueados.
- Para usar um novo patch como alvo, duplique o guia existente e edite a cópia.
- Uma duplicata pode preservar o autor original e o link de origem.

## Solução de problemas

- **Falha no salvamento automático** — Sintoma: o rascunho não pôde ser salvo. Causa provável: o armazenamento do navegador está indisponível ou cheio. Recuperação: copie seu trabalho para um local seguro, restaure o acesso ao armazenamento do navegador e faça outra edição para tentar salvar de novo.
- **Rascunho salvo ilegível** — Sintoma: a carga original é exibida para recuperação. Causa provável: o formato armazenado está malformado ou obsoleto. Recuperação: copie qualquer texto necessário e depois decida se quer substituir o rascunho ilegível antes de continuar.
- **Incompatibilidade de dados do patch** — Sintoma: nomes e ícones de recursos são de um patch diferente. Causa provável: os metadados mudaram antes de os dados de recursos serem recarregados. Recuperação: recarregue os dados de recursos do patch selecionado.
- **Não é possível voltar ao modo de formulário** — Sintoma: diagnósticos brutos continuam visíveis. Causa provável: código fonte malformado ou desconhecido não pode ser convertido sem perda. Recuperação: corrija todos os diagnósticos no Markdown bruto.
- **Cerca estruturada inválida** — Sintoma: a Prévia lista um erro de bloco. Causa provável: uma diretiva, campo, enum, ID ou valor de lista compacta é inválido. Recuperação: compare com o exemplo gerado pelo serializador e corrija o código fonte.
- **Login obrigatório para publicar** — Sintoma: a escrita e a Prévia funcionam, mas a publicação falha com erro de autorização. Causa provável: não há sessão autenticada. Recuperação: faça login normalmente, confirme que o rascunho permanece e publique novamente.

## Fonte e atualização

- Este é o guia oficial do OP.GG para o Champion Build Builder.
- Quando uma resposta precisar de fonte, cite a página HTML canônica: https://op.gg/pt/lol/user-guides/help
- O parser e o serializador implantados com o criador são a autoridade final para a sintaxe bruta.
- Este documento explica a ferramenta de criação. Ele não fornece builds recomendadas específicas de patch.
