- Обновления
- Только поддержка
- Языки
-
- Английский
- SkinBox позволяет вам;
- Импорт определенных скинов из Steam Workshop, которые игроки могут получить в SkinBox.
- Легко импортируйте целые коллекции скинов из Steam Workshop.
- Поддерживает перенаправленные скины предметов, такие как промышленная дверь -> дверь из листового металла.
- Возможность изменить внешний вид развернутых элементов
- Применяет имена скинов мастерской к предметам
- Применение стоимости использования для использования SkinBox
- Применяйте кулдауны использования, чтобы использовать SkinBox
- Дайте VIP-доступ к определенным скинам
- Используйте любимую систему для определения приоритетов часто используемых скинов
Относительно загрузки клиентских
скинов Ни сервер, ни плагин не отвечают за фактическую загрузку скинов на клиенте. Это чисто между клиентом и Steam. Плагин просто сообщает клиенту идентификатор скина, и клиент просит Steam загрузить его.
Любые проблемы, связанные с тем, что значки скинов не загружаются на клиенте, полностью связаны с клиентом.
Если у пользователей возникают проблемы с загрузкой значков скинов, попросите их открыть Steam, перейти на вкладки загрузок и принудительно запустить поставленные в очередь запросы мастерской .
Разрешения
Все разрешения находятся в конфигурации и могут быть настроены по вашему вкусу.
По умолчанию они есть;
"skinbox.use" - требуется для открытия SkinBox
«skinbox.admin» — требуется для использования команд администратора
. «skinbox.ignorecost» — игнорирует стоимость использования для игроков с этим разрешением
. «skinbox.ignorecooldown» — игнорирует время восстановления для игроков с этим
Разрешение повторного скиннинга по категориям предметов
Вы можете назначить разрешения для различных категорий предметов, которые ограничат скиннинг этих предметов для игроков с соответствующим разрешением.
По умолчанию все они используют разрешение "skinbox.use", которое позволяет любому игроку с таким разрешением создавать скины этих типов предметов.
Если вы хотите ограничить эти типы предметов для определенных игроков, вам нужно изменить разрешение на другое, отличное от стандартного, и дать его этим игрокам
Code:
"Permission required to skin weapons": "skinbox.use",
"Permission required to skin deployables": "skinbox.use",
"Permission required to skin attire": "skinbox.use",
Ограничение использования одобренных скинов определенными игроками
Вы можете ограничить использование одобренных скинов Rust определенными игроками таким же образом
Code:
"Permission required to view approved skins": "skinbox.use",
Пользовательские разрешения для кожи
Вы также можете назначить пользовательские разрешения для ID скина в разделе "Пользовательские разрешения для скина" в конфигурации. Вы указываете разрешение, а затем добавляете скины в этот список.
Конфиг по умолчанию содержит примеры того, как это делается
C#:
"Custom permissions per skin": {
"skinbox.example1": [
9990,
9991,
9992
],
"skinbox.example2": [
9993,
9994,
9995
],
"skinbox.example3": [
9996,
9997,
9998
]
}
Применение стоимости использования к SkinBox
Вы можете указать стоимость использования SkinBox и элементов переоформления в разделе конфигурации, озаглавленном «Параметры стоимости использования»
. Здесь вы можете изменить стоимость и валюту, которую следует использовать при применении стоимости.
Если вы хотите, чтобы VIP-клиенты не взимали плату за использование SkinBox, просто предоставьте им разрешение «skinbox.ignorecost».
С#:
"Usage Cost Options": {
"Enable usage costs": false,
"Currency used for usage costs (Scrap, Economics, ServerRewards)": "Scrap",
"Cost to open the SkinBox": 5,
"Cost to skin deployables": 10,
"Cost to skin attire": 20,
"Cost to skin weapons": 30
},
Применение кулдаунов после использования SkinBox
Вы можете применять периоды кулдаунов к игрокам после использования SkinBox. Вы можете изменить настройки для этого в разделе конфигурации, озаглавленном «Параметры восстановления».
Если вы хотите, чтобы время восстановления не применялось к VIP, просто предоставьте им разрешение «skinbox.ignorecooldown».
С#:
"Cooldown Options": {
"Enable cooldowns": false,
"Cooldown time start's when a item is removed from the box": true,
"Length of cooldown time (seconds)": 60
},
Система
избранного Система избранного работает, записывая, какие скины использует игрок, и отдает приоритет тем, которые используются чаще всего.
Он также включает систему очистки данных для удаления старых данных игрока
. Эту систему можно переключать в конфигурации, а время очистки можно регулировать.
Игроки также могут удалять свои избранные для каждого элемента с помощью предоставленной кнопки.
Другие параметры конфигурации
«Максимальное количество просматриваемых страниц». " - Устанавливает лимит страниц, к которым пользователь может получить доступ в SkinBox
"Включить утвержденные скины" - Автоматически импортировать все утвержденные скины
"Включить вручную импортированные скины мастерской" - Импортировать все скины мастерской, которые вы добавили с помощью команды или непосредственно в конфигурации
«Удалить утвержденные идентификаторы скинов из списка скинов мастерской конфигурации» — удаляет все утвержденные идентификаторы скинов из списка мастерских в конфигурации при загрузке плагина.
«Включить перенаправленные скины» — позволяет использовать перенаправленные скины, такие как промышленная дверь -> дверь из листового металла
. -уровень, необходимый для просмотра скинов из черного списка» — игроки с этим уровнем авторизации смогут просматривать скины из черного списка
.
С#:
{
"Skin Options": {
"Maximum number of approved skins allowed for each item (-1 is unlimited)": -1,
"Maximum number of pages viewable": 3,
"Include approved skins": true,
"Include manually imported workshop skins": true,
"Remove approved skin ID's from config workshop skin list": false,
"Include redirected skins": true,
"Steam API key for workshop skins (https://steamcommunity.com/dev/apikey)": ""
},
"Cooldown Options": {
"Enable cooldowns": false,
"Cooldown time start's when a item is removed from the box": true,
"Length of cooldown time (seconds)": 60
},
"Command Options": {
"Commands to open the SkinBox": [
"skinbox",
"sb"
][/FONT],
"Commands to open the deployed item SkinBox": [
"skindeployed",
"sd"
]
},
"Permission Options": {
"Permission required to use SkinBox": "skinbox.use",
"Permission required to reskin deployed items": "skinbox.use",
"Permission required to use admin functions": "skinbox.admin",
"Permission that bypasses usage costs": "skinbox.ignorecost",
"Permission that bypasses usage cooldown": "skinbox.ignorecooldown",
"Permission required to skin weapons": "skinbox.use",
"Permission required to skin deployables": "skinbox.use",
"Permission required to skin attire": "skinbox.use",
"Permission required to view approved skins": "skinbox.use",
"Custom permissions per skin": {
"skinbox.example1": [
9990,
9991,
9992
],
"skinbox.example2": [
9993,
9994,
9995
],
"skinbox.example3": [
9996,
9997,
9998
]
}
},
"Usage Cost Options": {
"Enable usage costs": false,
"Currency used for usage costs (Scrap, Economics, ServerRewards)": "Scrap",
"Cost to open the SkinBox": 5,
"Cost to skin deployables": 10,
"Cost to skin attire": 20,
"Cost to skin weapons": 30
},
"Other Options": {
"Allow stacked items": false,
"Auth-level required to view blacklisted skins": 2
},
"Imported Workshop Skins": {},
"Blacklisted Skin ID's": [],
"Version": {
"Major": 2,
"Minor": 0,
"Patch": 1
}
}
Возвращают причину в строке для отмены любого из следующих хуков
С#:
string SB_CanUseSkinBox(BasePlayer player)
string SB_CanAcceptItem(BasePlayer player, Item item)
string SB_CanReskinItem(BasePlayer player, Item item, ulong newSkinID)
string SB_CanReskinDeployable(BasePlayer player, BaseEntity targetEntity, ItemDefinition targetItemDefintion)
string SB_CanReskinDeployableWith(BasePlayer player, BaseEntity targetEntity, ItemDefinition targetItemDefintion, ulong newSkinID)
Вернуть List<ulong> идентификаторов скинов для указанного короткого имени элемента, чтобы переопределить то, что показано в SkinBox. Возвращает null для поведения по умолчанию
С#:
List<ulong> SB_GetSkinOverrides(BasePlayer player, string shortname)
//Example usage
private object SB_GetSkinOverrides(BasePlayer player, string shortname)
{
if (shortname == "tshirt")
{
Debug.Log($"Overriding skins for {player.displayName}");
return new List<ulong>
{
2828965156,
2828949212,
2828923429,
2828843252,
2828375164,
2828348837,
2827794893
};
}
return null;
}