2024 Metin2 private servers
Advertising Campaign

Documentation

Français

Vote Token

Le joueur vote sur notre site internet ou bien depuis l'application Discord, et, notre plateforme déclenche et signale automatiquement à votre serveur de jeu, le vote de votre joueur afin de le récompenser.
  • Vous permet de vérifier un vote à l'aide du token du compte de votre joueur
  • Offre de meilleures performances
Rendez-vous au sein de notre plateforme, dans la configuration API de votre serveur de jeu et définissez l'URL selon votre environnement, dans ces exemples, api-vote est le nom du script de l'API :
  • Exemple : https://exemple.com/api-vote.php
  • Exemple : https://exemple.com/api-vote/

URL de Vote

Si vous souhaitez utiliser exclusivement le vote depuis l'application Discord, cette étape est facultative. Néanmoins, vous pouvez ajouter une URL de vote sur votre site internet et ainsi profiter des deux méthodes.
Vous devez définir au sein de votre site internet, un lien de vote dynamique pour votre joueur. Ce lien doit impérativement contenir l'ID de votre serveur de jeu ainsi qu'un token personnalisé du compte de votre joueur (Par exemple, l'ID du compte...) au sein de votre serveur de jeu.
  • Exemple : https://metin2.top/in/game-id-game-seo-name/token/

API

Vous devez créer un nouveau fichier, spécifique à notre API pour votre site internet, ce script ne doit pas être dans une zone sécurisée et doit être libre d'accès afin que notre plateforme puisse l'appeler à l'issu d'un vote. Notre API, vous permet de récompenser votre joueur pour avoir effectué un vote pour votre serveur de jeu au sein de notre plateforme, pour cela, vous devez adapter et ajouter le script de votre récompense.

Vous pouvez tester votre API en utilisant cet outil pour simuler des requêtes en provenance de notre plateforme (Cliquez ici).
<?php

    // Clé secrète de votre serveur de jeu
    define('GAME_KEY', 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx');

    // Vérification des données
    if (!isset($_GET['miaw']) && empty($_GET['miaw'])) {

        // La requête est incomplète
        die('GET method is not defined');
    } else {

        // Décodage des données
        $_API = json_decode(base64_decode($_GET['miaw']), true, 2, JSON_OBJECT_AS_ARRAY);

        // $_API['api'] => URL de votre API locale
        // $_API['key'] => Clé secrète de votre serveur de jeu

        // $_API['origin'] => Origine du vote
        // $_API['status'] => Statut du vote sur Top Metin2
        // $_API['timestamp'] => Date et heure du vote (UTC)

        // $_API['ip'] => Adresse IPv4 ou IPv6 de votre joueur (Peut être NULL)
        // $_API['ipv4'] => Adresse IPv4 de votre joueur (Peut être NULL)
        // $_API['token'] => Token de votre joueur
        // $_API['discord'] => ID du compte Discord de votre joueur (Peut être NULL)

        if ($_API['key'] == GAME_KEY) {

            // Vous pouvez récompenser votre joueur
            // Identifiez votre joueur à l'aide de $_API['token']
        } else {

            // Les clés secrètes ne sont pas identiques
            // La requête est probablement falsifiée
            die('Keys do not match');
        }
    }
?>
Top Metin2