
Kembali ke Unity
DryreL Software Unity
Supabase Game Achievements
Achievement offline-first untuk game Unity
Buka achievement secara instan, bahkan offline, dan sinkronkan dengan aman saat pemain kembali online. Kini tersedia di GitHub.
Tersedia di GitHub
- 0 msMenunggu jaringan saat unlock
- 3Assembly, inti tanpa engine
- MITGratis di GitHub
Ringkasan
Apa yang dilakukannya
Achievement offline-first untuk game: unlock lokal instan, penyimpanan tahan crash, sinkronisasi server berbatch dan idempoten, overlay unlock opsional, dan Unity Localization opsional.
- Unity
- C#
- Supabase
- uGUI
- Lisensi MIT
Cara kerjanya
Dari nol sampai berfungsi
- Buat katalogJalankan skrip SQL singkat sekali per game di editor SQL Supabase.
- Tambahkan paketPasang dari URL Git dan bootstrap sekali di scene pertama Anda.
- Unlock dari gameplayPanggil TryUnlock. Prosesnya instan, tersimpan lokal, dan disinkronkan di latar belakang.
Fitur
Dibuat untuk langsung berfungsi
- Offline lebih duluTryUnlock tidak pernah menunggu jaringan; unlock instan dan disimpan lokal.
- Penyimpanan tahan crashProgres tetap aman meski crash atau game ditutup.
- Sinkronisasi server yang amanUnlock dikirim ke Supabase secara berbatch, dan mengulang sinkronisasi tidak pernah menggandakannya.
- Overlay unlockToast opsional di layar saat achievement terbuka.
- LokalisasiDukungan Unity Localization opsional untuk judul dan deskripsi.
- Inti tanpa engineAssembly inti tidak punya referensi engine, jadi mudah diuji.
- Achievement DashboardJendela editor untuk mengelola achievement, mengubah gaya toast dengan pratinjau langsung, dan menyiapkan aturan tanpa kode.
- Achievement bersyaratPenghitung, quest, dan aturan "tanpa gagal", dari tab Rules dashboard atau lewat kode.
- Toast yang tidak menggangguMuncul bergeser, antre alih-alih bertumpuk, memutar suara, dan tidak pernah memblokir input.
- Dukungan Dialogue SystemUnlock opsional dari Dialogue System for Unity, plus contoh integrasi Patreon.
Mulai
Pasang dan gunakan
- Buka Package ManagerDi Unity pilih Window, Package Manager, lalu tombol +.
- Tambahkan dari URL GitTempel URL repositori dan tekan Add.
Lalu, di kode Anda
- Unlock
AchievementManager.TryUnlock("first_blood")Instan dan aman offline. Tidak pernah menunggu jaringan. - Periksa
AchievementManager.HasUnlocked("first_blood")Cari tahu apa yang sudah dimiliki pemain. - Bereaksi
AchievementManager.AchievementUnlocked += ...Jalankan kode Anda sendiri di setiap unlock. - Sinkronkan
await AchievementManager.SyncAsync()Opsional: hanya saat Anda perlu tahu hasilnya.
Persyaratan
Sebelum Anda mulai
- Unity 2022.3 atau lebih baru (diuji di 6000.3)
- Paket Newtonsoft Json (com.unity.nuget.newtonsoft-json)
- uGUI
