PlayDrop logoPlayDrop Studio
CréerÉchange de partiesGagnerApprendreConnecteursRessourcesCommunautéAide
PlayDrop logoPlayDrop Studio
CréerÉchange de partiesGagnerApprendreConnecteursRessourcesCommunautéAide
Se connecter
Groupes en ligne et voix
Documentation

Commencez ici

Vue d’ensembleVotre premier jeuJeux PlayDropFAQ

Créer avec Cloud

Création CloudOffres et générations

Connecter votre app d’IA

Tous les connecteursClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Publier et partager

Publier depuis votre app d’IAJeux HTML simplesPaquets et .playPublication et importFichiers de jeuVisibilité et audienceIllustrations et vidéos de la ficheGenres et tagsLocalisationJeux instantanés

Expérience de jeu

Chargement, pause et audioPlein écran et zones sûresSauvegardes cloudGroupes locaux et manettes

Jouer ensemble

Partage, amis et invitationsClassementsSuccèsGroupes en ligne et voixServeurs de jeu temps réel

Gains

MonétisationCrédits et récompenses

Ressources

Ressources de jeuGénération de ressources par IAFormats personnalisés et créations

Référence

SDK clientSDK serveurcatalogue.jsonErreurs et repriseDépannage
DocumentationGroupes en ligne et voix
Jouer ensemble

Groupes en ligne et chat vocal dans les jeux PlayDrop

Faites jouer des amis ensemble en ligne : tailles de groupe, fenêtre de groupe PlayDrop, salles réservées avec sdk.multiplayer.join et voix de salle.

Un groupe PlayDrop, ce sont des amis qui passent d’un jeu à l’autre ensemble. Quand un groupe lance votre jeu, PlayDrop réserve des places pour ses membres dans l’une des salles de votre serveur : les amis arrivent ainsi dans le même match au lieu d’être séparés. Le chat vocal fonctionne dans PlayDrop, pas dans votre jeu.

Ce qu’il vous faut

  • Un serveur de jeu temps réel : les groupes jouent dans vos salles Colyseus.
  • Des joueurs connectés : les salles refusent les invités.
  • Ces déclarations dans catalogue.json :
json
{
  "types": ["solo", "online", "party"],
  "party": { "online": [2, 3, 4] },
  "roomVoice": true,
  "server": { "entry": "server/index.mjs", "rooms": ["game"] }
}

party.online liste les tailles exactes de groupe, jusqu’à 4, qui peuvent arriver ensemble ; [2, 4] exclut 3. Il s’agit de la taille du groupe qui arrive, pas de la capacité de la salle : deux groupes de quatre peuvent partager une salle de huit places. party exige le type party et party.online exige online. roomVoice: true active la voix de salle et exige online.

Rejoignez la bonne salle

js
if (!sdk.me.isLoggedIn) {
  await sdk.me.promptLogin();
}
const room = await sdk.multiplayer.join("game", { mode: "versus" });

join utilise la place réservée du joueur quand PlayDrop a lancé un groupe, et sinon rejoint une salle de façon indépendante. Si l’arrivée d’un groupe échoue, la promesse est rejetée ; le joueur n’est jamais placé discrètement dans une autre salle. Un invité reçoit authentication_required et PlayDrop affiche la connexion ; rejoignez de nouveau depuis sdk.me.onAuthChange. Gardez la même salle d’une manche à l’autre.

Après un rechargement, sdk.multiplayer.reconnect(roomName, token) restaure la place réservée grâce à un jeton de reconnexion que vous avez stocké en privé pour ce jeu, cette version et cet utilisateur. Abandonnez le jeton et appelez join en cas de multiplayer_reconnect_expired, multiplayer_reconnect_unavailable ou party_reconnect_mismatch.

La fenêtre de groupe

Depuis un bouton, sdk.social.openParty({ mode: "online" }) ouvre la fenêtre de groupe de PlayDrop, où les joueurs invitent des amis et activent ou désactivent la voix. Un groupe existant est réutilisé. openParty() ouvre le menu du groupe et openParty({ section: "voice" }) ouvre les réglages de la voix ; ne combinez pas mode et section. La promesse se résout à la fermeture de la fenêtre, y compris en cas d’annulation.

Lisez le groupe avec sdk.social.getParty() ou sdk.social.onPartyChange(callback), qui transmet d’abord l’état actuel : { partyId, leaderUserId, revision, members, launch }. launch.status vaut joining ou ready quand le groupe joue à ce jeu. Faire partie du groupe ne signifie pas à soi seul que les joueurs partagent une salle ; utilisez join.

Les membres du groupe sont gérés par PlayDrop : les jeux ne peuvent ni ajouter ni retirer de membres, ni contrôler les microphones, et les joueurs invitent leurs amis dans le groupe depuis cette fenêtre. Un jeu peut tout de même envoyer à un ami sa propre carte d’invitation ou de défi avec sdk.social.sendMessage ; consultez partage, amis et invitations.

Voix de salle

Avec roomVoice: true, tout le monde dans une salle peut parler, sans code serveur. Pour changer qui entend qui, liez la salle sur votre serveur et définissez une règle :

js
import { playdrop } from "@playdrop/server";

const platform = playdrop.multiplayer.forRoom(this);
platform.voice.setPolicy("team");
platform.voice.setTeam(client.auth, "red");

Les règles sont all, team, proximity (avec { range }) et off. setAudience(player, audience) définit une dérogation pour un joueur et updatePositions([{ player, position: { x, y, z } }]) alimente la proximité ; passez null pour effacer une équipe ou une dérogation. PlayDrop fait respecter qui peut entendre qui. Dans le navigateur, sdk.multiplayer.voice.updateSpatialState({ listener: { position, forward, up }, speakers: [{ userId, position }] }) ne règle que le volume et la position stéréo.

La voix dépend du consentement des joueurs, de la sourdine et des blocages, ainsi que de la version de l’hôte et du déploiement.

Pause

La capsule du groupe ne met pas le jeu en pause. La pause de PlayDrop arrête votre client, mais la salle reste connectée et votre serveur continue de tourner. La pause d’un joueur ne doit pas arrêter le match des autres ; si le match doit pouvoir être mis en pause, gérez-le sur le serveur.

Tester

Envoyez une version privée, puis ouvrez le lien de test dans deux fenêtres avec player=1 et player=2, comme décrit dans serveurs de jeu temps réel. Les groupes locaux avec manettes forment un mode distinct : consultez groupes locaux et manettes.

Guides associés

  • Serveurs de jeu temps réelFaites héberger un serveur Colyseus 0.17 avec base MongoDB pour votre jeu, connectez le navigateur avec le SDK, testez à deux joueurs et connaissez les limites.
  • Groupes locaux et manettesLisez manettes physiques et manettes téléphone PlayDrop avec sdk.device, suivez les emplacements locaux, déclarez manettes et tailles de groupe local.
  • Partage, amis et invitationsPartagez avec image ou extrait, lisez les données de lancement, choisissez des amis, envoyez invitations et défis dans PlayDrop Chat, recommandez des jeux.
PrécédentSuccès pour les jeux PlayDropSuivantServeurs de jeu temps réel sur PlayDrop : Colyseus et MongoDB
Voir le Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Sur cette page

Ce qu’il vous fautRejoignez la bonne salleLa fenêtre de groupeVoix de sallePauseTester
Voir le Markdown