Votre addon Garry's Mod, sur les serveurs qui ont payé.
Chaque acheteur reçoit une clé, vérifiée côté serveur avec le HTTP de GMod lui-même.
Forfait Free · Sans carte bancaire · Prêt en quelques minutes
Vous codez avec un agent IA Collez un prompt- Lua
- Garry's Mod
- Tebex
- Stripe
- Gumroad
- Payhip
- Discord
Pensé pour votre façon de vendre.
Un seul fichier Lua
Asynchrone, côté serveur, avec le HTTP de GMod lui-même.
sunlicense.luaServeurs par licence
Un serveur ou cinq, par ID ou par IP.
TOO_MANY_IPSRévoquez ou bloquez
Une clé, une IP de serveur ou une plage.
Vendez où vous voulez
Tebex, Stripe, Gumroad, Payhip et d'autres.
Rôles d'acheteur sur Discord
Activation avec l'e-mail d'achat une révocation le retire.
Sentinel surveille le partage
Signale les clés qui sautent de serveur en serveur.
Tous les forfaitsEn ligne avant votre prochaine version.
- 1Créer un compte gratuit
- 2Connectez votre boutique
- 3Vérifiez au chargement de la map
local SunLicense = include("myaddon/sunlicense.lua")
local licenseVar = CreateConVar("myaddon_license", "", FCVAR_ARCHIVE + FCVAR_PROTECTED)
hook.Add("InitPostEntity", "MyAddon.License", function()
local client = SunLicense.new({ baseUrl = "https://api.sunlicense.com", token = MYADDON.ApiKey })
client:validate(licenseVar:GetString(), { host = MYADDON.ServerId() }, function(ok, status, body)
if ok then
MsgC(Color(120, 210, 140), "[MyAddon] License valid, loading\n")
MYADDON.Start()
elseif status == 400 then
MsgC(Color(255, 128, 128), "[MyAddon] License denied: ", body:match('"code":"([%w_]+)"') or "?", "\n")
else
MYADDON.Start() -- no answer is not a no: keep running
end
end)
end)Vos questions, nos réponses.
Comment protéger un addon Garry's Mod payant contre les fuites
Les addons sont distribués en Lua, donc toute personne déterminée peut lire et modifier une vérification, et aucun service de licences n'y change rien. Une clé par acheteur vous donne le contrôle vous voyez quels serveurs utilisent chaque clé, une clé partagée ou qui a fuité peut être révoquée ou ses serveurs bloqués, et les serveurs qui paient ne sont jamais touchés. Obfusquer la vérification rend son retrait plus laborieux.
Le SDK Lua fonctionne-t-il dans Garry's Mod
Oui. sunlicense.lua détecte Garry's Mod et envoie la vérification avec la fonction HTTP de GMod, de façon asynchrone, pour que le serveur ne se fige pas. Exécutez-le uniquement côté serveur la clé API qu'il utilise ne peut que vérifier des licences, mais elle n'a rien à faire dans des fichiers envoyés aux joueurs.
Quelles boutiques émettent des clés automatiquement
Tebex, Stripe, Gumroad, Payhip, Lemon Squeezy, Ko-fi, itch.io, WooCommerce et quelques autres se connectent directement, et la plupart révoquent la clé en cas de remboursement. Pour tout le reste, émettez les clés depuis le tableau de bord, la CLI sunlicense ou l'API.
Que fait un acheteur quand il change d'hébergeur
Ils réinitialisent eux-mêmes l'emplacement machine de l'ancien serveur avec My licenses sur votre Discord, ou dans le portail client (Lite et Standard), une fois par jour par défaut. Avec une limite d'IP, une adresse inutilisée depuis 30 jours libère son emplacement d'elle-même, et vous pouvez en libérer une à tout moment sur la page de la licence.
Protégez votre prochaine version.
- Forfait Free
- Sans carte bancaire
- Résiliable à tout moment
SunLicense