Todos los artículos

Sistema de logros en Discord: registra certificaciones y logros personalizados

Equipo de CordBase

Para registrar certificaciones y logros personalizados en Discord, crea una tabla de concesiones: el miembro, una certificación elegida de una lista que defines tú, la fecha y quién la concedió. Solo los instructores pueden escribir en ella. CordBase, que es el producto que hacemos nosotros, convierte esa tabla en comandos de barra (slash commands), así que cualquiera puede comprobar quién tiene qué. Registra concesiones; no da roles.

Los propios admins definen las certificaciones, así que sirve para un clan con sus propios rangos, una unidad de simulación de vuelo o milsim con niveles de cualificación, un grupo de estudio con módulos aprobados o cualquier comunidad que reparta sus propias insignias. No hay nada predefinido.

Lo que tendrás al final

  • Un comando /certifications con las acciones add, query, view, update y delete.
  • Una fila por concesión, así que un miembro con tres certificaciones tiene tres filas.
  • Una lista de certificaciones que editas en la web cada vez que te inventas una nueva.
  • Permisos para que los instructores registren concesiones, los admins puedan quitarlas y los miembros solo puedan mirar.

Paso 1: Crea la tabla de concesiones

  1. Inicia sesión en cordbase.gg con Discord, elige tu servidor y añade el bot cuando se te pida.
  2. Crea una tabla llamada "Certifications" (el comando será /certifications) con las columnas de abajo, en este orden.
  • Member (miembro, obligatorio): quién la ha conseguido.
  • Certification (opción, obligatorio): escribe tus certificaciones como opciones, por ejemplo Basic Rescue, Instrument Rating, Squad Leader, Founding Member.
  • Awarded on (fecha, obligatorio): en formato AAAA-MM-DD.
  • Awarded by (miembro, obligatorio): el instructor.
  • Record (texto, obligatorio): una etiqueta corta como "Thrain, Basic Rescue".
  • Notes (texto, opcional): nota del examen, número de intento, un enlace a la prueba.
  • Expires on (fecha, opcional): solo para certificaciones que caducan.

El orden es intencionado. Los resultados de query solo muestran las cuatro primeras columnas, así que las útiles van primero. La columna Record existe porque el selector de filas de view, update y delete lista las filas por la primera columna de texto de la tabla, y sin una columna de texto el selector muestra los ID de miembro en bruto. Los nombres de opción de Discord salen de las etiquetas, en minúsculas y con guiones bajos, por ejemplo awarded_on.

CordBase tiene una plantilla Control de logros, pero guarda un solo miembro "unlocked by" por fila y puntos por logro. Una tabla de concesiones es más sencilla cuando mucha gente consigue lo mismo.

Paso 2: Deja escribir solo a los instructores

Las tablas nuevas están abiertas a todo el mundo, incluido borrar, así que configura los roles primero. En los permisos de la tabla en la web:

  • Rol de instructor: escritura (pueden usar add y update).
  • Rol de instructor jefe o admin: admin (también delete).
  • Un rol que tengan todos los miembros: lectura, para que puedan consultar.

En cuanto configuras algún rol, los miembros sin uno de los roles de la lista no pueden usar la tabla. El acceso de escritura cubre todas las filas, no solo las del propio instructor, y los Administradores de Discord siempre tienen acceso total. Consulta tablas y permisos para más detalles.

Paso 3: Registra una concesión

/certifications add member:@Thrain certification:Basic Rescue awarded_on:2026-10-10 awarded_by:@Priya record:Thrain, Basic Rescue notes:Passed practical, second attempt expires_on:2027-10-10

La certificación es un desplegable con tus opciones, así que la ortografía se mantiene igual. view muestra quién ejecutó el comando y cuándo, lo que sirve para comprobar el campo "awarded by" escrito a mano. Para corregir un error o poner una caducidad después, ejecuta /certifications update y elige la fila de la lista. Para añadir una certificación nueva, edita la tabla en la web y añade una opción; el comando se actualiza al guardar.

Paso 4: Consulta

  • Quién tiene una certificación: /certifications query certification:Basic Rescue
  • Todo lo de un miembro: /certifications query member:@Thrain
  • Si un miembro la tiene: /certifications query member:@Thrain certification:Basic Rescue
  • Todo completo, incluidas notas y caducidad: /certifications view y elige la fila.

Los filtros se combinan. Los resultados salen de más nuevo a más antiguo, 10 por defecto y hasta 25 con limit, sin paginación. Las respuestas se publican en el canal donde se ejecuta el comando, así que ejecuta los comandos de instructor en un canal de instructores si los registros son privados. Para ver la lista completa, el propietario del servidor puede usar la tabla en la web.

Cuándo te conviene otra cosa

  • Roles y permisos en Discord. CordBase no da ni quita roles de Discord. Si una certificación debe desbloquear un canal o verse en la lista de miembros, da el rol a mano en Discord o usa un bot de roles como Carl-bot, y usa CordBase como registro de quién concedió qué y cuándo.
  • Concesiones automáticas. Aquí nada se concede por actividad o nivel. Un bot de niveles con recompensas de rol encaja con "llega al nivel 10 y consigue el rol".
  • Cursos y exámenes de verdad. Si los miembros necesitan lecciones, cuestionarios y evaluaciones con nota, usa una plataforma de aprendizaje como Moodle y registra aquí el aprobado si quieres que se vea en Discord.

Límites que conviene conocer

  • La caducidad es solo una fecha. CordBase no avisa a nadie ni marca las certificaciones caducadas, y las fechas se guardan tal como se escriben, sin comprobarlas. Los filtros de fecha buscan un día exacto, así que no puedes pedir todo lo que caduca este mes. Las publicaciones programadas (planes de pago) publican un resumen de la tabla, no avisos por fila.
  • 25 certificaciones por lista. Discord limita una lista de opciones a 25. Si te pasas, divídelas en dos tablas de concesiones.
  • Límites del plan. Free son 2 tablas y 100 filas cada una, y cada concesión es una fila. Pro (8 US$/mes) son tablas ilimitadas, 10 000 filas por tabla. Max (15 US$/mes) son 50 000 filas. La exportación a CSV y JSON está en todos los planes. Consulta precios.
  • Sin ranking salvo que añadas una columna de número, como horas o puntos.
  • Las tablas se diseñan en la web. Los miembros no pueden crearlas desde Discord. Las filas eliminadas se purgan a los 30 días.

Lo que la gente pregunta

¿Puede CordBase dar un rol de Discord a un miembro cuando le concedo una certificación?

No. Registra la concesión y no toca el sistema de roles de Discord. Da el rol a mano, o combina la tabla con un bot de roles, y usa CordBase como registro de quién concedió qué.

¿Puede avisarme cuando caduca una certificación?

No. Una fecha de caducidad es una columna de fecha normal que puedes leer con view o en la tabla web. CordBase no envía recordatorios, y los filtros de fecha buscan un día exacto. Revisa la tabla con la frecuencia que tú decidas.

¿Pueden los miembros ver sus propias certificaciones?

Sí. Con acceso de lectura, un miembro puede ejecutar query con su propio nombre en la opción member. El acceso de lectura también le permite consultar a otros miembros, así que si los registros son privados, da acceso solo a los instructores.