Skip to main content
Supongamos que necesita hermandades, clanes, corporaciones, compañías, tribus, o como sea que su juego los llame: PlayFab puede satisfacer su necesidad de agrupación duradera de jugadores mediante el Modelo de programación de entidades. La entidad de grupo se puede usar para almacenar colecciones de otras entidades, incluidos jugadores o personajes, que pueden servir para muchos propósitos dentro de su juego.

Ejemplos

  • Clanes/Hermandades: los grupos de entidades se pueden usar para describir un conjunto de jugadores que juegan juntos con regularidad, sea cual sea el vínculo social que los mantiene unidos a largo plazo.
  • Grupos (parties): los grupos de entidades se pueden usar para grupos a corto plazo creados para permitir que jugadores individuales logren un objetivo inmediato y luego se disuelvan fácilmente.
  • Canales de chat: los canales de chat a corto o largo plazo se pueden definir como un grupo de entidades.
  • Suscripción a información dentro del juego: ¿tiene un objeto legendario de instancia única en su juego? ¿Los jugadores quieren actualizaciones constantes sobre lo que sucede con ese objeto? Cree un grupo de entidades centrado en ese objeto, con todas las entidades de jugador interesadas en el objeto como miembros.
En resumen, los grupos de entidades pueden ser cualquier colección de entidades (ya sean NPC o controladas por jugadores, reales o abstractas) que necesiten un estado persistente vinculado a ese grupo. Además, dado que los grupos de entidades también son entidades en sí mismos, contendrán todas las características iniciales de las entidades:
  • Datos de objeto
  • Datos de archivo
  • Perfiles
Los grupos tienen un límite predeterminado de 1000 miembros por grupo y solo admiten jugadores y personajes como miembros

Uso de grupos de entidades

Al crear un grupo, la primera entidad agregada al grupo se coloca en un rol de administrador (esta guía se refiere a esa entidad como el propietario, para simplificar). El propietario podrá entonces invitar a nuevos miembros, crear nuevos roles con una amplia variedad de permisos personalizables, modificar los roles de los miembros, expulsar miembros, etc. Además, las mismas funciones de entidad que existen para las entidades también funcionan para los grupos, por lo que podrá guardar objetos JSON y archivos directamente en el grupo para almacenar datos arbitrarios específicos del juego. El ejemplo de código que se proporciona a continuación debería darle una ventaja inicial en la interacción básica con hermandades. Le permite crear grupos, agregar y quitar miembros, y eliminar el grupo. Está pensado como punto de partida y no demuestra ninguno de los roles ni permisos.

Análisis del ejemplo

Este ejemplo está construido como un controlador, que guarda una cantidad mínima de datos en una caché local (siendo PlayFab la capa de datos autoritativa) y proporciona una manera de realizar operaciones CRUD en los grupos. Veamos algunas de las funciones del ejemplo proporcionado:
  • OnSharedError: este es un patrón típico en los ejemplos de PlayFab. La manera más sencilla de controlar un error es notificarlo. Es probable que el cliente de su juego tenga una lógica de control de errores mucho más sofisticada.
  • ListMembership: llama a ListMembership para determinar todos los grupos a los que pertenece la entidad dada. Los jugadores quieren conocer los grupos a los que ya se han unido.
  • CreateGroup/DeleteGroup: en su mayoría, se explican por sí solos. Este ejemplo demuestra la actualización de la caché local de información de grupos cuando estas llamadas se ejecutan correctamente.
  • InviteToGroup/ApplyToGroup: unirse a un grupo es un proceso de dos pasos, y puede activarse en ambas direcciones:
    • Un jugador puede solicitar unirse a un grupo.
    • Un grupo puede invitar a un jugador.
  • AcceptGroupInvitation/AcceptGroupApplication: el segundo paso del proceso de unión. La entidad que responde acepta la invitación, completando el proceso de hacer que el jugador forme parte del grupo.
  • RemoveMembers: los miembros con autoridad para hacerlo (definida por los permisos de su rol) podrán expulsar miembros de un grupo.

Servidor frente a cliente

Como en todos los métodos nuevos de la API de entidades, no hay distinción entre la API de servidor y la API de cliente. La acción la realiza el autor de la llamada, según cómo se haya autenticado el proceso. Un cliente se identificará como tal y llamará a estos métodos como una entidad de jugador del título, y sus roles y permisos dentro del grupo se evaluarán con cada llamada, garantizando que tenga permiso para realizar esta acción. Un servidor se autentica con la misma developerSecretKey, que identifica ese proceso como una entidad de título. Un título omite las comprobaciones de roles, y las llamadas a la API ejecutadas por un título solo fallarán si la acción es imposible de realizar, por ejemplo, si una entidad no se puede quitar cuando no es miembro.

Consulte también

Para almacenar datos de sus grupos, hermandades o clanes:
Última modificación el 28 de agosto de 2026