NeigeItems Version 1.12.0 本帖插件及内容禁止任何人转载到任何地方 使用过程中如果遇到bug请加群沟通提交
▎ 功能介绍
- 全异步物品构建
整个物品构建过程为异步进行,稳定不卡服。
- 无损物品保存
本插件支持对物品进行无损可视化保存。
以一个简单的MMOItems物品为例:注: 无损保存指不损失原物品的任何NBT,不等于无变化保存。
任何NI物品都会被添加属于NeigeItems的自定义NBT。
- test:
- material: PAPER
- name: §f鉴定卷轴
- lore:
- - §8§m------§7[ §b§l通用 §7]§8§m------
- - §e§l>§e§l>§e§l> 物品品质 §8§l罕见
- - §e§l>§e§l>§e§l> 物品类别 消耗品
- - §7§l>§7§l>§7§l> 可鉴定
- nbt:
- MMOITEMS_INEDIBLE: (Byte) 1
- MMOITEMS_ENCHANTS: '[]'
- MMOITEMS_TIER: UNCOMMON
- MMOITEMS_ITEM_ID: SCROLL_OF_IDENTIFICATION
- MMOITEMS_NAME: '&f鉴定卷轴'
- MMOITEMS_CAN_IDENTIFY: (Byte) 1
- MMOITEMS_DYNAMIC_LORE: '["&8&m------&7[ &b&l通用 &7]&8&m------","&e&l>>>&e&l 物品品质
- §8§l罕见","&c&e&l>>>&e&l 物品类别 消耗品","&7&l>>>&7&l 可鉴定"]'
- MMOITEMS_ITEM_TYPE: CONSUMABLE
- AttributeModifiers:
- - Amount: (Double) 0.0
- AttributeName: minecraft:generic.attack_speed
- Operation: (Int) 0
- UUID:
- - -2021319128
- - -1357757450
- - -1987131861
- - -563359508
- Name: mmoitemsDecoy
- HSTRY_ENCHANTS: '{"Stat":"ENCHANTS","OGStory":[{"MMOITEMS_ENCHANTS_ñstr":"[]"}]}'
复制代码 |
- 掉落物多彩光效
本插件支持配置掉落物颜色。
- MM物品一键导入
本插件支持通过指令,导入指定MM物品,或导入全部MM物品。
- MM怪物多功能适配
本插件支持读取MM怪物的配置文件,做到让MM怪掉落NI物品、让MM怪生成时穿戴NI物品以及MM怪穿戴的NI物品在死亡时随机掉落。
相关配置部分支持解析即时声明节点,让你可以根据玩家的变量、权限、等级等一切因素生成掉落物ID、数量及概率,让“掉率提升”“动态掉率”等功能的实现变得无比简单。
- 万能随机节点
本插件支持多种即时声明节点、私有/全局节点甚至自定义节点,可以随机生成出任何你想要的物品。
- NBT全类型支持
本插件完全支持自定义NBT配置,可任你所想编辑物品,
让你的物品适配MMOItems、ItemsAdder等一众依赖自定义NBT的插件。
- 可视化易操作物品列表
本插件支持在聊天栏预览并获取物品。
- 物品动作功能
本插件支持为NI物品绑定动作,指定使用次数,使用冷却,支持自定义动作
并通过发包在物品lore中显示剩余使用次数
- 模板继承
本插件物品物品配置及节点配置支持模板继承,一套模板万种配置。
- 多彩掉落
本插件的MM怪物掉落支持像无主之地一样向天空喷发,偏移量可由用户自定义,并提供了随机角度和等分角度两种选项。下面是固定偏移、等分角度下的gif演示:
- 掉落触发MM技能
NI物品通过指令掉落,或通过击杀MM怪掉落时,可触发MM技能。自定义音效,自定义粒子,自定义公告,任君选择。
- 掉落物归属
通过/ni drop或击杀MM怪物掉落的NI物品,可以指定掉落物归属。
让该掉落物的首次拾取只能由指定玩家完成。
- 物品时限
生成的NI物品可以配置物品时限,到期后物品自动从玩家背包删除。
- 游戏内指令编辑物品
通过指令在游戏内编辑手中及背包中的物品
功能全面,涵盖材质、数量、显示名、lore、损伤值、CustomModelData、无法破坏、附魔、属性隐藏、nbt,可以自定义函数,能够做到你的所有编辑要求。
▎ 插件指令
[]为必填, ()为选填 全部需要OP权限
/ni action [玩家ID] [动作内容] > 执行NI物品动作
/ni edithand [玩家ID] [物品编辑函数ID] [函数内容] > 通过对应编辑函数编辑主手物品
/ni editoffhand [玩家ID] [物品编辑函数ID] [函数内容] > 通过对应编辑函数编辑副手物品
/ni editslot [玩家ID] [物品编辑函数ID] [函数内容] > 通过对应编辑函数编辑对应槽位物品
/ni itemNBT > 查看当前手中物品的NBT
/ni list (页码) > 查看所有NI物品
/ni get [物品ID] (数量) (是否反复随机) (指向数据) > 根据ID获取NI物品
/ni give [玩家ID] [物品ID] (数量) (是否反复随机) (指向数据) > 根据ID给予NI物品
/ni givePack [玩家ID] [物品包ID] (数量) > 根据ID给予NI物品包
/ni giveAll [物品ID] (数量) (是否反复随机) (指向数据) > 根据ID给予所有人NI物品
/ni drop [物品ID] [数量] [世界名] [X坐标] [Y坐标] [Z坐标] [是否反复随机] [物品解析对象] (指向数据) > 于指定位置掉落NI物品
/ni dropPack [物品包ID] [数量] [世界名] [X坐标] [Y坐标] [Z坐标] [物品解析对象] > 于指定位置掉落NI物品包
/ni save [物品ID] (保存路径) > 将手中物品以对应ID保存至对应路径
/ni cover [物品ID] (保存路径) > 将手中物品以对应ID覆盖至对应路径
/ni mm load [物品ID] (保存路径) > 将对应ID的MM物品保存为NI物品
/ni mm cover [物品ID] (保存路径) > 将对应ID的MM物品覆盖为NI物品
/ni mm loadAll (保存路径) > 将全部MM物品转化为NI物品
/ni mm get [物品ID] (数量) > 根据ID获取MM物品
/ni mm give [玩家ID] [物品ID] (数量) > 根据ID给予MM物品
/ni mm giveAll [物品ID] (数量) > 根据ID给予所有人MM物品
/ni reload > 重新加载NI物品
/ni help > 查看帮助信息 |
▎ PAPI变量
%ni_parse_内容% -> 解析即时声明节点
例:%ni_parse_<number::0_1_5>% -> 返回一个0-1之间保留五位小数的随机数
▎ 插件配置
- Config:
- Main:
- # MM物品默认保存路径
- MMItemsPath: MMItems.yml
- # 是否开启debug模式
- Debug: false
- Messages:
- # 玩家不在线提示
- invalidPlayer: §e[NI] §6玩家不在线或不存在
- # 给予成功提示
- successInfo: §e[NI] §6成功给予 §f{player} §a{amount} §6个 §f{name}
- # 被给予成功提示(设置为""则不进行提示)
- givenInfo: §e[NI] §6你得到了 §a{amount} §6个 §f{name}
- # 给予成功提示
- dropSuccessInfo: §e[NI] §6成功在 §a{world} §6的 §a{x},{y},{z} §6掉落了 §a{amount} §6个 §f{name}
- # 未知物品提示
- unknownItem: §e[NI] §6找不到ID为 §a{itemID} §6的物品
- # 对应ID物品已存在提示
- existedKey: §e[NI] §6已存在ID为 §a{itemID} §6的物品
- # 未知解析对象提示
- invalidPaser: §e[NI] §6不能针对后台解析物品, 请指定一个玩家
- # 保存成功提示
- successSaveInfo: §e[NI] §6成功将 §f{name} §6以ID §a{itemID} §6保存至 §a{path}
- # MM物品转换完毕提示
- mMImportSuccessInfo: §e[NI] §6成功将所有MM物品保存至 §a{path}
- # 物品列表内, 点击获取物品提示
- clickGiveMessage: §e点击获取该物品
- # 不要保存空气提示
- airItem: §e[NI] §6请不要试图保存空气, 谢谢合作
- # 输入无效数字提示
- invalidAmount: §e[NI] §6无效数字
- # 输入无效世界提示
- invalidWorld: §e[NI] §6无效世界
- # 输入无效坐标提示
- invalidLocation: §e[NI] §6无效坐标
- # 权限不足提示
- insufficientPermissions: §e[NI] §6权限不足
- # 未发现前置插件提示
- invalidPlugin: §e[NI] §6未发现前置插件: {plugin}
- # 物品冷却提示
- itemCooldown: §e物品冷却中! 请等待{time}秒
- # 重载完毕提示
- reloadedMessage: §e[NI] §6重载完毕
- # 无效NBT提示
- invalidNBT: §6[NI] §cNBT加载失败, 请勿在列表型NBT中混用键值对, 数字及字符串
- # 错误物品提示
- invalidItem: '§6[NI] §c物品加载失败, 物品可能缺损数据, 物品ID: §6{itemID}'
- # 给予失败提示
- failureInfo: '§e[NI] §6物品给予失败, 可能原因: 物品未配置材质/玩家已下线'
- # 缺少前置插件提示
- invalidPlugin: '§e[NI] §6未发现前置插件: {plugin}'
- # 未指定物品解析对象提示
- invalidParser: §e[NI] §6不能针对后台解析物品, 请指定一个玩家
- # 物品冷却提示
- itemCooldown: §e物品冷却中! 请等待{time}秒
- # 物品列表内, 点击获取物品提示
- clickGiveMessage: §e点击获取该物品
- # 帮助信息
- helpMessages:
- - §6====================§eNeigeItems§6====================
- - §6==================[]为必填, ()为选填==================
- - §e/ni §flist (页码) §7> 查看所有NI物品
- - §e/ni §fget [物品ID] (数量) (是否反复随机) (指向数据) §7> 根据ID获取NI物品
- - §e/ni §fgive [玩家ID] [物品ID] (数量) (是否反复随机) (指向数据) §7> 根据ID给予NI物品
- - §e/ni §fgiveAll [物品ID] (数量) (是否反复随机) (指向数据) §7> 根据ID给予所有人NI物品
- - §e/ni §fdrop [物品ID] [数量] [世界名] [X坐标] [Y坐标] [Z坐标] (是否反复随机) (物品解析对象) (指向数据) §7>
- 于指定位置掉落NI物品
- - §e/ni §fsave [物品ID] (保存路径) §7> 将手中物品以对应ID保存至对应路径
- - §e/ni §fcover [物品ID] (保存路径) §7> 将手中物品以对应ID覆盖至对应路径
- - §e/ni §fmm load [物品ID] (保存路径) §7> 将对应ID的MM物品保存为NI物品
- - §e/ni §fmm cover [物品ID] (保存路径) §7> 将对应ID的MM物品覆盖为NI物品
- - §e/ni §fmm loadAll (保存路径) §7> 将全部MM物品转化为NI物品
- - §e/ni §fmm get [物品ID] (数量) §7> 根据ID获取MM物品
- - §e/ni §fmm give [玩家ID] [物品ID] (数量) §7> 根据ID给予MM物品
- - §e/ni §fmm giveAll [物品ID] (数量) §7> 根据ID给予所有人MM物品
- - §e/ni §freload §7> 重新加载NI物品
- - §e/ni §fhelp §7> 查看帮助信息
- - §6=================================================
- # 物品列表格式
- ItemList:
- Prefix: §6===========§eNeigeItems§6===========
- Suffix: §6======<< §e{prev} §f{current}§e/§f{total} §e{next} §6>>======
- ItemAmount: 10
- ItemFormat: §6{index}. §a{ID} §6- §f{name}
- Prev: 上一页
- Next: 下一页
复制代码 |
- 其他默认配置: 点击查看
▎ 插件下载
▎ Wiki下载
人不能,至少不应该连不上GitPage的wiki。但如果你就是连不上,这里有pdf版。
pdf版由于转换插件的缺陷,无法显示跨页的代码块,可能造成阅读障碍。
有条件的尽量看网页wiki,遇到图片多等会儿就加载出来了。
NeigeItems-Wiki-1.11.0.zip
(3.32 MB, 下载次数: 108)
▎ 插件安装
1. 下载NeigeItems
2. 将文件丢入plugins文件夹
3. 重启服务器
▎ 更新记录
功能性更新标红 重要BUG修复标蓝
前往Github查看
V1.0.0 插件发布
V1.0.1 修复通过指令掉落的物品无法触发掉落技能的问题
V1.0.2 修复1.12.2保存物品失败的问题
V1.0.3 优化js节点和papi节点的结果解析逻辑
V1.0.4 修复即时声明公式节点取整失败的问题
V1.1.0 更新掉落物归属功能
V1.1.1 修复某些情况下MM无法正常挂钩的问题,优化MM怪物装备掉落逻辑
V1.1.2 物品归属功能1.12.2兼容
V1.1.3 兼容某段中间版本的MM
V1.1.4 修复某些情况下eat触发器导致物品复制的问题
V1.1.5 修复食物异常消耗的问题
V1.1.6 优化自定义动作示例及相关api
V1.1.7 修复冷却期间食物能被吃掉的问题
V1.1.8 修复MM掉落检测异常的问题
V1.1.9 修复多级节点解析值缓存异常的问题
V1.1.10 修复某些情况下eat触发器导致物品复制的问题
V1.1.11 再修一次eat触发器
V1.1.12 更改权重节点逻辑,适应大数字情况
V1.1.13 修复权重节点异常
V1.1.14 解决左右键动作触发管的太宽的问题
V1.2.0 添加物品冷却组功能
V1.2.1 修复1.12.2掉落光效报错
V1.2.2 优化左右键物品动作处理逻辑
V1.2.3 优化mm giveAll处理逻辑
V1.2.4 修复有关物品发光功能的线程安全问题
V1.2.5 更新可解析即时声明节点的papi变量
V1.2.6 针对1.12.2某些无法处理的问题进行摆烂
V1.2.7 去除某些无意义优化
V1.2.8 mm掉落支持mm物品
V1.2.9 修复mm掉落物可能多一个的问题
V1.2.10 js节点性能&线程安全优化
V1.2.11 回退taboolib版本,优化节点无法解析时的提示,优化物品保存功能
V1.2.12 支持自动识别文件编码
V1.2.13 修复怪物自尽时产生报错的问题
V1.2.14 修复怪物互相击杀产生报错的问题
V1.2.15 action指令支持解析即时节点
V1.2.16 优化节点解析逻辑
V1.2.17 更改papi前缀,优化ni list中物品变量的显示
V1.2.18 优化ni list中物品构建失败后的处理方式
V1.2.19 修复低版本java中mm掉落无法添加指向数据的问题
V1.2.20 优化未知材质提示,添加掉落物拥有者提示方式选择
V1.2.21 默认配置中添加了默认节点的js实现
V1.2.22 优化MM兼容相关代码
V1.2.23 修复无法正常载入的BUG, 为下个功能添加部分代码
V1.2.24 修复即时js节点中this.vars失效的问题
V1.2.25 修复mm物品无法掉落的问题
V1.2.26 添加MM掉落物不合并的功能
V1.2.27 阻止MM的PreventRandomEquipment选项吞掉怪物已穿戴的NI装备
V1.3.0 更新物品组功能, 帮助信息配置优化
V1.3.1 兼容某个中间版本的MM
V1.3.2 添加掉落组功能,MM版本兼容优化
V1.3.3 掉落组支持解析即时声明节点
V1.3.4 掉落物发光及颜色支持发包显示
V1.3.5 修复setExp动作
V1.3.6 优化物品组给予提示
V1.3.7 优化物品组给予提示
V1.3.8 优化物品组给予提示
V1.4.0 更新物品时限功能
V1.4.1 发包光效兼容1.17+
V1.4.2 兼容会生成发包实体的插件
V1.4.3 物品包添加引用全局节点和声明私有节点的功能
V1.4.4 修复pick触发器无法正常触发的问题
V1.4.5 更新tlib版本以支持1.19.2
V1.4.6 修复drop触发器消耗冷却异常的问题
V1.4.7 修复少释放一个默认配置文件的问题
V1.4.8 更新taboolib版本
V1.4.9 物品掉落时移除owner信息
V1.5.0 更新join节点
V1.5.1 更新gaussian节点
V1.5.2 修复右尖括号转义异常的问题
V1.5.3 改进左右键触发器
V1.5.4 新增同步物品动作
V1.5.5 更新taboolib版本
V1.5.6 修一下开服报错
V1.5.7 更新repeat节点
V1.5.8 修复全局节点需要重载两次的问题
V1.5.9 修复掉落技能没有trigger的问题
V1.5.10 修复掉落技能没有trigger的问题(1.5.9没修好)
V1.6.0 更新物品编辑函数
/ni edithand
/ni editoffhand
/ni editslot指令
即时声明节点分隔符转义符
字符串向IntArray及ByteArray的转化
V1.6.1 更新replaceName、replaceLore函数
V1.6.2 更新replaceNameRegex、replaceLoreRegex函数
V1.6.3 更改Command结构
V1.6.4 改一下物品编辑函数的api
V1.6.5 兼容某些把openjdk nashorn打包进插件本体的离谱插件
V1.6.6 修复节点外无效左括号导致文本异常的问题
修复节点外括号转义符残留的问题
优化papi节点解析逻辑
优化节点文本解析逻辑
V1.6.7 修复继承节点不解析简单节点中节点内容的问题
优化节点解析逻辑
优化物品解析逻辑
更改有关物品归属者的一处默认配置
V1.6.8 修复发包模式下第二次上线后玩家无法看到掉落物颜色的问题
config中添加掉落物颜色实现模式选项
V1.6.9 添加快速计算(fastcalc)节点
V1.6.10 快速计算节点更换为asahi计算
V1.6.11 提示消息为""时不进行发送
V1.6.12 修复方法错误引用
V1.6.13 增加gradient节点
增加give时移除ownerNBT的选项
更改Command结构
V1.6.14 添加解析物品指向数据的api
V1.6.15 修复fastcalc节点不支持起手正负号的问题
V1.6.16 修复无效物品重复提示的问题
V1.6.17 添加打包了库的自动构建
V1.6.18 修复一个papi兼容问题
V1.6.19 修复一处命令补全报错
V1.6.20 修复setNBTWithList的一处错误
V1.6.21 增加有关json的api方便js脚本调用
V1.6.22 优化JsonUtils
V1.7.0 添加check节点
添加combo/comboClear动作
物品动作格式更改
物品动作添加condition
添加shift_left, shift_right, shift_all触发器
V1.7.1 修复/ni action指令执行异常的问题
V1.7.2 getItemStack(id: String, data: HashMap<String, String>?)
V1.7.3 优化默认物品变量
优化condition判断
V1.7.4 更新when节点
修复condition性能问题
V1.7.5 修改默认配置的一处错误
修复ItemOwner的removeNBTWhenGive在不重复随机时失效的问题
V1.7.6 添加refresh, rebuild, refreshAmount, rebuildAmount函数
兼容EasyItem
V1.7.7 MM怪物穿戴兼容MM物品、EasyItem物品
V1.7.8 MM怪物穿戴物掉落兼容MM物品、EasyItem物品
V1.7.9 增加操作饱和度的物品动作
V1.7.10 优化rebuild和refresh
V1.7.11 修改动作冷却显示小数位数
V1.7.12 增加getNBT,getNBTTag,data条件
V1.7.13 为condition添加global对象, 权重节点的权重支持小数
V1.7.14 添加js动作
V1.7.15 动作默认冷却设置为1000ms,增加ItemUtils.getItemName方便js调用, 优化check节点
V1.8.0 添加ItemDropEvent事件
添加ItemExpirationEvent事件
添加ItemGeneratorEvent事件
添加ItemGiveEvent事件
添加ItemPackDropEvent事件
添加ItemPackGiveEvent事件
添加MythicDropEvent事件
添加MythicEquipEvent事件
添加PluginReloadEvent事件
修复一个文件内存储太多物品(上千个)会导致reload很缓慢的问题
V1.8.1 更改MythicDropEvent
V1.8.2 在ItemManager里加一个判断NI物品的api
V1.8.3 Section后缀的物品编辑函数支持动作变量
V1.8.4 随机数节点最小值大于等于最大值时返回最小值
V1.8.5 更改物品生成事件类名的拼写错误
V1.9.0 更新ni itemNBT指令
V1.9.1 重构MM兼容
V1.9.2 修复无击杀者时MM怪物死亡报错的问题
V1.9.3 修复物品没有ItemMeta时ni save不保存物品子ID/损伤值的问题
V1.10.0 增加JavaScript扩展功能
join节点增加乱序功能
修复combo和comboClear动作不支持papi变量的问题
修复refresh和rebuild动作刷新物品耐久的问题
修复parseItem函数在condition中失效的问题
修复没有ItemMeta但有耐久值/子ID无法通过ni save保存耐久值/子id的问题
优化随机概率判断
增添部分注释
V1.10.1 修复低版本PAPI报错的问题
V1.10.2 将扩展部分行为改为异步, 更改扩展默认配置
V1.10.3 修复某些线程问题
V1.10.4 增加一个有关物品加载的api
V1.10.5 修复用户脚本错误导致插件无法正常加载的问题
V1.10.6 修复某些线程问题
V1.10.7 修复drop和pick触发器consume异常的问题
V1.10.8 更新weightjoin节点
V1.10.9 增加权重声明节点
V1.10.10 为MythicMobs掉落增加PlayerOnly选项
V1.10.11 优化权重声明节点逻辑
V1.10.12 物品包支持指向数据
V1.10.13 权重声明节点增加putelse选项
V1.10.14 物品包支持设置最小/最大掉落条目
V1.10.15 优化MinItems实现
V1.10.16 尝试修复BC环境下物品光效小概率导致玩家被踢出服务器的现象
V1.10.17 尝试修复BC环境下物品光效小概率导致玩家被踢出服务器的现象
V1.10.18 优化权重声明节点逻辑
V1.10.19 优化权重声明节点逻辑
V1.10.20 修复js库的一处大小写错误
V1.10.21 修复左右键空气无法触发物品动作的问题
V1.10.22 更新title、actionBar动作
V1.10.23 更新click、beclicked触发器
V1.10.24 修复概率为0时物品包MinItems报错的问题
V1.11.0 增加自定义耐久度功能
增加设置修改物品(最大)使用次数及物品(最大)自定义耐久的物品编辑函数
增加获取(最大)自定义耐久及自定义耐久耗尽后是否破坏的物品变量
给予物品提示支持物品变量
优化papi解析逻辑
添加与文件获取有关的工具函数方便JS扩展调用
增加设置修改(最大)物品使用次数及(最大)物品自定义耐久的API
V1.11.1 修复某些情况下右键物品报错的问题
V1.11.2 修复低版本某些情况下交互实体报错的问题
V1.11.3 添加amount、type、damage动作变量
兼容1.19.4
V1.11.4 让动作变量可以调用js动作中global的值
V1.11.5 扩展更新Bukkit任务注册功能
V1.11.6 修复一个创建文件相关的BUG
V1.11.7 Expansion添加引入Maven依赖/本地依赖功能
修复condition中parseItem函数失效的问题
V1.11.8 移除单独的自定义动作/节点/编辑函数文件,转为Expansion实现
V1.11.9 优化Expansion Task
V1.12.0 物品生成速度平均提升5倍
MythicMobsHooker中添加MM怪物生成/死亡事件的类,方便javascript调用
添加自动将配置文件中的有效PAPI变量转换为PAPI节点的功能
移除物品配置直接解析PAPI变量的功能,仅保留通过PAPI节点解析PAPI变量
修复某些地方读取文件后不关闭reader或stream的问题
|
▎ 已测试版本
paper1.12.2-1.19.3
arclight1.16.5
spigot1.12.2
catserver1.12.2 (请不要使用上古版本的catserver,请使用新版本)
▎ 应用实例
无主之地式喷射抽奖箱
类暗黑装备生成模板
与MMOItems进行联动
生成多行非重复词条
MythicMobs怪物掉落实体金币
像MMOItems一样符合正态分布的随机数
不同品质获得不同范围的随机属性
不同品质获得不同行数Lore(不同数量宝石槽)
常见的锻造强度条
▎ 使用协议
☑你可以在你的服务器中随意使用此插件;
☒你不可以声称此插件是你编写的,禁止倒卖本插件。
本插件所用代码部分来自其他开源或闭源(已授权)作品 |