PlayDrop
Impossibile caricare PlayDrop

Non è stato possibile scaricare una parte necessaria della pagina. Prova a ricaricarla.

STYLESHEET_ERROR
PlayDrop logoPlayDrop Studio
PlayDrop logoPlayDrop Studio
CreaPlayTradeGuadagnaImparaConnettoriCommunityAssistenza
SDK server
Documentazione

Inizia da qui

PanoramicaIl tuo primo gioco

Crea con Cloud

Creazione con CloudPubblica e importaPiani e generazioniCrediti e ricompense

Collega il tuo agente

Tutti i connettoriClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Riferimento tecnico

File di giococatalogue.jsonSDK clientSDK serverRisoluzione dei problemiFAQ
DocumentazioneSDK server
Riferimento tecnico

Server di gioco PlayDrop: Colyseus, MongoDB e SDK server

Multiplayer ospitato facoltativo: carica un server.js Colyseus con MongoDB, provalo con i giocatori di prova e usa l’SDK server per amici e IA.

Un server di gioco è facoltativo. Il tuo gioco può chiamare qualsiasi server che gestisci tu. Se preferisci, PlayDrop ospita per il tuo gioco un server Colyseus standard con un database MongoDB: caricalo come server.js accanto a index.html tramite PlayDrop Connector, oppure chiedi a PlayDrop Cloud di costruirlo. Anche il pacchetto @playdrop/server è facoltativo.

Scrivi un server Colyseus standard

js
import { Room, defineRoom } from "colyseus";
import { MongoClient } from "mongodb";

class GameRoom extends Room {
  async onCreate() {
    this.mongo = new MongoClient(process.env.PLAYDROP_MONGO_URL);
    await this.mongo.connect();
  }
  onJoin(client) {
    // client.auth is the verified PlayDrop player, for example client.auth.userId.
  }
  async onDispose() { await this.mongo?.close(); }
}

export const rooms = { game: defineRoom(GameRoom) };

Esporta una mappa rooms da server.js ed elenca i nomi delle stanze in catalogue.json come "server": { "rooms": ["game"] }. PlayDrop esegue il server, quindi non avviarne uno tu. Salva i dati con il driver MongoDB standard tramite PLAYDROP_MONGO_URL, dentro il ciclo di vita della stanza.

Regole del server ospitato

  • Colyseus 0.17 (colyseus 0.17.10, @colyseus/schema 4.0.30), il driver MongoDB 7.5 e Node 22.
  • Un unico modulo ES autonomo fino a 2 MiB. Può importare solo colyseus, @colyseus/core, @colyseus/schema, mongodb e @playdrop/server; includi nel file qualsiasi altro codice.
  • Fino a 2 tipi di stanza, 8 giocatori per stanza, 4 ore per stanza, 30 messaggi al secondo per giocatore e 512 KiB per messaggio.
  • Nessun accesso a internet dal server: sono raggiungibili solo MongoDB e i servizi di PlayDrop.
  • I giocatori devono aver effettuato l’accesso. PlayDrop verifica ogni giocatore quando entra; non implementare onAuth.
  • Un database MongoDB per gioco, conservato tra le versioni e conteggiato nella tua quota di spazio. Non inviare mai le sue credenziali al browser.

Collega il browser e prova

Nel browser, sdk.multiplayer.getConnection() dell’SDK client restituisce l’indirizzo del server e il token del giocatore; entra con il client Colyseus (@colyseus/sdk 0.17). Durante lo sviluppo, esegui in locale Colyseus 0.17 e MongoDB 8 e collegati direttamente al tuo server locale. Per provare il server ospitato, carica una versione privata, poi apri https://www.playdrop.ai/create/games/<slug>/test?v=<version>&player=1 e lo stesso link con player=2 in una seconda finestra: ogni finestra gioca come un account di prova separato. Rendi pubblica la versione dalla pagina del gioco quando funziona.

SDK server facoltativo: amici e IA

@playdrop/server aggiunge playdrop.social (gli amici che giocano a questo gioco e le carte di gioco nella Chat di PlayDrop) e playdrop.ai (generazione di testo, immagini, 3D, video, suoni, voce e musica pagata dal creator). Queste chiamate funzionano solo sui giochi caricati, non nello sviluppo locale. Scarica sul server i contenuti multimediali privati generati con playdrop.ai.tasks.downloadFile e invia i byte solo al giocatore interessato; le richieste di voce accettano al massimo 40 parole.

Gruppo e voce della stanza

await playdrop.social.getParty(client.auth) legge i membri del gruppo attualmente autorizzati. Non espone la chat del gruppo né l’attività in altri giochi e non concede la gestione del gruppo. Le API social esistenti mantengono il loro comportamento.

Un catalogo che dichiara roomVoice: true parte con una politica per tutta la stanza; per questa impostazione predefinita non serve alcuna chiamata al server. Per personalizzarla, associa const platform = playdrop.multiplayer.forRoom(this) alla vera stanza Colyseus. Usa platform.voice.setPolicy("all" | "team" | "proximity" | "off", { range: 20 }), setTeam(client.auth, teamId), setAudience(client.auth, audience) e updatePositions([{ player: client.auth, position: { x, y, z } }]). Passa null per cancellare un override di squadra o di giocatore. La prossimità richiede posizioni autorevoli aggiornate.

Il runtime affidabile unisce le modifiche di idoneità, riserva i seguaci del gruppo accettati dopo l’ingresso ordinario del leader e ripulisce i permessi. I giochi non inviano mai audio, credenziali del provider o richieste di microfono. Mantieni la stessa stanza tra un round e l’altro. Usa i giocatori di prova privati già esistenti con un creator idoneo per provare l’integrazione prima di pubblicare; la sola pubblicazione non attiva il rollout.

PrecedenteSDK client di PlayDrop per giochi da browserSuccessivoRisolvi i problemi di creazione e pubblicazione con Cloud
Vedi il Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

In questa pagina

Scrivi un server Colyseus standardRegole del server ospitatoCollega il browser e provaSDK server facoltativo: amici e IAGruppo e voce della stanza
Vedi il Markdown