PlayDrop logoPlayDrop Studio
LuoPelivaihtoAnsaitseOpiConnectoritResurssitYhteisöTuki
PlayDrop logoPlayDrop Studio
LuoPelivaihtoAnsaitseOpiConnectoritResurssitYhteisöTuki
Kirjaudu sisään
Pilvitallennukset
Dokumentaatio

Aloita tästä

YleiskatsausEnsimmäinen pelisiPlayDrop-pelitUKK

Luo Cloudilla

Luonti CloudillaTilaukset ja luontikerrat

Yhdistä tekoälysovellus

Kaikki connectoritClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Julkaise ja jaa

Julkaise tekoälysovelluksestaYksinkertaiset HTML-pelitPaketointi ja .playJulkaise ja tuoPelitiedostotNäkyvyys ja tavoittavuusPelisivun kuvat ja videoLajityypit ja tagitLokalisointiInstant-pelit

Pelikokemus

Lataus, tauko ja ääniKoko näyttö ja turva-alueetPilvitallennuksetPaikalliset ryhmät ja ohjaimet

Pelaa yhdessä

Jakaminen, ystävät ja kutsutTulostaulutSaavutuksetVerkkoryhmät ja puheReaaliaikaiset pelipalvelimet

Ansaitse

AnsaitseminenKrediitit ja palkinnot

Resurssit

Pelin resurssitTekoälyresurssitMukautetut muodot ja luomukset

Viitteet

Client SDKServer SDKcatalogue.jsonVirheet ja palautuminenVianmääritys
DokumentaatioPilvitallennukset
Pelikokemus

Pilvitallennukset PlayDrop-peleihin

Tallenna ja lataa edistyminen sdk.me.appData- ja updateAppData-rajapinnoilla vieraille ja kirjautuneille sekä kirjoitus-, esikatselu- ja offline-säännöt.

Pilvitallennukset säilyttävät jokaisen pelaajan edistymisen pelissäsi PlayDropissa, joten se seuraa pelaajaa verkkosivustolta sovelluksiin. Jokaista pelaajaa ja peliä kohden tallennetaan yksi JSON-olio; palvelinta tai moninpelihuonetta ei tarvita.

Lue ja kirjoita

init()-kutsun jälkeen sdk.me.appData on tallennettu tilannevedos: { data, seq, ts_event, ts_arrival }, tai null ennen ensimmäistä tallennusta. Lue oliosi kentästä data. Kirjoita koko olio kutsulla updateAppData, joka palauttaa tallennetun tilannevedoksen ja päivittää arvon sdk.me.appData.

js
const sdk = await playdrop.init();
let progress = { level: 1, coins: 0, ...(sdk.me.appData?.data ?? {}) };
let queue = Promise.resolve();

// Resolves with the saved snapshot; rejects when the save failed.
function save(changes) {
  progress = { ...progress, ...changes };
  const snapshot = { ...progress };
  const attempt = queue.then(() => sdk.me.updateAppData(snapshot));
  queue = attempt.catch(() => {}); // a failed save must not block the next one
  return attempt;
}

try {
  await save({ level: 2 });
  showSaved();
} catch (error) {
  showSaveError(); // progress stays in memory; the next save sends it again
}
  • Jokainen kirjoitus korvaa koko tallennetun olion: säilytä kaikki kentät, joita vielä tarvitset.
  • Suorita kirjoitukset peräkkäin yllä olevan mallin mukaan, jotta vanhempi tallennus ei koskaan päädy uudemman jälkeen, ja pidä jono käynnissä epäonnistumisen jälkeen.
  • Näytä ”Tallennettu” vasta, kun lupaus on täyttynyt. Arvon appData.data muuttaminen muistissa ei tallenna mitään.
  • appData-oliolla ei ole metodeja get, set tai save.

Milloin tallentaa

Tallenna tarkistuspisteissä, tasojen lopussa ja ostojen yhteydessä, älä joka ruudulla. Älä koskaan tallenna esikatselujen tai kaappausten aikana: kirjoita vain, kun sdk.host.phase on play. Pidä tallennus pienenä ja versioi se omalla kentälläsi, kuten saveVersion: 2, jotta pelin myöhempi versio voi siirtää sen uuteen muotoon.

Vieraat ja kirjautuneet pelaajat

Sinun ei tarvitse tarkistaa arvoa sdk.me.isLoggedIn ennen tallentamista: myös PlayDropin vieraat säilyttävät tallennuksensa. Pelaaja, jolla ei ole lainkaan istuntoa, säilyttää tallennuksen muistissa kyseisen käynnin ajan, joten valmistunut kirjoitus ei todista, että tallennus päätyi pilveen. Käytä arvoa isLoggedIn vain ominaisuuksiin, jotka vaativat oikean tilin, kuten ostoihin ja isännöityyn moninpeliin.

Offline

Selaimessa tallennukset vaativat verkkoyhteyden, eikä offline-jonoa ole: jatka pelaamista epäonnistumisen jälkeen ja yritä uudelleen seuraavassa tarkistuspisteessä. Laitedataa tukevat isännät, kuten offline-tilaa tukevat PlayDrop-sovellukset, säilyttävät tallennukset laitteella ja synkronoivat ne, kun yhteys on käytettävissä.

Mitä tallennukset eivät ole

Tallennukset ovat yksityisiä yhdelle pelaajalle ja yhdelle pelille. Ne ovat erillään tulostauluista ja saavutuksista, joilla on omat rajapintansa ja jotka näkyvät PlayDropissa. Pelaajien välillä jaettu tila, kuten ottelu tai maailma, kuuluu pelipalvelimelle pelisi MongoDB-kokoelmiin.

Testaa

Tallennukset kuuluvat palveluun ladattuun peliin. Lataa yksityinen versio vähintään kerran ja testaa sitten kuittauksen url-osoitteesta tai paikallisesta Dev-kehyksestä, joka kuvataan sivulla julkaiseminen tekoälysovelluksesta.

Liittyvät oppaat

  • TulostaulutMäärittele tulostaulut catalogue.jsonissa, lähetä pisteet sdk.leaderboards-rajapinnalla ja näytä kärki ja pelaajan naapurit. Pistetyypit, rajat ja päivityssäännöt.
  • SaavutuksetMäärittele tavalliset ja kasvavat saavutukset kuvakkeineen catalogue.json-tiedostossa, avaa ne ja raportoi edistyminen sdk.achievements-rajapinnalla.
  • Reaaliaikaiset pelipalvelimetAja pelillesi isännöityä Colyseus 0.17 -palvelinta MongoDB-tietokannalla, yhdistä selaimesta SDK:lla, testaa kahdella pelaajalla ja tunne rajat.
EdellinenKoko näyttö, turva-alueet ja HUD-kulmat PlayDrop-peleissäSeuraavaPaikalliset ryhmät, peliohjaimet ja puhelinohjaimet PlayDrop-peleissä
Näytä Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Tällä sivulla

Lue ja kirjoitaMilloin tallentaaVieraat ja kirjautuneet pelaajatOfflineMitä tallennukset eivät oleTestaa
Näytä Markdown