- 欢迎来到Minecraft插件百科!
- 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
- 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
Essentials
本页面部分内容取自john180原创教程,已获得作者许可。
Wiki
教程
备份相关设置
在保存服务器地图方面,我们一般会使用AutoSaveWorld这个插件,但是其实Essentials本身就有地图备份相关的功能,此功能已经能满足大部分服主的要求,而不需要去安装新的插件。
为了使用Essentials的备份功能我们首先得在config文件中开启相关功能 代码: backup:
# 时间间隔,以分钟为单位. interval: 30 # 除非你在这加入一个有效的备份命令或脚本,否则这个功能是无用的. # 使用命令 'save-all' 简单的强制保存世界,而不使用备份. # 命令: 'rdiff-backup World1 backups/World1' 这里我是用的是汉化过的config.yml中默认状态的配置
为了能使用Essentials的地图备份功能你需要新建一个bat文件,不过如果你不想这么麻烦,而是只要简单地保存地图,你可以这么设置。 代码: backup:
interval: 60 command: 'save-all' 这样每过一小时服务器就会自动save all 如果你想更进一步的对地图进行备份,你首先得在服务端根目录 (注意不是Essentials目录或者plugin目录) 新建一个bat文件。 然后粘贴如以下内容
代码: @echo off "C:\Program Files\7-Zip\7z.exe" a "backups/%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%".7z -r world world_nether pause
注意:我在测试中使用的是7zip压缩工具,前面为文件路径请根据各自情况修改(如果使用其他压缩工具不保证能否压缩成功) -r 后面的内容为要备份的世界,如果你要添加更多的世界,输入世界的名字 当中以空格间隔。 启动后的效果就是在服务器根目录新建backup文件夹,压缩文件的文件名为当前服务器日期。
例:
[图] 年-月-日-小时-分钟-秒
help指令相关设置
/help对于玩家来说是个比较有用的指令,当你忘记某个指令时可以输入这个来查询,但是现在help指令渐渐成为了一个比较鸡肋的指令,因为过多的插件导致help列出的指令过多,因而当你要想查找某个指令时你得花费大量的时间一页一页的找。如今Essentials插件的help设置能让你的help列表彻底脱胎换骨。 Essentials插件提供了3种设置方式以提供不同的/help显示效果。Essentials会尽可能的遍历所有服务器插件然后获取其中所有的指令,但是如果插件未按标准编写,即在plugin.yml中没有注册过的指令是不会出现在help列表中的。
1. 代码: non-ess-in-help: true hide-permissionless-help: true
这种模式下help会显示所有玩家有权限使用的指令。你同样也可以通过给予玩家
代码: essentials.help.<插件名>
此权限使得玩家可以在help菜单中查看该插件所有指令。
2. 代码: non-ess-in-help: true hide-permissionless-help: false
在此模式下所有的指令都将在help中显示,无论玩家是否有权限执行这些指令。
3. 代码: non-ess-in-help: false
在此模式下玩家只能看到一些基础的并且玩家有权限使用的指令。
高级定制
如果这样的设置你还不满足,你想更进一步的定制/help指令,Essentials提供了一个更加强大的功能。 你可以通过在Essentials插件目录中添加一个help.txt来自定义/help指令显示的内容。help.txt中的内容将会完全取代默认的help指令列表。
例子 代码:
- 欢迎
欢迎你{PLAYER} 来自: {ADDRESS} 服务器IP:{IP} 你现在的存款:{BALANCE} 欢迎 代表章节名称(每个章节名称前面必须加#)玩家输入/help 欢迎 则会显示
[图]
(help.txt必须以UTF-8无BOM编码保存) 你可以定义多个章节来做到不同的章节显示不同的插件指令 而且完美支持所有颜色代码 这样玩家就不用面对那杂乱无章的指令列表了 在编辑help.txt时可以添加如下变量 代码: 玩家展示名称: {PLAYER} 用户名: {USERNAME} 服务器IP: {IP} 玩家IP: {ADDRESS} 金钱: {BALANCE} 未读email: {MAILS} 当前世界名: {WORLD} 世界列表: {WORLDS} 在线玩家数: {ONLINE} 特殊玩家: {UNIQUE} 玩家列表: {PLAYERLIST} 服务器时间: {TIME} 服务器日期: {DATE} 游戏中PM/AM: {WORLDTIME12} 游戏中时间: {WORLDTIME24} 游戏中日期: {WORLDDATE} 插件列表: {PLUGINS} bukkit版本: {VERSION}
kits工具包相关设置
kit工具包是Essentials的一个重要功能,你可以用它来发放新手礼包,发放奖励甚至用它来做个系统商店都是可以的。
熟练的使用kit相关功能可以使你避免在服务器中再安装不必要的插件。
首先先是kit每个工具包的格式
代码: kits:
<kit name>: delay: <delay between usage> items: - <item number> <amount> <meta> - <item number> <amount> <meta> 另附上中文config文件内容
代码: kits:
tools: delay: 10 items: - 272 1 - 273 1 - 274 1 - 275 1 dtools: delay: 600 items: - 278 1 efficiency:1 durability:1 fortune:1 name:&4Giga_Drill_Breaker lore:这钻头是突破天际的钻头 - 277 1 digspeed:3 name:矮人 lore:挖掘|挖掘|挖洞 - 298 1 color:255,255,255 name:白色的帽子 lore:美好的一天,美好的一天 - 279:780 1 notch: delay: 6000 items: - 397:3 1 player:Notch color: delay: 6000 items: - 387 1 title:&4书_&9与_&6颜色 author:Essentials lore:游戏内的颜色代码 book:颜色 firework: delay: 6000 items: - 401 1 name:愤怒的苦力帕 color:red fade:green type:creeper power:1 - 401 1 name:星空 color:yellow,orange fade:blue type:star effect:trail,twinkle power:1 - 401 2 name:太阳风 color:yellow,orange fade:red shape:large effect:twinkle color:yellow,orange fade:red shape:ball effect:trail color:red,purple fade:pink shape:star effect:trail power:1 1. delay代表的是领取此工具包的延迟 如果你设置为3600那么这个工具包只能每小时领一次如果你设置为 -1 那么这个工具包只能领取一次。 2.你可以可以在config中对每个工具包定义他的使用价格如
代码: kit-tools: 100 那么使用tools这个工具包将花费玩家100$
3.由以上两个示例我们可以看到kit工具包指令支持几乎mc中所有的道具。不过你也许不知道kit工具包中的道具也是支持变量的如
代码:
- 278 1 efficiency:1 durability:1 fortune:1 name:&4Giga_Drill_Breaker lore:{PLAYER}的超级钻石镐
效果就是
[图]
其余变量可参考 help相关指令设置 中的变量
4.kit工具包同样也支持在工具包中包含金钱
设置格式如下 代码: - $500 注意 $符号 不要更改。 另附 essentials自带的nbt代码
5.关于kit工具包中书本的相关设置
你可以在Essentials插件根目录新建一个book.txt 内容可按如下示例 代码:
- Colors
Minecraft colors: &0 &&0 &1 &&1 &2 &&2 &3 &&3 &4 &&4 &5 &&5 &6 &&6 &7 &&7 &8 &&8 &9 &&9 &a &&a &b &&b &c &&c &d &&d &e &&e &f &&f &0 &&k &kMagic&r &&l &lBold &&m &mStrike&r &&n &nUline &&o &oItalic&r &&r &rReset
- Colors 代表了书本的章节名字
我们可以看到在kit包中要调用一本书的格式如下 代码: - 387 1 title:&4书_&9与_&6颜色 author:Essentials lore:游戏内的颜色代码 book:颜色
下面给出每个项的介绍
代码: Title 书本的标题,支持颜色代码,与book.txt中的章节名无关 格式 title:<title> Author 书本作者,支持颜色代码 格式 author:<author> Lore 书本的描述。 格式 lore:<description> Book
这里填写的书本的章节名,对应book.txt中#后面的章节名字。
格式 book:<section name>
6.kit工具包的权限设定也非常的方便,你可以给予玩家以下权限,来单独限制玩家可使用的工具包
代码: essentials.kits.<kitname>
Essentials的木牌控制相关
领取工具包需要一个个输入指令,这样子未免有些太麻烦了,不过不要紧Essentials提供了完整的木牌系统来简化你的操作。 为了启用木牌领取工具包你首先得在config文件中找到
代码: enabledSigns: 并将 - kit 前面的#去除,然后重启插件。 牌子输入格式如下
[Kit] <KitName> [Group] [Cost] <kitName>代表了工具包名称,如tools [group]代表了可使用这个牌子的用户组,如果不设置那么根据玩家是否拥有 essentials.kits.<kitname> 权限来判断玩家是否可以使用牌子获取工具包.或者你可以在这一项输入 Everyone 代表所有玩家都可以使用。 [cost]代表了使用的花费如果不设置默认为免费 [Kit] dtools builder $10
以上为示例(花费前面必须加$)
建筑控制相关设置
权限系统基本是每个服主的必修课,Essentials的建筑控制正是基于权限系统对玩家一切使用方块的行为进行限制,从而可以使服主完全限制玩家的行为,包括放置,破坏,扔掉,拾取,使用指定方块,并且可以限制玩家与指定方块交互,如限制玩家使用按钮,开关等。 首先是最基本的建筑权限
代码: essentials.build
给予玩家此权限代表了玩家可以使用并放置所有方块。 如果当一个玩家没有 Essentials.build权限或者 build: false那么Essentials接着会检查如下权限
代码: essentials.build.place.<id> essentials.build.place.<id>: essentials.build.break.<id> essentials.build.break.<id>: essentials.build.interact.<id> essentials.build.interact.<id>: essentials.build.craft.<id> essentials.build.craft.<id>: essentials.build.pickup.<id> essentials.build.pickup.<id>: essentials.build.drop.<id> essentials.build.drop.<id>:
以上都是最基础的英文单词,相信大家都看的懂我就不一个个翻译了。 唯一需要解释的是 interact 权限 这代表了玩家与方块交互 例如使用按钮等。 但是放置方块,或者破坏方块也属于交互的一种,所以如果你想让一个玩家能放置或者破坏一个方块你需要同时给予那个玩家与此方块交互和放置两个权限。 通过给予玩家以上权限你就可以做到例如单独让玩家可以破坏某个方块,或者玩家只可以按按钮不能破坏方块之类的功能。 那如果你想单独让玩家不能破坏某个方块该如何设置呢 这里首先得说明一下groupmanager的权限设置格式 大家都知道如果我输入
代码: /mangaddp builder essentials.build.place.1 就是给予builder用户组放置石头的权限 而如果我输入 代码: /mangaddp builder -essentials.build.place.1 这两个指令之间只相差了一个 - 但是效果完全相反,添加了此权限玩家将不能放置石头。 - 代表了移除玩家的此权限。 当一个玩家同时拥有 代码: essentials.build.place.1 -essentials.build.place.1 这两个权限时玩家将无法放置石头
因为在groupmanager判断权限时优先判断 -权限 这意味着就算你拥有建筑权限 你被加入了-essentials.build.place.1 那么你也是无法放置石头的。 以此为基础我们可以单独设置玩家不可以放置,使用的方块。 如果你想一次设定多个方块 你可以用 * 来代替 如羊毛方块的ID是35 一直到35:15 你可以给予玩家 Essentials.build.place.35:* 来给予玩家所有羊毛方块的放置权限
list玩家列表相关设置
在Essentials的list列表设置中服主可以自定义以下内容
引用:
合并:你可以自定义一个展示用户组,将几个用户组的玩家全部显示在一个展示用户组中。 隐藏:你可以完全隐藏你不想显示的用户组。 限制:你可以限制每个用户组在list列表中的数量上限,超过上限的部分将会被隐藏。 这个配置部分允许您覆盖/编辑/list命令,从而显示一个更加整齐,简洁的list列表。 在默认情况下,你可以定义所有用户组的显示顺序,所有未定义的用户组将会按照首字母排序。
在config文件中你可以通过搜索 代码: list: 来找到相关设定位置
1.合并
代码: Staff: owner admin moderator 这样设定的话,所有owner admin moderator用户组的玩家在list指令中会全部显示在staff用户组中
2.隐藏
代码: default: hidden 这样设置的话 default 将会被隐藏,所有此用户组的玩家将不会在list列表中显示
3.限制
代码: builder: 20 这样设置的话所有builder用户组的玩家只会显示20个,超过的部分会被隐藏。 —————————————————————————————————————————————————————————————————— 所有未定义的用户组都将会正常显示 下面给出一个例子包括上述所有设置 代码: list:
Admin: owner admin stealth: hidden builder: 20 default: 0
chat聊天格式相关设置
通过Essentials的chat聊天相关设置你可以自定义玩家在聊天过程中名字的前缀等。 注意:要使用这些功能你必须安装Essentialschat插件。 _____________________________________________
显示名(display names)
在Minecraft中,你的displayname就是你在聊天过程中显示的名字,或者是在tab列表,插件中应用到的名字。 显示名由groupmanager插件决定可以在对应世界文件夹group.yml中修改。 bukkit最多允许显示名有16个字符,所以建议将 显示名的前缀+名字+后缀压缩在16个字符以内。
设置
在Essentials的config文件中有6个与显示名有关的设定 代码:
- OP名字的颜色代码,填写0~9或a~f其中的一个数字或字母,填写'none'来冻结该功能.(译注:可到http://ess.khhq.net/mc/查看颜色代码)
ops-name-color: 'c'
- 昵称的前缀符号,这样你能知道这不是他们真正的用户名.
nickname-prefix: '昵称:'
- 设置最大昵称长度, 昵称前缀也包括在内.
max-nick-length: 15
- 如果你想用其他的插件来设置玩家名字,将其改为"false".
change-displayname: true
- 当这个选项开启时,在玩家显示的名字上添加的前缀或尾缀,会被显示在在线列表(TAB)中.
- 上面的"change-displayname"必须是true才有效.
change-playerlist: true
- 添加前缀后缀(上面的"change-displayname"必须是true才有效)
- 如果你不设置该项,且essentialschat被安装了,其将会被默认为"true".
add-prefix-suffix: true 这里我就直接复制中文config中的设定了,因为有全部的中文注释了。我在这里就不再赘述了
聊天格式
这里的设定将会改变玩家在聊天时显示的样式。 下面是一个例子
代码: {DISPLAYNAME} {MESSAGE} {GROUP} {WORLDNAME} {SHORTWORLDNAME} {TEAMPREFIX} {TEAMSUFFIX} {TEAMNAME} 代码: {MESSAGE} 聊天的内容. {GROUP} 玩家所属用户组名称. {DISPLAYNAME} 显示名包括了玩家的前缀以及后缀. {WORLDNAME} 玩家所处世界的名字. {SHORTWORLDNAME} 玩家所处世界的首字母. {TEAMPREFIX} {TEAMSUFFIX} {TEAMNAME} 计分板团队变量. 你可以按照自己的喜好自由组合以上变量,并且完全支持颜色代码 下面给几个例子 代码: format: '<{DISPLAYNAME}> {MESSAGE}' format: '&8[&7{GROUP}&8]&f {DISPLAYNAME}&7:&f {MESSAGE}' format: '{WORLDNAME} {DISPLAYNAME}&7:&f {MESSAGE}' format: '{WORLDNAME} &8[&7{GROUP}&7]&f {DISPLAYNAME}&7:&c {MESSAGE}' 下面截图中显示的是最后一种样式游戏中的实际效果
[图]