creacionesde recursos en la experiencia

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

Con la función de creación de activos en la experiencia, puedes permitir que tus usuarios guarden las creaciones que hicieron en tu experiencia en sus inventarios.Tus usuarios pueden usar estas creaciones en la experiencia como cualquier otro recurso.Además, estas creaciones atribuyen a tu experiencia cuando se muestran en la plataforma de Roblox, por lo que cualquier usuario puede usar el enlace de atribución para llegar a tu experiencia y crear la suya en posesión.

Por ejemplo, puedes permitir que los usuarios creen criaturas personalizadas como mascotas en tu experiencia y permitirles guardar sus mascotas favoritas en sus inventarios.Tienes control completo para especificar qué objetos los usuarios pueden modificar y guardar de tu experiencia.Los usuarios a su vez pueden mostrar sus creaciones en sus perfiles con atribución a tu experiencia, aumentando la visibilidad de tu experiencia.

Tipos de activos admitidos y límites

Al igual que todos los recursos en la plataforma, las creaciones en la experiencia están sujetas a moderación de recursos.Actualmente, solo puedes permitir que los usuarios creen paquetes desde tu experiencia.Estos paquetes no pueden contener ningún script o recurso privado, como sonido, audio, video y paquetes anidados.Si el sistema detecta scripts o recursos privados en un paquete que pueden ser guardados por los usuarios, bloquea la acción de guardado en la experiencia ocultando el mensaje de guardado para los usuarios.

Cuando estás ejecutando o probando tu experiencia y agregas scripts o recursos privados como parte de una creacionesen la experiencia, no se guarda y se muestran mensajes de error en la ventana de salida de Studio o en la consola del desarrollador.

Habilitando la creacionesde recursos en la experiencia

Para habilitar la creación de recursos en la experiencia para tus usuarios, utiliza el método AssetService:PromptCreateAssetAsync() de la API en un script del lado del servidor, junto con otra lógica de creación.Specifica qué instancias en tu experiencia quieres habilitar esta funcionalidad, establece un gatillo personalizado (como un íconode interfaz de usuario) para invocar el método y escucha eventos de cliente remotos para guardar recursos.

AssetService:PromptCreateAssetAsync() toma los siguientes parámetros:

Cuando el servidor invoca AssetService:PromptCreateAssetAsync(), se le solicita al cliente un diálogo Enviar paquete para que el usuario que active la acción de guardado pueda ingresar un nombre y una descripción para el paquete.Roblox proporciona la interfaz de diálogo fuera de la caja, ya que el flujo de trabajo de guardado es una funcionalidad de nivel de plataforma.

El siguiente ejemplo de script del lado del servidor le pide a los usuarios que guarden un automóvil que pintan en una experiencia:

Ejemplo de script para la creación de activos en la experiencia

-- Define la variable de servicio de activos
local AssetService = game:GetService("AssetService")
-- Configurar PromptCreateAssetAsync() para solicitar el diálogo de envío
local function CreateAsset(player, instance)
local complete, result, assetId = pcall(function()
return AssetService:PromptCreateAssetAsync(player, instance, Enum.AssetType.Model)
end)
if complete then
if result == Enum.PromptCreateAssetResult.Success then
print("successfully uploaded, AssetId:", assetId)
else
print("Received result", result)
end
else
print("error")
print(result)
end
end
-- Lógica de pintura de automóviles omitida
-- Añade un manipulador de eventos
local function onUserPublish(player, promptObject)
-- El usuario guarda la instancia del coche con el color predeterminado de la experiencia
if promptObject.Name == "car" then
CreateAsset(player, car)
elseif promptObject.Name == "CarPaintYellow" or promptObject.Name == "CarPaintBlue" or promptObject.Name == "CarPaintBlack" or promptObject.Name == "CarPaintRed" then
PaintCarColor(promptObject.Name)
end
end
PublishEvent.OnServerEvent:Connect(onUserPublish)

Arena de demostración de creación en experiencia muestra un ejemplo de cómo puedes usar esta función.Puedes unirte a la demostración para recorrer el flujo de trabajo de creación en la experiencia como usuario o editar el lugar en Studio para referenciar el diseño.

Después de la creación y la atribución

Después de que los usuarios creen y guarden un activo de su experiencia, pueden encontrarlo en los siguientes lugares:

Cuando los usuarios ven creaciones en la experiencia en los perfiles o inventarios de sus amigos, ven la atribución a la experiencia original en la que se creó el activo.Los usuarios pueden hacer clic en el enlace de atribución para redirigir a la página de experiencia, para que puedan unirse a la experiencia y crear la suya en posesión.