Ide dan fitur game

Fitur berikutnya

Pasar

Perdagangkan item inventaris asli antara dua pemain.

SDK: developMemerlukan sesi pemain
Unity
Ilustrasi Pasar
Hasil yang terlihat

Pembeli menerima item yang sama dan penjual menerima harga yang disepakati dikurangi biaya yang dikonfigurasi.

Video akan tersedia

Langkah ini belum memiliki video. Panduan dan permintaan MCP sudah dapat digunakan.

Pasar

Siapkan proyek yang sama

  1. Pilih proyek yang sama di dasbor dan konfigurasi game.

    Pasar →
  2. Permintaan pertama tidak memerlukan definisi tambahan. Hasil kosong tetap sah sebelum ada data permainan yang sesuai.

    Tetapkan mata uang, biaya, dan setidaknya satu aturan harga aktif.

    Gunakan dua pemain yang masuk ke proyek yang sama. Konfigurasikan mata uang, biaya, dan aturan harga, lalu tawarkan item yang tidak sedang dipakai dan konfirmasikan pembeliannya secara eksplisit.

    Item →Nilai pemain →

Tambahkan fitur ini

Kamu dapat membaca panduan. Untuk menjalankannya, diperlukan kunci proyek aktif. Siapkan proyek

SDK terpasang, konfigurasi proyek diimpor, dan pemain sudah masuk.

Contoh SDK ini menggunakan develop. Periksa apakah API yang diperlukan tersedia di SDK yang terpasang.

Selesaikan koneksi mulai cepat dengan pemain yang dipilih. Panggil ReadListing(listingId) dari tombol atau tindakan adegan yang eksplisit. Membuka berkas saja tidak mengirim permintaan.

C#
Assets/Scripts/MarketplaceDemo.cs
Panggilan horizOn
1using System.Threading.Tasks;
2using UnityEngine;
3using PM.horizOn.Cloud.Examples.Features;
4using PM.horizOn.Cloud.Objects.Network.Responses;
5​
6public class MarketplaceDemo : MonoBehaviour
7{
8 // Import the SDK Examples sample. Bind its screen to the signed-in player
9 // and set the stable projectId in the Inspector. Never use an Account Key.
10 public MarketplaceExample screen;
11​
12 public Task<MarketplaceResult<MarketplaceListingView>> ReadListing(string listingId)
13 => MarketplaceQuickstart.ReadOneListing(screen, listingId);
14​
15 // Wire only to the player's Buy confirmation after displaying ReadListing.
16 public Task<bool> ConfirmPurchase(string listingId)
17 => MarketplaceQuickstart.BuyReviewedListing(screen, listingId);
18​
19 // false/timeout does not prove nonexecution. Use screen.RetryPending() or
20 // screen.RecoverOriginalOperation(); never replace the unresolved original.
21 // The sample refreshes Inventory, Values and Marketplace before acknowledgement.
22 // Its native file journal rejects WebGL writes; use a durable browser persister.
23}
Buka contoh SDK lengkap ↗

Coba dengan dua pemain

Gunakan dua pemain yang masuk ke proyek yang sama. Konfigurasikan mata uang, biaya, dan aturan harga, lalu tawarkan item yang tidak sedang dipakai dan konfirmasikan pembeliannya secara eksplisit.

Gunakan sesi masuk yang sudah ada. Setelah pembelian yang belum terkonfirmasi, simpan dan ulangi permintaan asli yang sama, lalu muat ulang inventaris dan saldo.

Pembatalan melindungi item asli hingga diambil pemiliknya. Pemulihan hanya tersedia jika pemilik sebelumnya telah dihapus.

Penawaran dan perlindungan pengulangan disimpan sekali dalam proyek. Pemain menyimpan referensi dan data status yang terbatas.

Uji fitur barumu.

Pembeli menerima item yang sama dan penjual menerima harga yang disepakati dikurangi biaya yang dikonfigurasi.

Pilih proyek yang sama di dasbor dan konfigurasi game.

Titik akhir
  • GET/marketplace/limits
  • GET/marketplace/rules
  • GET/marketplace
  • GET/marketplace/listings
  • GET/marketplace/listings/{listingId}
  • POST/marketplace/listings
  • POST/marketplace/listings/{listingId}/buy
  • POST/marketplace/listings/{listingId}/cancel
  • GET/marketplace/operations/{operationId}
  • POST/marketplace/listings/{listingId}/retry-return
Semua titik akhir di referensi API
Saran kami untuk langkah berikutnya

Berikan skor tertinggi untuk setiap ronde.

Simpan skor setelah ronde dan tampilkan siapa yang unggul. Tetap gunakan koneksi dan sesi pemainmu.