Kostenpflichtige Rust-Plugins, nur auf zahlenden Servern geladen.
Eine Web-Anfrage aus Oxide oder Carbon. Ein Server pro Schlüssel.
Free-Plan · Keine Kreditkarte · In Minuten eingerichtet
Codest du mit einem KI-Agenten? Füge einen Prompt ein- C#
- Oxide / uMod
- Carbon
- Tebex
- Stripe
- Gumroad
- Discord
Gebaut für die Art, wie du verkaufst.
Weiterhin eine einzige .cs
Oxides eingebauter webrequest, keine DLL zum Mitliefern.
webrequest.EnqueueEin Schlüssel, ein Server
Ein IP-Limit von 1, 3 oder 10.
TOO_MANY_IPSWiderrufen, sperren, blockieren
Ein Schlüssel, eine Server-IP oder ein Bereich.
Schlüssel aus deinem Shop
Tebex, Stripe, Gumroad, Payhip und mehr.
Discord übernimmt den Support
Käufer übernehmen Schlüssel; das Team bekommt Alarme bei Weitergabe.
Sentinel sieht, wie er wandert
Markiert Schlüssel, die zwischen Servern springen.
Jeder PlanLive vor deinem nächsten Release.
- 1Kostenloses Konto erstellen
- 2Shop verbinden
- 3Ein webrequest beim Laden
[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);
}
}Fragen und Antworten.
Wie verhindere ich, dass mein Rust-Plugin geteilt wird?
Ein Rust-Plugin wird als .cs-Datei ausgeliefert, also kann jeder Entschlossene eine Prüfung herauseditieren, und keine Lizenzierung ändert das. Ein Schlüssel pro Käufer mit IP-Limit macht Weitergabe sichtbar und stoppbar: Der Schlüssel funktioniert auf dem Server des Käufers, derselbe Schlüssel auf einem anderen Server wird mit TOO_MANY_IPS abgelehnt, und ein geleakter Schlüssel lässt sich widerrufen, damit jede Kopie bei ihrer nächsten Prüfung stoppt.
Funktioniert es mit Oxide (uMod) und Carbon?
Ja. Die Prüfung ist eine HTTPS-Anfrage an die REST API von SunLicense, gestellt mit dem webrequest-Helfer, den Oxide-Plugins schon haben, und Carbon führt Oxide-Plugins aus. Auf dem Server des Käufers wird nichts zusätzlich installiert. Es gibt auch ein .NET-SDK, aber für ein Plugin aus einer Datei ist der REST-Aufruf einfacher.
Wie begrenze ich ein Rust-Plugin auf einen Server pro Kauf?
Gib der Richtlinie ein IP-Limit von 1. Der erste Server, der den Schlüssel prüft, belegt den Platz, und jede andere Adresse wird mit TOO_MANY_IPS abgelehnt. Zieht ein Käufer auf eine neue Maschine um, gibt sich die alte Adresse nach 30 Tagen ohne Nutzung selbst frei, er kann sie im Kundenportal freigeben (Lite und Standard), oder du gibst sie auf der Lizenzseite frei.
Was passiert am Wipe-Tag, wenn SunLicense ausfällt?
Dein Plugin entscheidet. Eine fehlgeschlagene Anfrage ist keine Ablehnung, also lässt das Beispiel das Plugin geladen, wenn keine Antwort kommt, und entlädt es nur, wenn SunLicense sagt, dass der Schlüssel nicht gültig ist. Lizenzprüfungen laufen auf einem eigenen Dienst, getrennt vom Dashboard.
Schütze dein nächstes Release.
- Free-Plan
- Keine Kreditkarte
- Jederzeit kündbar
SunLicense