• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

ShadowLevels:修订间差异

来自Minecraft插件百科
跳转到导航 跳转到搜索
无编辑摘要
无编辑摘要
标签段首空两格
 
(未显示同一用户的23个中间版本)
第6行: 第6行:
|最新版本  = 1.1
|最新版本  = 1.1
|前置插件  = ShadowCore , [可选]PlaceholderAPI
|前置插件  = ShadowCore , [可选]PlaceholderAPI
|地址  = https://www.mcbbs.net/thread-1395319-1-1.html
}}
}}


==总览==
==总览==
这是一个可以让你的服务器实现强大的等级系统,和等级奖励系统的插件


这是一个大型的点唱机,音乐和音符块插件!
你可以用SL强大的自定义菜单功能和SC给予的强大事件格式写一个完全


GMusic是一个高度可定制的插件,它可以让你在Minecraft中用NoteBlock播放你最喜欢的歌曲。有一个好看的GUI,它允许你改变当前播放的歌曲,音量,随机模式和更多!
属于你的奖励菜单,写一个属于的你的奖励系统。


在Plugin-Config和Lang-Files中有很多设置和函数都可以被你更改!
===PAPI占位符===
* %shadowlevels_<等级系统>_exp% - 当前经验
* %shadowlevels_<等级系统>_level% - 当前等级
* %shadowlevels_<等级系统>_required-exps% - 下一级所需的经验
* %shadowlevels_<等级系统>_max-levels% - 最高级
* %shadowlevels_<等级系统>_isMax% - 是否满级
* %shadowlevels_<等级系统>_multiple% - 等级倍率
* %shadowlevels_<等级系统>_color% - 等级颜色
* %shadowlevels_<等级系统>_received-rewards-count% - 已领取的奖励数量
* %shadowlevels_<等级系统>_progressbar% - 进度条 (默认长度,  可在Config.yml中更改)
* %shadowlevels_<等级系统>_progressbar_<长度>% - 进度条


支持Bukkit, Spigot和Paper服务器 1.13.x - 1.19.x !
==自定义等级系统==


你不需要任何API或其他前置插件让GMusic工作!
===如何创建一个等级系统===


==特性==
在控制台输入/sl CreateLevelSystem <等级系统名>


* 高度可定制
也可以使用/sl cls <等级系统名>
* 非常好的性能
* 易于使用的命令!
* Tab-Complete
* 在Minecraft中播放音符块歌曲!!
* (/music)音乐gui
* 转换”*.mid”或“*.midi"文件直接与GMusic没有任何其他软件!!
* 停止,暂停,恢复歌曲!
* 随机播放歌曲!
* Reverse-Play一首歌! !
* Actionbar消息!
* 搜索歌曲的标题!
* 激活欢迎GMusic从服务器恢复你的最后一首歌,
* 或者随便选一首,如果你之前没听过的话。
* 智能GUI-Page特性
* 播放歌曲时更改所有选项!(音量,播放模式(一次;洗牌;重复),粒子,翻转)
* 显示粒子与播放的歌曲同步!
* 定义默认游戏背景!
* 防止玩家退出服务器时保存选项,所以当他再次加入时,他开始使用默认设置。
* 聪明的文件保存!
* 标记您最喜欢的歌曲,并使用“收藏夹”播放列表播放它们!
* 游戏歌曲编辑命令!
* 服务器Song-Shuffle广播!
* 环境影响! !
* GMusic支持Environment-Music-Effects !
* 例如,如果你在水下你的音乐音量是阻尼和轻微扭曲!
* 中单击一个选项将重置为它的默认值!
* 有PlaceholderAPI支持!


===PAPI占位符===
等级将会自动载入
* %gmusic_options_volume% ->显示当前的卷
* %gmusic_options_join% ->显示当前的欢迎音乐状态
* %gmusic_options_playmode% ->显示当前播放模式
* %gmusic_options_particles% ->显示当前的粒子模式状态
* %gmusic_options_reverse% ->显示当前的反向模式状态
* %gmusic_options_toggle% ->显示玩家是否可以听到点唱机音乐
* %gmusic_active% ->显示玩家是否正在听音乐
* %gmusic_active_title% ->显示当前播放的歌曲的标题
* %gmusic_active_id% ->显示当前播放的歌曲Id
* %gmusic_active_author% ->显示当前播放的歌曲的作者
* %gmusic_active_oauthor% ->显示当前播放的歌曲的原始作者
* %gmusic_active_description% ->显示当前播放的歌曲的描述信息
* %gmusic_active_length% ->显示当前播放的歌曲的长度
* %gmusic_active_position% ->显示当前播放的歌曲的NotePosition /播放时间
* %gmusic_active_paused% ->显示当前播放的歌曲是否处于暂停状态


==播放==
===编辑你的等级系统===


===如何将歌曲导入GMusic?===
<small>路径ShadowLevels\Levels\####.yml</small>


GMusic使用一种名为“*.gnbs”的独特文件类型读取和播放歌曲!
等级的名称(请勿随意修改!)
<pre>Name: Global</pre>


如果你有一个你可以把它放在“songs”文件夹里,然后重新加载插件。
此等级配置的最大等级上限
如果你的等级达到这个数值
那么将不会继续增长等级
<pre>Max-levels: 100</pre>


现在你的歌曲被导入,可以播放了!
等级颜色设置, 表示0到9级颜色为'&7', 10级及以后为'&f'
<pre>
Colors:
  0: '&7'
  10: '&f'
</pre>


当你有一个“*.nbs”文件(在大多数情况下你有这个)你可以把这个文件放在“转换”文件夹和GMusic为你做剩下的(转换,导入等)!
默认升级经验
<pre>Default-exps-to-level-up: 5000  </pre>


===我在哪里可以找到一个“*.nbs”或“*.gnbs”文件?'''===
自定义升级经验 (原写法)


为了得到一个“*.nbs”或“*.gnbs”文件,你可以在互联网上简单搜索。(如[https://midishow.com/ midishow])
表示升到1,2,3,4,5级需要100经验,升到6,7,8,9,10级要1000经验,10级以后要默认经验
<pre>
Custom-exps-to-level-up:
  1: 100
  2: 100
  3: 100
  4: 100
  5: 100
  6: 1000
  7: 1000
  8: 1000
  9: 1000
  10: 1000
</pre>


===我有一个 '.mp3', '.mid' 或 '.midi',我如何使用它与GMusic?”===
在ShadowLevels v1.0中, 若无指定升级所需的经验, 则为默认升级经验!


目前GMusic不能直接读取“*.mp3”文件,因为这需要大量的工作! (需要放这种直接看最底部)
例: 未指定到达第3级的经验, 则为默认经验
<pre>
Custom-exps-to-level-up:
  1: 100
  2: 100
  4: 100
  5: 100
</pre>


转换 '.mid' 或 '.midi'文件只要把它放在“midi”文件夹!
新写法(区间写法,仅限ShadowLevels v1.1及以后!)
GMusic现在转换文件与下一次重新加载!


如果你喜欢自己转换成“.nbs”或“.midi“文件,你可以使用Note Block Studio转换成”*.bvs”文件。
代替上述原版写法
你可以把这些文件带到“convert”文件夹!
<pre>
Custom-exps-to-level-up:
  5: 100 #5级以前每升一级要100经验
  6: 1000 #从5级升到6级,需要1000经验
  11: 5000 #6级到11级(包括6级,不包括11级)每升一级要5000经验,11级及以后每升一级要5000经验
</pre>


===.gnbs有什么特点?===
==自定义奖励==


新gnbs格式提供了几个优点。
===如何创建一个奖励===


使用这种格式,可以停止和中断单个节拍。这提供了全新的播放选项。
在控制台输入/sl CreateReward <奖励名> <所属等级系统名>


此外,还可以创建“部件”,在文件中可以一次又一次地调用它,并且可以重复播放单个的台词。
也可以使用/sl cr <奖励名> <所属等级系统名>


此格式未加密或难以辨认。你可以用文本编辑器打开并查看这些文件!
奖励将会自动载入


==指令==
===全局物品设置===


/music play <ID> -> 使用ID播放音乐
奖励菜单默认的物品设置,在Items.yml文件中可更改


/music playing -> 显示当前播放的音乐
若奖励菜单或奖励物品没有自定义奖励物品设置,则使用该配置中的物品(详见下文)


/music random -> 随机播放
对照:


/music stop -> 停止当前播放的音乐
Previous-Page: 上一页


/music pause -> 暂停
Next-Page: 下一页


/music resume -> 解除暂停
Reward-Unlocked: 奖励(已解锁)


/music skip -> 切歌
Reward-Locked:奖励(未解锁)


/music toggle -> 关闭音乐(仅自己)
Reward-Received:奖励(已领取)


Reward-NoPermissions:奖励(无权领取)


%rewards%占位符: 每个奖励所包含的内容,需要在每个奖励下单独设置(详见下文)


/amusic download <Type> <Name> <Path> -> 从URL下载文件
===编辑你的奖励菜单===


奖励菜单所属的等级系统(请勿随意更改)
<pre>Level-System: Global</pre>


/amusic jukebox <Player> [<Amount>] -> 给玩家指定数量的点唱机
该奖励菜单的标题(默认为Rewards, 请自行修改)
/amusic disc <Player> <ID> [<Amount>] -> 给玩家指定数量的唱片
<pre>Title: Rewards</pre>


/amusic play <Player> <ID> -> 给玩家播放音乐
该奖励菜单的大小(可自行修改, 必须是9的倍数,且不超过54)
<pre>Size: 54</pre>


/amusic stop <Player> -> 停止玩家的音乐
自行为菜单添加物品(仅装饰)


/amusic playradio <ID> -> 设置当前电台音乐
Custom-Items中默认生成Custom-Border,作为默认奖励菜单的边框


/amusic edit <Option> <Value> -> 更改特定音乐设置
<pre>
Custom-Items:
  Custom-Border:
    Name: '&7Border'
    Material: GRAY_STAINED_GLASS_PANE
</pre>


'''当然,在Custom-Items中我们也可以重写Previous-Page,Next-Page等Items.yml所配置好的物品'''


/gmusicreload -> 重载全部配置和语言
'''这样奖励菜单调用的将会是Custom-Items中的物品,而不是Items.yml中的物品 (仅在如果该奖励无Custom-Items时, 详见下文)'''


==权限==
可自行添加一个物品,如下:


*管理员权限: GMusic.*
<pre>
*收到更新提示: GMusic.Update
Custom-Items:
*配置重载权限: GMusic.GMusicReload
  Custom-Item1:
    Name: '&9自定义物品1'
    Material: DIAMOND
    Lore:
    - '&b这是一颗钻石'
    #Events: #自定义事件 (仅限v1.2以上)
</pre>


'''普通权限'''
然后到Item-Slots中, 填写位置
*GMusic.Music.* -> 全部音乐权限
*GMusic.Music.GUI -> Use "/music"
*GMusic.Music.Play -> Use "/music play <ID>"
*GMusic.Music.Playing -> Use "/music playing"
*GMusic.Music.Random -> Use "/music random"
*GMusic.Music.Stop -> Use "/music stop"
*GMusic.Music.Pause -> Use "/music pause"
*GMusic.Music.Resume -> Use "/music resume"
*GMusic.Music.Skip -> Use "/music skip"
*GMusic.Music.Toggle -> Use "/music toggle"


'''管理员'''
[[文件:自定义位置.png|无框]]
*GMusic.AMusic.* -> 全部管理员权限
*GMusic.AMusic.Download -> Use "/amusic download <Type> <Name> <Path>"
*GMusic.AMusic.JukeBox -> Use "/amusic jukebox <Player> [<Amount>]"
*GMusic.AMusic.Disc -> Use "/amusic disc <Player> <ID> [<Amount>]"
*GMusic.AMusic.UseJukeBox -> Use a special JukeBox
*GMusic.AMusic.Play -> Use "/amusic play <Player> <ID>"
*GMusic.AMusic.Stop -> Use "/amusic stop <Player>"
*GMusic.AMusic.PlayRadio -> Use "/amusic playradio <ID>"
*GMusic.AMusic.Edit -> Use "/amusic edit <Option> <Value>"


==需要播放MP3文件看这里转换==
重载一下,打开菜单,就能看到物品了


===方法1(推荐):直接去Midishow找扒谱的文件===
===自定义奖励===


https://midishow.com/
一个奖励的基本规范:


===方法2:使用在线工具转换===
<pre>
"奖励名":
  Level: 所需的等级
  Page: 页数
  Slot: 位置
  Rewards: #%reward%所显示的东西
  - '&6Coins x100'
  #Permissions: #启用此项使用权限
  #- '权限'
  Events: #领取奖励后的事件
  - '@EventProperty world'
  - '[CONSOLE_COMMAND] bal give %player% 100'
</pre>


'''限制转换时长!!!'''
当然,我们也可以自定义当前奖励的物品


需要在Midishow社区有一定经验值
这里默认奖励菜单的第三个奖励就是个很好的例子


https://www.midishow.com/tool/mp3-to-midi
<pre>
  '3':
      Level: 3
      Page: 2
      Slot: 10
      Rewards:
      - '&6Coins x100'
      Events:
      - '@EventProperty world'
      - '[CONSOLE_COMMAND] bal give %player% 100'
      Custom-Items:
        Reward-Unlocked:
          Name: '&eReward 3★ &f| &aUnlocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&aClick to claim!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          ItemFlags: HIDE_ENCHANTS
          Enchantments: 'PROTECTION_ENVIRONMENTAL : 1'
          Events:
          - '[msg] &aReceived successfully'
        Reward-Locked:
          Name: '&eReward 3★ &f| &cLocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou need more levels!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cThis reward is locked!'
        Reward-Received:
          Name: '&eReward 3★ &f| &cReceived'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou''ve already received!'
          Material: MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cYou''ve already received this reward!'
        Reward-NoPermissions:
          Name: '&eReward 3★ &f| &cLocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou don''t have permissions!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cYou don''t have permissions to receive this reward!'
</pre>


===方法3:本地部署转换工具===
我们可以看到, 该奖励所显示的物品, 全在该奖励下Custom-Items中被重写了!


此方法不限转换时长,但需要一定编程技术和电脑配置
'''如果一个奖励菜单,Custom-Items中重写了Items中的物品, 又有奖励的Custom-Items重写了Items中的物品, 则该奖励默认使用奖励设置中Custom-Items里的物品'''


推荐最低CPU:Intel Core i5 9th+ (比较好的Xeon系也可以)
至此,自定义奖励教程结束


推荐最低GPU加速:NVIDIA RTX 20+
==权限==


https://zhuanlan.zhihu.com/p/270999354
'''管理员'''
 
* ShadowLevels.Commands.SetMultiple - 使用sl mulitiple指令设置玩家经验倍率
注意:使用GPU加速需要安装CUDA版的 [https://pytorch.org/get-started/locally/ PyTorch] 且电脑安装 [https://developer.nvidia.com/cuda-downloads CUDA]
* ShadowLevels.Commands.Admin - 使用sl admin指令
* ShadowLevels.Commands.Reload - 使用sl reload重载
* ShadowLevels.Commands.Reset - 使用sl reset重置玩家信息
* ShadowLevels.Commands.AddExps - 使用sl addexps给予玩家经验
* ShadowLevels.Commands.RemoveExps - 使用sl removeexps清除玩家经验
* ShadowLevels.Commands.SetExps - 使用sl setexps设置玩家经验
* ShadowLevels.Commands.AddLevels - 使用sl addlevels给予玩家等级
* ShadowLevels.Commands.RemoveLevels - 使用sl removelevels清除玩家等级
* ShadowLevels.Commands.SetLevels - 使用sl setlevels设置玩家等级
* ShadowLevels.Commands.OpenReward - 使用sl openreward给别人打开奖励菜单

2023年2月19日 (日) 07:36的最新版本


ShadowLevels
外文名ShadowLevels
作者XiaoJianhao_awa
最新版本1.1
前置插件ShadowCore , [可选]PlaceholderAPI

总览

这是一个可以让你的服务器实现强大的等级系统,和等级奖励系统的插件

你可以用SL强大的自定义菜单功能和SC给予的强大事件格式写一个完全

属于你的奖励菜单,写一个属于的你的奖励系统。

PAPI占位符

  • %shadowlevels_<等级系统>_exp% - 当前经验
  • %shadowlevels_<等级系统>_level% - 当前等级
  • %shadowlevels_<等级系统>_required-exps% - 下一级所需的经验
  • %shadowlevels_<等级系统>_max-levels% - 最高级
  • %shadowlevels_<等级系统>_isMax% - 是否满级
  • %shadowlevels_<等级系统>_multiple% - 等级倍率
  • %shadowlevels_<等级系统>_color% - 等级颜色
  • %shadowlevels_<等级系统>_received-rewards-count% - 已领取的奖励数量
  • %shadowlevels_<等级系统>_progressbar% - 进度条 (默认长度, 可在Config.yml中更改)
  • %shadowlevels_<等级系统>_progressbar_<长度>% - 进度条

自定义等级系统

如何创建一个等级系统

在控制台输入/sl CreateLevelSystem <等级系统名>

也可以使用/sl cls <等级系统名>

等级将会自动载入

编辑你的等级系统

路径ShadowLevels\Levels\####.yml

等级的名称(请勿随意修改!)

Name: Global

此等级配置的最大等级上限 如果你的等级达到这个数值 那么将不会继续增长等级

Max-levels: 100

等级颜色设置, 表示0到9级颜色为'&7', 10级及以后为'&f'

Colors:
  0: '&7'
  10: '&f'

默认升级经验

Default-exps-to-level-up: 5000  

自定义升级经验 (原写法)

表示升到1,2,3,4,5级需要100经验,升到6,7,8,9,10级要1000经验,10级以后要默认经验

Custom-exps-to-level-up:
  1: 100
  2: 100
  3: 100
  4: 100
  5: 100
  6: 1000
  7: 1000
  8: 1000
  9: 1000
  10: 1000

在ShadowLevels v1.0中, 若无指定升级所需的经验, 则为默认升级经验!

例: 未指定到达第3级的经验, 则为默认经验

Custom-exps-to-level-up:
  1: 100
  2: 100
  4: 100
  5: 100

新写法(区间写法,仅限ShadowLevels v1.1及以后!)

代替上述原版写法

Custom-exps-to-level-up:
  5: 100 #5级以前每升一级要100经验
  6: 1000 #从5级升到6级,需要1000经验
  11: 5000 #6级到11级(包括6级,不包括11级)每升一级要5000经验,11级及以后每升一级要5000经验

自定义奖励

如何创建一个奖励

在控制台输入/sl CreateReward <奖励名> <所属等级系统名>

也可以使用/sl cr <奖励名> <所属等级系统名>

奖励将会自动载入

全局物品设置

奖励菜单默认的物品设置,在Items.yml文件中可更改

若奖励菜单或奖励物品没有自定义奖励物品设置,则使用该配置中的物品(详见下文)

对照:

Previous-Page: 上一页

Next-Page: 下一页

Reward-Unlocked: 奖励(已解锁)

Reward-Locked:奖励(未解锁)

Reward-Received:奖励(已领取)

Reward-NoPermissions:奖励(无权领取)

%rewards%占位符: 每个奖励所包含的内容,需要在每个奖励下单独设置(详见下文)

编辑你的奖励菜单

奖励菜单所属的等级系统(请勿随意更改)

Level-System: Global

该奖励菜单的标题(默认为Rewards, 请自行修改)

Title: Rewards

该奖励菜单的大小(可自行修改, 必须是9的倍数,且不超过54)

Size: 54

自行为菜单添加物品(仅装饰)

Custom-Items中默认生成Custom-Border,作为默认奖励菜单的边框

Custom-Items:
  Custom-Border:
    Name: '&7Border'
    Material: GRAY_STAINED_GLASS_PANE

当然,在Custom-Items中我们也可以重写Previous-Page,Next-Page等Items.yml所配置好的物品

这样奖励菜单调用的将会是Custom-Items中的物品,而不是Items.yml中的物品 (仅在如果该奖励无Custom-Items时, 详见下文)

可自行添加一个物品,如下:

Custom-Items:
  Custom-Item1:
    Name: '&9自定义物品1'
    Material: DIAMOND
    Lore:
    - '&b这是一颗钻石'
    #Events: #自定义事件 (仅限v1.2以上)

然后到Item-Slots中, 填写位置

重载一下,打开菜单,就能看到物品了

自定义奖励

一个奖励的基本规范:

"奖励名":
   Level: 所需的等级
   Page: 页数
   Slot: 位置
   Rewards: #%reward%所显示的东西
   - '&6Coins x100'
   #Permissions: #启用此项使用权限
   #- '权限'
   Events: #领取奖励后的事件
   - '@EventProperty world'
   - '[CONSOLE_COMMAND] bal give %player% 100'

当然,我们也可以自定义当前奖励的物品

这里默认奖励菜单的第三个奖励就是个很好的例子

   '3':
      Level: 3
      Page: 2
      Slot: 10
      Rewards:
      - '&6Coins x100'
      Events:
      - '@EventProperty world'
      - '[CONSOLE_COMMAND] bal give %player% 100'
      Custom-Items:
        Reward-Unlocked:
          Name: '&eReward 3★ &f| &aUnlocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&aClick to claim!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          ItemFlags: HIDE_ENCHANTS
          Enchantments: 'PROTECTION_ENVIRONMENTAL : 1'
          Events:
          - '[msg] &aReceived successfully'
        Reward-Locked:
          Name: '&eReward 3★ &f| &cLocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou need more levels!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cThis reward is locked!'
        Reward-Received:
          Name: '&eReward 3★ &f| &cReceived'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou''ve already received!'
          Material: MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cYou''ve already received this reward!'
        Reward-NoPermissions:
          Name: '&eReward 3★ &f| &cLocked'
          Lore:
          - ''
          - '&6Rewards:'
          - '%rewards%'
          - ''
          - '&cYou don''t have permissions!'
          Material: CHEST_MINECART
          Amount: 1
          Data: 0
          Events:
          - '[msg] &cYou don''t have permissions to receive this reward!'

我们可以看到, 该奖励所显示的物品, 全在该奖励下Custom-Items中被重写了!

如果一个奖励菜单,Custom-Items中重写了Items中的物品, 又有奖励的Custom-Items重写了Items中的物品, 则该奖励默认使用奖励设置中Custom-Items里的物品

至此,自定义奖励教程结束

权限

管理员

  • ShadowLevels.Commands.SetMultiple - 使用sl mulitiple指令设置玩家经验倍率
  • ShadowLevels.Commands.Admin - 使用sl admin指令
  • ShadowLevels.Commands.Reload - 使用sl reload重载
  • ShadowLevels.Commands.Reset - 使用sl reset重置玩家信息
  • ShadowLevels.Commands.AddExps - 使用sl addexps给予玩家经验
  • ShadowLevels.Commands.RemoveExps - 使用sl removeexps清除玩家经验
  • ShadowLevels.Commands.SetExps - 使用sl setexps设置玩家经验
  • ShadowLevels.Commands.AddLevels - 使用sl addlevels给予玩家等级
  • ShadowLevels.Commands.RemoveLevels - 使用sl removelevels清除玩家等级
  • ShadowLevels.Commands.SetLevels - 使用sl setlevels设置玩家等级
  • ShadowLevels.Commands.OpenReward - 使用sl openreward给别人打开奖励菜单