---
title: "Guida alla scrittura per OP.GG Champion Build Builder"
description: "Riferimento per assistenti AI e browser agent su scrittura, raw Markdown, validazione e recupero."
language: it
canonical: https://op.gg/it/lol/user-guides/help
---

# Guida alla scrittura per OP.GG Champion Build Builder

> Istruzioni per assistenti AI e browser agent che spiegano o usano OP.GG Champion Build Builder.

Questa è la guida leggibile da macchina in Italiano per il builder attuale.

- Canonical HTML: https://op.gg/it/lol/user-guides/help
- URL Markdown: https://op.gg/it/lol/user-guides/help.md
- URL nuova build: https://op.gg/it/lol/user-guides/new
- URL elenco build: https://op.gg/it/lol/user-guides

## Scegli una modalità di scrittura

- Usa l'editor con modulo come opzione predefinita.
- Usa il raw Markdown solo quando l'utente richiede il formato sorgente o una modifica di testo ampia richiede controllo diretto.
- Prima di caricare un esempio o sostituire contenuti, controlla la bozza esistente e lo stato del salvataggio automatico.
- Controlla sempre Preview e il suo stato di validazione prima di pubblicare.

## Autenticazione e persistenza della bozza

- La bozza viene salvata nel browser attuale, non nel tuo account.
- La stessa bozza non compare automaticamente in un altro browser o su un altro dispositivo.
- Dopo una pubblicazione riuscita, la bozza di quella guida viene rimossa da questo browser.
- Il raw Markdown è una modalità avanzata per modificare direttamente la struttura del documento.
- Se il sorgente raw ha un problema, potresti non riuscire a tornare alla modalità modulo finché non correggi la diagnostica.
- La Summoner Card è contenuto fisso e non può essere modificata direttamente in raw Markdown.
- Non manipolare direttamente localStorage e non aggirare l'autenticazione richiesta per pubblicare.

## Crea una build con l'editor a modulo

1. Apri l'URL esatto New build indicato sopra.
2. Controlla se è stata ripristinata una bozza esistente nel browser e verifica lo stato del salvataggio automatico.
3. Imposta campione, titolo, posizione e patch.
4. Aggiungi tag di scopo o tag personalizzati e una Summoner Card opzionale quando richiesto.
5. Usa + Add block o il comando / per aggiungere i blocchi necessari.
6. Compila ogni blocco, poi disponi i blocchi in ordine di lettura.
7. Apri Preview e controlla ogni problema di validazione e il documento pubblico risultante.
8. Pubblica solo entro l'ambito richiesto dall'utente e solo dopo il successo di autenticazione e validazione.

## Tipi di blocco supportati

| Nome visibile all'utente | Tipo canonico | Direttiva raw |
| --- | --- | --- |
| Testo | `text` | `CommonMark paragraph` |
| Titolo 1 | `heading1` | `##` |
| Titolo 2 | `heading2` | `###` |
| Build oggetti | `ItemBuild` | `opgg lol ItemBuild` |
| Build rune | `RuneBuild` | `opgg lol RuneBuild` |
| Build rune Classic | `ClassicRuneBuild` | `opgg lol ClassicRuneBuild 1` |
| Build maestrie Classic | `ClassicMasteryBuild` | `opgg lol ClassicMasteryBuild 1` |
| Ordine abilità | `SkillOrder` | `opgg lol SkillOrder` |
| Incantesimi dell'evocatore | `SummonerSpells` | `opgg lol SummonerSpells` |
| Tier List | `TierList` | `opgg lol TierList` |
| Pianificatore percorso giungla | `JungleRoute` | `opgg lol JungleRoute` |
| Anteprima link | `LinkEmbed` | `opgg lol LinkEmbed 1` |
| Record partita | `MatchRecord` | `opgg lol MatchRecord 1` |
| YouTube | `YouTube` | `opgg YouTube` |
| Summoner Card | `SummonerCard` | Capsula di sola lettura. Aggiungila dal modulo |

Non presentare opaque o hr come normali blocchi aggiungibili dall'utente. SummonerCard è una capsula fissa, non un blocco del corpo ripetibile.

## Formato documento raw Markdown

Il sorgente del builder è un formato documento OP.GG incorporato in Markdown. È distinto dal CommonMark usato per consegnare questa pagina di aiuto.

```markdown
# Build Ahri mid

---
GameMode: LIVE
Champion: Ahri
Position: mid
Patch: latest
> Build di esempio centrata sulla lane
---

## Come giocare

Spiega qui il piano.
```

- Il primo H1 è il titolo della build.
- La sezione dei metadati è inserita tra delimitatori --- subito dopo l'H1.
- GameMode è RANKED o CLASSIC e seleziona il set di asset del documento.
- Position deve essere top, jungle, mid, adc o support.
- I titoli H2 e H3 mostrati corrispondono ai blocchi heading1 e heading2 del builder.

## Riferimenti agli asset

Usa Riot ID stabili nei token sorgente invece dei nomi visualizzati specifici della locale.

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

- I token Champion, item, spell, rune e shard richiedono ID interi positivi.
- I token Skill richiedono un ID campione positivo e Q, W, E o R maiuscole.
- Non usare link asset legacy opgg:// nel nuovo sorgente.
- Nomi e icone vengono risolti dalla locale attuale e dalla patch selezionata al rendering.

## Riferimento dei blocchi strutturati

Gli esempi validi sotto sono generati dal serializer attuale. Mantieni invariati ordine delle compact-list, stringhe tra virgolette, ID numerici ed enum maiuscoli.

### Build oggetti (`ItemBuild`)

- Quando usarlo: condividere scelte di oggetti iniziali, stivali, core e situazionali
- Percorso UI: + Add block → Build oggetti, oppure digita / in un paragrafo vuoto e scegli Build oggetti.
- Direttiva raw: `opgg lol ItemBuild`
- Campi serializzati in ordine: `starter, boots, core, situational`
- Requisito di scrittura: usa array compatibili con il serializer che contengono ID oggetto positivi
- Stato di successo: i quattro gruppi di oggetti vengono renderizzati nell'ordine serializzato
- Errore comune: un campo richiesto che non è un array invalida il fence. ID non positivi o nomi visualizzati potrebbero non risolversi in asset

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Build rune (`RuneBuild`)

- Quando usarlo: condividere percorsi di rune, rune selezionate e frammenti di statistica
- Percorso UI: + Add block → Build rune, oppure digita / in un paragrafo vuoto e scegli Build rune.
- Direttiva raw: `opgg lol RuneBuild`
- Campi serializzati in ordine: `primaryStyle, secondaryStyle, primaryRunes, secondaryRunes, shards`
- Requisito di scrittura: mantieni gli enum numerici dei percorsi prodotti dal serializer e ID runa o frammento positivi
- Stato di successo: entrambi i percorsi, le rune selezionate e i frammenti vengono renderizzati
- Errore comune: una lista di rune richiesta che non è un array invalida il fence. Stili o riferimenti non canonici potrebbero non essere renderizzati come previsto

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Build rune Classic (`ClassicRuneBuild`)

- Quando usarlo: condividere una pagina rune Classic da 30 slot
- Percorso UI: + Add block → Build rune Classic, oppure digita / in un paragrafo vuoto e scegli Build rune Classic.
- Direttiva raw: `opgg lol ClassicRuneBuild 1`
- Campi serializzati in ordine: `ruleset, slots`
- Requisito di scrittura: usa il ruleset CLASSIC_1 con non più di 30 coppie slot e ID runa. Ogni slot deve essere un intero univoco da 1 a 30, ogni ID runa deve essere un intero positivo e ogni runa deve corrispondere al tipo di slot
- Stato di successo: ogni runa Classic selezionata viene renderizzata in uno slot del tipo corrispondente
- Errore comune: un ruleset non supportato, uno slot duplicato, una runa assegnata a un tipo di slot incompatibile o una runa JADE sconosciuta bloccano la pubblicazione

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Build maestrie Classic (`ClassicMasteryBuild`)

- Quando usarlo: condividere un'assegnazione dell'albero maestrie Classic
- Percorso UI: + Add block → Build maestrie Classic, oppure digita / in un paragrafo vuoto e scegli Build maestrie Classic.
- Direttiva raw: `opgg lol ClassicMasteryBuild 1`
- Campi serializzati in ordine: `ruleset, ranks`
- Requisito di scrittura: usa il ruleset CLASSIC_1 con non più di 60 coppie ID maestria e rank. Ogni ID maestria positivo può comparire una sola volta, i rank devono essere interi da 1 a 5 e non superare il rank massimo di ciascuna maestria, i prerequisiti devono essere soddisfatti e il totale non deve superare 30 punti
- Stato di successo: i rank selezionati vengono renderizzati negli alberi maestria Classic
- Errore comune: un ruleset non supportato, una maestria duplicata, un rank non valido o una maestria JADE sconosciuta bloccano la pubblicazione

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Ordine abilità (`SkillOrder`)

- Quando usarlo: mostrare priorità abilità e ordine livello per livello
- Percorso UI: + Add block → Ordine abilità, oppure digita / in un paragrafo vuoto e scegli Ordine abilità.
- Direttiva raw: `opgg lol SkillOrder`
- Campi serializzati in ordine: `priority, order`
- Requisito di scrittura: priority e order possono contenere solo Q, W, E e R
- Stato di successo: priorità e sequenza vengono renderizzate nell'ordine salvato
- Errore comune: una chiave abilità sconosciuta invalida il fence

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Incantesimi dell'evocatore (`SummonerSpells`)

- Quando usarlo: consigliare una coppia di incantesimi dell'evocatore
- Percorso UI: + Add block → Incantesimi dell'evocatore, oppure digita / in un paragrafo vuoto e scegli Incantesimi dell'evocatore.
- Direttiva raw: `opgg lol SummonerSpells`
- Campi serializzati in ordine: `spells`
- Requisito di scrittura: usa un array di ID incantesimo interi positivi
- Stato di successo: la coppia di incantesimi selezionata viene renderizzata
- Errore comune: un valore spells che non è un array invalida il fence. ID non positivi o nomi visualizzati potrebbero non risolversi in incantesimi

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Tier List (`TierList`)

- Quando usarlo: classificare asset di campioni, oggetti o rune in righe etichettate
- Percorso UI: + Add block → Tier List, oppure digita / in un paragrafo vuoto e scegli Tier List.
- Direttiva raw: `opgg lol TierList`
- Campi serializzati in ordine: `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 di scrittura: almeno un asset valido deve essere inserito in un tier
- Stato di successo: righe, ID palette, descrizioni e asset classificati vengono renderizzati in ordine
- Errore comune: un enum sconosciuto, un ID colore, un asset duplicato o un'area classificata vuota bloccano la pubblicazione

Esempio valido generato dal serializer:

````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
```
````

Esempio non valido comune:

````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
```
````

### Pianificatore percorso giungla (`JungleRoute`)

- Quando usarlo: descrivere e confrontare percorsi giungla
- Percorso UI: + Add block → Pianificatore percorso giungla, oppure digita / in un paragrafo vuoto e scegli Pianificatore percorso giungla.
- Direttiva raw: `opgg lol JungleRoute`
- Campi serializzati in ordine: `map, title, plans`
- Requisito di scrittura: almeno un piano richiede due o più visite. Gli orari di arrivo inseriti devono essere strettamente crescenti
- Stato di successo: il percorso ordinato compare sulla minimappa e nella lista visite
- Errore comune: un orario di arrivo inserito non crescente rende il percorso incompleto

Esempio valido generato dal serializer:

````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",[]]]
```
````

Esempio non valido comune:

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

### Anteprima link (`LinkEmbed`)

- Quando usarlo: mostrare una pagina esterna supportata come anteprima
- Percorso UI: + Add block → Anteprima link, oppure digita / in un paragrafo vuoto e scegli Anteprima link.
- Direttiva raw: `opgg lol LinkEmbed 1`
- Campi serializzati in ordine: `url`
- Requisito di scrittura: usa un URL assoluto http o https sintatticamente valido
- Stato di successo: l'anteprima del link prevista viene risolta
- Errore comune: un URL non sicuro o malformato invalida il fence. Conferma separatamente l'anteprima risolta

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### Record partita (`MatchRecord`)

- Quando usarlo: citare un partecipante da una partita OP.GG specifica
- Percorso UI: + Add block → Record partita, oppure digita / in un paragrafo vuoto e scegli Record partita.
- Direttiva raw: `opgg lol MatchRecord 1`
- Campi serializzati in ordine: `match`
- Requisito di scrittura: region, game ID, timestamp positivo e participant ID da 1 a 32 devono essere validi
- Stato di successo: il giocatore e il record partita previsti vengono caricati
- Errore comune: una region non supportata, un game ID malformato, un timestamp o un participant ID invalidano il fence

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

### YouTube (`YouTube`)

- Quando usarlo: incorporare un video YouTube pertinente
- Percorso UI: + Add block → YouTube, oppure digita / in un paragrafo vuoto e scegli YouTube.
- Direttiva raw: `opgg YouTube`
- Campi serializzati in ordine: `videoId`
- Requisito di scrittura: usa un ID video YouTube supportato
- Stato di successo: il player video previsto viene caricato
- Errore comune: un ID video non valido o non supportato blocca la pubblicazione

Esempio valido generato dal serializer:

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

Esempio non valido comune:

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

## Validazione di anteprima e pubblicazione

Tratta questi codici come identificatori interni. Spiega all'utente l'azione di recupero invece di mostrare solo il codice.

| Codice interno | Significato | Recupero |
| --- | --- | --- |
| `EMPTY_TITLE` | Il titolo della build è vuoto. | Inserisci un titolo. |
| `EMPTY_BODY` | Non ci sono contenuti pubblicabili nel corpo. | Aggiungi testo o un blocco supportato. |
| `EMPTY_TIER_LIST` | Una Tier List non ha asset classificati. | Sposta almeno un asset in un tier. |
| `INCOMPLETE_JUNGLE_ROUTE` | Nessun percorso ha due o più visite, oppure un orario di arrivo inserito non aumenta. | Completa un percorso e correggi l'ordine degli orari di arrivo. |
| `INCOMPATIBLE_GAME_MODE_BLOCK` | Un blocco non è disponibile nella modalità di gioco selezionata del documento. | Cambia GameMode o sostituisci il blocco con uno supportato da quella modalità. |
| `INVALID_CLASSIC_BUILD` | Uno slot runa Classic o un'assegnazione maestria viola le regole Classic. | Per le rune Classic, abbina ogni runa al tipo di slot. Per le maestrie Classic, mantieni ogni rank entro il massimo della maestria, soddisfa i prerequisiti e assegna non più di 30 punti. |
| `INVALID_MATCH_RECORD_FENCE` | Un riferimento MatchRecord non è valido. | Incolla un link partita OP.GG valido e risolvilo di nuovo. |
| `INVALID_LINK_EMBED_FENCE` | Un riferimento LinkEmbed non è valido. | Usa un URL valido in un formato supportato. |
| `INVALID_YOUTUBE_FENCE` | Un riferimento YouTube non è valido. | Usa un URL YouTube o un ID video supportato. |
| `INVALID_GAME_MODE_METADATA` | Il metadato GameMode non è RANKED o CLASSIC. | Imposta GameMode su RANKED o CLASSIC. |
| `INVALID_SUMMONER_CARD_CAPSULE` | La capsula fissa SummonerCard non è valida. | Rimuovila o seleziona di nuovo l'account Riot in modalità modulo. |
| `OPAQUE_DIAGNOSTIC` | Un contenuto raw conservato ha una diagnostica. | Correggi o rimuovi il sorgente raw diagnosticato. |
| `FORM_CONVERSION_BLOCKED` | Il contenuto raw non può essere convertito in sicurezza in blocchi modulo. | Risolvi ogni diagnostica raw prima di tornare alla modalità modulo. |

## Modificare o duplicare una build esistente

- Quando modifichi una guida pubblicata, campione, posizione e patch sono bloccati.
- Per lavorare su una nuova patch, duplica la guida esistente e modifica la copia.
- Un duplicato può conservare autore originale e link sorgente.

## Risoluzione dei problemi

- **Errore di salvataggio automatico** — Sintomo: la bozza non è stata salvata. Causa probabile: lo storage del browser non è disponibile o è pieno. Recupero: copia il lavoro in un luogo sicuro, ripristina l'accesso allo storage del browser, poi fai un'altra modifica per riprovare il salvataggio automatico.
- **Bozza salvata non leggibile** — Sintomo: il payload originale viene mostrato per il recupero. Causa probabile: il formato salvato è malformato o obsoleto. Recupero: copia il testo che ti serve, poi decidi se sostituire la bozza non leggibile prima di continuare.
- **Mancata corrispondenza dei dati patch** — Sintomo: nomi e icone degli asset provengono da una patch diversa. Causa probabile: i metadati sono cambiati prima del ricaricamento dei dati asset. Recupero: ricarica i dati asset per la patch selezionata.
- **Impossibile tornare alla modalità modulo** — Sintomo: la diagnostica raw resta visibile. Causa probabile: un sorgente malformato o sconosciuto non può essere convertito senza perdita. Recupero: correggi ogni diagnostica nel raw Markdown.
- **Fence strutturato non valido** — Sintomo: Preview elenca un errore di blocco. Causa probabile: una direttiva, un campo, un enum, un ID o un valore compact-list non è valido. Recupero: confrontalo con l'esempio generato dal serializer e correggi il sorgente.
- **Accesso richiesto per pubblicare** — Sintomo: scrittura e Preview funzionano, ma la pubblicazione fallisce con un errore di autorizzazione. Causa probabile: non c'è una sessione autenticata. Recupero: accedi normalmente, conferma che la bozza sia rimasta e pubblica di nuovo.

## Fonte e aggiornamento

- Questa è la guida ufficiale OP.GG per il Champion Build Builder.
- Quando una risposta richiede una fonte, cita la pagina HTML canonica: https://op.gg/it/lol/user-guides/help
- Il parser e il serializer distribuiti con il builder sono l'autorità finale per la sintassi raw.
- Questo documento spiega lo strumento di scrittura. Non fornisce build consigliate specifiche per patch.
