Studio ofrece muchas herramientas y flujos de trabajo de depuración comúnmente encontrados en Entornos de Desarrollo Integrados (IDEs). Estos te ayudan a inspeccionar y resolver errores en scripts a medida que se ejecutan.
Depuración con puntos de interrupción
Los puntos de interrupción son puntos de control que pausan o "interrumpen" la ejecución de tus scripts en líneas específicas. Puedes utilizar las pausas para inspeccionar y depurar tu experiencia, observar 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, incluidos los momentos durante las sesiones de prueba. Si editas puntos de interrupción durante una sesión de prueba, las ediciones se mantienen 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 próxima 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 la franja directamente a la derecha de su número de línea. Alternativamente, haz clic derecho en la franja y selecciona Insertar Punto de Interrupción. El icono del punto de interrupción aparece como un círculo rojo.

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


Eliminar
Para eliminar un punto de interrupción, haz clic intermedio en su icono o haz clic derecho en su icono y selecciona Eliminar Punto de Interrupción.
Editar
Puedes editar la configuración de un punto de interrupción en cualquier momento, incluidas las sesiones de prueba. Si editas puntos de interrupción durante una sesión de prueba, las ediciones persisten incluso después de finalizarla. 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 próxima sesión de prueba.
Para editar un punto de interrupción:
Haz clic derecho en el icono 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 según desees. Puedes mezclar estas configuraciones juntas 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 una 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 generar el mismo mensaje que print("El valor de var:", var). Continuar Ejecutando Determina si el punto de interrupción pausa el script si se activa. Esta opción está desactivada por defecto a menos que el punto de interrupción insertado sea un logpoint. Eliminar Punto de Interrupción al Alcanzar Si está marcada, 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 Editar (script de depuración del 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 te gustaría depurar y inserta puntos de interrupción en las líneas de código que deseas examinar.
Desde la mezzanine 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 ejecutando. 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, ventana de Observar, ventana de Pila de Llamadas, ventana de Salida, y Editor de Scripts para encontrar información sobre valores de variables y ejecuciones de funciones.
Para continuar ejecutando código después de alcanzar un punto de interrupción, haz clic en Reanudar Scripts en la mezzanine.

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

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 una función en la línea actual, el depurador pasa a la siguiente línea. Paso Sobre F10 El botón Paso Sobre mueve el depurador a la siguiente línea de código, no moviéndose a 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 pasa 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 las 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, desactivar/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) lo que indica los múltiples contextos (Cliente, Servidor, Editar) para el punto de interrupción. Al expandir la rama de cualquier punto de interrupción, puedes hacer clic en el icono junto a un contexto específico para desactivar/habilitar ese contexto, como desactivar 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 va a ejecutarse a continuación cuando el depurador llega a un punto de interrupción. Si llamas a funciones desde dentro de otras funciones, indica qué líneas se llamaron desde 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 la mezzanine para entrar, pasar o salir de una función/línea como se describe en el flujo de trabajo.

Observar
La ventana de Observar, accesible desde la barra de herramientas de la pestaña Script de Studio o el menú Ventana ⟩ Depurar, te permite observar 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 el ámbito, filtrable haciendo clic en el botón Todos los Ámbitos en la barra superior de la ventana. Expandir una rama muestra los miembros de esa variable o instancia y sus valores. También puedes observar cualquier variable destacándola con doble clic en el Editor de Scripts, haciendo clic derecho y seleccionando Agregar Observación en el menú emergente.


Editor de Scripts
El depurador está integrado con el Editor de Scripts. Cuando tu experiencia se pausa en un punto de interrupción en un script, puedes pasar el ratón 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 soluciones problemas y errores en tu experiencia.
Barra de Comandos
La Barra de Comandos te permite ejecutar comandos Luau mientras la experiencia está en ejecución. Está disponible en Studio desde el menú Ventana ⟩ Script y en la Consola de Desarrolladores.
Consola de Desarrolladores
La Consola de Desarrolladores proporciona una amplia variedad de detalles, incluyendo salida del cliente y servidor, uso de memoria, rendimiento de red, y más. Para abrir la consola mientras pruebas o juegas una experiencia, 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 ubicaciones 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 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 una Mac o un dispositivo iOS.
Para acceder a archivos de registro de iOS en una Mac:
- Conecta el dispositivo iOS a una Mac.
- Abre Finder.
- Navega a Utilidades y abre la aplicación Consola.
- Para poblar los registros en tiempo real en la aplicación Consola, selecciona el dispositivo iOS desde 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 el 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 Configuraciones ⟩ Sistema ⟩ Opciones de Desarrollador.
- Activa las 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.