Wiki / Core Features / Niveles y XP / Importar niveles desde otro bot

Importar niveles desde otro bot

Actualizado por Maxime_48 · hace 1 hora · Visitas: 112

Idiomas: English Français Deutsch Español Português (Brasil) Italiano Nederlands Polski Türkçe Русский 日本語 한국어 中文

Cambiar de bot de niveles normalmente significa decirle a tu comunidad que todos vuelven al nivel 0. No tienes por qué hacerlo. Abre Niveles → Importar en el panel y trae la XP de tus miembros: directamente desde MEE6, o desde una exportación JSON de cualquier otro bot de niveles.

No se escribe nada hasta que hayas visto una vista previa y la hayas confirmado.

¿Vienes de MEE6 en concreto? Cambiar de MEE6 a YAWBDB recorre toda la migración, no solo la pantalla de importación.

La pestaña Importar de la página Niveles con la elección de origen, el campo del ID del servidor y el botón Vista previa señalados

  1. Elige el origen: MEE6 o un archivo JSON.
  2. Introduce el ID del servidor de Discord en MEE6.
  3. Vista previa muestra lo que se importaría. No se escribe nada hasta que lo confirmes.

📥 Importar desde MEE6

Elige MEE6, introduce el ID del servidor de Discord (el tuyo ya viene rellenado) y pulsa Vista previa.

La tabla de clasificación de MEE6 tiene que ser pública. En el panel de MEE6, activa "Make my server's leaderboard public". Sin eso, MEE6 se niega a entregar los datos y la importación se detiene con una explicación en lugar de dar un resultado parcial en silencio.

Puedes importar desde un servidor distinto del que estás configurando: solo pega el ID de ese servidor. Es útil si estás unificando dos comunidades.

La vista previa muestra cuántos miembros se encontraron, cuántos de ellos ya tienen XP aquí y una muestra de lo más alto de la tabla de clasificación.


📄 Importar desde un archivo JSON

La API pública de Amari se cerró, y la mayoría de los demás bots de niveles nunca tuvieron una, así que la segunda vía es un archivo. Elige Archivo JSON y sube una exportación.

El analizador es deliberadamente tolerante. Acepta:

  • una simple matriz JSON de miembros,
  • un objeto que contenga una matriz players (una respuesta sin procesar de MEE6 sirve tal cual),
  • un objeto que contenga una matriz data (el formato que usaba Amari; la XP como cadena de texto no es problema),
  • y los alias habituales de los campos: id / user_id / discord_id, y xp / exp / experience.

Cada entrada solo necesita dos cosas para ser utilizable: un ID de usuario de Discord y una cantidad de XP. Las entradas a las que les falte alguna se omiten en lugar de hacer fallar todo el archivo.

Si el archivo también incluye recompensas de rol (role_rewards o rewards), también se recogen.

El ciclo completo viene incluido: ↓ Exportar JSON de Niveles → Tabla de clasificación produce un archivo exactamente con este formato, con la matriz players incluida. Exporta desde un servidor e importa en otro, o guárdalo como copia de seguridad que puedes volver a traer directamente. Consulta Tarjeta de rango y tabla de clasificación pública.


📐 La curva de niveles: la decisión que vale la pena leer

Dos bots pueden tener exactamente la misma XP y mostrar niveles distintos, porque el nivel es solo una consulta sobre una curva, y no todos los bots usan la misma.

MEE6 cobra 5·l² + 50·l + 100 de XP para salir del nivel l. La fórmula de YAWBDB tiene la misma forma, pero está indexada según el nivel que se alcanza. La consecuencia práctica: importar la XP de MEE6 con nuestro preajuste predeterminado hace que todos los miembros bajen exactamente un nivel. Su XP no se toca y es correcta; simplemente corresponde a un peldaño menos.

Por eso la vista previa lo mide con tus datos reales y te lo dice claramente, por ejemplo: "412 de los 900 miembros que pudimos comparar cambiarían de nivel aquí: hasta 1 nivel menos."

Después eliges:

  • Mantener tu curva: la XP se importa exactamente, los niveles se recalculan con tu fórmula. Los miembros ven que su número baja en uno.
  • Adoptar la curva de niveles del origen: YAWBDB cambia la fórmula de este servidor al preajuste personalizado a = 5, b = 40, c = 55, que reproduce la curva de MEE6 hasta la última unidad de XP. Todos conservan el nivel que tenían.

Adoptar la curva es un ajuste de todo el servidor, así que también recalcula el nivel de los miembros que ya estaban aquí antes de la importación. Su XP nunca se modifica, solo el nivel al que corresponde. Es a propósito: dejar a la mitad de la tabla de clasificación con la fórmula antigua parecería un error.

Si tu servidor ya usa una curva idéntica a la de MEE6, la pregunta ni siquiera se hace.


⚙️ Miembros que ya tienen XP aquí

Elige qué ocurre en caso de coincidencia:

Opción Qué hace
Conservar la XP más alta Importa solo cuando el origen tiene más. La opción más segura y la predeterminada.
Sustituir por la XP importada Gana el origen, incluso si es menor.
No tocarlos Solo se importan los miembros que no tienen nada de XP aquí.

Los miembros que están en la importación pero nunca han hablado aquí nunca se ven afectados por el decaimiento de XP hasta que realmente se vuelvan activos: una importación no pone en marcha ningún contador de decaimiento.


🎖️ Recompensas de rol

Si el origen expone recompensas de rol, puedes importarlas al mismo tiempo. Cada una se añade a tu gráfico de recompensas como un par "nivel alcanzado → asignar rol".

Primero se comprueban los caminos existentes, así que volver a ejecutar una importación no apila ramas duplicadas en tu lienzo. Si tu gráfico de recompensas está en su límite de nodos, la importación rellena lo que puede y te dice cuántas se añadieron de cuántas se encontraron.


🔕 Lo que una importación no hace

Una importación es una migración de datos, no un evento en vivo:

  • no se envía ningún mensaje de subida de nivel, por muchos niveles que gane un miembro,
  • no se dispara ninguna recompensa con carácter retroactivo: el grafo no se reproduce sobre el historial importado,
  • las recompensas de rol que importaste se aplican desde el siguiente nivel que alcance un miembro.

Esto es deliberado. Anunciar miles de subidas de nivel a la vez inundaría el servidor, y asignar roles retroactivamente a toda una tabla de clasificación rara vez es lo que realmente quieres.


⏳ Mientras se ejecuta

Las tablas de clasificación grandes se importan en segundo plano. La página muestra una barra de progreso y puedes cerrarla: la importación sigue y el progreso sigue ahí cuando vuelves.

Al terminar obtienes un desglose: miembros añadidos, actualizados, omitidos y recompensas de rol importadas.

Solo puede ejecutarse una importación a la vez por servidor.


👍 Orden recomendado

  1. Configura primero Leveling (ritmo de XP, tiempo de espera, canal de subida de nivel).
  2. Ejecuta la Vista previa y lee la comparación de curvas.
  3. Decide la curva antes de importar: cambiarla después significa que el nivel de todos los miembros se mueve otra vez.
  4. Importa y luego revisa Niveles → Tabla de clasificación.
  5. Añade o ajusta recompensas en el gráfico de recompensas.