Ir al contenido

Límites

El código se revisa y corre dentro de límites para que un comando no pueda ralentizar ni inundar un servidor. Pasar un límite detiene el código con un error que dice cuál.

Límite Valor
Longitud del código 10 000 caracteres
Pasos (cuenta cada acción, valor y llamada a una función) 10 000
Tiempo corriendo el código 250 milisegundos
Tiempo en total, contando la espera de los datos guardados 3 segundos (2 segundos cuando se usó un botón o un menú)
Lecturas y escrituras de datos guardados 25 por uso
Valores guardados por servidor 500, de hasta 4000 caracteres
Vueltas de todos los bucles juntos 1000
Caracteres impresos mientras corre 20 000 (Discord luego limita el mensaje a 2000)
Longitud de un texto hecho por una función 20 000 caracteres
Elementos en una lista 2000
Números hechos por seq 1000
Paréntesis uno dentro de otro 20
Bloques (if, range, with) uno dentro de otro 20

Acciones por ejecución: 5 mensajes, 2 mensajes directos, 5 roles dados, 5 roles quitados, 5 reacciones, 1 borrado y 1 respuesta a un botón (respond o updateMessage). Mira Acciones.

Un mensaje contiene hasta 5 filas de componentes, una fila hasta 5 botones o 1 menú, un menú hasta 25 opciones. Un servidor puede tener hasta 25 comandos con un activador propio.

Cuando los comandos personalizados en código se abran a más servidores, los límites pueden ser distintos para los servidores Free y Premium.

  • Un bucle dentro de un bucle multiplica los pasos: range seq 0 100 dentro de range seq 0 100 son 10 000 vueltas, por encima del límite de 1000.
  • Para repetir texto, no lo dupliques en un bucle. Un texto que crece demasiado se detiene.
  • Si llegas al límite de pasos por accidente, busca un range sobre una lista grande.