• Хостинг игровых серверов

    Максимальная производительность для ваших игровых серверов!

    Заказать сейчас
Скинбокс позволяет игрокам менять скин любого скиннируемого предмета, который они кладут в коробку.
Когда предмет будет помещен в коробку, он будет заполнен доступными скинами.
Затем пользователь может вытащить скин, который он хочет.

Содержание

905b25dff470a2d0325ef6b7b2a0f078.jpg


Особенности
SkinBox позволяет;
  • Импортируйте определенные скины из мастерской Steam, которые игроки могут получить в SkinBox
  • Легко импортировать целые коллекции скинов из Steam Workshop
  • Поддерживает перенаправленные скины предметов, такие как промышленная дверь -> дверь из листового металла
  • Возможность перекраивать развернутые предметы
  • Применяет названия скинов мастерской к предметам
  • Применяйте затраты на использование, чтобы использовать SkinBox
  • Примените время восстановления, чтобы использовать шкатулку
  • Предоставьте VIP-персонам доступ к определенным скинам
  • Ищите скины по названию в контейнере
  • Используйте избранную систему для определения приоритетности часто используемых скинов
  • Возможность использования для специально очищенных аэрозольных баллончиков вместо команды
Для доступа к спискам скинов мастерской этому плагину требуется ключ Steam API.
Вы можете получить свой API-ключ Steam, перейдя по этой ссылке -> https://steamcommunity.com/dev/apikey
Как только у вас будет ключ Steam API, введите его в свой конфиг, как показано ниже
Код:
Код:
"Steam API key for workshop skins (https://steamcommunity.com/dev/apikey)": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
** Примечание ** Этот плагин не будет работать без действительного ключа Steam API!


Что касается загрузки скинов клиента

, то ни сервер, ни плагин не несут ответственности за фактическую загрузку скинов на клиенте. Это исключительно между клиентом и Steam. Плагин просто сообщает клиенту идентификатор скина, и клиент просит Steam загрузить его.

Любые проблемы, связанные с тем, что иконки скинов не загружаются на клиенте, полностью на стороне клиента.

Если у пользователей возникают проблемы с тем, что иконки скинов не загружаются, попросите их открыть Steam, перейти на вкладки загрузок и принудительно запустить запросы на мастер-классы, поставленные в очередь


Разрешения
SkinBox использует систему разрешений Oxides
Чтобы назначить пользователю разрешение, используйте oxide.предоставьте пользователю "имя пользователя | steam id" "разрешение" в консоли.
Чтобы назначить групповое разрешение, используйте oxide.предоставьте группе "groupname" "разрешение" в консоли.
Вы можете прочитать больше о том, как использовать систему разрешений здесь: uMod - Разрешения
Все разрешения указаны в конфигурации и могут быть настроены по вашему вкусу.
По умолчанию они;

"skinbox.use" - требуется для открытия скинбокса
"skinbox.admin" - Требуется для использования команд администратора
"skinbox.ignorecost" - игнорирует стоимость использования для игроков с этим разрешением
"skinbox.ignorecooldown" - игнорирует время восстановления для игроков с этим разрешением

Разрешение на повторное скинирование по категориям предметов
Вы можете назначить разрешения для различных категорий предметов, которые ограничивают использование этих предметов игроками с соответствующим разрешением.
По умолчанию все они используют разрешение "skinbox.use", которое позволяет любому, у кого есть это разрешение, использовать эти типы элементов.
Если вы хотите ограничить эти типы предметов определенными игроками, вам нужно изменить разрешение на что-то отличное от разрешения по умолчанию и предоставить его этим игрокам
Код:
Код:
    "Permission required to skin weapons": "skinbox.use",
"Permission required to skin deployables": "skinbox.use",
"Permission required to skin attire": "skinbox.use",
Ограничение разрешенных скинов для определенных игроков
Таким же образом вы можете ограничить использование одобренных Rust скинов для определенных игроков
Код:
Код:
"Permission required to view approved skins": "skinbox.use",
Пользовательские разрешения для каждого скина
Вы также можете назначить пользовательские разрешения для каждого идентификатора скина в разделе "Пользовательские разрешения для каждого скина" конфигурации. Вы указываете свое разрешение, а затем добавляете скины в этот список.
Конфигурация по умолчанию содержит примеры того, как это делается

C#:
"Custom permissions per skin": {
"skinbox.example1": [
9990,
9991,
9992
],
"skinbox.example2": [
9993,
9994,
9995
],
"skinbox.example3": [
9996,
9997,
9998
]
}

/команды
чата skinbox | /sb - Открывает окно с кожей
Эта команда и псевдонимы этой команды могут быть изменены в конфигурации в разделе "Команды для открытия SkinBox"

/skindeployed | /sd - открывает скин-бокс для перезапуска развернутых элементов
Эта команда и псевдонимы этой команды могут быть изменены в конфигурации в разделе "Команды для открытия скин-бокса развернутого элемента"

Добавление / удаление отдельных идентификаторов скинов
Консольные команды

skinbox.addskin - добавляет один или несколько скинов, используя их индивидуальные идентификационные номера
(например, skinbox.addskin 820574348 (только один) -ИЛИ- skinbox.addskin 820574348 820610731 (два одновременно, вы можете добавить до 16 идентификаторов скинов в одной команде))

skinbox.removeskin
(Например, skinbox.removeskin 820574348 (только один) -ИЛИ- skinbox.removeskin 820574348 820610731 (два одновременно, вы можете добавить до 16 идентификаторов кожи в одной команде))

skinbox.addvipskin <разрешение> <Идентификатор скина> - добавляет скин (ы), используя их индивидуальные идентификационные номера, и присваивает ему указанное разрешение.
Это разрешение должно уже существовать в разделе пользовательских разрешений конфигурации

skinbox.removevipskin <разрешение> <Идентификатор скина> - удаляет скин и удаляет его из этого списка скинов разрешений.
Это разрешение должно уже существовать в разделе пользовательских разрешений конфигурации

skinbox.validatevipskins - Сравнивает списки VIP-скинов с фактическим списком скинов и запрашивает недостающие скины из мастерской.

Добавление / удаление коллекций скинов
skinbox.addcollection - добавляет все скины в коллекцию
(например: skinbox.addcollection 659627304)

skinbox.removecollection - удаляет все скины в коллекции
(Пример: skinbox.addcollection 659627304)

skinbox.addvipcollection <разрешение> <Идентификатор коллекции> - добавляет все скины в коллекцию и присваивает им указанное разрешение.
Это разрешение должно уже существовать в разделе пользовательских разрешений конфигурации

skinbox.removecollection - удаляет все скины в коллекции и удаляет их из этого списка скинов разрешений.
Это разрешение должно уже существовать в разделе пользовательских разрешений конфигурации

Черный список идентификаторов скинов
skinbox.addexcluded - запретить игрокам использовать этот скин, если у них нет соответствующего уровня авторизации
(например: skinbox.addexcluded 820574348 (только один) -ИЛИ- skinbox.addexcluded 820574348 820610731)

skinbox.removeexcluded - удалить идентификатор скина из списка исключенных
(Например: skinbox.removeskin 820574348 -ИЛИ- skinbox.removeskin 820574348 820610731)

skinbox.addcollectionexclusion - Добавление всей коллекции скинов в черный список скинов

skinbox.removecollectionexclusion - удаление всей коллекции скинов из черного списка скинов

Как найти эти скины и идентификационные номера коллекции
, откройте Steam Workshop в предпочитаемом вами браузере и нажмите на любой скин.
В URL-адресе вы увидите идентификационный номер, прикрепленный в конце. Это идентификатор скина, который вам нужно будет использовать, чтобы добавить этот скин.
Используйте тот же процесс для добавления коллекций скинов

Например, конец URL-адреса содержит ?id=2373483517. Этот номер является идентификатором скина
9c9d8768700287c3c778f293c1f3a052.png



Применение затрат на использование к SkinBox
Вы можете указать затраты на использование элементов SkinBox и reskin в разделе конфигурации под названием "Параметры затрат на использование"
. Здесь вы можете изменить затраты и валюту, которую использовать при применении затрат.
Если вы хотите, чтобы VIP-персоны не взимали плату за использование SkinBox, просто предоставьте им разрешение "skinbox.ignorecost"

C#:
"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. Вы можете изменить настройки для этого в разделе конфигурации под названием "Параметры перезарядки"
Если вы хотите, чтобы к VIP-персонам не применялись кулдауны, просто предоставьте им разрешение "skinbox.ignorecooldown"

C#:
"Cooldown Options": {
"Enable cooldowns": false,
"Cooldown time start's when a item is removed from the box": true,
"Length of cooldown time (seconds)": 60
},

Система избранного
Система избранного работает путем записи того, какие скины использует игрок, и приоритизации тех, которые используются чаще всего.
Он также включает в себя систему очистки данных для удаления старых данных игрока
Эта система может быть переключена в конфигурации, и время очистки может быть скорректировано

Игроки также могут очистить свои избранные для каждого предмета, используя предоставленную кнопку


Поддержка баллончика с распылителем


При желании вы можете предоставить игрокам специальные баллончики со шкурами, которые можно использовать для восстановления как предметов, лежащих на полу, так и развернутых предметов, таких как двери и ящики.

По умолчанию эта опция отключена, для ее включения установите в конфигурации значение true для параметра "Разрешить снятие кожи с помощью баллончика-распылителя SkinBox".

Эта опция содержит консольную команду, которую можно использовать для создания / создания баллончиков с распылителем SkinBox.
Команда может быть запущена только игроками с разрешения администратора, через RCON, или ее можно добавить в магазин, который поддерживает покупку команд.

Выполнив команду "skinbox.spraycan" без аргументов через игровую консоль, вы получите баллончик с распылителем,
выполнив команду "skinbox.spraycan <Имя игрока>" в RCON или через игровой магазин, вы получите баллончик с распылителем для целевого игрока

Если вы хотите включить эти предметы в свою таблицу добычи, короткое имя будет "spraycan", а идентификатор скина - "2937962221"

Другие параметры конфигурации
"Максимальное количество доступных для просмотра страниц" - устанавливает ограничение страниц, к которым пользователь может получить доступ в SkinBox
"Включить одобренные скины" - Автоматически импортировать все одобренные скины
"Включить импортированные вручную скины мастерской" - Импортирует все скины мастерской, которые вы добавили с помощью команды или непосредственно в конфигурацию
"Удалитьодобренные идентификаторы скинов из списка скинов мастерской конфигурации" - удаляет все одобренные идентификаторы скинов из списка мастерских в конфигурации при загрузке плагина
"Включить перенаправленные скины" - позволяет использовать перенаправленные скины, такие как промышленная дверь -> дверь из листового металла
"Требуется уровень авторизации для просмотра скинов из черного списка" - Игроки с этим уровнем авторизации смогут просматривать скины из черного списка


Конфигурация
Файл конфигурации можно найти в каталоге вашего сервера по адресу .../oxide/config/SkinBox.json
Во избежание проблем с форматированием рекомендуется использовать редактор и средство проверки

JSON:
{
"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"
]
[FONT=Tahoma]  },
"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
}
}

Крючки
Возвращает причину в строке, чтобы отменить любой из следующих перехватов

C#:
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)
Верните список <длинный> идентификаторов скинов для указанного краткого имени элемента, чтобы переопределить то, что отображается в скинбоксе. Возвращает значение null для поведения по умолчанию

C#:
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;
}
Автор
sclit
Скачиваний
4
Просмотры
655
Первый выпуск
Обновление
Рейтинг
0,00 звёзд Оценок: 0

Ещё ресурсы от sclit

Последние обновления

  1. 2.2.3

    Исправлено для обновления Rust
Верх