版本 2.1.9 中的新功

昨天 发布

  • 更新以修复重定向皮肤被强制添加到非重定向项目的问题
  • 修复了在禁用命名配置选项时应用于重定向皮肤的名称

版本 2.1.6 中的新功能

发布于 

  • NRE 修复 – 可能很少导致项目噗噗

 

关于斯金纳

斯金纳! 无与伦比的 No.1 性能皮肤插件。使用独特的皮肤盒对游戏中的任何项目进行皮肤处理,为您提供实时皮肤、自动皮肤和皮肤设置。

Features-Header.png.49ecb595a79a9617b5b599921faa92fe.png

  • Live Skinning – 在不移动项目的情况下就地蒙皮
  • 自动导入 – 自动导入并使用所有游戏批准的皮肤
  • 皮肤集 – 为任何项目创建各种不同的皮肤集
  • 皮肤请求 – 允许玩家请求,允许管理员在游戏中接受新皮肤
  • 自动皮肤 – 自动将所选皮肤应用于进入您库存的每件物品

 

Follow-Whipers88.gif.1481f3f4489006787051f3c176124630.gifDiscord-Cobalt.gif.eec77b5e20f9be8cf628c95abece8574.gif

Performance-Header.png.12eb972bf7df59130035231702d64fd5.png

Skinner 2.0 在插件效率方面提供了无与伦比的性能。我们的标准测试表明,运行时结果比最接近的执行插件快 60 倍,内存使用效率高 200 倍。

SkinnerPerformanceProfile.gif.c011ebc835f955def00f0ff7d91067da.gif
Commands-Header.png.ccc49a6d5480c5030b2b9d55e1009055.png

SkinMenu 命令:

  • /Skin 或 /S – 通过选择要应用的皮肤来实时对库存中的任何物品进行皮肤
  • /SkinCraft 或 /Sc – 创建多个皮肤集以用于其他功能,例如 skinauto 或 skinteam
  • /Skinitem 或 /Si – 对你在游戏中查看的可部署物品进行皮肤处理。
    • 参数 – 指定 1、2 或 3 以自动使用皮肤集。

自动命令:

  • /skincon 或 /scon – 将您正在查看的容器中的所有项目设置为默认工艺集
    • 参数 – 可选,显示 1、2 或 3 以自动使用皮肤集。
  • /skininv 或 /sinv – 将库存中的所有物品设置为默认工艺集
    • 参数 – 可选,显示 1、2 或 3 以自动使用皮肤集。
  • /Skinauto 或 /Sauto – 根据您的皮肤集自动将所选皮肤应用于进入您库存的每个物品。
    • 参数 – 可选,显示 1、2 或 3 以自动使用皮肤集。
  • /Skinteam 或 /st – 将物品栏和团队中的所有物品设置为默认工艺集
    • 参数 – 可选,显示 1、2 或 3 以自动使用皮肤集。
    • 切换 – 使用 /skinteam 切换来选择加入或退出团队皮肤集
  • /SkinBase – 允许您将基地中的所有可部署物蒙皮到您的默认 skincraft 皮肤。
    • Args – 可选,指定项目名称以筛选正在蒙皮的项目,例如:/Skinbase sleepingbag 到仅皮肤睡袋。
  • /SkinAll 命令 – 对基地中所有容器中的所有物品进行蒙皮。
    • Args – 可选,通过短名称指定项目,例如:/SkinAll rifle.ak 仅蒙皮 ak47。

皮肤导入命令:

  • /skinimport 或 /sip – 导入自定义工作室皮肤
    • Args – WorkshopID 示例:/Skinimport 2397648701
  • /colimport 或 /cip – 使用 /skinimport collectionID 导入自定义工作间集合
    • Args – 集合 ID 示例:/Colimport 2921147807
  • /Skinrequest 或 /Sr – 请求将皮肤添加到 skinner,请求的皮肤将显示在 /Skinrequests UI 中以供审批
    • Args – WorkshopID 示例:/Skinrequest 2397648701
  • /Skinrequests 或 /Srs – 打开带有一框皮肤审批的 skinner 菜单
    • 按钮使用 – 选择一个选项并删除皮肤以执行该过程
      尝试 – 接收具有该皮肤
      的项目副本 批准 – 将菜单中的皮肤添加到导入的皮肤列表
      拒绝 – 删除皮肤

注意:所有聊天命令都是通用的,这意味着它们可以通过控制台、rcon(用于导入命令)使用,并且可以通过配置进行自定义。

Permissions-Header.png.2c7252e072f03ac850ce320b3b429082.png

玩家权限

  • Skinner.default – 启用 /skin 命令
  • Skinner.items – 启用 /skinitem 命令
  • Skinner.craft – 启用 /skincraft 命令
  • Skinner.skinauto – 启用 /skinauto 命令
  • Skinner.skincon – 启用 /skincon 命令
  • Skinner.skininv – 启用 /skininv 命令
  • Skinner.skinbase – 用于 /skinbase 命令
  • Skinner.skinteam – 允许使用 /skinteam 命令
  • Skinner.skinall – 用于 /skinall 命令
  • Skinner.skinrequest – 启用 /skinrequest

冷却时间权限

冷却时间设置可以通过插件配置进行调整。应用冷却时间权限示例 skinner.default30 将对拥有该权限的人强制执行冷却时间。如果没有应用冷却时间权限,则不会强制执行冷却时间。如果为单个玩家分配了多个冷却时间,则将使用最快的冷却时间。

"Command based cooldowns ('permission' : 'command' seconds": {
    "Default30CD": {
      "skin": 30.0,
      "skinitem": 30.0,
      "skincraft": 30.0,
      "skincon": 30.0,
      "skininv": 30.0,
      "skinteam": 30.0,
      "skinbase": 60.0,
      "skinall": 60.0
    }

管理员权限

  • Skinner.import – 启用 /Skinimport、/Colimport 和 /Skinrequests
  • Skinner.bypassauth – 在使用 /Skinitem 时绕过构建身份验证要求
  • Skinner.permskintry – 在使用 /Skinrequests 时启用 try 功能
    • 警告:尝试皮肤会复制该物品。仅将此烫发给允许生成物品的管理员。

其他权限

  • Skinner.skinautotoggled – 当玩家禁用 skinauto 时应用
  • Skinner.skinteamblock – 当玩家禁用团队皮肤时应用

ImportingSkins-Header.png.b999bc93f4e46372c6c654893a4e72e2.png

Skinner 提供了多种导入皮肤的方法,包括通过配置和命令:
通过配置导入
要通过配置导入皮肤,请按照下面的代码片段将 workshopID 插入到导入的皮肤列表中,完成后重新加载 Skinner,shortname 和 displayname 字段将自动填充。您可以使用此方法在任何阶段添加额外的皮肤。

  "Imported Skins List": {
    "861142659": {},
    "2617744110": {}
  },

 

可以选择将整个创意工坊皮肤集合添加到 conifg,每个物品皮肤都会在插件加载时自动导入到您导入的皮肤列表中。

  "Import Skin collections (steam workshop ID)": [496517795,2921147807],

通过命令导入

命令可用于通过 RCON、聊天命令和 f1 控制台编辑导入的皮肤和集合的配置选项。命令包括:

  • /skinimport 工作室 ID
  • /colimport 集合 ID

通过 Skin Requests 导入

玩家可以使用 skinrequests 功能请求将皮肤添加到游戏中。通过使用命令 /skinrequest WorkshoID,皮肤会自动上传到皮肤请求框。具有 skinner.import 权限的管理员可以使用 /skinrequests 命令打开请求框。

然后可以“尝试”批准或拒绝请求框中的皮肤。
请求
的每个皮肤都可以使用配置中的 webhook 记录到 discord。

skinrequests2.png.c6ccec2cdfc104fe5b14b5e28d76671f.pngskinrequests2log.png.892cba1bef987d4bfdaa10888ddb80d6.png

从其他插件导入

Skinner 现在有一个适用于 Windows 的工具,可以从 skinbox、xskins 和 skincontroller 导入数据。只需在工具中选择包含导入皮肤的 json 数据文件,然后将新导入的皮肤列表复制到 skinner 配置中。
https://github.com/Whispers88/SkinDataConverter/releases/tag/Main

 

ConfigHeader.png.767bb88f7594a0f570d61627623e24bd.png

注意: “导入的皮肤 (skinid : ‘shortnamestring’, skinid2 : ‘shortnamestring2’”: {}“ 现在是多余的,并会自动转换为导入的皮肤列表。

{
  "Skin Commands (skin items in you inventory": [
    "skin",
    "s",
    "skinbox",
    "sb"
  ],
  "Skin Items Commands (skin items you have already placed": [
    "skinitem",
    "si",
    "skindeployed",
    "sd"
  ],
  "Set default items to be skinned": [
    "skincraft",
    "sc"
  ],
  "Automatically set all items in you inventory to your default skins": [
    "skininv",
    "sinv"
  ],
  "Automatically set all items a container to your default skins": [
    "skincon",
    "scon"
  ],
  "Automatically skin all deployables in your base": [
    "skinbase",
    "skinbuilding"
  ],
  "Automatically skin all items in your base": [
    "skinall",
    "sa"
  ],
  "Automatically skin all items that are moved into you inventory": [
    "skinauto",
    "sauto"
  ],
  "Skin your teams inventories with your skin set": [
    "skinteam",
    "st"
  ],
  "Request workshop skins via workshop ID": [
    "skinrequest",
    "sr"
  ],
  "Approve workshop skin requests": [
    "skinrequests",
    "srs"
  ],
  "Set your selected skin set": [
    "skinset",
    "ss"
  ],
  "Import Custom Skins": [
    "skinimport",
    "sip"
  ],
  "Import Workshop Collection Command": [
    "colimport",
    "cip"
  ],
  "Skin Request Notification Discord Webhook": "",
  "Custom Page Change UI Positon anchor/offset 'min x, min y', 'max x', max y'": [
    "0.5 0.0",
    "0.5 0.0",
    "198 60",
    "400 97"
  ],
  "Custom Searchbar UI Positon anchor/offset 'min x, min y', 'max x', max y'": [
    "0.5 0.0",
    "0.5 0.0",
    "410 635",
    "572 660"
  ],
  "Custom Set Selection UI Positon anchor/offset 'min x, min y', 'max x', max y'": [
    "0.5 0.0",
    "0.5 0.0",
    "250 610",
    "573 633"
  ],
  "Auto import approved skins": true,
  "Remove player data after inactivity (days)": 14,
  "Apply names of skins to skinned items": true,
  "Add Search Bar UI": true,
  "Use on itemcraft hook (skin items after crafting - not required when using skinauto)": false,
  "Override spraycan behaviour": false,
  "Use spraycan effect when holding spraycan and skinning deployables": true,
  "Blacklisted Skins (skinID)": [],
  "Blacklisted Itemms (itemID)": [],
  "Import Skin collections (steam workshop ID)": [],
  "Command based cooldowns ('permission' : 'command' seconds": {
    "Default30CD": {
      "skin": 30.0,
      "skinitem": 30.0,
      "skincraft": 30.0,
      "skincon": 30.0,
      "skininv": 30.0,
      "skinteam": 30.0,
      "skinbase": 60.0,
      "skinall": 60.0
    }
  },
  "Imported Skins List": {}
}

API-Header.png.01ec99bf6f35f7e7e296a36b939ef782.png

//Get all Cached skins 
public Dictionary<int, List<ulong>> GetAllCachedSkins()
 {
     return _cachedSkins;
 }
//Check if skin is a Redirect item
 public bool IsRedirectID(ulong uID)
 {
     return HasMask(uID);
 }
//Convert Redirect ID to item ID
 public int RedirectIDtoItemID(ulong uID)
 {
     return (int)UnsetMask(uID);
 }
//Get a list of skins for a particular item
 public List<ulong>? GetSkinsItemList(int itemid)
 {
     _cachedSkins.TryGetValue(itemid, out List<ulong>? cachedSkins);
     return cachedSkins;
 }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。