Calcolatore difficoltà incontri D&D e budget XP
Costruisca un combattimento di quinta edizione adatto al gruppo senza affidarsi alle supposizioni.
Esegui gratis nel browser
Inserisca un livello per ogni personaggio giocante e un grado di sfida per ogni mostro. Il calcolatore somma gli XP indicati dei mostri, applica il moltiplicatore standard per numero di nemici e dimensione del gruppo, determina le soglie di XP facile, media, difficile e letale e comunica la difficoltà risultante. È un riferimento rapido per il master che prepara una sessione o controlla un incontro durante la partita.
Descriva l'intero gruppo e tutti i mostri
Aggiunga una voce in livelli dei giocatori per ogni personaggio che parteciperà. La ripetizione è voluta: quattro personaggi di livello 3 vanno inseriti come 3, 3, 3 e 3. Il numero delle voci determina la dimensione del gruppo, quindi non esiste un conteggio separato che possa risultare incoerente con i livelli. Aggiunga poi un grado di sfida per ogni creatura ostile. Per i gradi frazionari usi i decimali: 0.125 per GS 1/8, 0.25 per GS 1/4 e 0.5 per GS 1/2. Sono ammessi anche GS 0 e i valori interi fino a 30. Includa i mostri che dovrebbero compiere azioni rilevanti nella stessa battaglia, ma escluda pericoli, creature neutrali e rinforzi improbabili. Se lo scontro prevede ondate distinte e concede tempo per recuperare o riposizionarsi, calcolare ogni ondata separatamente offre spesso un'indicazione più utile rispetto a considerare tutte le creature presenti insieme. È necessario almeno un personaggio, perché senza un gruppo non è possibile determinare le soglie dell'incontro.
Comprenda il calcolo del budget di XP
Ogni livello del personaggio ha quattro soglie di XP pubblicate: facile, media, difficile e letale. Il calcolatore somma tali valori per tutto il gruppo e gestisce quindi naturalmente gruppi con livelli diversi. Converte inoltre ogni grado di sfida nel relativo valore in XP e somma i risultati come XP base dei mostri. Più mostri sono pericolosi di una sola creatura con gli stessi XP complessivi, perché dispongono di più turni e possono minacciare più bersagli; il metodo standard applica dunque un moltiplicatore basato sul numero dei nemici. Il moltiplicatore sale di una fascia per gruppi con meno di tre personaggi e scende di una fascia con sei o più. Gli XP modificati servono soltanto a classificare la difficoltà; gli XP base restano il riferimento per la normale ricompensa. Il risultato mostra entrambi i valori, il moltiplicatore scelto e le quattro soglie, così Lei può verificare chiaramente la ragione della classificazione. I valori inferiori alla soglia media vengono classificati come facili, mantenendo le quattro categorie richieste.
Usi la difficoltà come guida, non come promessa
Un budget di XP è un punto di partenza coerente, ma non può rappresentare ogni dettaglio tattico. Terreno, sorpresa, distanza, copertura, sinergie tra mostri, risorse consumate, oggetti magici, ottimizzazione ed esperienza dei giocatori possono cambiare notevolmente il pericolo reale. La classificazione letale indica che gli XP modificati raggiungono quella soglia; non significa che un personaggio debba morire. Allo stesso modo, facile non garantisce che la sfortuna non crei rischi. Valuti con particolare attenzione le capacità che aggirano la normale pressione sui punti ferita, i mostri capaci di abbattere con un colpo un personaggio di basso livello e gli scontri su campi di battaglia stretti. Il metodo diventa inoltre meno preciso quando molti nemici deboli aumentano il moltiplicatore senza costituire una minaccia concreta. Usi le soglie restituite per modificare la formazione: rimuova un mostro, riduca un grado di sfida oppure divida i nemici in ondate, quindi calcoli di nuovo. Per una giornata di avventura consideri anche gli altri incontri e le occasioni di riposo.
Casi d'uso
Preparare una sessione
Confronti la formazione prevista dei mostri con i livelli e le dimensioni esatte del gruppo prima della partita.
Regolare un incontro con livelli misti
Sommi le soglie individuali di personaggi con livelli diversi invece di stimare un livello medio.
Confrontare varianti dell'incontro
Aggiunga o rimuova mostri e confronti XP modificati, moltiplicatori e classificazioni prima della scelta finale.
Domande frequenti
Quali regole di D&D usa questo calcolatore?
Usa le soglie di XP, i valori dei mostri e i moltiplicatori standard per costruire incontri di quinta edizione, comunemente associati alle regole base del 2014.
Come si inseriscono i gradi di sfida frazionari?
Inserisca GS 1/8 come 0.125, GS 1/4 come 0.25 e GS 1/2 come 0.5.
Perché gli XP base e quelli modificati sono diversi?
Gli XP base sommano i valori dei mostri. Gli XP modificati applicano il moltiplicatore per classificare la difficoltà, non per determinare la normale ricompensa.
Come viene considerata la dimensione del gruppo?
Il numero dei livelli inseriti stabilisce la dimensione. Sotto i tre personaggi il moltiplicatore sale di una fascia; con sei o più scende di una.
Un incontro può essere sotto la soglia facile?
L'output resta nelle quattro categorie richieste, quindi ogni valore modificato inferiore alla soglia media viene classificato come facile.
Quanto costa un calcolo tramite API?
Ogni richiesta API costa $0.002. Lo stesso calcolo deterministico può essere eseguito anche nel browser.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/game/dnd-encounter-difficulty-calc \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"player_levels":[3,3,3,3],"monster_challenge_ratings":[1,1]}'const res = await fetch("https://api.kit.forhosting.com/game/dnd-encounter-difficulty-calc", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"player_levels": [
3,
3,
3,
3
],
"monster_challenge_ratings": [
1,
1
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/dnd-encounter-difficulty-calc",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"player_levels": [
3,
3,
3,
3
],
"monster_challenge_ratings": [
1,
1
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/dnd-encounter-difficulty-calc", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"player_levels":[3,3,3,3],"monster_challenge_ratings":[1,1]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"player_levels":[3,3,3,3],"monster_challenge_ratings":[1,1]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/dnd-encounter-difficulty-calc", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"player_levels": [
3,
3,
3,
3
],
"monster_challenge_ratings": [
1,
1
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.dnd_encounter_difficulty_calc",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_players | 20 |
max_monsters | 50 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |