Calculadora de XP RPG para o próximo nível
Esta calculadora de XP até o próximo nível informa exatamente quanta experiência um personagem ainda precisa para avançar.
Executar grátis
Informe o nível atual, a XP conquistada dentro desse nível e escolha uma curva de progressão linear ou quadrática. A ferramenta aplica uma fórmula fixa e transparente, mostra o limite completo do nível e subtrai o progresso atual. Ela ajuda você a balancear protótipos, conferir tabelas de progressão, planejar missões ou dar aos jogadores uma resposta clara sem montar uma planilha.
Escolha uma curva de progressão adequada ao seu projeto
Uma curva de experiência controla como o esforço necessário para avançar aumenta à medida que o personagem fica mais forte. Nesta calculadora, a curva linear define o limite do nível atual como 100 multiplicado pelo nível. Portanto, o nível 10 exige 1,000 XP obtidos durante esse nível antes da chegada ao nível 11. Essa curva acrescenta o mesmo incremento de 100 XP ao requisito em cada nível novo, deixando a progressão fácil de prever e explicar. A curva quadrática define o limite como 100 multiplicado pelo quadrado do nível atual. No nível 10, isso produz um limite de 10,000 XP. O crescimento quadrático começa suavemente, mas fica muito mais acentuado, fazendo os níveis altos demorarem bastante mais. Essas são curvas simples de referência, e não regras de um jogo específico. Elas servem para criar um protótipo de progressão, comparar dois ritmos ou estabelecer uma base que depois poderá receber recompensas, multiplicadores ou tabelas personalizadas. Selecione a curva que representa o ritmo que você deseja analisar.
Informe a XP conquistada no nível atual
O campo de XP atual representa o progresso dentro do nível vigente, e não toda a experiência acumulada pelo personagem. Se um personagem de nível 12 ganhou 875 XP desde que chegou a esse nível, informe 875. Com a curva linear, o limite é 1,200 XP, então a calculadora retorna 325 XP até o próximo nível. Manter a XP do nível separada da XP histórica elimina ambiguidades e acompanha os jogos que reiniciam a barra de experiência após cada avanço. A ferramenta também retorna o limite utilizado, a curva escolhida, os níveis atual e seguinte e o progresso informado. Assim, você pode registrar ou conferir o resultado sem reconstruir as entradas. A XP pode conter casas decimais quando o jogo concede experiência fracionária, mas o nível precisa ser um número inteiro positivo. A XP atual não pode ser negativa nem ultrapassar o limite da curva selecionada. Um valor acima do limite é recusado porque provavelmente representa XP acumulada ou um avanço de nível que ainda não foi aplicado.
Use o resultado para balancear recompensas e ritmo
O valor de XP restante se torna mais útil quando é comparado às recompensas disponíveis para o jogador. Divida o resultado pela recompensa média de uma missão para estimar quantas missões faltam, ou compare-o à XP de cada encontro para verificar se o nível ficará curto demais ou repetitivo. Você pode calcular vários níveis representativos nas duas curvas e observar em que ponto os ritmos começam a divergir. Uma curva linear sustenta um avanço constante e compreensível, enquanto uma curva quadrática cria metas cada vez mais longas em níveis altos, a menos que as recompensas também cresçam. Como as fórmulas são determinísticas, a mesma entrada sempre gera o mesmo resultado no navegador e pela API. Isso torna a calculadora adequada para scripts de build, planilhas de balanceamento, testes automatizados, ferramentas da comunidade e indicadores de progresso. O cálculo não simula bônus, experiência descansada, sistemas de prestígio, limites de nível ou tabelas próprias. Aplique essas regras antes de informar a XP ou use este resultado como uma referência neutra para avaliar uma progressão mais elaborada.
Casos de uso
Balancear recompensas de missões
Compare a XP restante aos prêmios habituais para estimar quantas atividades o jogador precisa concluir antes de avançar.
Criar um protótipo de progressão
Teste níveis representativos com curvas lineares e quadráticas antes de adotar uma tabela de experiência mais detalhada.
Exibir o progresso do jogador
Transforme a XP local do nível em um valor restante claro para painéis, bots e ferramentas complementares.
Perguntas frequentes
O que a curva linear de XP calcula?
Ela define o limite de XP do nível atual como 100 multiplicado pelo nível e depois subtrai a XP atual.
O que a curva quadrática de XP calcula?
Ela define o limite como 100 multiplicado pelo quadrado do nível atual e depois subtrai a XP atual.
A XP atual deve ser a experiência acumulada?
Não. Informe somente a XP conquistada dentro do nível atual. Primeiro converta a XP acumulada em progresso local do nível.
Por que uma XP acima do limite é recusada?
Esse valor indica que o personagem já deveria ter avançado ou que foi informada XP acumulada; um restante negativo seria enganoso.
A XP atual pode conter casas decimais?
Sim. Ela pode ser qualquer número finito não negativo até o limite, embora o nível atual precise ser inteiro.
Quanto custa um cálculo pela API?
Cada solicitação à API custa US$ 0,002. O mesmo cálculo determinístico também fica disponível gratuitamente no navegador.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/game/rpg-xp-to-next-level \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"current_level":12,"current_xp":875,"curve_type":"linear"}'const res = await fetch("https://api.kit.forhosting.com/game/rpg-xp-to-next-level", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"current_level": 12,
"current_xp": 875,
"curve_type": "linear"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/rpg-xp-to-next-level",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"current_level": 12,
"current_xp": 875,
"curve_type": "linear"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/rpg-xp-to-next-level", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"current_level":12,"current_xp":875,"curve_type":"linear"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"current_level":12,"current_xp":875,"curve_type":"linear"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/rpg-xp-to-next-level", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"current_level": 12,
"current_xp": 875,
"curve_type": "linear"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.rpg_xp_to_next_level",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |