PlayDrop logoPlayDrop Studio
OluşturOyun takasıKazanÖğrenBağlayıcılarAsset’lerToplulukDestek
PlayDrop logoPlayDrop Studio
OluşturOyun takasıKazanÖğrenBağlayıcılarAsset’lerToplulukDestek
Giriş yap
Paylaşım, arkadaşlar ve davetler
Belgeler

Buradan başla

Genel bakışİlk oyununPlayDrop oyunlarıSSS

Cloud ile oluştur

Cloud ile oluşturmaPlanlar ve üretimler

Yapay zeka uygulamanı bağla

Tüm bağlayıcılarClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Yayınla ve paylaş

Yapay zeka uygulamandan yayınlaBasit HTML oyunlarıPaketleme ve .playYayınla ve içe aktarOyun dosyalarıGörünürlük ve erişimOyun sayfası görselleri ve videoTürler ve etiketlerYerelleştirmeInstant oyunlar

Oyun deneyimi

Yükleme, duraklatma ve sesTam ekran ve güvenli alanlarBulut kayıtlarıYerel partiler ve kumandalar

Birlikte oyna

Paylaşım, arkadaşlar ve davetlerLiderlik tablolarıBaşarımlarÇevrimiçi partiler ve sesli sohbetGerçek zamanlı oyun sunucuları

Kazan

Para kazanmaKrediler ve ödüller

Asset’ler

Oyun asset’leriYapay zekayla asset üretimiÖzel biçimler ve oyuncu yapımları

Başvuru

İstemci SDK’sıSunucu SDK’sıcatalogue.jsonHatalar ve kurtarmaSorun giderme
BelgelerPaylaşım, arkadaşlar ve davetler
Birlikte oyna

PlayDrop oyunlarında paylaşım, arkadaşlar ve davetler

Oyunu görsel ya da kliple paylaş, başlatma verisini oku, arkadaş seç, PlayDrop Sohbet’te davet ve meydan okuma kartları gönder, başka oyunlar öner.

Paylaşım panelini, arkadaş listesini ve sohbeti PlayDrop yönetir; oyunun bunları doğru anda ister. Oyuncular arkadaşlarını getirir ve arkadaşlar doğrudan oyununa gelir.

Oyunu paylaş

sdk.host.share() çağrısını bir dokunma ya da tıklamadan yap. Oyunun herkese açık sayfasını isteğe bağlı metin, bir görsel ya da kısa bir video ve isteğe bağlı bir başlatma verisiyle paylaşır.

js
shareButton.addEventListener("click", async () => {
  try {
    await sdk.host.share({ text: `I reached level ${level} in Moon Jump`, image: scoreCardBlob, payload: "level-7" });
  } catch (error) {
    console.warn("Share failed", error);
  }
});
  • image: en fazla 8 MiB boyutunda GIF, JPEG, PNG ya da WebP Blob. Görsel ekleyemeyen ana uygulamalar yalnızca bağlantıyı paylaşır.
  • video: görsel yerine en fazla 15 saniye ve 20.000.000 bayt boyutunda bir MP4 Blob. 16:9, 9:16 ya da 1:1 oranında 1080p H.264/AAC en iyi sonucu verir. Video desteği olmayan ana uygulamalar düz bir bağlantı paylaşmak yerine host_share_video_unsupported ile reddeder.
  • Blob’u dokunmadan önce hazırla; dokunmadan sonra oluşturmak tarayıcının paylaşma iznini kaybettirebilir.
  • Özel bir URL ya da başka dosyalar paylaşamazsın. Bağlantı her zaman oyunun sayfasıdır.

Görsel hataları invalid_host_share_image, host_share_image_type ve host_share_image_too_large kodlarıdır.

Başlatma verisini oku

payload en fazla 256 base64url karakteridir. Paylaşılan bağlantıyı açan oyuncu, oyunu sdk.host.launchPayload bu değere ya da null değerine ayarlanmış olarak başlatır. Onu güvenilmeyen girdi olarak ele al: doğrula ve oyuncunun, verinin belirttiği bir odaya katılıp katılamayacağını sunucunda kontrol et. İçine asla kimlik bilgisi koyma.

Arkadaş seç ve oyun kartları gönder

sdk.social.selectFriends({ max }) PlayDrop’un arkadaş seçicisini açar (1 ile 10 arası, varsayılan 1) ve yalnızca oyuncunun seçtiği arkadaşları ya da oyuncu iptal ederse [] döndürür. Sonra PlayDrop Sohbet’te görünen bir kart gönder:

js
const [friend] = await sdk.social.selectFriends({ max: 1 });
if (friend) {
  await sdk.social.sendMessage({
    recipientUserId: friend.id,
    type: "challenge",
    title: "Beat my time: 42.3 s",
    subtitle: "Moon Jump, level 7",
    payload: "level-7",
    clientMessageId: `challenge-${runId}-${friend.id}`,
  });
}
  • type değeri invite, request, gift, challenge ya da turn olur.
  • title en fazla 80, subtitle en fazla 160 karakterdir.
  • expiresInSeconds 60 saniye ile 30 gün (varsayılan) arasındadır.
  • clientMessageId tekrar denemeyi güvenli kılar: onu yeniden kullanmak özgün mesajı döndürür.
  • Oyuncunun seçtiği arkadaşlara, bu oyunu oynayan arkadaşlara ve oyuncunun zaten oyun mesajlaştığı oyunculara mesaj gönderebilirsin. Eşleştirmede karşılaşılan yabancılara mesaj gönderilemez.

Gelen kartları en eskiden başlayarak getMessages({ limit }) ile oku, sonra her birini consumeMessage(message.id) ile işlendi olarak işaretle. Gönderen message.from.id değeridir.

js
const page = await sdk.social.getMessages({ limit: 20 });
for (const message of page.messages) {
  await applyCard(message.type, message.from.id, message.payload);
  await sdk.social.consumeMessage(message.id);
}

null olana kadar cursor: page.nextCursor ile devam et.

Bu oyunu oynayan arkadaşlar

sdk.social.listGameFriends() bu oyunda yakın zamanda oturumu olan arkadaşları döndürür: “birlikte oyna” düğmeleri için iyi bir liste. Arkadaş listesinin tamamını ya da çevrimiçi durumunu göstermez. openProfile(userId) bir oyuncunun profilini açar, openChat({ recipientUserId, draftMessage }) ise oyuncunun kendisinin göndereceği düzenlenebilir bir taslakla Sohbet’i açar.

Bir arkadaşı üzerinden gelen yeni bir oyuncuda sdk.host.launchFriend ayarlı olabilir. Onunla oynamayı öner ve selectFriends({ max: 1 }) ile onayla; asla bir şeyi otomatik başlatma.

Başka oyunlar öner

Oyun bitişi gibi doğal bir arada sdk.host.showGames({ games: ["@creator/name"] }), herkese açık bir ila üç başka oyun için PlayDrop kartları gösterir ve seninkini duraklatır. played (PlayDrop ardından oyunu değiştirir) ya da dismissed ile tamamlanır. sdk.host.preloadGame(ref), oyuncunun bir sonraki açabileceği oyunu önceden bildirir.

Gereksinimler

Paylaşım ve sosyal çağrılar SDK’yı kullanan bir paket gerektirir. Arkadaş özellikleri giriş yapmış bir oyuncu gerektirir. Ana uygulamanın pencereleri oyunu duraklatır; duraklatma ve sürdürmeyi ele al.

İlgili kılavuzlar

  • Çevrimiçi partiler ve sesli sohbetArkadaşlar oyununu çevrimiçi oynasın: parti boyutlarını bildir, parti penceresini aç, sdk.multiplayer.join ile ayrılmış odaya katıl, oda sesli sohbetini yönet.
  • Görünürlük ve erişimPlayDrop oyununu kimlerin açabileceğini seç; hesap varsayılanı ve sürüm yayınlama nasıl işler, Boost, oyun takası, Instant ve arama nasıl yeni oyuncu getirir.
  • Liderlik tablolarıcatalogue.json’da liderlik tabloları tanımla, sdk.leaderboards ile puan gönder, en iyileri ve oyuncunun komşularını göster. Puan türleri, sınırlar ve kurallar.
ÖncekiPlayDrop oyunlarında yerel parti, fiziksel ve telefon kumandalarıSonrakiPlayDrop oyunları için liderlik tabloları
Markdown’ı gör
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Bu sayfada

Oyunu paylaşBaşlatma verisini okuArkadaş seç ve oyun kartları gönderBu oyunu oynayan arkadaşlarBaşka oyunlar önerGereksinimler
Markdown’ı gör