Communitygithub.com

unity-technologies/build-live-game

Construye y opera un juego en vivo usando Unity Services. Úsalo cuando el usuario necesite implementar, conectar o depurar funciones potenciadas por el backend.

¿Qué es build-live-game?

Esta habilidad permite a un agente de IA ayudar a los desarrolladores de Unity a construir y operar juegos en vivo utilizando Unity Gaming Services (UGS). Cubre la integración completa de servicios backend como autenticación de jugadores, guardado en la nube, código en la nube para lógica autoritativa del servidor, economía virtual, tablas de clasificación, coincidencia de partidas, configuración remota y análisis. El agente puede generar los patrones de inicialización estándar, recomendar paquetes con versiones mínimas, explicar la arquitectura de cómo se combinan los servicios y proporcionar fragmentos de código C# para las interacciones clave del cliente con la API. También incluye referencias a componentes prefabricados de la Asset Store, planos de características listos para usar y listas de verificación de implementación. Está diseñado para entornos de Unity Editor y Unity Runtime en múltiples plataformas, guiando al usuario desde la configuración inicial hasta la publicación y las operaciones en vivo.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/unity-technologies/skills/tree/main/skills/build-live-game

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Construye un Juego en Vivo con Unity Gaming Services

Paquetes UGS

PaqueteVersión MínimaPropósito
com.unity.services.core1.16.0Inicialización, grafo de dependencias
com.unity.services.authentication3.6.1Inicio de sesión e identidad del jugador
com.unity.services.cloudcode2.10.3Módulos C# autoritativos del servidor
com.unity.services.cloudsave3.4.0Almacenamiento clave-valor por jugador y compartido
com.unity.remote-config4.2.5Configuración de juego del lado del servidor
com.unity.services.deployment1.7.2Desplegar recursos en la nube desde el Editor
com.unity.services.tooling1.4.1Control de Acceso y Anulaciones de Juego
com.unity.services.apis1.1.1Clientes REST generados para todos los servicios UGS

Patrón de Inicialización

Cada juego UGS comienza de la misma manera. com.unity.services.core debe inicializarse primero, luego el jugador inicia sesión:

using Unity.Services.Core;
using Unity.Services.Authentication;

await UnityServices.InitializeAsync();
await AuthenticationService.Instance.SignInAnonymouslyAsync();
// Todos los demás servicios ya están listos

Después de que InitializeAsync() se complete, los singletons de servicio (por ejemplo, CloudSaveService.Instance, CloudCodeService.Instance) están disponibles.

Mapa de Paquetes

Fundación

PaquetePropósitoSingleton / Punto de Entrada
CoreInicialización, grafo de dependencias, registro de componentesUnityServices.InitializeAsync()
AuthenticationInicio de sesión del jugador (anónimo, social, Unity, nombre de usuario/contraseña), identidadAuthenticationService.Instance
Services APIsClientes REST generados para todos los servicios UGS; acceso a API de administración a través de cuentas de servicioClases API directas

Datos del Jugador y Configuración

PaquetePropósitoSingleton / Punto de Entrada
Cloud SaveDatos clave-valor por jugador (Default, Public, Protected) y datos Custom de todo el juegoCloudSaveService.Instance.Data.Player / .Data.Custom
Remote ConfigConfiguración de juego del lado del servidor, banderas de características, definiciones JSONRemoteConfigService.Instance
EconomyMonedas virtuales, artículos de inventario, compras, tiendasEconomyService.Instance

Lógica del Servidor y Seguridad

PaquetePropósitoSingleton / Punto de Entrada
Cloud CodeMódulos C# autoritativos del servidor para escrituras confiables y validaciónCloudCodeService.Instance → CallModuleEndpointAsync
ToolingAutor y desplegar archivos de Control de Acceso (.ac) y Anulaciones de Juego (.ugo)Solo Editor (Ventana de Despliegue)
DeploymentDesplegar recursos en la nube (.rc, .ac, .ccmr, .lb, etc.) desde el Editor de UnitySolo Editor (Servicios > Deployment)

Social y Competitivo

PaquetePropósitoSingleton / Punto de Entrada
MultiplayerSesiones, coincidencia de partidas, lobbies. Componentes: Multiplayer Session, Matchmaker Session, Server SessionMultiplayerService.Instance
LeaderboardsEnvío de puntuaciones, clasificaciones, niveles, historial de versiones. Componente: LeaderboardsLeaderboardsService.Instance

Telemetría

PaquetePropósitoSingleton / Punto de Entrada
AnalyticsEventos personalizados, eventos estándar, gestión de consentimientoAnalyticsService.Instance

Arquitectura — Cómo se Combinan los Paquetes

                    UnityServices.InitializeAsync()
                              │
                              ▼
                     AuthenticationService
                    (iniciar sesión → PlayerId)
                              │
              ┌───────────────┼───────────────┐
              ▼               ▼               ▼
        Remote Config     Cloud Save      Economy
      (config. juego,   (estado jug.,  (monedas,
       definiciones,     progreso,      inventario,
       banderas)         preferencias)  compras)
              │               │               │
              └───────┬───────┘               │
                      ▼                       │
                 Cloud Code                   │
              (escrituras            ◄─────────┘
               autoritativas,
               validación,
               lógica anti-trampas)
                      │
              ┌───────┼───────┐
              ▼       ▼       ▼
         Cloud Save  Economy  Leaderboards
         (escrituras  (conces.  (envío
          protegidas)  serv.)    punt.)

Principio clave: Para cualquier dato que afecte la integridad del juego (XP, recompensas, moneda), enruta las escrituras a través de módulos de Cloud Code. Las escrituras directas del cliente solo son apropiadas para datos no sensibles (preferencias, configuración de pantalla).

Servicios Principales — Referencia Rápida

Authentication

Paquete: com.unity.services.authentication (>= 3.6.1)

Gestiona la identidad del jugador. Métodos de inicio de sesión: anónimo, proveedores sociales (Google, Apple, Steam, Facebook, Oculus, etc.), navegador Unity, nombre de usuario/contraseña y flujo de código de dispositivo.

Después del inicio de sesión: PlayerId y PlayerName están disponibles. Todos los métodos de inicio de sesión disparan el evento SignedIn. PlayerAccountService (para inicio de sesión en navegador Unity) reside en un ensamblado separado (Unity.Services.Authentication.PlayerAccounts).

Cloud Code

Paquete: com.unity.services.cloudcode (>= 2.10.3)

Ejecuta módulos C# del lado del servidor (.NET 9) para operaciones confiables. Los módulos se despliegan como archivos .ccmr. El cliente llama:

var result = await CloudCodeService.Instance.CallModuleEndpointAsync<TResult>(
    "NombreDelMódulo", "NombreDeLaFunción", args);

Prefiere módulos C# sobre scripts JavaScript para producción. Los módulos también soportan mensajes push en tiempo real a través de suscripciones, disparadores basados en eventos y alcance de sesión multijugador.

Cloud Save

Paquete: com.unity.services.cloudsave (>= 3.4.0)

Almacenamiento clave-valor por jugador con tres clases de acceso, más datos Custom de todo el juego:

Clase de AccesoLecturaEscrituraCaso de Uso
DefaultPropietarioPropietarioConfiguración privada, preferencias
PublicCualquieraPropietarioPerfiles públicos, nombres mostrados
ProtectedPropietarioSolo servidor (Cloud Code)Datos anti-trampas, estado otorgado por servidor
CustomCualquier jugadorSolo servidorEstado de juego compartido, configuraciones globales

Los valores se serializan como JSON. Soporta control de concurrencia con bloqueo de escritura mediante SaveItem, consultas del lado del servidor mediante QueryAsync y almacenamiento de archivos binarios.

Individual skills in this repo

This repo contains 9 individual skills — each has its own dedicated page.

unity-technologies/2d-pixel-perfect

Sets up, diagnoses, and fixes pixel perfect 2D rendering in Unity projects. Use when working on any retro-style or pixel art 2D game.

unity-technologies/audio-setup-mixers

Scans the scene and audio assets to appropriately route Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. Creating mixers and groups, and setting volumes, are not automated — the skill inventories what exists and asks the user to add anything missing.

unity-technologies/generate-editor-search-query

Generates Unity Search / Quick Search queries and opens the Unity Search window for read-only Unity Editor asset or scene-object lookup requests. Always use when the user asks to find, search, show, locate, filter, look up, query, or list concrete assets or scene objects in the current project or scene, even if Unity Search is not named. Covers materials, textures, prefabs, scenes, scripts, shaders, GameObjects, components, Lights, Cameras, UI objects, labels, paths, references, selected or named assets, and asset types. Also use when the user explicitly mentions Unity Search, Quick Search, Search window, open Search, or asks what Unity Search query to use. Do not use for general project overview, project structure, folder-purpose summaries, gameplay/system explanations, how-to programming questions, web search, repository text search, build logs, package installation, menu or settings search, modifying results, or non-Unity filesystem search unless the user explicitly asks to use Unity Search.

unity-technologies/implement-in-app-purchases

Implement, configure, and debug Unity In-App Purchases (IAP) — store connection, product catalog, consumable/non-consumable/subscription purchases, two-step pending-confirm flow, receipt validation, entitlement checking, restore transactions, Apple extensions (promotional purchases, Ask-to-Buy, code redemption), and Google Play extensions (subscription upgrade/downgrade), D2C Capabilities(direct to customer), 3rd party payment provider (Stripe/Coda) via Unity IAP/Unity Cloud. Use when the user needs to add, modify, debug, or migrate from native Android/iOS billing, 3rd party packages(RevenueCat/Adapty/Essential Kit/Unipay supported) to IAP. Triggers on microtransactions (MTX), monetization, real-money purchases, store purchases, buying items, support D2C, purchase via Stripe/Coda, migrate from native billing(Google's BillingClient or Apple's StoreKit/SKPaymentQueue/SKProduct)/RevenueCat/Adapty/EssentialKit/Unipay.

unity-technologies/initialize-ai-navigation

Sets up and configures the Unity AI Navigation system — NavMesh surfaces, NavMesh agents, obstacles, links, modifiers, areas and costs. Use when creating walkable navigation meshes, adding pathfinding agents, setting up patrol routes, configuring obstacle avoidance and carving, connecting separate NavMeshes with links, coupling navigation with animation, or troubleshooting navigation issues.

unity-technologies/levelplay-unity-integration

Integrates the LevelPlay Mediation SDK via the Ads Mediation UPM package. Use when a developer asks about adding ads to a Unity game, implementing rewarded, interstitial, or banner ads, setting up ad mediation, configuring ad networks, installing or updating the Ads Mediation package, troubleshooting LevelPlay namespace errors, resolving Android gradle or iOS CocoaPods dependency issues for ads, configuring ATT or privacy settings for ad compliance, tracking impression-level revenue (ILRD), initializing the LevelPlay SDK, or setting up ad unit IDs. Also use when a developer wants to monetize their Unity game with ads, asks how to get started with LevelPlay, ads, or mediation, or needs help with any part of the LevelPlay integration workflow including platform-specific setup for iOS or Android. Also use when upgrading the LevelPlay or IronSource SDK version, migrating from deprecated IronSource.Agent APIs, or migrating a game from Unity Ads to LevelPlay.

unity-technologies/localization

Sets up and configures Unity Localization, including locales, String/Asset Tables, CJK font support, and Addressables workflows. Use when the user wants to add languages to a project, translate UI text, support Asian (CJK) languages with TMP fonts, or mentions i18n, l10n, multilingual support, or making a game support multiple languages.

unity-technologies/manage-sprite-atlas

Manage SpriteAtlas using prebuild pipeline with IPreprocessBuildWithReport (DEFAULT approach). Use it to configure master atlases, variant atlases, texture settings, packing settings, and platform-specific configurations. Use when the user asks about creating sprite atlases, optimizing sprites, configuring atlas settings, adding sprites to atlases, creating variant atlases, implementing automated atlas generation, or runtime sprite atlas access. Always use prebuild approach unless user explicitly requests manual authoring.

unity-technologies/migrate-birp-to-urp

Plans, executes, and troubleshoots Unity projects moving from the Built-in Render Pipeline (BiRP/BIRP/Built-in RP) to the Universal Render Pipeline (URP). Use when the user asks to upgrade, convert, switch, or migrate a project, scene, material, or shader to URP/Universal Render Pipeline; fix pink or magenta materials after URP; convert Built-in materials/shaders; move a 2D project to URP 2D; review lighting, quality, post-processing, baked lightmaps, or reflection probes after URP; or diagnose visual problems after a render-pipeline migration.

Skills relacionados