Ваш плагин Minecraft, только на платящих серверах.
Ключ в каждом jar, лимит серверов на каждой лицензии.
Тариф Free · Без банковской карты · Готово за минуты
Пишете код с ИИ-агентом? Вставьте один промптJava
- Paper
- Velocity
- BuiltByBit
- SpigotMC
- Voxel Shop
- Tebex
- Discord
Создано под то, как вы продаёте.
Ключ внутри jar
Плейсхолдеры BuiltByBit и Voxel Shop вписывают его сами.
%%__SUNLICENSE__%%Серверы на лицензию
1, 2 или 10 серверов на ключ.
TOO_MANY_MACHINESВозврат отключает доступ
Возвраты в Voxel Shop и Tebex отзывают ключ.
Никогда не роняет серверы
Шаблоны продолжают работать, если SunLicense недоступен.
Роли покупателей в Discord
Активация даёт роль; отзыв её снимает.
/claimSentinel находит утечку
Отмечает ключи на слишком многих серверах.
Любой тарифГотово до следующего релиза.
- 1Создать бесплатный аккаунт
- 2Добавьте плейсхолдер магазина
- 3Одна проверка в onEnable
// 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));
}
});
}Вопросы и ответы.
Как защитить мой плагин Minecraft от утечек?
Никакая проверка не остановит того, кто твёрдо решил отредактировать jar. Работает ключ на каждого покупателя: BuiltByBit и Voxel Shop вписывают его в jar при скачивании, так что утёкший jar несёт ключ того, кто его слил. Отзовите эту одну лицензию, и все копии jar остановятся при следующей проверке, а серверы остальных покупателей продолжат работать.
Это работает с BuiltByBit, премиум-ресурсами SpigotMC и Tebex?
Да. Плейсхолдер External license key от BuiltByBit и плейсхолдер External API от Voxel Shop вписывают ключ каждого покупателя в загрузку. На SpigotMC ваш плагин обменивает ID покупателя, который подставляет SpigotMC, на ключ этого покупателя. Tebex выдаёт ключ при каждом платеже. BuiltByBit и SpigotMC не сообщают о возвратах, так что покупателей, получивших возврат, вы отзываете сами.
Как ограничить мой плагин одним сервером на покупку?
Задайте в политике 1 устройство и отправляйте стабильный ID сервера, как это делает шаблон для Paper, или задайте лимит по IP: каждый новый адрес занимает слот, а адрес, не использовавшийся 30 дней, освобождается сам. Когда покупатель меняет хостинг, он может освободить старый слот в клиентском портале (Lite и Standard), или вы освободите его на странице лицензии.
Уронит ли мой плагин серверы, если SunLicense недоступен?
Только не с шаблонами. Они не считают отсутствие ответа отказом: используют подписанный офлайн-файл лицензии, если он есть у покупателя, а иначе продолжают работать и повторяют попытку каждые 10 минут. Отключает плагин только настоящий отказ, например отозванный или неизвестный ключ.
Защитите следующий релиз.
- Тариф Free
- Без банковской карты
- Отмена в любой момент
SunLicense