SunLicenseSe connecter
Pour les développeurs de plugins Minecraft

Votre plugin Minecraft, uniquement sur les serveurs qui paient.

Une clé dans chaque jar, une limite de serveurs sur chaque licence.

Créer un compte gratuit

Forfait Free · Sans carte bancaire · Prêt en quelques minutes

Vous codez avec un agent IA  Collez un prompt
  • JavaJava
  • Paper
  • Velocity
  • BuiltByBit
  • SpigotMC
  • Voxel Shop
  • Tebex
  • Discord
Ce que vous obtenez

Pensé pour votre façon de vendre.

Clé dans le jar

Les espaces réservés de BuiltByBit et Voxel Shop l'écrivent.

%%__SUNLICENSE__%%

Serveurs par licence

1, 2 ou 10 serveurs par clé.

TOO_MANY_MACHINES

Les remboursements coupent l'accès

Les remboursements Voxel Shop et Tebex révoquent la clé.

Ne fait jamais tomber les serveurs

Les modèles continuent de tourner si SunLicense est injoignable.

Rôles d'acheteur sur Discord

L'activation donne le rôle  la révocation le retire.

/claim

Sentinel trouve la fuite

Signale les clés sur trop de serveurs.

Tous les forfaits
Fonctionnement

En ligne avant votre prochaine version.

  1. 1Créer un compte gratuit
  2. 2Ajoutez l'espace réservé de la boutique
  3. 3Une vérification dans onEnable
MyPlugin.java
// BuiltByBit or Voxel Shop writes the buyer's key here
private static final String LICENSE_KEY = "%%__SUNLICENSE__%%";

@Override
public void onEnable() {
    SunLicense client = new SunLicense.Builder()
            .baseUrl("https://api.sunlicense.com")
            .token(API_KEY)          // slk_..., can only validate
            .build();
    getServer().getScheduler().runTaskAsynchronously(this, () -> {
        if (!client.validate(LICENSE_KEY, Map.of("host", serverId())).isValid()) {
            getLogger().severe("License denied, disabling.");
            getServer().getScheduler().runTask(this,
                    () -> getServer().getPluginManager().disablePlugin(this));
        }
    });
}
FAQ

Vos questions, nos réponses.

Comment empêcher mon plugin Minecraft de fuiter 

Aucune vérification n'arrête quelqu'un décidé à modifier un jar. Ce qui marche, c'est une clé par acheteur  BuiltByBit et Voxel Shop l'écrivent dans le jar au téléchargement, donc un jar qui a fuité porte la clé de l'auteur de la fuite. Révoquez cette seule licence et chaque copie du jar s'arrête à sa prochaine vérification, pendant que le serveur de chaque autre acheteur continue de tourner.

Est-ce que ça marche avec BuiltByBit, SpigotMC premium et Tebex 

Oui. L'espace réservé External license key de BuiltByBit et l'espace réservé External API de Voxel Shop placent la clé de chaque acheteur dans le téléchargement. Sur SpigotMC, votre plugin échange l'ID d'acheteur injecté par SpigotMC contre la clé de cet acheteur. Tebex émet une clé à chaque paiement. BuiltByBit et SpigotMC n'envoient aucun signal de remboursement, vous révoquez donc vous-même les acheteurs remboursés.

Comment limiter mon plugin à un serveur par achat 

Donnez à la politique 1 machine et envoyez un ID de serveur stable, comme le fait le modèle Paper, ou donnez-lui une limite d'IP  chaque nouvelle adresse prend un emplacement, et une adresse inutilisée depuis 30 jours se libère d'elle-même. Quand un acheteur change d'hébergeur, il peut libérer l'ancien emplacement dans le portail client (Lite et Standard), ou vous le libérez sur la page de la licence.

Mon plugin va-t-il faire tomber des serveurs si SunLicense est en panne 

Pas avec les modèles. Ils ne prennent pas l'absence de réponse pour un refus  ils utilisent un fichier de licence hors ligne signé si l'acheteur en a un, sinon ils continuent de tourner et réessaient toutes les 10 minutes. Seul un vrai refus, comme une clé révoquée ou inconnue, désactive le plugin.

Protégez votre prochaine version.

  • Forfait Free
  • Sans carte bancaire
  • Résiliable à tout moment