Sistemas de jogo

Multijogador sem servidor próprio: salas e voz

Como funciona o multijogador pronto do iDos Games: salas no lobby, públicas ou por convite, confirmação de pronto, chat da sala e chat de voz, o anfitrião inicia o jogo para todos, os jogadores se conectam por WebRTC, e como ativá-lo.

O multijogador dá ao seu jogo partidas online sem um servidor de jogo próprio: salas no lobby, convites, chat de voz, e o anfitrião inicia o jogo para a sala inteira. Os jogadores se conectam entre si por WebRTC; a plataforma só os encontra e os conecta.

O que o jogador vê

  • Salas dos jogos que rodam online: públicas, ou privadas com um código de convite.
  • "Criar uma sala": nome, 2, 4 ou 8 jogadores e as configurações de sala do próprio jogo.
  • Membros com marcas de anfitrião, "Pronto" e offline, chat da sala e remover um membro.
  • Chat de voz: microfone desligado, aperte V para falar ou microfone aberto, silenciar e volume de cada membro, quem está falando.
  • O "Jogar" do anfitrião leva todos os aparelhos da sala para o jogo.
Multijogador
12 450
320
Sala da Mira3/4 · pública
Entrar
Só amigos2/8 · por convite
Código
Minha sala · 3/4

Você (anfitrião) · Mira ✓ · Arrow ✓ · esperando…

Voz
Jogar
Criar uma sala
Salas dos jogos que rodam online: públicas ou privadas por convite.
Membros com “Pronto”, chat da sala e chat de voz.
O “Jogar” do anfitrião leva a sala inteira para o jogo.
Exemplo. O lobby multijogador: salas, membros, voz e “Jogar” para a sala inteira.

Como funciona

  • O lobby é dono da sala e da sessão dela; os jogos nunca criam nem entram em salas por conta própria.
  • Um jogo passa a rodar online ao se registrar no lobby; então "Com amigos" aparece ao lado do "Jogar".
  • Quem chega depois pode entrar em um jogo em andamento quando o jogo permite. O sandbox voxel é a referência.

Passo 01Adicione o sistema ao seu projeto

Peça ao programador de IA: "Faça o jogo ser multijogador para 4 jogadores". Ele instala o sistema e registra o jogo; o modelo de sandbox voxel já vem com ele.

Passo 02Configure no painel

Abra o painel, escolha seu projeto e vá em Operações ao vivo → v2 → Multiplayer.

  • Ative o multijogador e defina o máximo de jogadores por sala.
  • O servidor de retransmissão (TURN) para jogadores atrás de redes restritas também é configurado aqui.

O botão IA da página abre um assistente: descreva o que precisa, ele propõe as mudanças, e você revisa e aperta Salvar.

Passo 03Teste e lance

Confira o sistema na versão de teste do seu app. As configurações vão para o app ao vivo em uma ação separada; veja publicação e links.

Para desenvolvedores

As salas funcionam por meio de client.multiplayer e RealtimeSession (@idosgames/core/realtime); um jogo se conecta por ctx.multiplayer.

TypeScript
// No setup() do módulo do jogo: o jogo roda online pelas salas do lobby
ctx.multiplayer.registerGame({
  mode: 'my-game',
  topology: 'Host',
  chatMode: 'ServerRelay', // o chat da sala do lobby
  maxPlayers: 4,
  joinInProgress: true,
  // Em cada aparelho da sala, depois que o anfitrião aperta "Jogar"
  start: async (room) => startOnline(room.session, { host: room.isHost, leave: room.leave }),
})
  • Saia com room.leave(): a sala é do lobby.
  • Mostre "Jogar com amigos" só enquanto o recurso de multijogador estiver disponível: sem ele, o jogo continua single player.

Todos os campos estão descritos na habilidade multiplayer-realtime, servida pelo servidor MCP do SDK.

Perguntas frequentes

Preciso de um servidor de jogo?

Não. Os jogadores se conectam entre si por WebRTC; a plataforma cuida das salas e da preparação da conexão.

Existe chat de voz?

Sim. As salas têm chat de voz com aperte para falar, silenciar e volume por membro.

Veja também

Crie o seu próprio jogo

Descreva a ideia em uma frase: o programador de IA cria o jogo, e ele vai ao ar com um link próprio.