Płatne pluginy Rust, ładowane tylko na płacących serwerach.
Jedno żądanie sieciowe z Oxide lub Carbon. Jeden serwer na klucz.
Plan Free · Bez karty kredytowej · Gotowe w kilka minut
Kodujesz z agentem AI? Wklej jeden prompt- C#
- Oxide / uMod
- Carbon
- Tebex
- Stripe
- Gumroad
- Discord
Stworzone pod Twój sposób sprzedaży.
Wciąż jeden plik .cs
Wbudowany w Oxide webrequest, bez DLL do dołączania.
webrequest.EnqueueJeden klucz, jeden serwer
Limit IP: 1, 3 lub 10.
TOO_MANY_IPSUnieważnij, zawieś, zablokuj
Klucz, IP serwera lub zakres.
Klucze z Twojego sklepu
Tebex, Stripe, Gumroad, Payhip i inne.
Wsparcie przez Discord
Kupujący aktywują klucze; zespół dostaje alerty o udostępnianiu.
Sentinel widzi, jak krąży
Oznacza klucze skaczące między serwerami.
Każdy planGotowe przed kolejnym wydaniem.
- 1Załóż darmowe konto
- 2Połącz swój sklep
- 3Jeden webrequest przy ładowaniu
[Info("MyPlugin", "You", "1.2.0")]
public class MyPlugin : RustPlugin
{
const string ApiKey = "slk_..."; // can only validate licenses
void OnServerInitialized()
{
var body = JsonConvert.SerializeObject(new { licenseKey = (string)Config["LicenseKey"] });
var headers = new Dictionary<string, string> { ["Authorization"] = "Bearer " + ApiKey, ["Content-Type"] = "application/json" };
webrequest.Enqueue("https://api.sunlicense.com/api/v1/validate", body, (code, response) =>
{
if (code != 200) return; // no answer is not a no: keep running
var result = JObject.Parse(response);
if ((bool)result["valid"]) Puts("License valid, loading");
else { PrintError($"License denied: {result["code"]}"); Interface.Oxide.UnloadPlugin(Name); }
}, this, RequestMethod.POST, headers);
}
}Pytania i odpowiedzi.
Jak zapobiec udostępnianiu mojego pluginu Rust?
Plugin Rust trafia do kupujących jako plik .cs, więc każdy zdeterminowany może wyciąć weryfikację, i żadne licencjonowanie tego nie zmieni. Klucz na kupującego z limitem IP sprawia, że udostępnianie jest widoczne i da się je zatrzymać: klucz działa na serwerze kupującego, ten sam klucz na innym serwerze jest odrzucany z TOO_MANY_IPS, a wykradziony klucz można unieważnić, by każda kopia zatrzymała się przy następnej weryfikacji.
Czy to działa z Oxide (uMod) i Carbon?
Tak. Weryfikacja to jedno żądanie HTTPS do REST API SunLicense, wykonane helperem webrequest, który pluginy Oxide już mają, a Carbon uruchamia pluginy Oxide. Na serwerze kupującego nic dodatkowego się nie instaluje. Jest też SDK .NET, ale dla pluginu z jednego pliku wywołanie REST jest prostsze.
Jak ograniczyć plugin Rust do jednego serwera na zakup?
Ustaw w zasadzie limit IP równy 1. Pierwszy serwer, który sprawdzi klucz, zajmuje miejsce, a każdy inny adres jest odrzucany z TOO_MANY_IPS. Gdy kupujący przenosi się na nową maszynę, stary adres zwalnia się sam po 30 dniach nieużywania, kupujący może go zwolnić w portalu klienta (Lite i Standard) albo Ty zwalniasz go na stronie licencji.
Co się stanie w dniu wipe’u, jeśli SunLicense nie działa?
Decyduje Twój plugin. Nieudane żądanie to nie odmowa, więc w przykładzie plugin zostaje załadowany, gdy nie ma odpowiedzi, a wyładowuje się tylko wtedy, gdy SunLicense powie, że klucz jest nieważny. Weryfikacje licencji działają we własnej usłudze, oddzielonej od panelu.
Ochroń swoje kolejne wydanie.
- Plan Free
- Bez karty kredytowej
- Anulujesz w dowolnej chwili
SunLicense