Calculadora de XP RPG para el siguiente nivel
Esta calculadora de XP para el siguiente nivel indica exactamente cuánta experiencia necesita todavía un personaje para avanzar.
Ejecutar — gratis
Introduzca el nivel actual, la XP obtenida dentro de ese nivel y elija una curva de progresión lineal o cuadrática. La herramienta aplica una fórmula fija y transparente, muestra el umbral completo del nivel y resta el progreso actual. Resulta útil para equilibrar prototipos, revisar tablas de progresión, diseñar misiones u ofrecer a los jugadores una respuesta clara sin preparar una hoja de cálculo.
Elija una curva de progresión acorde con su diseño
Una curva de experiencia determina cómo aumenta el esfuerzo necesario para avanzar cuando un personaje se vuelve más fuerte. En esta calculadora, la curva lineal fija el umbral del nivel actual en 100 multiplicado por dicho nivel. Por tanto, el nivel 10 exige obtener 1,000 XP durante ese nivel antes de alcanzar el nivel 11. Esta curva suma el mismo incremento de 100 XP al requisito con cada nivel nuevo, por lo que la progresión resulta fácil de prever y explicar. La curva cuadrática fija el umbral en 100 multiplicado por el cuadrado del nivel actual. En el nivel 10, el resultado es un umbral de 10,000 XP. El crecimiento cuadrático comienza de forma suave, pero se vuelve mucho más pronunciado; por ello, los niveles altos requieren bastante más tiempo. Estas fórmulas son referencias sencillas, no reglas de un juego concreto. Sirven para crear el prototipo de un sistema de progresión, comparar dos ritmos o establecer una base que después pueda ajustar con recompensas, multiplicadores o tablas personalizadas. Seleccione la curva que represente el ritmo que desea analizar.
Introduzca la XP obtenida dentro del nivel actual
El campo de XP actual representa el progreso dentro del nivel vigente, no toda la experiencia acumulada por el personaje. Si un personaje de nivel 12 ha conseguido 875 XP desde que alcanzó ese nivel, introduzca 875. Con la curva lineal, el umbral es de 1,200 XP, de modo que la calculadora devuelve 325 XP para el siguiente nivel. Separar la XP de cada nivel de la XP histórica evita ambigüedades y refleja el funcionamiento de los juegos que reinician la barra de experiencia después de cada ascenso. La herramienta también devuelve el umbral utilizado, la curva elegida, los niveles actual y siguiente y el progreso indicado, para que pueda registrar o comprobar el resultado sin reconstruir los datos de entrada. La XP puede incluir decimales si el juego concede experiencia fraccionaria, pero el nivel debe ser un número entero positivo. La XP actual no puede ser negativa ni superar el umbral de la curva seleccionada. Un valor superior se rechaza porque probablemente corresponde a XP acumulada o a un ascenso de nivel no aplicado.
Use el resultado para equilibrar recompensas y ritmo
La cifra de XP restante es especialmente útil cuando se compara con las recompensas disponibles para el jugador. Divida el resultado entre la recompensa media de una misión para estimar cuántas misiones faltan, o compárelo con la XP de cada encuentro para comprobar si un nivel resultará demasiado breve o repetitivo. Puede calcular varios niveles representativos con ambas curvas y observar dónde comienzan a separarse sus ritmos. Una curva lineal favorece un avance constante y comprensible, mientras que una cuadrática crea objetivos cada vez más largos en niveles altos, salvo que también aumenten las recompensas. Como las fórmulas son deterministas, una misma entrada produce siempre el mismo resultado tanto en el navegador como mediante la API. Esto permite usar la calculadora en scripts de compilación, hojas de equilibrio, pruebas automatizadas, herramientas comunitarias y medidores de progreso para jugadores. El cálculo no simula bonificaciones, experiencia descansada, prestigio, topes de nivel ni tablas personalizadas. Aplique esas reglas antes de introducir la XP o utilice el resultado como referencia neutral para evaluar un sistema más complejo.
Qué puede hacer con ella
Equilibrar recompensas de misiones
Compare la XP restante con los premios habituales para estimar cuántas actividades necesita el jugador antes de avanzar.
Crear un prototipo de progresión
Pruebe niveles representativos con curvas lineales y cuadráticas antes de adoptar una tabla de experiencia más detallada.
Mostrar el progreso del jugador
Convierta la XP local del nivel en una cantidad restante clara para paneles, bots y herramientas complementarias.
Preguntas frecuentes
¿Qué calcula la curva de XP lineal?
Fija el umbral de XP del nivel actual en 100 multiplicado por ese nivel y después resta la XP actual.
¿Qué calcula la curva de XP cuadrática?
Fija el umbral en 100 multiplicado por el cuadrado del nivel actual y después resta la XP actual.
¿La XP actual debe ser la experiencia acumulada?
No. Introduzca únicamente la XP obtenida dentro del nivel actual. Primero debe convertir la XP acumulada en progreso local del nivel.
¿Por qué se rechaza una XP superior al umbral?
Ese valor indica que el personaje ya debería haber avanzado o que se introdujo XP acumulada; devolver un resto negativo resultaría engañoso.
¿Puede contener decimales la XP actual?
Sí. Puede ser cualquier número finito no negativo hasta el umbral, aunque el nivel actual debe ser un número entero.
¿Cuánto cuesta un cálculo mediante la API?
Cada solicitud a la API cuesta $0.002. El mismo cálculo determinista también está disponible gratis en el navegador.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
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)Ejemplo de solicitud
{
"current_level": 12,
"current_xp": 875,
"curve_type": "linear"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.rpg_xp_to_next_level",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |