Errores
Un error dice qué está mal y, cuando lo sabe, la línea y la columna: (line 2, column 10). Hay tres tipos. Los mensajes del bot salen en inglés, y aquí se explica qué hacer con cada uno.
Errores de sintaxis
Sección titulada «Errores de sintaxis»Se encuentran cuando se revisa el código, antes de que corra, así que no se hace nada.
| Mensaje | Qué hacer |
|---|---|
An action is never closed, a }} is missing |
Una acción empezó con {{ y nunca terminó. Revisa también las comillas: un " sin cerrar esconde el }} |
A ( is never closed |
Falta un paréntesis |
An "if" is never closed with "end" |
Añade {{ end }}. Lo mismo para range y with |
"end" without a block to close |
Hay un {{ end }} de más |
"else" outside an if, range or with |
else solo va dentro de esos bloques |
A command is empty |
Una acción no tiene nada, o termina con un ` |
Only a function can take arguments |
Algo como {{ 1 2 }}. La primera palabra debe ser una función |
Unexpected character "x" |
Un carácter que el lenguaje no conoce |
A number this big loses its last digits |
Escribe el ID entre comillas: "123456789012345678" |
A comment must end with */}} |
Cierra un comentario así: {{/* ... */}} |
Errores al correr
Sección titulada «Errores al correr»| Mensaje | Qué hacer |
|---|---|
There is no function called "x" |
Revisa el nombre en Funciones. Importan las mayúsculas y minúsculas |
add takes at least 2 arguments, got 1 |
La función necesita más argumentos |
The variable $x is not defined |
Créala primero con $x := ..., en un bloque que siga abierto |
Cannot read .X of nil |
Una parte del camino no existe. Comprueba antes con if o with |
Expected a number, got text "x" |
Una función de matemáticas recibió un texto que no es un número |
Cannot compare list with number |
lt, gt, le y ge necesitan dos números o dos textos |
The index 3 is out of the list (it has 2) |
Comprueba len antes de usar index |
Cannot divide by zero |
Comprueba el número antes de dividir |
Expected a role as a Discord ID in quotes |
Un ID debe ser texto de 15 a 22 dígitos |
cembed does not know "x" |
El mensaje lista los nombres que existen |
"break" only works inside a range |
break y continue necesitan un bucle |
Errores de límite
Sección titulada «Errores de límite»The code did too many steps, The code took longer than 250 ms, The loops ran more than 1000 turns,
The code printed more than 20000 characters, A text got too long y Too many actions of this kind significan que el código
pasó un límite de Límites. Haz el bucle más corto o divide el trabajo en dos comandos.
Datos guardados, botones y menús
Sección titulada «Datos guardados, botones y menús»| Mensaje | Qué hacer |
|---|---|
Stored data is not available here |
Los datos guardados funcionan en los comandos personalizados, no en otros lugares |
A key is a text of 1 to 100 letters, numbers, . _ : or - |
Cambia la clave |
A stored value holds at most 4000 characters |
Guarda menos en cada valor, o divídelo |
This server already stores 500 values, the most it can |
Elimina con dbDel los valores que no necesites |
That key does not hold a number |
dbIncr solo funciona con números. Usa otra clave, o haz dbDel de la vieja |
Too many reads and writes of stored data: at most 25 per run |
Lee una vez y guarda el resultado en una variable |
A button needs an id of 1 to 20 letters, numbers, - or _ |
Añade "id" "nombre" al botón |
A button needs a label or an emoji |
Añade "label" o "emoji" |
respond only works when the command runs because of a button or a menu |
Comprueba .Trigger primero, y usa respond y updateMessage solo para "button" y "select" |
A direct message cannot have buttons or menus |
Envíalo a un canal con sendMessage |
A message holds at most 5 rows of buttons or menus |
Usa menos filas |
That is not for you / This is not for you. |
El botón estaba bloqueado para otro miembro con "user" |
That command does not exist anymore. |
El comando de ese botón se eliminó |
