Seu addon de Garry's Mod, nos servidores que pagaram.
Cada comprador recebe uma chave, validada no servidor com o HTTP do próprio GMod.
Plano Free · Sem cartão de crédito · Pronto em minutos
Programa com um agente de IA? Cole um prompt- Lua
- Garry's Mod
- Tebex
- Stripe
- Gumroad
- Payhip
- Discord
Feito para o seu jeito de vender.
Um arquivo Lua
Assíncrono, no servidor, com o HTTP do próprio GMod.
sunlicense.luaServidores por licença
Um servidor ou cinco, por ID ou IP.
TOO_MANY_IPSRevogue ou bloqueie
Uma chave, um IP de servidor ou uma faixa.
Venda onde quiser
Tebex, Stripe, Gumroad, Payhip e mais.
Cargos de comprador no Discord
Resgate com o e-mail da compra; revogar remove.
O Sentinel fica de olho no compartilhamento
Sinaliza chaves que pulam de servidor em servidor.
Todos os planosNo ar antes da sua próxima versão.
- 1Criar uma conta grátis
- 2Conecte sua loja
- 3Valide ao carregar o mapa
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)Perguntas e respostas.
Como protejo um addon pago de Garry's Mod contra vazamentos?
Addons são distribuídos em Lua, então qualquer pessoa determinada consegue ler e editar uma validação, e nenhum serviço de licenciamento muda isso. Uma chave por comprador te dá controle: você vê quais servidores usam cada chave, uma chave compartilhada ou vazada pode ser revogada ou ter seus servidores bloqueados, e os servidores pagantes nunca são afetados. Ofuscar a validação dá mais trabalho para removê-la.
O SDK de Lua funciona no Garry's Mod?
Sim. O sunlicense.lua detecta o Garry's Mod e envia a validação com a função HTTP do GMod, de forma assíncrona, para o servidor não travar. Rode só no servidor: a chave de API que ele usa só pode validar licenças, mas não tem nada a fazer em arquivos enviados aos jogadores.
Quais lojas emitem chaves automaticamente?
Tebex, Stripe, Gumroad, Payhip, Lemon Squeezy, Ko-fi, itch.io, WooCommerce e mais algumas se conectam direto, e a maioria revoga a chave no reembolso. Para qualquer outro lugar, emita chaves pelo painel, pela CLI sunlicense ou pela API.
O que o comprador faz quando troca de hospedagem?
Eles mesmos redefinem a vaga de máquina do servidor antigo com My licenses no seu Discord, ou no portal do cliente (Lite e Standard), uma vez por dia por padrão. Com um limite de IP, um endereço que ficou 30 dias sem uso libera a vaga sozinho, e você pode liberar uma a qualquer momento na página da licença.
Proteja sua próxima versão.
- Plano Free
- Sem cartão de crédito
- Cancele quando quiser
SunLicense