Administración de paquetes de contenido dinámico - Guía del usuario de Lumberyard

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Administración de paquetes de contenido dinámico

La gema Dynamic Content Cloud proporciona una forma sencilla de actualizar el contenido del juego para sus clientes. Después de una versión, puede actualizar el contenido sin envío de una aplicación o proceso tradicional de revisiones. La gema Dynamic Content Cloud proporciona un marco para agrupar los activos obsoletos en manifiestos. Puede asignar grupos de activos en archivos .pak (archivos .zip) y distribuir estos archivos a los clientes de acuerdo con sus propias reglas o programas.

Prerequisites

Para utilizar la gema Dynamic Content Cloud, debe cumplir estos requisitos:

Para obtener una lista de paquetes de contenido dinámico cargado, escriba el siguiente comando

$ lmbr_aws dynamic-content list-uploaded-content
[WAF] Engine Root: C:\Amazon\Lumberyard\1.28.0.0\dev\
 
WheelCustomization.manifest.pak PUBLIC {'Hash': 'af6282f22266924e2ac12ac59871e297', 'Size': '2048'}
--->WheelCustomization_assets.shared.pak PUBLIC {'Hash': '9602bde90b5387603c7cdabcfb2eb4dd', 'Size': '416'}
--->WheelCustomization_data.shared.pak PUBLIC {'Hash': '1b5b6dadfa3752d37450ab23bfbebc8e', 'Size': '416'}
            
ColorCustomization.manifest.pak WINDOW {'StagingEnd': None, 'StagingStart': 'Feb 03 2021 12:00', 'Hash': '47b498040eb301c69688b755f8fee2c0', 'Size': '21507'}
--->ColorCustomization_data.pc.pak WINDOW {'StagingEnd': None, 'StagingStart': 'Feb 03 2021 12:00', 'Size':
'51665', 'Hash': 'a86b8e41aa1bf8d25baa482df0eb54df'}

Etapas del paquete

Puede utilizar pilas de implementación independientes para gestionar los diferentes flujos de trabajo de lanzamiento. Para ello, Dynamic Content Cloud Gem admite las siguientes fases de publicación.

  • Private: los paquetes nunca se descargan por el cliente de juego. Cuando cargue contenido nuevo o modificado a la nube desde Dynamic Content Manager (Administrador de contenido dinámico), sus paquetes y manifiesto siempre se ponen en la fase Private (Privado). Esto le permite elegir cuándo y cómo los cambios se publican a los clientes.

  • Scheduled: los paquetes se descargan condicionalmente por el cliente de juego basándose en una fecha y hora determinados.

  • Public: los paquetes están disponibles para todos los usuarios que utilizan la implementación.

Puede utilizar estas fases para añadir una capa adicional de protección contra las implementaciones accidentales de contenido dinámico para los jugadores.

Para realizar la transición de un paquete de una etapa a otra, utilice la herramientaset-staging-statuspara editar el estado de ensayo del paquete. ConsulteEdición de paquetesMás adelante en este tema para un ejemplo.

Anidamiento de paquetes

Cada fase incluye entradas para sus manifiestos y paquetes. Los paquetes se anidan en función de la jerarquía que determine al crearlos. En el siguiente ejemplo, el paquete de manifiesto de nivel raíz esWheelCustomization.manifest.pak. Tiene dos paquetes de activos secundarios,WheelCustomization_assets.shared.pakyWheelCustomization_data.shared.pak.

WheelCustomization.manifest.pak PUBLIC {'Hash': 'af6282f22266924e2ac12ac59871e297', 'Size': '2048'}
--->WheelCustomization_assets.shared.pak PUBLIC {'Hash': '9602bde90b5387603c7cdabcfb2eb4dd', 'Size': '416'}
--->WheelCustomization_data.shared.pak PUBLIC {'Hash': '1b5b6dadfa3752d37450ab23bfbebc8e', 'Size': '416'}

Puede editar o eliminar paquetes de nivel raíz. Sin embargo, no puede editar paquetes secundarios. Solo puede eliminar paquetes secundarios.

Edición de paquetes

Usarset-staging-statuspara editar el estado de un paquete de nivel raíz cargado. Puede pasar el contenido de una etapa a otra, programar una ventana cuando esté disponible para su descarga, seleccionar qué paquetes secundarios desea incluir en la transición y mucho más. Consulte lalmbr_aws set-dynamic-content staging-statusDocumentación de CLI para obtener información detallada.

ejemplo : Transición de un paquete a PUBLIC

En este ejemplo se muestra cómo realizar la transición de un paquete y todos sus paquetes secundarios a la etapa pública, utilizando el nombre de archivo del paquete de nivel raíz.

$ lmbr_aws dynamic-content set-staging-status --file-path WheelCustomization.manifest.pak --staging-status PUBLIC --include-children
importante

Si no usa--include-childrenLos paquetes secundarios se convierten en huérfanos en la fase actual y no estarán visibles para el cliente del juego.

Eliminación de Manifiestos y Paquetes

Usardelete-uploaded-contentpara eliminar un manifiesto o paquete cargado.

ejemplo : Eliminar un manifiesto

En este ejemplo se muestra cómo eliminar un manifiesto utilizando el nombre de archivo del manifiesto cargado. Incluyendo el--confirm-deletionInscríbase en que desea realizar esta eliminación. Sin esta bandera, el comando le mostrará lo quelo haríaser suprimido.

$ lmbr_aws dynamic-content delete-uploaded-content --file-path WheelCustomization.json --confirm-deletion
[WAF] Engine Root: C:\Amazon\Lumberyard\1.28.0.0\dev\
Removing WheelCustomization.json
{'DeletedFileList': ['WheelCustomization.json'], 'CloudCanvas_request_id': '1e7f4096-d859-45ed-be1a-1411c6c8e068'}
sugerencia

Puede eliminar una versión específica de un manifiesto utilizando el--version-idEl argumento.

ejemplo : Eliminar un paquete y cualquier hijo

En este ejemplo se muestra cómo eliminar un paquete raíz y todos sus paquetes secundarios, utilizando el nombre de archivo del paquete de nivel raíz cargado. Sin el--confirm-deletion, este comando sólo muestra lo quelo haríaser suprimido.

$ lmbr_aws dynamic-content delete-uploaded-content --file-path WheelCustomization.manifest.pak
[WAF] Engine Root: C:\Amazon\Lumberyard\1.28.0.0\dev\
Removing WheelCustomization.manifest.pak and any children
Found stack_id DCStack-DCDC-CloudGemDynamicContent-Z9DV5QK8436A-StagingSettingsTable
['WheelCustomization.manifest.pak', 'WheelCustomization_assets.shared.pak', 'WheelCustomization_data.shared.pak'] would be deleted if "confirm_delete" is set
sugerencia

Puede eliminar una versión específica de un paquete mediante el comando opcional--version-idEl argumento.