Integrasi Roblox Server ke External API (Kaabaverse)
Mengapa integrasi ini penting?
Sinkronisasi Game–App
Menghubungkan aktivitas bermain player di Roblox dengan aplikasi gamifikasi luar.
Leaderboard Global
Menampilkan skor tertinggi server dan mini-game secara real-time.
Keamanan Data
Mencegah player melakukan eksploitasi atau manipulasi skor (anti-cheat).
Arsitektur & Flow Data in Gameplay
Gameplay
Player menyelesaikan mini-game di server Roblox.
Telemetri
Roblox Server mengirim data secara latar belakang (asynchronous).
Verifikasi
API Gateway memvalidasi Bearer Token agar data resmi dari server kita.
Penyimpanan
Kaabaverse datastore mencatat riwayat permainan & memperbarui ranking.
Doc Reference from official Roblox Creator :
https://create.roblox.com/docs/en-us/reference/engine/classes/HttpService
Langkah pengaturan di Roblox Studio
Aktifkan HTTP
Buka Home › Game Settings › Security. Centang Allow HTTP Requests menjadi ON.
Tambahkan Secret Key
Di menu Secrets, klik Add Secret. Name: ROBLOX_API_KEY · Value: token production gameapps kaabaverse
Simpan & Publikasikan
Klik Save, lalu publikasikan game server agar konfigurasi aktif di production stage.
https://gamerobloxapi.kaaba.co.id
Authorization: Bearer <ROBLOX_API_KEY>
Content-Type: application/json
{ "userId": 12345678, "username": "NamaPlayerRoblox", "minigameId": "obby_1", "score": 250 }
Daftar ID mini-games
Coin Hunter
Speed Run
Quiz in Floor ke n
Tarik Tambang
Gunakan ID di samping (huruf kecil semua,) memakai underscore saat mengirim data sebagai parameter body request ke API roblox kaabaverse
Mini-game baru akan otomatis terdaftar ke database saat skor pertama kali dikirim.
untuk minigames tower kita memiliki 7 lantai ( floor) ganti n dengan nama floor. e.g quiz_floor_1 / quiz_floor_2 ... quiz_floor_7
Keamanan & performa (anti-lag)
Keamanan
Server-Side Only
Pengiriman skor wajib lewat Server Script (ServerScriptService). Jangan pernah lewat LocalScript.
Secret Store
Token API tidak boleh di-hardcode di script. Gunakan fitur Secrets di Roblox Studio.
Performa
Non-Blocking
HTTP dikirim via task.spawn (asynchronous) sehingga tidak membekukan game loop utama.
Retry Queue
Dilengkapi sistem antrean dengan Exponential Backoff jika server API sedang tidak stabil.
Sample files directory
RobloxAPIService · ModuleScript
Library utama yang menangani seluruh komunikasi luar dan antrean pengiriman skor.
GameManager · Script
Mengatur logika game pada roblox dan memanggil layanan API saat dibutuhkan.
Trigger in Game
-- Parameter: (PlayerInstance, minigameId, score)