Studio ofrece muchas herramientas y flujos de trabajo de depuración comúnmente encontrados en Entornos de Desarrollo Integrados (IDEs). Estas te ayudan a inspeccionar y resolver errores en scripts mientras se ejecutan.
Depuración con puntos de interrupción
Los puntos de interrupción son puntos de control que detienen o "interrumpen" la ejecución de tus scripts en líneas específicas. Puedes usar las pausas para inspeccionar y depurar tu juego, vigilar variables e inspeccionar la pila de llamadas. Los puntos de interrupción son una de las formas más efectivas de depurar funciones, por lo que son una de las herramientas de depuración más importantes.
Gestión
En el Editor de Scripts, puedes insertar varios tipos de puntos de interrupción y editar la configuración de un punto de interrupción en cualquier momento, incluso durante las sesiones de prueba. Si editas puntos de interrupción durante una sesión de prueba, los cambios persisten incluso después de terminarla. También puedes editar un punto de interrupción que esté pausando activamente tu sesión de prueba, pero los cambios no se aplican hasta la siguiente sesión de prueba.
Insertar
Los puntos de interrupción tienen múltiples variaciones y se pueden insertar en cualquier línea de código ejecutable de la siguiente manera:
Para insertar un punto de interrupción estándar en una línea de código, haz clic en el área directamente a la derecha de su número de línea. Alternativamente, haz clic derecho en el área y selecciona Insertar Punto de Interrupción. El ícono del punto de interrupción aparece como un círculo rojo.

Deshabilitar
Para deshabilitar temporalmente un punto de interrupción sin eliminarlo, utiliza cualquiera de los siguientes flujos de trabajo:
- Haz clic en el ícono del punto de interrupción.
- Haz clic derecho en el ícono del punto de interrupción y selecciona Deshabilitar Punto de Interrupción.
- Edita el punto de interrupción y activa o desactiva su casilla de verificación Habilitado.
Un punto de interrupción deshabilitado aparece como una versión hueca de su ícono habilitado, por ejemplo, un círculo hueco para un punto de interrupción estándar deshabilitado, o un rombo hueco para un logpoint deshabilitado.


Eliminar
Para eliminar un punto de interrupción, haz clic en su ícono con el botón del medio o haz clic derecho en su ícono y selecciona Eliminar Punto de Interrupción.
Editar
Puedes editar la configuración de un punto de interrupción en cualquier momento, incluso durante las sesiones de prueba. Si editas puntos de interrupción durante una sesión de prueba, los cambios persisten incluso después de terminarla. También puedes editar un punto de interrupción que esté pausando activamente tu sesión de prueba, pero los cambios no se aplican hasta la siguiente sesión de prueba.
Para editar un punto de interrupción:
Haz clic derecho en el ícono del punto de interrupción y selecciona Editar Punto de Interrupción.
En la ventana Editar Punto de Interrupción, configura el punto de interrupción como desees. Puedes mezclar estas configuraciones para adaptarlas mejor a tus necesidades de depuración.
Opción Descripción Condición Una expresión opcional que determina si el punto de interrupción se activa. Si la condición está vacía, el punto de interrupción siempre se activa. Si existe la condición, el punto de interrupción se convierte en un punto de interrupción condicional y se activa solo si la condición es verdadera. Por ejemplo, si deseas que el punto de interrupción se active solo si la variable var es igual a 10, establece la condición en var == 10. Mensaje de Registro Una expresión que se imprime en la ventana de Salida cuando se alcanza el punto de interrupción. El formato del mensaje de registro es el mismo que el de una declaración print(). Por ejemplo, establece el mensaje de registro como "El valor de var:", var para mostrar el mismo mensaje que print("El valor de var:", var). Continuar Ejecución Determina si el punto de interrupción pausa el script si se activa. Esta opción está deshabilitada por defecto a menos que el punto de interrupción insertado sea un logpoint. Eliminar Punto de Interrupción al Alcanzar Si está marcado, el punto de interrupción se elimina automáticamente después de la primera sesión de prueba, convirtiéndolo efectivamente en un punto de interrupción temporal. Activar En El contexto de un punto de interrupción determina si debe activarse en el Cliente (scripts del lado del cliente), Servidor (scripts del lado del servidor) o Edición (depuración de scripts de plugin). Si eliges Contexto Personalizado, la ventana indica los contextos de activación actuales.
Flujo de trabajo
El flujo de trabajo típico para la depuración con puntos de interrupción es el siguiente:
Abre el script que deseas depurar y inserta puntos de interrupción en las líneas de código que deseas examinar.
Desde el entrepiso de Studio, inicia una sesión de prueba para comenzar a depurar.

Cuando el script alcanza un punto de interrupción, la sesión de prueba se pausa a menos que ese punto de interrupción esté configurado para continuar la ejecución. Una flecha amarilla sobre el punto de interrupción indica qué línea de código se ejecutará a continuación.

A medida que el script se pausa, inspecciona la ventana de Puntos de Interrupción, la ventana de Vigilancia, la ventana de Pila de Llamadas, la ventana de Salida y el Editor de Scripts para encontrar información sobre los valores de las variables y las ejecuciones de funciones.
Para continuar ejecutando código después de alcanzar un punto de interrupción, haz clic en Reanudar Scripts en el entrepiso.

También puedes ejecutar código línea por línea con los botones de paso en el entrepiso:

Acción Atajo Descripción Paso Dentro F11 El botón Paso Dentro mueve el depurador al código de la función en la línea actual. Si no hay función en la línea actual, el depurador se mueve a la siguiente línea. Paso Sobre F10 El botón Paso Sobre mueve el depurador a la siguiente línea de código, sin entrar en funciones. Paso Fuera ShiftF11 El botón Paso Fuera mueve el depurador fuera de la función actual y a la siguiente línea de código después de la llamada a la función. Si la línea actual no está dentro de una función, el depurador se mueve a la siguiente línea. Cuando hayas terminado de depurar la sesión actual, haz clic en el botón Detener.

Monitoreo
Studio incluye múltiples ventanas y herramientas para monitorear los valores de las variables y las ejecuciones de funciones mientras depuras. Con esta información, puedes encontrar la causa raíz de la mayoría de los problemas en tus scripts.

Puntos de interrupción
La ventana de Puntos de Interrupción es una vista unificada que muestra todos los puntos de interrupción dentro de todos los scripts. Para abrirla, haz clic en Puntos de Interrupción en la barra de herramientas de la pestaña Script de Studio, o navega al menú Ventana ⟩ Depurar y activa Puntos de Interrupción.
En la ventana, las columnas Script y Línea siempre se muestran, y puedes activar/desactivar otras columnas de configuración a través del menú ⋮ en la esquina superior derecha. Dentro de la columna Script, haz clic derecho en cualquier punto de interrupción para revelar un menú de opciones para editar, deshabilitar/habilitar, eliminar o saltar a la línea del punto de interrupción dentro del script.

Mientras estés en una sesión de depuración, la columna más a la izquierda muestra (x3) que indica los múltiples contextos (Cliente, Servidor, Edición) para el punto de interrupción. Al expandir cualquier rama de un punto de interrupción, puedes hacer clic en el ícono junto a un contexto específico para deshabilitar/habilitar ese contexto, como deshabilitar un punto de interrupción solo en el contexto Cliente mientras lo mantienes habilitado en el contexto Servidor.

Pila de llamadas
La ventana de Pila de Llamadas, accesible desde la barra de herramientas de la pestaña Script de Studio o el menú Ventana ⟩ Depurar, muestra qué línea de código se va a ejecutar a continuación cuando el depurador alcanza un punto de interrupción. Si llamas a funciones desde dentro de otras funciones, indica qué líneas se llamaron esas funciones, permitiéndote confirmar si el flujo de llamadas real coincide con el flujo esperado.


A medida que el script se pausa en los puntos de interrupción, utiliza los botones de paso en el entrepiso para entrar, salir o saltar de una función/línea como se describe en el flujo de trabajo.

Vigilancia
La ventana de Vigilancia, accesible desde la barra de herramientas de la pestaña Script de Studio o el menú Ventana ⟩ Depurar, te permite vigilar activamente los valores de variables y expresiones mientras avanzas a través de los puntos de interrupción.
La pestaña Variables muestra información sobre las variables actuales en alcance, filtrable haciendo clic en el botón Todos los Alcances en la barra superior de la ventana. Expandir una rama muestra los miembros de esa variable o instancia y sus valores. También puedes vigilar cualquier variable resaltándola dos veces en el Editor de Scripts, haciendo clic derecho y seleccionando Agregar Vigilancia en el menú emergente.


Editor de Scripts
El depurador está integrado con el Editor de Scripts. Cuando tu juego se pausa en un punto de interrupción en un script, puedes pasar el mouse sobre el nombre de una variable para ver su valor. Por ejemplo, puedes ver la composición de una tabla y sus claves/valores contenidos.

Herramientas de depuración adicionales
Además del depurador, Studio ofrece herramientas de depuración adicionales para que puedas solucionar problemas y errores en tu juego.
Barra de Comandos
La Barra de Comandos te permite ejecutar comandos Luau mientras el juego está en ejecución. Está disponible en Studio desde el menú Ventana ⟩ Script y en la Consola del Desarrollador.
Consola del Desarrollador
La Consola del Desarrollador proporciona una amplia gama de detalles, incluyendo salida del cliente y del servidor, uso de memoria, rendimiento de red y más. Para abrir la consola mientras pruebas o juegas un juego, escribe /console en el chat o presiona F9.
Archivos de registro
Cuando un script imprime o genera errores en Studio o en la aplicación del jugador, la aplicación registra el mensaje en un archivo de registro en el sistema de archivos local. Estos archivos se encuentran en diferentes lugares dependiendo del sistema operativo.
Windows
Para acceder a los archivos de registro en Windows:
- Abre Explorador de Archivos.
- Navega al directorio %LOCALAPPDATA%\Roblox\logs.
- Haz doble clic en un registro para abrirlo. Los registros con el mismo valor XXXXX son de la misma sesión de Studio.
Mac
Para acceder a los archivos de registro en Mac:
- Abre Finder.
- En la barra de menú, selecciona Ir ⟩ Ir a la Carpeta....
- En el cuadro de diálogo, ingresa ~/Library/Logs/Roblox.
- Haz doble clic en el resultado para navegar al directorio de registros de Roblox.
- Dentro del directorio, haz doble clic en un registro para abrirlo.
iOS
Puedes recopilar registros de iOS usando un Mac o usando un dispositivo iOS.
Para acceder a los archivos de registro de iOS en un Mac:
- Conecta el dispositivo iOS a un Mac.
- Abre Finder.
- Navega a Utilidades y abre la aplicación Consola.
- Para poblar registros en tiempo real en la aplicación Consola, selecciona el dispositivo iOS de la barra lateral, haz clic en el botón Iniciar y reproduce el problema en el dispositivo iOS.
- Para poblar registros archivados en la aplicación Consola, ejecuta sudo log collect --device-name "[Nombre del Dispositivo iOS]" en la Terminal. Asegúrate de que no haya apóstrofes en el nombre del dispositivo o podrías obtener un error al ejecutar el comando.
Android
Para acceder a los archivos de registro en Android:
- Navega a Configuración ⟩ Sistema ⟩ Opciones de Desarrollador.
- Activa Opciones de Desarrollador.
- En una computadora, descarga e instala Android Studio.
- En Android Studio, haz clic en Logcat.
- Conecta el dispositivo Android a la computadora para poblar automáticamente Logcat con registros.