Vote buff: oy API'si
Oyuncu Metinzade'de serverine oy verir, server oyu doğrular ve oyun içi ödülü (buff veya item) verir. Biçim metin2-toplist.net ile aynıdır; mevcut Vote4Buff PHP'nizde yalnızca adres ve token değişir.
Nasıl çalışır
Oyuncu "Oy ver"e tıklar, hesap adını yazar. IP ve hesap başına 24 saatte bir oy.
Metinzade oyu kaydeder, sezon puanına ekler ve server'ınıza postback atar (isteğe bağlı).
Server oyu doğrular (çekme veya itme), ödülü bir kez verir ve tüketir.
A. Çekme kipi: check-vote
Server, oyuncu ödül istediğinde Metinzade'ye sorar. Token sunucu tarafında kalır.
GET https://metinzade.com/api/check-vote?api_token=TOKEN&account_id=HESAP[&ip=IP][&consume=1]
{"success": true, "voted": true, "last_vote": "2026-11-11T20:00:00Z",
"next_vote_in": 80000, "account_id": "oyuncu1", "character": "Sura99",
"reward_claimed": false, "message": "Vote verified successfully"}
account_idveyaipzorunlu; hesap adı daha güvenilirdir.consume=1ödülü verildi olarak işaretler; aynı oy ikinci kezvoted:falsedöner.- Yanlış token 401, eksik parametre 400, istek sınırı 429 döner.
B. İtme kipi: postback
Oy anında panelde kayıtlı adresinize imzalı JSON POST gelir. 200 dönmezse 2, 10 ve 60 saniye sonra yeniden denenir; oy_id benzersizdir.
POST https://sizin-siteniz.com/vote_callback.php
X-Metinzade-Imza: sha256=<HMAC-SHA256(gövde, gizli_anahtar)>
{"olay": "oy", "sunucu": "kayra2", "oy_id": 123, "hesap": "oyuncu1",
"karakter": "Sura99", "ip": "1.2.3.4", "zaman": "2026-11-11T20:00:00Z"}Ödülü oyuna aktarma
| Yol | Gerekli | Nasıl |
|---|---|---|
| item_award | Kaynak değişikliği yok | Postback alıcısı ödül item'ını player.item_award tablosuna yazar; db core envantere düşürür. |
| Quest buff | Quest'te mysql_direct_query | vote_buff.quest girişte ve 10 dakikada bir bekleyen ödülü affect.add_collect ile buff'a çevirir; /oy komutu anında kontrol eder. |
| Web panel | PHP | "Ödülümü al" butonu check-vote + consume=1 çağırır, item_award ile verir. |
Güvenlik
- Token yalnız sunucu tarafında; istemci tarafı (JavaScript, oyun client'ı) doğrulama kabul edilmez.
- Her oy tek kez ödüllendirilir:
consume=1veyarewardedalanı. - Postback'te imza doğrulanmadan hiçbir kayıt yazılmaz.
- Oy sayfasında bal tuzağı, istek sınırı ve 24 saat kuralı; anormal oy artışı bayraklanır ve silinir.
Dosyalar
Entegrasyon kiti: vote_check.php (çekme), vote_callback.php (itme + item_award), vote_buff.sql, vote_buff.quest ve kurulum rehberi. Token ve gizli anahtar sahiplik doğrulamasından sonra panelden alınır.