Pemain dan login

Akun tamu yang bertahan saat game dibuka ulang, nama tampilan, dan menautkan tamu ke email atau Google.

Komentar kode dan nama API tetap dalam bahasa Inggris agar sesuai dengan SDK.

Di halaman ini

Login tamu#

Panggil ini sekali saat game dimulai. Fungsi ini memulihkan sesi yang tersimpan (memperbaruinya bila perlu) atau membuat tamu baru, sehingga pemain yang sama tetap memiliki progresnya.

C#
var signIn = await Majacloud.Auth.SignInAnonymouslyAsync();
if (signIn.Ok)
{
    var player = signIn.Value;
    Debug.Log(player.PlayerId + " " + player.DisplayName + " guest: " + player.IsGuest);
}
Tamu baru dibatasi 30 per jaringan setiap 15 menit, untuk mencegah pembuatan akun otomatis lewat skrip.

Nama tampilan#

Tamu mendapat nama otomatis seperti Guest 4821. Pemain bisa memilih namanya sendiri; leaderboard menampilkan nama tersebut.

C#
var renamed = await Majacloud.Auth.SetDisplayNameAsync("Nova");
if (!renamed.Ok) Debug.Log(renamed.Error.Message); // e.g. Validation: too long

Penautan membuka halaman web yang aman di server MAJACLOUD Anda, tempat pemain login atau mendaftar dengan email dan kata sandi atau Google. Progres tamu (skor, save, dompet) pindah ke akun tersebut, dan game menerima sesi baru — di perangkat apa pun.

C#
// Opens the sign-in page, waits for the player, then switches the session
var linked = await Majacloud.Auth.LinkAccountAsync(new MajacloudLinkOptions { ReturnUrl = "mygame://auth" });
if (linked.Ok) Debug.Log("Signed in as " + linked.Value.DisplayName);

// WebGL: browsers only open tabs from a click, so start first and open inside the handler
var flow = await Majacloud.Auth.StartLinkAsync(new MajacloudLinkOptions { OpenBrowser = false });
linkButton.onClick.AddListener(() => flow.Value.OpenInBrowser());
var result = await flow.Value.WaitForCompletionAsync();
  1. SDK membuat secret sekali pakai (PKCE) dan memulai alur login.
  2. Pemain menyelesaikannya di halaman web; SDK memeriksa status secara berkala sampai alur selesai.
  3. SDK menukar alur tersebut dengan sesi memakai secret tadi, sehingga tautan yang dicuri tidak ada gunanya.
  4. Alur kedaluwarsa setelah 15 menit (diperpanjang selama halaman masih terbuka).

Kembali ke game#

Tanpa URL kembali, halaman meminta pemain kembali ke game sendiri. Untuk mengembalikan mereka secara otomatis, tambahkan skema URL kustom Anda (misalnya mygame) di API key ▸ URL kembali setelah login pemain lalu berikan mygame://auth sebagai URL kembali.

Event#

Tanggapi saat pemain berganti, keluar, atau saat sesi tidak bisa diperbarui lagi:

C#
Majacloud.Auth.PlayerChanged += player => nameLabel.text = player?.DisplayName;
Majacloud.Auth.SignedOut += () => ShowTitleScreen();
Majacloud.Auth.SessionExpired += () => ShowSignIn();

Keluar#

Keluar akan mencabut sesi di server dan menghapusnya dari perangkat. Login berikutnya membuat tamu baru.

C#
await Majacloud.Auth.SignOutAsync();   // revokes the session on the server
Majacloud.Auth.ClearLocalSession();   // or only forget it on this device

Membaca data pemain dari server Anda#

Dengan secret key, server Anda bisa membaca pemain mana pun, termasuk email dan saldo dompet:

JavaScript
// Node.js, created with secretKey
const found = await admin.server.getPlayer('player_3f9c…');
if (found.ok) console.log(found.value.player.email, found.value.player.wallets);

Di dashboard#

Halaman Pemain menampilkan setiap pemain beserta metode login, skor, save, dan dompetnya. Dari sana Anda bisa mengganti nama atau menonaktifkan pemain, mengeluarkannya dari semua perangkat, mengirim tautan reset kata sandi, atau menghapusnya.

Cari judul halaman, subjudul, dan teks.

↑↓ untuk berpindah ↵ untuk membuka Esc untuk menutup