PlayDrop logoPlayDrop Studio
TwórzWymiana rozgrywekZdobywajUcz sięKonektoryZasobySpołecznośćWsparcie
PlayDrop logoPlayDrop Studio
TwórzWymiana rozgrywekZdobywajUcz sięKonektoryZasobySpołecznośćWsparcie
Zaloguj się
Grupy online i głos
Dokumentacja

Zacznij tutaj

PrzeglądTwoja pierwsza graGry PlayDropFAQ

Twórz z Cloud

Tworzenie w CloudPlany i generowania

Połącz swoją aplikację AI

Wszystkie konektoryClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Publikuj i udostępniaj

Publikuj z aplikacji AIProste gry HTMLPakowanie i .playPublikowanie i importPliki gryWidoczność i zasięgGrafika i wideo strony gryGatunki i tagiLokalizacjaGry Instant

Wrażenia z gry

Ładowanie, pauza i dźwiękPełny ekran i bezpieczne obszaryZapisy w chmurzeGrupy lokalne i kontrolery

Wspólna gra

Udostępnianie, znajomi i zaproszeniaRankingiOsiągnięciaGrupy online i głosSerwery czasu rzeczywistego

Zarabiaj

ZarabianieKredyty i nagrody

Zasoby

Zasoby gryGenerowanie zasobów z AIWłasne formaty i twórczość graczy

Dokumentacja techniczna

SDK klientaSDK serweracatalogue.jsonBłędy i odzyskiwanieRozwiązywanie problemów
DokumentacjaGrupy online i głos
Wspólna gra

Grupy online i czat głosowy w grach PlayDrop

Pozwól znajomym grać razem online: zadeklaruj rozmiary grup, otwórz okno grupy, dołączaj do zarezerwowanych pokoi przez sdk.multiplayer.join i steruj głosem.

Grupa PlayDrop to znajomi, którzy razem przechodzą z gry do gry. Gdy grupa uruchamia twoją grę, PlayDrop rezerwuje miejsca dla jej członków w jednym z pokoi twojego serwera, więc znajomi trafiają do tego samego meczu, zamiast zostać rozdzieleni. Czat głosowy działa w PlayDrop, a nie w twojej grze.

Czego potrzebujesz

  • Serwera gry czasu rzeczywistego: grupy grają w twoich pokojach Colyseus.
  • Zalogowanych graczy: pokoje odrzucają gości.
  • Tych deklaracji w catalogue.json:
json
{
  "types": ["solo", "online", "party"],
  "party": { "online": [2, 3, 4] },
  "roomVoice": true,
  "server": { "entry": "server/index.mjs", "rooms": ["game"] }
}

party.online wymienia dokładne rozmiary grup, do 4, które mogą dołączyć razem; [2, 4] wyklucza 3. To rozmiar dołączającej grupy, a nie pojemność pokoju: dwie czteroosobowe grupy mogą dzielić pokój na osiem miejsc. party wymaga typu party, a party.online wymaga online. roomVoice: true włącza głos pokoju i wymaga online.

Dołącz do właściwego pokoju

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

join wykorzystuje zarezerwowane miejsce gracza w grupie, gdy grę uruchomiła grupa PlayDrop, a w przeciwnym razie dołącza niezależnie. Jeśli dołączenie grupy się nie powiedzie, wywołanie zostaje odrzucone; nigdy nie umieszcza po cichu gracza w innym pokoju. Gość dostaje authentication_required, a PlayDrop pokazuje logowanie; dołącz ponownie z sdk.me.onAuthChange. Zachowaj ten sam pokój między rundami.

Po przeładowaniu sdk.multiplayer.reconnect(roomName, token) przywraca zarezerwowane miejsce za pomocą tokenu ponownego połączenia, który zapisano prywatnie dla tej gry, wersji i użytkownika. Przy multiplayer_reconnect_expired, multiplayer_reconnect_unavailable lub party_reconnect_mismatch odrzuć token i wywołaj join.

Okno grupy

Wywołane po naciśnięciu przycisku w grze sdk.social.openParty({ mode: "online" }) otwiera okno grupy PlayDrop, w którym gracze zapraszają znajomych oraz włączają i wyłączają głos. Istniejąca grupa jest używana ponownie. openParty() otwiera menu grupy, a openParty({ section: "voice" }) otwiera ustawienia głosu; nie łącz mode i section. Obietnica spełnia się po zamknięciu okna, także przy anulowaniu.

Odczytuj grupę przez sdk.social.getParty() lub sdk.social.onPartyChange(callback), które najpierw dostarcza bieżący stan: { partyId, leaderUserId, revision, members, launch }. launch.status ma wartość joining lub ready, gdy grupa gra w tę grę. Samo członkostwo nie oznacza, że gracze są w jednym pokoju; użyj join.

Członkostwo w grupie należy do PlayDrop: gry nie mogą dodawać ani usuwać członków grupy ani sterować mikrofonami, a gracze zapraszają znajomych do grupy z tego okna. Gra nadal może wysłać znajomemu własną kartę zaproszenia lub wyzwania przez sdk.social.sendMessage; zobacz udostępnianie, znajomi i zaproszenia.

Głos pokoju

Przy roomVoice: true każdy w pokoju może rozmawiać, bez kodu serwera. Aby zmienić, kto kogo słyszy, powiąż pokój na serwerze i ustaw zasady:

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

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

Dostępne zasady to all, team, proximity (z { range }) i off. setAudience(player, audience) nadpisuje ustawienie jednego gracza, a updatePositions([{ player, position: { x, y, z } }]) dostarcza pozycje graczy dla trybu bliskości; przekaż null, aby wyczyścić drużynę lub nadpisanie. PlayDrop egzekwuje, kto kogo może słyszeć. W przeglądarce sdk.multiplayer.voice.updateSpatialState({ listener: { position, forward, up }, speakers: [{ userId, position }] }) dostosowuje tylko głośność i panoramę.

Głos podlega zgodzie gracza, wyciszeniu i blokadom oraz zależy od wersji hosta i wdrożenia.

Pauza

Kapsuła grupy nie wstrzymuje rozgrywki. Pauza PlayDrop zatrzymuje twojego klienta, ale pokój pozostaje połączony, a serwer działa dalej. Pauza jednego gracza nie może zatrzymać meczu pozostałym; pauzę meczu zaimplementuj na serwerze.

Testuj

Prześlij wersję prywatną, a potem otwórz link testowy w dwóch oknach z player=1 i player=2, jak opisano w poradniku serwery gier czasu rzeczywistego. Grupy lokalne z kontrolerami to osobny tryb: zobacz grupy lokalne i kontrolery.

Powiązane poradniki

  • Serwery czasu rzeczywistegoUruchom hostowany serwer Colyseus 0.17 z bazą MongoDB dla swojej gry, łącz się z przeglądarki przez SDK, testuj z dwoma graczami i poznaj limity.
  • Grupy lokalne i kontroleryOdczytuj gamepady i kontrolery PlayDrop na telefonie przez sdk.device, śledź lokalne sloty graczy, deklaruj obsługę kontrolerów i rozmiary grup lokalnych.
  • Udostępnianie, znajomi i zaproszeniaUdostępniaj grę z obrazem lub klipem, odczytuj dane startowe, wybieraj znajomych, wysyłaj karty zaproszeń i wyzwań na czacie PlayDrop oraz polecaj inne gry.
PoprzedniOsiągnięcia w grach PlayDropNastępnySerwery gier czasu rzeczywistego w PlayDrop: Colyseus i MongoDB
Pokaż Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Na tej stronie

Czego potrzebujeszDołącz do właściwego pokojuOkno grupyGłos pokojuPauzaTestuj
Pokaż Markdown