Langkah 1
Halaman induk dimuat iframe
Situs Anda merender iframe yang mengarah ke /embed/{gameSlug}/frame/ dengan tenantId dan parameter kueri mode atau campaignId opsional.
Embed API dokumen
Mulailah dengan demo langsung, perhatikan peristiwa halaman induk, lalu salin pola iframe dan listener ke situs Anda. Alur yang sama berlaku untuk setiap game Games I Know iframe.
Dapatkan kunci embedLakukan gerakan di Tic Tac Toe iframe. Log peristiwa menunjukkan GAME_STARTED, peristiwa permainan, dan muatan penyelesaian persis seperti yang diterima halaman induk.
Kontrak acara di seluruh platform
Games I Know mengirimkan embed event untuk setiap game di platform: Tic Tac Toe, Four in a Row, Bingo, dan I Know hari ini, dan setiap game baru yang dapat di-embed yang kami tambahkan di masa mendatang. Anda tidak memerlukan integrasi terpisah untuk setiap judul. Buat satu listener halaman induk terhadap kontrak standar (siap, GAME_STARTED, event gameplay, penyelesaian dengan data pemenang, dan hasil yang ditandatangani) dan gunakan kembali di semua game embed yang ada dan yang akan datang.
Gunakan jalur ini jika Anda sudah mengetahui di mana game tersebut harus muncul di situs web Anda.
Gunakan /embed/{gameSlug}/frame/ dengan tenantId Anda. Jangan iframe halaman arahan SEO.
Lanjutkan ke langkahFilter berdasarkan data.source === "gamesiknow", lalu tangani event GAME_STARTED, GAME_COMPLETED, dan versi 1 gameplay.
Lanjutkan ke langkahKirim resultId dan signedToken ke backend Anda sebelum memberikan kredit, hadiah, atau pembukaan kunci.
Lanjutkan ke langkahGunakan tenantId asli Anda dari dasbor mitra.
<iframe
src="https://gamesiknow.com/embed/tic-tac-toe/frame/?tenantId=YOUR_TENANT_ID"
title="Tic Tac Toe by Games I Know"
width="100%"
height="640"
style="border:0;border-radius:16px;max-width:420px;display:block;margin:0 auto;"
loading="lazy"
allow="fullscreen"
referrerpolicy="no-referrer-when-downgrade"
allowfullscreen
></iframe>Games I Know embed adalah iframe yang diisolasi (sandbox) pada domain Anda. Ia memvalidasi penyewa dan domain Anda terhadap API, kemudian berkomunikasi dengan halaman induk Anda melalui window.postMessage.
Langkah 1
Situs Anda merender iframe yang mengarah ke /embed/{gameSlug}/frame/ dengan tenantId dan parameter kueri mode atau campaignId opsional.
Langkah 2
iframe memanggil GET /embed/config (atau /api/embed/config). Games I Know memeriksa akun mitra Anda, domain yang diizinkan, akses game, dan kuota AI. Sebuah peristiwa analitik embed_loaded di sisi server dicatat.
Langkah 3
iframe mengirimkan event ready ke halaman induk sehingga Anda dapat menampilkan status loading atau mengubah ukuran frame menggunakan payload.embedHeight.
Langkah 4
Saat permainan dimulai, setiap permainan yang dapat dijalankan (embed) mengirimkan GAME_STARTED ke halaman induk dan merekam game_started secara otomatis di sisi server. Anda tidak memanggil analitik apa pun (API) dari situs web Anda.
Langkah 5
Selama pertandingan, peristiwa permainan versi 1 seperti gerakan dan perubahan mode memperbarui UI atau analitik internal Anda.
Langkah 6
Setelah selesai, setiap permainan yang dapat dijalankan melalui embed mengirimkan GAME_COMPLETED ke induk dengan hasil, pemenang, dan pemain sehingga halaman Anda dapat menampilkan hasilnya segera. iframe juga menandatangani hasilnya melalui POST /embed/results dan menyertakan resultId dan signedToken dalam GAME_COMPLETED ketika penandatanganan berhasil. Backend Anda dapat memverifikasi token tersebut dengan kunci server mitra sebelum memberikan hadiah.
Dua format postMessage
Peristiwa siklus hidup gunakan benda datar dengan event: "GAME_STARTED" or event: "GAME_COMPLETED". Peristiwa dalam permainan bungkus data di dalam version: 1 dengan bersarang payload. Selalu filter pada data.source === "gamesiknow".
Sebagian besar integrasi melibatkan empat keputusan: mendaftarkan domain, menghasilkan token, menginstal iframe, lalu mendengarkan peristiwa mulai dan selesai.
Tambahkan setiap domain yang akan menjadi host Games I Know embed. Domain dinormalisasi sehingga example.com dan www.example.com ditangani secara konsisten.
Buat token embed terpisah untuk setiap situs web. Ini menjaga agar analitik tetap bersih dan mempersiapkan akun untuk penetapan harga berbasis domain di masa mendatang.
Salin iframe atau pembungkus responsif ke dalam blok HTML kustom CMS Anda, area embed pembuat situs web, atau templat frontend kustom.
Tangani event postMessage GAME_STARTED dan GAME_COMPLETED di halaman induk Anda untuk menampilkan status pertandingan dan detail pemenang. Verifikasi hasil yang telah ditandatangani dari backend Anda dengan kunci server mitra sebelum memberikan hadiah.
Lebar
Gunakan 100% agar embed mengisi kolom konten yang tersedia.
Tinggi
640px untuk sebagian besar game. Tic Tac Toe juga berfungsi pada 600px. Gunakan payload.embedHeight dari event ready untuk mengubah ukuran secara otomatis.
Pertandingan
Gunakan /embed/tic-tac-toe/frame/, /embed/four-in-a-row/frame/, /embed/bingo/frame/, atau /embed/i-know/frame/.
Mode
Hilangkan mode untuk pilihan pemain, atau lewati mode=ai ketika Anda ingin embed meminta AI terlebih dahulu.
Pemain memilih jenis pertandingan di dalam game ketika kuota AI tersedia.
<iframe
src="https://gamesiknow.com/embed/tic-tac-toe/frame/?tenantId=TENANT_ID"
width="100%"
height="640"
style="border:0;border-radius:16px;max-width:420px;display:block;margin:0 auto;"
allow="fullscreen"
loading="lazy"
title="Tic Tac Toe by Games I Know"
></iframe>Meminta akses ke AI terlebih dahulu. Beralih ke PvP secara diam-diam ketika kuota habis.
<iframe
src="https://gamesiknow.com/embed/tic-tac-toe/frame/?tenantId=TENANT_ID&mode=ai&campaignId=homepage-widget"
width="100%"
height="640"
style="border:0;border-radius:16px;max-width:420px;display:block;margin:0 auto;"
allow="fullscreen"
loading="lazy"
title="Tic Tac Toe vs AI by Games I Know"
></iframe>URL bingkai menggunakan /embed/{gameSlug}/frame/. Laman landas SEO tanpa gameplay ditayangkan langsung di /embed/{gameSlug}/.
| Parameter | Diperlukan | Keterangan |
|---|---|---|
| ID penyewa | Ya | ID penyewa mitra Anda dari dasbor mitra Games I Know. Juga diterima sebagai partnerId untuk integrasi lama. |
| mode | TIDAK | Diatur ke ai untuk meminta mode AI paksa. Kuota sisi server dan aturan domain tetap berlaku. Beralih ke pemain vs pemain ketika AI tidak tersedia. |
| ID kampanye | TIDAK | Label kampanye opsional akan ditampilkan dalam event postMessage dan disimpan dalam analitik mitra untuk pengujian A/B atau segmentasi tingkat halaman. |
Kontrak yang sama berlaku untuk rilis Tic Tac Toe, Four in a Row, Bingo, I Know, dan embed mendatang.
Aturan 1
Sumber filter
Abaikan pesan kecuali data.source adalah gamesiknow.
Aturan 2
Menangani siklus hidup
Gunakan GAME_STARTED dan GAME_COMPLETED untuk status pertandingan, nama pemenang, dan hasil akhir.
Aturan 3
Verifikasi untuk mendapatkan hadiah.
Teruskan resultId dan signedToken ke backend Anda sebelum memberikan hadiah.
| Peristiwa | Saat ditembakkan | Format | Bidang utama |
|---|---|---|---|
| siap | Embed diinisialisasi dan konfigurasi dimuat. | Gameplay (versi 1) untuk semua game, atau datar untuk beberapa pembungkus siklus hidup. | matchId, mode, embedTinggi |
| PERMAINAN_DIMULAI | Setiap permainan yang dapat dimainkan (saat ini dan di masa mendatang). Dipicu ketika pertandingan dimulai (misalnya, langkah pertama atau awal ronde). | Siklus hidup datar | game, partnerId, campaignId, mode, matchId (implisit melalui aliran gameplay) |
| PERMAINAN_SELESAI | Setiap permainan yang dapat dimainkan saat pertandingan berakhir. Termasuk hasil, pemenang, nama pemain pemenang, dan pemain sehingga halaman induk dapat menampilkan hasil dengan segera. Juga termasuk resultId dan signedToken ketika penandatanganan sisi server berhasil. | Siklus hidup datar | hasil, pemenang, nama pemain pemenang, ID pemain pemenang, pemain, skor, durasi detik, ID hasil, token yang ditandatangani |
| PERUBAHAN_LAYAR_PENUH_SEMATKAN | Pemain beralih antara mode layar penuh di embed. | Siklus hidup datar | muatan.aktif boolean |
Membentuk: { source, game, version: 1, event, payload }
Setiap postingan game embeddable GAME_COMPLETED kepada orang tua dengan outcome, winner, Dan players Saat pertandingan berakhir. Saat penandatanganan berhasil, GAME_COMPLETED juga termasuk resultId Dan signedToken untuk verifikasi backend.
{
"source": "gamesiknow",
"event": "GAME_STARTED",
"game": "tic-tac-toe",
"partnerId": "partner_your_tenant",
"campaignId": "homepage-widget",
"mode": "ai"
}{
"source": "gamesiknow",
"event": "GAME_COMPLETED",
"game": "tic-tac-toe",
"resultId": "res_abc123xyz",
"partnerId": "partner_your_tenant",
"campaignId": "homepage-widget",
"status": "completed",
"outcome": "player_1",
"score": 100,
"durationSeconds": 24,
"winnerPlayerId": "player_1",
"winnerPlayerName": "Player X",
"winner": {
"playerId": "player_1",
"participant": "player_1",
"type": "human",
"label": "Player 1",
"name": "Player X",
"score": 100
},
"players": [
{
"playerId": "player_1",
"participant": "player_1",
"type": "human",
"label": "Player 1",
"name": "Player X",
"score": 100,
"status": "winner"
},
{
"playerId": "player_2",
"participant": "ai_bot",
"type": "ai",
"label": "AI BOT",
"name": "AI Bot",
"score": 60,
"status": "lost"
}
],
"signedToken": "eyJ..."
}pemain_1
Pemain manusia pertama menang.
pemain_2
Pemain manusia kedua menang.
ai_bot
Lawan AI menang.
menggambar
Tidak ada pemenang.
Hanya didukung pada Tic Tac Toe dan Four in a Row. Targetkan contentWindow iframe dengan slug game dan aksi.
// Parent page -> iframe (Tic Tac Toe or Four in a Row)
const iframe = document.querySelector("iframe");
iframe.contentWindow.postMessage(
{ game: "tic-tac-toe", action: "reset" },
"https://gamesiknow.com"
);
iframe.contentWindow.postMessage(
{ game: "tic-tac-toe", action: "get_state" },
"https://gamesiknow.com"
);Salin listener ini ke halaman yang menampung iframe Anda. Listener ini menangani status siap, memulai permainan, peristiwa permainan, penyelesaian yang ditandatangani, dan perubahan layar penuh.
Saring berdasarkan sumber, tangani GAME_STARTED dan GAME_COMPLETED untuk UI pemenang dan peristiwa permainan selama pertandingan.
/**
* Games I Know embed listener (parent page)
* Handles lifecycle events (GAME_STARTED, GAME_COMPLETED) and
* version 1 gameplay events (move, mode_change, ...).
*/
const TRUSTED_ORIGIN = "https://gamesiknow.com"; // or your self-hosted origin
window.addEventListener("message", (event) => {
if (TRUSTED_ORIGIN !== "*" && event.origin !== TRUSTED_ORIGIN) return;
const data = event.data;
if (!data || data.source !== "gamesiknow") return;
// --- Lifecycle events (flat top-level event name) ---
if (data.event === "GAME_STARTED") {
console.log("Match started", {
game: data.game,
mode: data.mode,
partnerId: data.partnerId,
campaignId: data.campaignId,
});
return;
}
if (data.event === "GAME_COMPLETED") {
const winnerLabel = data.winner?.name ?? data.winnerPlayerName ?? null;
console.log("Match completed", {
game: data.game,
outcome: data.outcome, // player_1 | player_2 | ai_bot | draw
winner: data.winner,
winnerName: winnerLabel,
players: data.players,
});
if (winnerLabel) {
document.getElementById("game-winner")!.textContent = `${winnerLabel} won!`;
} else if (data.outcome === "draw") {
document.getElementById("game-winner")!.textContent = "Draw";
}
// For rewards: send resultId + signedToken to YOUR backend (never call verify from the browser)
if (data.resultId && data.signedToken) {
fetch("/api/reward-winner", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({
resultId: data.resultId,
signedToken: data.signedToken,
userId: currentUserId,
}),
});
}
return;
}
if (data.event === "EMBED_FULLSCREEN_CHANGE") {
document.body.classList.toggle("embed-fullscreen-active", Boolean(data.payload?.active));
return;
}
// --- Gameplay events (version 1 envelope) ---
if (data.version === 1 && typeof data.event === "string") {
switch (data.event) {
case "ready":
resizeEmbed(data.payload?.embedHeight);
break;
case "mode_change":
console.log("Mode changed", data.payload?.mode);
break;
case "move":
console.log("Move", data.payload);
break;
default:
console.log("Gameplay event", data.event, data.payload);
}
}
});
function resizeEmbed(height) {
const iframe = document.querySelector('iframe[src*="/embed/"]');
if (iframe && typeof height === "number") iframe.style.height = `${height}px`;
}Daftar periksa integrasi
Gunakan GAME_COMPLETED di halaman utama untuk menunjukkan siapa yang menang. Untuk hadiah, verifikasi hasil yang ditandatangani dari backend Anda dengan kunci server mitra - jangan pernah memanggil verifikasi API dari browser JavaScript.
Hanya sisi server. Gunakan resultId dan signedToken dari GAME_COMPLETED dengan Authorization: Bearer gik_psk_…
POST https://api.gamesiknow.com/embed/results/verify
Authorization: Bearer gik_psk_your_secret_key
Content-Type: application/json
{
"resultId": "res_abc123xyz",
"signedToken": "signed_token_from_game_completed"
}
Call from your backend server only. The partner server key must belong to the same tenant as the signed result. Browser requests are rejected.{
"ok": true,
"resultId": "res_abc123xyz",
"partnerId": "partner_your_tenant",
"gameSlug": "tic-tac-toe",
"outcome": "player_1",
"score": 100,
"durationSeconds": 24
}Backend Anda menerima token dari halaman induk, memverifikasinya dengan Games I Know, lalu memberikan hadiah.
// Example: Node.js / Express handler on YOUR server
app.post("/api/reward-winner", async (req, res) => {
const { resultId, signedToken, userId } = req.body;
const verify = await fetch("https://api.gamesiknow.com/embed/results/verify", {
method: "POST",
headers: {
"content-type": "application/json",
authorization: `Bearer ${process.env.GAMESIKNOW_PARTNER_SERVER_KEY}`,
},
body: JSON.stringify({ resultId, signedToken }),
});
if (!verify.ok) return res.status(403).json({ error: "Invalid result" });
const result = await verify.json();
if (result.outcome !== "player_1") {
return res.status(400).json({ error: "Player did not win" });
}
await grantReward(userId, result);
return res.json({ ok: true });
});Games I Know secara otomatis merekam peristiwa ini saat iframe Anda dimuat dan pemain berinteraksi. Data tersebut muncul di dasbor mitra Anda. Untuk menarik data yang sama ke dalam basis data Anda sendiri, buat kunci server mitra di halaman Instalasi dan panggil GET /partners/analytics hanya dari server backend Anda.
Buat kunci server mitra di Dasbor Mitra → Instal. Simpan sebagai rahasia server. Gunakan parameter kueri di bawah ini untuk memfilter ekspor.
GET https://api.gamesiknow.com/partners/analytics
Otorisasi: Bearer gik_psk_your_secret_key
Parameter kueri opsional:
domain Nama host situs web terdaftar (example.com)
campaignId Nilai dari parameter campaignId iframe Anda
gameSlug tic-tac-toe | four-in-a-row | bingo | i-know
from Tanggal mulai dalam UTC (YYYY-MM-DD)
to Tanggal akhir dalam UTC (YYYY-MM-DD)
Contoh:
/partners/analytics?domain=www.example.com&gameSlug=tic-tac-toe&from=2026-05-01&to=2026-05-31
Panggil hanya dari server backend Anda. Jangan pernah mengekspos kunci server mitra Anda di browser JavaScript.Setiap game yang dapat dijalankan mengirimkan event inti yang sama. Bandingkan pengaturan waktu dan fitur tambahan per judul di bawah ini.
| Permainan | PERMAINAN_DIMULAI | Sinyal penyelesaian | Ditandatangani | Dipaksa AI | Height | Perintah orang tua |
|---|---|---|---|---|---|---|
| Tic Tac Toe | Langkah pertama atau AI dimulai | PERMAINAN_SELESAI | Ya | Ya | 640px | atur ulang, dapatkan_keadaan |
| Four in a Row | Langkah pertama atau AI dimulai | PERMAINAN_SELESAI | Ya | Ya | 640px | atur ulang, dapatkan_keadaan |
| Bingo | Pertandingan dimulai (AI atau PvP) | PERMAINAN_SELESAI | Ya | Ya | 640px | Belum ada |
| I Know | Pertandingan dimulai (AI atau PvP) | PERMAINAN_SELESAI | Ya | Ya | 640px | Belum ada |
Halaman ini adalah referensi teknis. Gunakan panduan ini ketika Anda memerlukan langkah-langkah instalasi khusus platform atau saran penempatan vertikal. Semua panduan menggunakan iframe dan model kejadian yang sama seperti yang didokumentasikan di atas.
Framework-specific iframe placement, event listeners, and production notes.
Copy-paste embed guides for no-code and low-code site builders.
Placement and UX recommendations for common website types.
Mencari halaman gambaran umum seperti game iframe, widget HTML5, atau game embeddable gratis? Jelajahi semua embed panduan di hub.
Jawaban untuk detail integrasi, dukungan game saat ini, perintah, hasil yang ditandatangani, dan kompatibilitas game di masa mendatang.
Ya. Games I Know embed menggunakan HTML iframe standar, sehingga berfungsi di blok HTML kustom WordPress, elemen embed Webflow, area kode kustom Wix dan Squarespace, HTML statis, React, Next.js, dan situs kustom lainnya. Daftarkan domain situs web di dasbor mitra Anda terlebih dahulu, lalu tempelkan cuplikan frame yang dihasilkan ke halaman tempat game tersebut seharusnya muncul.
/embed/{gameSlug}/ adalah halaman arahan publik untuk game embed. /embed/{gameSlug}/frame/ adalah runtime iframe yang harus ditempelkan ke situs web Anda. Selalu gunakan URL /frame/ dalam kode iframe karena URL tersebut memuat game yang dapat dimainkan, memvalidasi penyewa dan domain Anda, serta mengirimkan peristiwa halaman induk.
Ya. Game Games I Know iframe dirancang untuk browser seluler, tablet, laptop, dan desktop. Gunakan lebar="100%" dan tinggi yang disarankan sekitar 640px untuk sebagian besar embed. Anda juga dapat mendengarkan peristiwa ready dan menggunakan payload.embedHeight jika Anda ingin halaman induk Anda mengubah ukuran iframe secara otomatis.
Games I Know iframe embed gratis selama beta embed. Tidak ada persyaratan kartu kredit untuk memulai, dan beta embed saat ini tidak menyertakan iklan. Buat akun mitra gratis, daftarkan domain Anda, dan hasilkan cuplikan iframe dari dasbor.
Ya. Akun mitra memberi Anda ID penyewa dan cuplikan iframe yang dibatasi domain. iframe mengirimkan tenantId dengan URL frame sehingga Games I Know dapat memvalidasi mitra, domain yang diizinkan, akses game, kuota AI, kampanye analitik, dan alur verifikasi hasil.
embed dibatasi domainnya. Jika seseorang menyalin cuplikan iframe Anda ke situs web yang tidak sah, Games I Know akan memeriksa asal permintaan terhadap domain yang dikonfigurasi untuk akun mitra Anda dan memblokir penggunaan yang tidak disetujui. Gunakan ID kampanye terpisah jika Anda menginginkan analitik yang lebih bersih per situs web atau kampanye.
Tic Tac Toe, Four in a Row, Bingo, dan I Know mendukung iframe dan embed saat ini. Setiap game mengirimkan kontrak event embed standar untuk status siap, awal game, gameplay, penyelesaian, data pemenang, analitik, dan verifikasi hasil. Game baru yang mendukung embed diharapkan mengikuti pola event yang sama sehingga mitra tidak perlu membangun ulang integrasi mereka.
Setiap game yang dapat dijalankan menggunakan dua format postMessage. Peristiwa siklus hidup menggunakan bentuk datar dengan sumber: gamesiknow dan nilai peristiwa seperti ready, GAME_STARTED, GAME_COMPLETED, dan EMBED_FULLSCREEN_CHANGE. Peristiwa gameplay menggunakan versi: 1 dengan nama peristiwa bersarang seperti ready, mode_change, move, reset, undo, dan state. Selalu filter pada data.source === "gamesiknow".
Ya. Pantau GAME_STARTED saat pertandingan dimulai, gunakan event gameplay seperti move dan mode_change selama permainan, dan gunakan GAME_COMPLETED saat pertandingan berakhir. GAME_COMPLETED mencakup hasil, pemenang, pemain, skor, durasi, dan pengidentifikasi hasil jika tersedia penanda tangan. Analisis sisi server juga mencatat pemuatan, permulaan, penyelesaian, upaya yang diblokir, dan klik CTA.
Gunakan GAME_COMPLETED saat pertandingan berakhir. Setiap game yang dapat dijalankan (embeddable) mengirimkan event siklus hidup ini dengan hasil, pemenang, winnerPlayerName, dan pemain. Saat GAME_COMPLETED menyertakan resultId dan signedToken, teruskan ke backend Anda dan panggil POST /embed/results/verify dengan kunci server mitra Anda sebelum memberikan hadiah atau kredit.
Tambahkan window.addEventListener("message", handler) pada halaman yang menampung iframe. Di dalam handler, abaikan pesan kecuali event.data.source === "gamesiknow". Buat percabangan berdasarkan event.data.event untuk peristiwa siklus hidup, atau berdasarkan event.data.event ditambah event.data.version === 1 untuk peristiwa permainan. Secara opsional, validasi event.origin terhadap asal Games I Know yang diizinkan.
Gunakan GAME_COMPLETED di halaman utama untuk langsung menampilkan siapa yang menang (hasil, pemenang, winnerPlayerName, pemain). Untuk hadiah, kirim resultId dan signedToken dari GAME_COMPLETED ke backend Anda, lalu panggil POST /embed/results/verify dengan Authorization: Bearer gik_psk_… menggunakan kunci server mitra dari dasbor Anda. Endpoint verifikasi hanya berada di sisi server - jangan pernah memanggilnya dari browser JavaScript. Berikan hadiah hanya setelah verifikasi berhasil.
Wajib: tenantId (ID tenant mitra Anda). Opsional: mode=ai untuk meminta mode AI paksa jika kuota memungkinkan, dan campaignId untuk segmentasi analitik. URL frame mengikuti /embed/{gameSlug}/frame/?tenantId=YOUR_TENANT_ID.
Ya. Tambahkan mode=ai ke URL iframe untuk meminta mode AI terlebih dahulu. Kuota sisi server dan aturan domain tetap berlaku, sehingga embed dapat beralih ke pilihan pemain atau pemain lawan pemain ketika mode AI tidak tersedia atau kuota habis.
Tic Tac Toe dan Four in a Row menerima pesan induk dengan game yang diatur ke slug game dan action diatur ke reset atau get_state. iframe merespons dengan event gameplay state. Game embed lainnya belum mengekspos perintah induk.
Konfirmasikan bahwa domain situs web aktif sebelum membuat token.
Gunakan token atau campaignId terpisah untuk setiap situs web atau grup kampanye.
Pantau suara GAME_STARTED dan GAME_COMPLETED di halaman utama.
Pertahankan agar logo Games I Know tetap terlihat di dalam embed.
Verifikasi hasil yang telah ditandatangani di sistem backend Anda sebelum memberikan hadiah atau kredit.
Pengujian memaksa mode AI dan fallback PvP ketika kuota AI habis.
Bagikan situs web, CMS, dan penempatan game yang diinginkan. Kami dapat meninjau pengaturan event embed Anda bersama Anda.