Plugins de Studio

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Un plugin es una extensión que añade características o funcionalidades adicionales a Studio. Puedes instalar plugins creados por la comunidad desde la Tienda del Creador, o puedes crear y publicar los tuyos propios en la Caja de Herramientas para usarlos en tus experiencias.

Si decides también distribuir tus plugins a la Tienda del Creador, puedes ofrecerlos de forma gratuita o venderlos por Dólares Estadounidenses. Roblox ofrece una participación en ingresos de mercado líder para estas ventas, ya que sólo se deducen impuestos y tarifas de procesamiento de pagos. Para más información sobre la venta de plugins, consulta Tienda del Creador - Distribuir y vender activos.

Crear nuevos plugins

Puedes crear tus propios plugins para mejorar tu flujo de trabajo en Studio. El siguiente ejemplo de código es un plugin llamado AddEmptyScript que inserta un Script vacío como hijo de un Instance o en ServerScriptService. Las siguientes secciones explican las partes principales para crear este plugin.

Para comenzar, debes habilitar Plugin Debugging Enabled en la sección Studio de la configuración de Studio. Esto expondrá el PluginDebugService en Studio, que proporciona depuración en tiempo real para el código de tu plugin y facilita la recarga y guardado de tu plugin.

Plugin AddEmptyScript

local ServerScriptService = game:GetService("ServerScriptService")
local Selection = game:GetService("Selection")
-- Crear una nueva sección de barra de herramientas y una carpeta de menú de Plugins titulada "Personalizado"
local toolbar = plugin:CreateToolbar("Personalizado")
-- Añadir un botón de barra de herramientas etiquetado "Script Vacío"
local newScriptButton = toolbar:CreateButton("Script Vacío", "Crear un script vacío", "rbxassetid://14978048121")
-- Hacer que el botón sea clicable incluso si la vista 3D está oculta
newScriptButton.ClickableWhenViewportHidden = true
local function onPluginButtonClicked()
local selectedObjects = Selection:Get()
local parent = selectedObjects[1] or ServerScriptService
local newScript = Instance.new("Script")
newScript.Source = ""
newScript.Parent = parent
end
newScriptButton.Click:Connect(onPluginButtonClicked)

Guardar el script del plugin

Para crear un plugin, primero crea un Script y guárdalo localmente.

  1. Inserta un nuevo Script dentro de ServerStorage y renómbralo a AddEmptyScript.

  2. Copia y pega el código del Plugin AddEmptyScript anterior en el nuevo script.

  3. Con el nuevo script seleccionado en la ventana Explorer, selecciona Guardar como Plugin Local desde el menú Plugins de Studio.

  4. En la ventana emergente, haz clic en Guardar para insertar el script del plugin en tu carpeta local de Plugins de la instalación de Studio.

  5. El plugin debería aparecer en PluginDebugService y comenzar a ejecutarse.

  6. IMPORTANTE
    Elimina el script original en ServerStorage y trabaja desde el plugin AddEmptyScript dentro de PluginDebugService, de lo contrario, es posible que termines aplicando cambios al script incorrecto.

Añadir botón de barra de herramientas

Para añadir un botón para tu plugin en la pestaña Plugins de la barra de herramientas de Studio, utiliza los métodos Plugin:CreateToolbar() y PluginToolbar:CreateButton(). En el código de AddEmptyScript, la línea 5 crea una nueva sección en la barra de herramientas y la carpeta del menú de Plugins titulada Personalizado, mientras que la línea 8 crea un botón etiquetado Script Vacío.

Nuevo botón de plugin añadido a la barra de herramientas en Studio

Ejecutar código al hacer clic

Para hacer que el plugin ejecute código cuando un usuario haga clic en el botón de la barra de herramientas, conecta una función al evento PluginToolbarButton.Click del botón. En el código de AddEmptyScript, la función de conexión es onPluginButtonClicked().

Verificar la selección del usuario

Para modificar el comportamiento de un plugin según lo que el usuario ha seleccionado, utiliza el servicio Selection. La función onPluginButtonClicked() verifica si el usuario tiene algo seleccionado y crea el nuevo script como su hijo en lugar de dentro de ServerScriptService. Si el usuario no tiene nada seleccionado, crea el nuevo script en ServerScriptService.

Soportar deshacer y rehacer

Utiliza ChangeHistoryService para permitir a los usuarios deshacer y rehacer cambios realizados por un plugin dentro de una experiencia. En tu script, configura el plugin para llamar a ChangeHistoryService:TryBeginRecording() y guarda el identificador asignado a la llamada API antes de realizar cambios. Luego, configura el plugin para llamar a ChangeHistoryService:FinishRecording() después de realizar cambios, para que capture cualquier cambio realizado durante la sesión de grabación para deshacer y rehacer.

El siguiente ejemplo de código crea un plugin que puede aplicar el material neón a partes seleccionadas. Utiliza ChangeHistoryService para registrar y gestionar los cambios realizados por el plugin:

Plugin de Material Ejemplo con Grabaciones para Deshacer y Rehacer

local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Crear un plugin de ejemplo
local toolbar = plugin:CreateToolbar("Plugin de Ejemplo")
local button = toolbar:CreateButton("Neonízalo", "", "")
-- Conectar una función al evento de clic
button.Click:Connect(function()
-- Intentar comenzar una grabación con un identificador específico
local recording = ChangeHistoryService:TryBeginRecording("Establecer selección a neón")
-- Verificar si la grabación se inició correctamente
if not recording then
-- Esto indica que tu plugin comenzó una grabación previa y nunca la finalizó
-- Solo puedes tener una grabación activa por plugin a la vez
return
end
-- Iterar a través de las instancias seleccionadas
for _, instance in Selection:Get() do
-- Verificar si la instancia es un BasePart
if instance:IsA("BasePart") then
instance.Material = Enum.Material.Neon -- Establecer el material de la parte a Neón
end
end
-- Finalizar la grabación, confirmando los cambios en el historial
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

Subir plugins

Después de que termines de crear un plugin, puedes subirlo a tu inventario para que esté accesible en todos tus proyectos.

Para subir un plugin:

  1. En la ventana Explorer, selecciona un script de plugin.

  2. Navega al menú Plugins de Studio y selecciona Publicar como Plugin.

  3. OPCIONAL
    En la esquina superior izquierda de la ventana de configuración de activos, haz clic en la imagen predeterminada del rompecabezas para subir una miniatura de imagen de 512×512 para tu plugin.

  4. Completa los siguientes campos:

    • Nombre — Un título para tu plugin.
    • Descripción — Una descripción que indique lo que un posible usuario puede esperar que haga el plugin.
    • Creador — El creador o grupo que deseas atribuir como el creador del plugin.
  5. Haz clic en el botón Enviar. Tu plugin ahora está disponible en la Caja de Herramientas bajo las pestañas de Inventario y Creaciones.

Distribuir y vender plugins

Puedes distribuir y vender públicamente tus propios plugins en la Tienda del Creador para que otros los utilicen en su propio desarrollo de juegos. Este método de monetización te permite ganar el 100% de los ingresos netos de las transacciones, evitando tarifas de plataforma y tarifas de DevEx. Para más información sobre este proceso, incluyendo cómo configurar una cuenta de vendedor para establecer precios y recibir pagos, consulta Tienda del Creador - Requisitos.

©2026 Roblox Corporation. Roblox, el logotipo de Roblox y "Powering Imagination" son algunas de nuestras marcas registradas y no registradas en los Estados Unidos y otros países.