PlayDrop
PlayDropia ei voitu ladata

Sivun tarvittavan osan lataus epäonnistui. Lataa sivu uudelleen.

STYLESHEET_ERROR
PlayDrop logoPlayDrop Studio
PlayDrop logoPlayDrop Studio
LuoPlayTradeAnsaitseOpiConnectoritYhteisöTuki
Server SDK
Dokumentaatio

Aloita tästä

YleiskatsausEnsimmäinen pelisi

Luo Cloudilla

Luonti CloudillaJulkaisu ja tuontiTilaukset ja luontikerratKrediitit ja palkinnot

Yhdistä agenttisi

Kaikki connectoritClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Tekninen viite

Pelitiedostotcatalogue.jsonClient SDKServer SDKVianmääritysUKK
DokumentaatioServer SDK
Tekninen viite

PlayDropin pelipalvelimet: Colyseus, MongoDB ja server SDK

Valinnainen isännöity moninpeli: lataa Colyseus-tiedosto server.js MongoDB:llä, testaa Test Players -pelaajilla ja käytä server SDK:ta ystäviin ja tekoälyyn.

Pelipalvelin on valinnainen. Pelisi voi kutsua mitä tahansa itse ylläpitämääsi palvelinta. Jos haluat, PlayDrop isännöi pelillesi tavallista Colyseus-palvelinta MongoDB-tietokannalla: lataa se tiedostona server.js tiedoston index.html viereen PlayDrop Connectorin kautta tai pyydä PlayDrop Cloudia rakentamaan se. Myös @playdrop/server-paketti on valinnainen.

Kirjoita tavallinen Colyseus-palvelin

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) };

Vie rooms-kartta tiedostosta server.js ja luettele sen huoneiden nimet tiedostossa catalogue.json muodossa "server": { "rooms": ["game"] }. PlayDrop ajaa palvelimen, joten älä käynnistä sitä itse. Tallenna tiedot tavallisella MongoDB-ajurilla PLAYDROP_MONGO_URL-osoitteen kautta huoneen elinkaaren sisällä.

Isännöidyn palvelimen säännöt

  • Colyseus 0.17 (colyseus 0.17.10, @colyseus/schema 4.0.30), MongoDB-ajuri 7.5 ja Node 22.
  • Yksi itsenäinen ES-moduuli, enintään 2 MiB. Se saa tuoda vain colyseus, @colyseus/core, @colyseus/schema, mongodb ja @playdrop/server; niputa kaikki muu koodi tiedostoon.
  • Enintään 2 huonetyyppiä, 8 pelaajaa huonetta kohden, 4 tuntia huonetta kohden, 30 viestiä sekunnissa pelaajaa kohden ja 512 KiB viestiä kohden.
  • Palvelimelta ei ole internet-yhteyttä: vain MongoDB ja PlayDrop-palvelut ovat tavoitettavissa.
  • Pelaajien on oltava kirjautuneita. PlayDrop varmentaa jokaisen pelaajan liittyessä; älä toteuta onAuth-funktiota.
  • Yksi MongoDB-tietokanta per peli, säilytetään versioiden yli ja lasketaan tallennuskiintiöösi. Älä koskaan lähetä sen tunnuksia selaimelle.

Yhdistä selain ja testaa

Selaimessa sdk.multiplayer.getConnection() client SDK:sta palauttaa palvelimen osoitteen ja pelaajan tunnisteen; liity Colyseus-clientillä (@colyseus/sdk 0.17). Kehityksen aikana aja Colyseus 0.17 ja MongoDB 8 paikallisesti ja yhdistä suoraan paikalliseen palvelimeesi. Testataksesi isännöityä palvelinta lataa yksityinen versio ja avaa sitten https://www.playdrop.ai/create/games/<slug>/test?v=<version>&player=1 sekä sama linkki arvolla player=2 toisessa ikkunassa: kukin ikkuna pelaa erillisenä testitilinä. Tee versiosta julkinen pelisivulta, kun se toimii.

Valinnainen server SDK: ystävät ja tekoäly

@playdrop/server lisää playdrop.social (tätä peliä pelaavat ystävät ja pelikortit PlayDrop Chatissa) ja playdrop.ai (teksti-, kuva-, 3D-, video-, ääni-, puhe- ja musiikkigenerointi, jonka maksaa tekijä). Nämä kutsut toimivat vain ladatuissa peleissä, eivät paikallisessa kehityksessä. Lataa yksityinen luotu media palvelimella komennolla playdrop.ai.tasks.downloadFile ja lähetä tavut vain aiotulle pelaajalle; puhepyynnöt hyväksyvät enintään 40 sanaa.

Ryhmä ja huoneen puhe

await playdrop.social.getParty(client.auth) lukee tällä hetkellä valtuutetun ryhmän jäsenyyden. Se ei paljasta ryhmächattia tai muun pelin toimintaa eikä anna ryhmän hallintaoikeutta. Olemassa olevat sosiaaliset rajapinnat säilyttävät toimintansa.

Katalogi, joka ilmoittaa roomVoice: true, alkaa koko huoneen käytännöllä; sitä varten ei tarvita palvelinkutsua. Mukauttaaksesi sitä sido const platform = playdrop.multiplayer.forRoom(this) varsinaiseen Colyseus-huoneeseen. Käytä platform.voice.setPolicy("all" | "team" | "proximity" | "off", { range: 20 }), setTeam(client.auth, teamId), setAudience(client.auth, audience) ja updatePositions([{ player: client.auth, position: { x, y, z } }]). Anna null tyhjentääksesi tiimin tai pelaajan ohituksen. Läheisyys vaatii tuoreet auktoritatiiviset sijainnit.

Luotettu ajoympäristö yhdistää kelpoisuusmuutokset, varaa hyväksytyt ryhmän seuraajat johtajan tavallisen liittymisen jälkeen ja siivoaa oikeudet. Pelit eivät koskaan lähetä ääntä, palveluntarjoajan tunnuksia tai mikrofonipyyntöjä. Pidä sama huone kierrosten yli. Käytä olemassa olevia yksityisiä Test Players -pelaajia kelpoisen tekijän kanssa testataksesi integraation ennen julkaisua; pelkkä julkaisu ei ota käyttöönottoa käyttöön.

EdellinenPlayDropin client SDK selainpeleilleSeuraavaVianmääritys: PlayDrop Cloud -luonti ja julkaisu
Näytä Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Tällä sivulla

Kirjoita tavallinen Colyseus-palvelinIsännöidyn palvelimen säännötYhdistä selain ja testaaValinnainen server SDK: ystävät ja tekoälyRyhmä ja huoneen puhe
Näytä Markdown