Rehberler
Oyunculara ödül ver
Sayfayı kopyala
$LIA'da oyunculara ödeme yapın, uygulamanızın ödül havuzundan, sunucunuzdan. Günlük bonus gibi örnek, tekrar edilebilir ve sınırlarınız içinde güvenlidir.
Uygulamanızın ödülleri içeren bir havuzu olmalıdır, Lia ekibi tarafından finanse edilmelidir (bkz. Ödül havuzları. Ödül sadece sunucunuzdan, anahtarınızla gelir.
#Günlük bir bonus
Her oyuncu, bir seviye tamamlandıktan sonra günde bir kez 2 LIA talep edebilir.
import { lia } from "./lia.js";
app.post("/api/daily-bonus", async (req, res) => {
const playerId = await playerFrom(req.body.session); // see Verify on your server
if (!playerId) return res.status(401).end();
if (!(await db.finishedALevelToday(playerId))) return res.status(403).json({ error: "play_first" });
const day = new Date().toISOString().slice(0, 10); // 2026-11-01
try {
const result = await lia("POST", "/rewards", {
playerId,
amount: 2,
key: `daily:${day}:${playerId}`, // one a day per player, however often this runs
reason: "Daily bonus",
});
res.json({ paid: result.status === "paid", amount: result.amount });
} catch (error) {
if (error.data?.error === "pool_empty") return res.status(503).json({ error: "bonus_paused" });
if (error.data?.error === "daily_limit") return res.status(429).json({ error: "come_back_tomorrow" });
throw error;
}
});Sayfada:
const { paid, amount } = await api("/api/daily-bonus", {});
if (paid) {
Lia.haptic("success");
Lia.toast("+" + amount + " LIA");
}#Anahtarları seçin
Anahtar, bir ödüllü güvenli hale getirir. Aynı anahtar iki kez ödememelidir, bu yüzden anahtarı talep değil, ödüllü sebebi isimlendirmelidir:
| Ödül | Anahtar |
|---|---|
| Günlük bir bonus | daily:2026-11-01:p_3f9c… |
| Bir turnuva yeri | tournament-44:place-1:p_3f9c… |
| Tamamlanmış bir görev | quest-7:p_3f9c… |
| Bir video izlendi | ad:ad_8e1c… |
Bir zaman aşımı sonrası aynı anahtara göre bir yeniden deneme yanıtı { "status": "duplicate" } ve daha fazlasını ödemeyin, bu yüzden yeniden denemek her zaman güvenlidir. Yeni bir anahtarla yeniden denemeyin.
#Havuzun üzerinde dikkatli olun
const { balance, dailyCapPerPlayer } = await lia("GET", "/pool");
if (balance < 100) alertTheTeam(`Reward pool is down to ${balance} LIA`);Çalışabiliyorsa'bir ödüve karşılık gelsin, POST /rewards cevaplar 409 pool_empty. Oyunculara nazikçe söyleyin ve Lia ekibine onu artırmasını isteyin. Bir oyuncu uygulamanızı zaten kullandıysa'günde ki limiti, cevap verir 429 daily_limit (limit, UTC gün başına oyuncu başına, ekibin ayarladığı).
#Testte
Test anahtarınızla ödüller hayali: kaydedilir, webhook ile, ama $LIA hareketleri yok ve havuz ve günlük sınır yok'kullanıldı. Önce anahtarlarınızı ve hata işleme mekanizmanızı deneyin.
#Ödülleri adil yap
- Sunucuyu seçin. Birinin kazandığı şey, sayfanın söylediği değil, sunucunuzun gördüğünü (tamamlanmış bir oyun, doğrulanmış bir video) temsil etmelidir.
- Kendi sınırlarınıza dikkat edin her oyuncu ve her gün için de, bir oyuncu'havuzu boşaltın.
- Nedenini söyle. The
reasonoyuncuda görünür's uygulamanızın etkinliği altında'adı.
Otomatik çeviri. İngilizce, doğru kaynaktır. İngilizce olarak oku