马上登录/注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
引言
Essentials插件作为一个服务器必备的基础插件,现在基本所有服务器都在使用。其功能十分强大而且覆盖面十分广。但是大多数服主对这款插件的了解大多是比较粗浅的。这篇教程为大家总结了许多非常实用的,但是大多数人并不了解的Essentials功能。
在此之前已经有一个比较基础的Essentials教程了。 虽然作者已经弃坑不再更新,不过相关的Essential基本说明还是通用的,所以推荐大家先去看看。同时上述教程帖子中提到的部分本帖也将不再赘述,提到相关问题将会简略带过。由于config文件已经有全部汉化版而且已经有全部中文注释,所以在本篇教程中也不会对配置文件再进行解释。
注:
本教程可以说是对于Essentials wiki的翻译,其中夹杂了我的个人理解,如果我的教程有任何错误欢迎指出。 同时附上Essentials wiki地址
1.备份相关设置 在保存服务器地图方面,我们一般会使用AutoSaveWorld这个插件,但是其实Essentials本身就有地图备份相关的功能,此功能已经能满足大部分服主的要求,而不需要去安装新的插件。 为了使用Essentials的备份功能我们首先得在config文件中开启相关功能 <font size="3"><font color="#a0522d">backup:
# 时间间隔,以分钟为单位.
interval: 30
# 除非你在这加入一个有效的备份命令或脚本,否则这个功能是无用的.
# 使用命令 'save-all' 简单的强制保存世界,而不使用备份.
# 命令: 'rdiff-backup World1 backups/World1'</font></font>
这里我是用的是汉化过的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文件夹,压缩文件的文件名为当前服务器日期。
2.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会显示所有玩家有权限使用的指令。你同样也可以通过给予玩家 此权限来时玩家可以在help菜单中查看该插件所有指令。
2. non-ess-in-help: true
hide-permissionless-help: false
在此模式下所有的指令都将在help中显示,无论玩家是否有权限执行这些指令。
3. 在此模式下玩家只能看到一些基础的并且玩家有权限使用的指令。
高级定制 如果这样的设置你还不满足,你想更进一步的定制/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}
3.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中对每个工具包定义他的使用价格如 那么使用tools这个工具包将花费玩家100$
3.由以上两个示例我们可以看到kit工具包指令支持几乎mc中所有的道具。不过你也许不知道kit工具包中的道具也是支持变量的如 - 278 1 efficiency:1 durability:1 fortune:1 name:&4Giga_Drill_Breaker lore:{PLAYER}的超级钻石镐
其余变量可参考 help相关指令设置 中的变量
4.kit工具包同样也支持在工具包中包含金钱
设置格式如下 注意 $符号 不要更改。 4.关于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>
复制代码
5.kit工具包的权限设定也非常的方便你可以给予玩家以下权限,来单独限制玩家可使用的工具包 essentials.kits.<kitname>
领取工具包需要一个个输入指令,这样子未免有些太麻烦了,不过不要紧Essentials提供了完整的木牌系统来简化你的操作。
为了启用木牌领取工具包你首先得在config文件中找到 并将 - kit 前面的#去除,然后重启插件。
<kitName>代表了工具包名称,如tools
[group]代表了可使用这个牌子的用户组,如果不设置那么根据玩家是否拥有essentials.kits.<kitname> 权限来判断玩家是否可以使用牌子获取工具包.或者你可以在这一项输入 Everyone 代表所有玩家都可以使用。
[cost]代表了使用的花费如果不设置默认为免费
以上为示例(花费前面必须加$)
4.建筑控制相关设置 权限系统基本是每个服主的必修课,Essentials的建筑控制正是基于权限系统对玩家一切使用方块的行为进行限制,从而可以使服主完全限制玩家的行为,包括放置,破坏,扔掉,拾取,使用指定方块,并且可以限制玩家与指定方块交互,如限制玩家使用按钮,开关等。 首先是最基本的建筑权限 给予玩家此权限代表了玩家可以使用并放置所有方块。
如果当一个玩家没有 Essentials.build权限或者 build: false那么Essentials接着会检查如下权限 essentials.build.place.<id>
essentials.build.place.<id>:<data>
essentials.build.break.<id>
essentials.build.break.<id>:<data>
essentials.build.interact.<id>
essentials.build.interact.<id>:<data>
essentials.build.craft.<id>
essentials.build.craft.<id>:<data>
essentials.build.pickup.<id>
essentials.build.pickup.<id>:<data>
essentials.build.drop.<id>
essentials.build.drop.<id>:<data>
以上都是最基础的英文单词,相信大家都看的懂我就不一个个翻译了。
唯一需要解释的是 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:* 来给予玩家所有羊毛方块的放置权限 在Essentials的list列表设置中服主可以自定义以下内容 合并:你可以自定义一个展示用户组,将几个用户组的玩家全部显示在一个展示用户组中。
隐藏:你可以完全隐藏你不想显示的用户组。
限制:你可以限制每个用户组在list列表中的数量上限,超过上限的部分将会被隐藏。
这个配置部分允许您覆盖/编辑/list命令,从而显示一个更加整齐,简洁的list列表。
在默认情况下,你可以定义所有用户组的显示顺序,所有未定义的用户组将会按照首字母排序。
在config文件中你可以通过搜索 Staff: owner admin moderator
这样设定的话,所有owner admin moderator用户组的玩家在list指令中会全部显示在staff用户组中
2.隐藏这样设置的话 default 将会被隐藏,所有此用户组的玩家将不会在list列表中显示
3.限制 这样设置的话所有builder用户组的玩家只会显示20个,超过的部分会被隐藏。 所有未定义的用户组都将会正常显示
下面给出一个例子包括上述所有设置
list:
Admin: owner admin
stealth: hidden
builder: 20
default: 0
通过Essentials的chat聊天相关设置你可以自定义玩家在聊天过程中名字的前缀等。 注意:要使用这些功能你必须安装Essentialschat插件。 _____________________________________________ 6.1显示名(display names)
在Minecraft中,你的displayname就是你在聊天过程中显示的名字,或者是在tab列表,插件中应用到的名字。
显示名由groupmanager插件决定可以在对应世界文件夹group.yml中修改。
bukkit最多允许显示名有16个字符,所以建议将 显示名的前缀+名字+后缀压缩在16个字符以内。
6.1.1设置
在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中的设定了,因为有全部的中文注释了。我在这里就不再赘述了
6.2聊天格式
这里的设定将会改变玩家在聊天时显示的样式。
下面是一个例子{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}'
7.木牌相关设置在前面的kit工具包中我们已经提到了Essentials木牌相关设置,下面我们来详细的介绍一下Essentials木牌的功能。 如果使用得当你完全可以使用Essentials木牌功能建立商店而无需额外的商店插件。 首先你在使用这些功能之前得到config文件中开启对应木牌,默认状态下他们全部是关闭的。 打开方式 enabledSigns:
#- color
#- balance
#- buy
#- sell
#- trade
#- free
#- disposal
#- warp
# - kit
#- mail
#- enchant
#- gamemode
#- heal
#- info
#- spawnmob
#- repair
#- time
#- weather
默认状态下所有木牌都处于注释状态,去除#就可以开启对应木牌功能 Essentials木牌全部都遵循一定的规则,如果不按照规则填写则会出现错误,下面来列举一下Essentials的木牌格式 有 [cost] 标签的木牌可以有以下几种设置方式:
你可以设置消费金钱: '$5'.
你可以设置一个次数限制: '7 Times'.
你可以设置消费物品: '2 bonemeal' or '2 351,15'.
你可以设置消费经验: '23 exp'.
了解了格式下面我们来看木牌首先说明一点,在下列所有说明中 <> 标出的为必填项目 [] 标出的是选填项目 效果类似于/mail指令,就算玩家没有使用/mail指令的权限,他们仍可以使用这个木牌查看邮件。 免费获取第二行中设置的物品(物品名字或id),可无限拿。 给物品附魔 <item>可填"*"或者"any"代表不限制物品
———————————————————————————————— Essentials经济系统相关木牌设置 Essentials提供了一个包括出售物品,收购物品,以物换物的木牌交易系统。 凭借此系统可以完全替代商店插件。
1.交易木牌(此木牌非管理员使用,而是用于普通玩家之间的交易)
此木牌可以让你完成出售物品,收购物品,以物换物等功能
第二行是你需要的东西
第三行是你出售的东西
下面举个例子
这个木牌的意思是
出售泥土每10个5¥总计有100个泥土。
这个木牌的意思是
收购泥土每10个5¥总计收购100¥
第三行 : 后面的数字代表了库存。
当商店拥有者拿着要出售的物品右键牌子可以补充库存
当商店拥有者空手右键牌子可以收取商店中收到的钱/物品。
任意玩家右键商店则代表购买/出售物品。
(物品名称可以用物品ID代替)
注意一下商店均只能op使用因为下列商店均为无限商店。
2.购买牌子
玩家可以右键牌子来购买物品
<cost>设置遵循本帖开头说明。
3.出售牌子
向商店出售物品。<cost>设置遵循本帖开头说明。
4.金钱查询牌子
右键牌子可以查看自己现有金钱
|