Pular para o conteúdo principal
Este tópico serve como um guia de início rápido para o uso básico das APIs de cliente do Multiplayer Activity. Ele aborda o gerenciamento de atividades, o envio de convites e a adição de jogadores à lista de jogadores recentes. Atividades Convites Jogadores recentes

Atividades

Definindo uma atividade

Sempre que um título inicia ou ingressa em uma experiência multiplayer, ele deve criar uma atividade. Isso permite que o shell, junto com outros jogadores do seu título, veja a atividade do jogador e permite que outros jogadores possam ingressar no jogo em andamento. Se um jogador quiser ingressar em uma atividade do seu título e ele não estiver em execução, o título será ativado e a cadeia de conexão será passada a ele. Os títulos devem atualizar a atividade à medida que os jogadores entram ou saem. Isso oferece uma visão mais rica da atividade para outros jogadores e os informa se a atividade está cheia. Para obter informações sobre os campos de atividade, consulte Conteúdo das atividades. Veja a seguir um exemplo de código para definir uma atividade. Ele se aplica tanto à criação de uma atividade quanto à atualização de uma atividade existente.
Para obter mais informações, consulte: Voltar ao início deste tópico.

Obtendo atividades

Os títulos podem querer saber as atividades de outros jogadores. Por exemplo, um título pode querer exibir uma interface do usuário no jogo com os amigos de um jogador no título, junto com as atividades deles. Veja a seguir um exemplo de código para recuperar uma atividade.
Para obter mais informações, consulte: Voltar ao início deste tópico.

Excluindo uma atividade

Quando um jogador encerra ou sai de uma atividade multiplayer, o título deve excluir a atividade usando o código a seguir.
Para obter mais informações, consulte: Voltar ao início deste tópico.

Convites

Enviando convites sem interface do usuário

Os jogadores podem querer enviar convites diretamente para um ou mais outros jogadores. Antes de enviar um convite, o título deve garantir que uma atividade esteja definida. Isso garante a continuidade entre o shell e o seu título, pois o shell envia convites com base na atividade atual. Para enviar um convite sem interface do usuário, depois que uma atividade for definida usando XblMultiplayerActivitySetActivityAsync (consulte o exemplo acima), o título deve chamar a API XblMultiplayerActivitySendInvitesAsync, passando uma matriz de jogadores a serem convidados e a mesma cadeia de conexão usada na atividade atual. Para obter informações sobre o conteúdo de um convite, consulte Enviar uma solicitação para que outro jogador ingresse em uma experiência multiplayer.. Veja a seguir um exemplo de código para enviar convites sem interface do usuário.
Para obter mais informações, consulte:

Enviando convites com interface do usuário

Os jogadores podem querer enviar convites diretamente para um ou mais outros jogadores. Antes de enviar um convite, o título deve garantir que uma atividade esteja definida. Isso garante a continuidade entre o shell e o seu título, pois o shell envia convites com base na atividade atual. Para enviar um convite com interface do usuário, depois que uma atividade for definida usando XblMultiplayerActivitySetActivityAsync (consulte o exemplo acima), o título deve chamar a API XGameUiShowMultiplayerActivityGameInviteAsync, passando o usuário solicitante. Ela usará a atividade atual do título e convidará jogadores usando a cadeia de conexão e as configurações dessa atividade. Para obter informações sobre o conteúdo de um convite, consulte Enviar uma solicitação para que outro jogador ingresse em uma experiência multiplayer.. Veja a seguir um exemplo de código para enviar convites com interface do usuário.
Para obter mais informações, consulte: Voltar ao início deste tópico.

Recebendo convites

Para ser notificado quando um jogador aceitar um convite, os títulos podem se registrar para notificações de convite usando XGameInviteRegisterForEvent. Sempre que um convite é aceito, um URI formatado é passado ao título por meio do retorno de chamada registrado. O URI pode ser analisado para determinar o remetente, o destinatário e a cadeia de conexão do convite. A cadeia de conexão é específica do título e é definida quando a atividade multiplayer é criada. Para títulos que usam o serviço Multiplayer Activity, o formato completo do URI é mostrado na tabela a seguir. Quando as notificações de convite não forem mais necessárias, o registro do retorno de chamada pode ser cancelado usando XGameInviteUnregisterForEvent. Veja a seguir um exemplo de código para registrar e tratar convites aceitos.
Para obter mais informações, consulte: Voltar ao início deste tópico.

Jogadores recentes

Para atualizar a lista de jogadores recentes do jogador, o título deve enviar listas de outros jogadores que tiveram uma interação significativa com o jogador atual. A lista é unidirecional, o que significa que o cliente de cada jogador é responsável por atualizar sua própria lista, e as listas dos jogadores não afetam as listas uns dos outros. Por exemplo, suponha que um grupo de jogadores esteja junto em um lobby pré-jogo e seja combinado. Cada jogador atualizaria sua lista com todos os outros xuids do lobby quando a partida começasse. Se um novo jogador ingressasse, ele poderia ser gravado individualmente.
Você pode decidir o que define uma interação significativa. Para um título, pode ser estar presente em um lobby. Para outro, pode ser um jogador atirar em outro jogador. Para um terceiro, pode ser simplesmente ter outro jogador visível na tela.
Em cenários em que você não queira que as equipes de jogadores sejam vistas até que uma sessão de partida comece, você pode adiar a gravação da lista de jogadores até o momento em que deseja que eles fiquem visíveis uns para os outros. Para liberar a lista de jogadores recentes do lado do cliente, você pode chamar XblMultiplayerActivityFlushRecentPlayersAsync se precisar de uma liberação forçada imediata. Caso contrário, a lista de jogadores recentes será liberada automaticamente a cada cinco segundos. Veja a seguir exemplos de código para atualizar a lista de jogadores recentes e liberar as atualizações.

Atualizando os jogadores recentes

Para obter mais informações, consulte: Voltar ao início deste tópico.

Liberando os jogadores recentes

Para obter mais informações, consulte: Voltar ao início deste tópico.
Última modificação em 8 de outubro de 2026