El Editor de Scripts en Studio es la herramienta principal para la programación en Roblox. Es un entorno autosuficiente que puede ayudarte a escribir código de alto impacto, reducir tu tiempo de desarrollo e iterar en tus experiencias. Puede mejorar tu experiencia de programación al:
- Formatear y resaltar la sintaxis en tu código.
- Ofrecer formas de autocompletar frases en tu código a medida que escribes.
- Ayudarte a navegar por el código saltando a las declaraciones de variables y funciones.
- Ayudarte a buscar y reemplazar código en los scripts abiertos o en todos los scripts.
- Proporcionar comentarios en tiempo real sobre la calidad y el rendimiento de tu código.
El Editor de Scripts admite todos los tipos de scripts y se abre automáticamente cuando creas un nuevo script o haces doble clic en un script existente en la ventana del Explorador.
Características de autocompletado
Las características de autocompletado del Editor de Scripts generan información relacionada con el código que puede mejorar tu eficiencia de programación, como:
Sugerencias informadas sobre cómo completar frases a medida que las escribes, que son contextuales al modelo de datos de la experiencia. Por ejemplo, si tienes un Model en Workspace llamado RocketShip, el autocompletado sugiere RocketShip cuando escribes workspace.roc e indica que es un Model.

Autocompletar nombres para variables y funciones que declares, ayudándote a evitar molestos errores tipográficos.

Ventanas emergentes de documentación con ejemplos de código que son similares a los de la Referencia de la API del Motor, brindándote contexto sobre el uso de la API.

Tooltips al pasar el cursor que puedes personalizar con tu propia documentación definida.

Diagnósticos de análisis de scripts al pasar el cursor con información que puedes usar para solucionar errores.

Firmas de funciones cuando escribes un argumento, proporcionándote una referencia para sus parámetros y valores de retorno.

Navegación de código
Ir a declaración
Puedes saltar a la declaración de una función o variable manteniendo Ctrl en Windows o ⌘ en Mac al hacer clic en la llamada, o haciendo clic derecho en su llamada y eligiendo Ir a Declaración.

Filtro de funciones del script
El Filtro de Funciones del Script muestra una lista de todas las funciones declaradas en un script. Para abrirlo, presiona AltF en Windows o ⌥F en Mac. Con la lista abierta, puedes navegar por las firmas de cada función, filtrarlas por nombre y hacer doble clic en una para saltar a su declaración.

Buscar y reemplazar
El widget de Buscar/Reemplazar te permite encontrar y reemplazar código en un script abierto. El widget admite la coincidencia de mayúsculas, la coincidencia de palabras completas y la búsqueda mediante expresiones regulares. Para abrirlo, presiona CtrlF en Windows o ⌘F en Mac.

Comentarios en tiempo real
Análisis de Scripts
La ventana de Análisis de Scripts, accesible a través del botón de Análisis en la barra de herramientas de la pestaña Script de Studio, realiza un análisis estático en tus scripts y muestra errores y advertencias activas. Para más información sobre los errores y advertencias, consulta la documentación de Linting de Luau.


Salida
La ventana de Salida muestra los errores capturados de la ejecución de scripts, mensajes del motor de Roblox, mensajes de las llamadas a print(), y errores de las llamadas a warn().

Asistencia de Código
Asistencia de Código es una función que sugiere líneas o funciones de código a medida que escribes, ayudándote a codificar de manera más eficiente y a mantenerte concentrado. Basado en los contextos de tu comentario y código, las sugerencias se activarán de dos maneras:
- Automáticamente cuando pauses en una línea durante unos segundos y el modelo de IA tenga suficiente contexto para una sugerencia.
- Manualmente con el atajo Alt∖ en Windows o ⌥∖ en Mac.
Presiona Tab para aceptar una sugerencia, o ignórala continuando escribiendo. Actualmente, tu script debe contener al menos unas pocas líneas de código para activar una sugerencia.
Mejorar sugerencias
Para obtener sugerencias más precisas y relevantes, se recomienda que sigas prácticas de codificación limpias, independientemente de la asistencia, y que:
- Descompongas tu código en funciones más pequeñas.
- Utilices nombres de scripts descriptivos que capturen la intención general de lo que hace cada script. Por ejemplo, nombra un script SyncCustomSounds en lugar de simplemente Sounds.
- Asignes nombres descriptivos a los parámetros, funciones y scripts. Por ejemplo, nombra una parte GreenSphere en lugar de simplemente grs, o nombra una función generateSphere() en lugar de gen(). Usar funciones nombradas en lugar de funciones anónimas también puede generar mejores sugerencias.
- Incluyas comentarios bien elaborados comentarios que describan la tarea que estás implementando y cuáles deberían ser las entradas/salidas.
- Considera incluir algunas llamadas de ejemplo con resultados esperados en los comentarios.
- Sugiere cómo solucionar un problema, por ejemplo -- Usar casting de rayos.
- Usa el nombre exacto de la función o variable que definiste, por ejemplo -- Crear 10 objetos greenSphere en lugar de -- Crear 10 esferas.
- Si eres un programador novato, comienza con proyectos básicos como "hacer que el jugador salte cuando toque la parte" o usa la herramienta para generar pequeños fragmentos de código que puedas expandir a medida que aumente tu conocimiento.
Limitaciones
La herramienta ayuda a automatizar tareas básicas de codificación, pero no siempre sugiere código perfecto. Las limitaciones conocidas incluyen:
- La activación manual no siempre genera forzosamente una sugerencia.
- Las sugerencias se aprenden por máquina a partir de un corpus de código y, por lo tanto, pueden reflejar algunas limitaciones del código con el que fueron entrenadas. Por ejemplo, las sugerencias pueden no utilizar APIs más nuevas en favor de APIs más antiguas, o pueden usar Lua en lugar de Luau.
- La herramienta puede generar información incorrecta o engañosa que no es útil para tu propósito.
- Los filtros internos intentan bloquear el lenguaje ofensivo, pero no son exhaustivos y existe la posibilidad de que la herramienta genere información ofensiva o sesgada.
- Las sugerencias pueden ser iguales, similares o diferentes entre usuarios, incluso con las mismas solicitudes. Sin embargo, tu código nunca se compartirá con otros.
- La sugerencia puede ser incompleta debido a la longitud limitada de salida de los modelos de aprendizaje.
- Hay un límite diario para la cantidad de sugerencias, y una vez alcanzado el límite, no recibirás sugerencias hasta el día siguiente.
Privacidad del código
Actualmente, Roblox no utiliza ningún dato no público para entrenar los modelos de aprendizaje. La herramienta solo utiliza un pequeño subconjunto de activos de mercado gratuitos para ajustar grandes modelos de lenguaje y el subconjunto ha pasado diversos controles de calidad y filtros de seguridad.
Además, todas las sugerencias son generadas por el modelo de IA y no se transfieren de un usuario a otro. Dado que tu código no se utiliza para el entrenamiento del modelo, no se sugerirá a otros usuarios de Asistencia de Código, con la única excepción del código que se publique en artículos de mercado gratuitos.
Edición múltiple de cursores
El Editor de Scripts admite el uso de múltiples cursores para realizar ediciones simultáneas. Puedes agregar cursores según tus necesidades con un clic del mouse o un atajo de teclado. El cursor inicial se llama cursor primario y los cursores adicionales se llaman cursores secundarios.
- Las ediciones que realices en el cursor primario se copian a los cursores secundarios. Cada edición cuenta como una acción, por lo que deshacer/rehacer una edición se aplica a todos los cursores.
- Widgets como autocompletado aparecen en el cursor primario pero no en los cursores secundarios.
- Todos los atajos de teclado estándar para la edición de scripts funcionan con la edición de múltiples cursores, incluyendo la indentación de código, el cambio de comentarios y la eliminación de líneas.
La siguiente tabla resume los flujos de trabajo de edición de múltiples cursores y sus atajos.
| Comando | Windows | Mac |
|---|---|---|
| Agregar/quitar cursor en la ubicación del mouse | Alt + clic | ⌥ + clic |
| Eliminar el cursor agregado más recientemente | CtrlU | ⌘U |
| Agregar/modificar cursor al arrastrar el mouse | Alt + arrastrar | ⌥ + arrastrar |
| Agregar cursor arriba/abajo | CtrlAlt↑ / CtrlAlt↓ | ⌘⌥↑ / ⌘⌥↓ |
| Agregar cursor a la siguiente selección coincidente | CtrlD | ⌘D |
| Agregar cursor a cada selección coincidente | ShiftAltL | Shift⌥L |
| Selección de columna/bloque | ShiftAlt + arrastrar | Shift⌥ + arrastrar |
| Dividir selecciones en líneas | ShiftAltI | Shift⌥I |
Agregar cursores
Puedes agregar cursores con una combinación de atajos de teclado y maniobras del mouse. Los cursores se fusionan si ocupan el mismo espacio, tal como si agregas cursores con las teclas de flecha o eliminas todos los caracteres entre los cursores.
En la ubicación del mouse
Para agregar un cursor en la ubicación del puntero del mouse:
Mantén Alt en Windows o ⌥ en Mac.
Haz clic donde desees agregar el cursor.
Con arrastre del mouse
Puedes arrastrar el mouse para agregar un cursor a una selección, dividir una selección de múltiples líneas en líneas, o seleccionar columnas y bloques de código/espacios en blanco.
Para agregar un cursor a una selección de código arrastrando:
Mantén Alt en Windows o ⌥ en Mac.
Haz clic y arrastra el mouse sobre la selección de código.
Arriba y abajo del cursor primario
Para agregar un cursor justo arriba o abajo del cursor primario:
Presiona y mantén CtrlAlt en Windows o ⌘⌥ en Mac.
Presiona las flechas ↑ o ↓.
A selecciones coincidentes
Puedes agregar cursores a todas las coincidencias de una selección o a la próxima/anterior coincidencia, y opcionalmente alternar si las coincidencias son sensibles a mayúsculas y/o coinciden con la palabra completa.
Para agregar un cursor a todas las coincidencias de una porción seleccionada:
Selecciona el código que deseas buscar para coincidencias.
Presiona ShiftAltL en Windows o Shift⌥L en Mac.
Eliminar cursores
Puedes eliminar cursores con los siguientes atajos de teclado y maniobras del mouse. Alternativamente, puedes salir de la edición de múltiples cursores presionando Esc.
En la ubicación del mouse
Para eliminar un cursor:
Presiona y mantén Alt en Windows o ⌥ en Mac.
Haz clic en el cursor que deseas eliminar.
Más recientemente agregado
Para eliminar el cursor agregado más recientemente, presiona CtrlU en Windows o ⌘U en Mac.
Copiar y pegar cursores
Copiar una selección de código incluye los cursores dentro de ella. El comportamiento del pegado depende del número de cursores en la fuente y el número de cursores en el destino:
- Si el número de cursores es el mismo, entonces cada cursor copiado se pega en cada cursor de destino correspondiente.
- Si el número de cursores es diferente, entonces cada cursor en el destino recibe todo el pegado con cada cursor copiado como una nueva línea.
Formateo al escribir
Presionar enter/return auto-indentará cada cursor en la nueva línea respecto a la línea anterior. Si la línea anterior comienza con un bloque incompleto, el formateador intentará completarlo.
Configuraciones del editor
Muchas opciones de personalización son accesibles a través de la pestaña Editor de Scripts de Configuraciones de Studio. Las opciones comúnmente modificadas incluyen:
| Opción | Descripción |
|---|---|
| Fuente | Tipo y tamaño de fuente para el código en el editor. |
| Ancho de pestaña | Número de espacios que representan una indentación de Tab. |
| Indentar usando espacios | Si está habilitado, se insertan espacios equivalentes a Ancho de Tab con la pulsación de Tab. |
| Ajuste de texto | Si está habilitado, las líneas largas de código se ajustan a la siguiente línea. |
| Preset de color del Editor de Scripts | Preset de color para elementos de código, colores de selección y más. Después de elegir un preset, puedes establecer colores específicos para opciones como Color de Selección y Color de Comentario. |
Atajos de teclado
El Editor de Scripts tiene los siguientes atajos de teclado.
| Comando | Windows | Mac |
|---|---|---|
| Cerrar script | CtrlW | ⌘W |
| Reabrir el último script cerrado | CtrlShiftT | ⌘ShiftT |
| Apertura rápida | CtrlP | ⌘P |
| Mostrar script en el Explorador | CtrlAltK | ⌘⌥K |
| Acercar | Ctrl= | ⌘= |
| Alejar | Ctrl- | ⌘- |
| Restablecer zoom de script | Ctrl0 | ⌘0 |