辣鸡c7w的万年大坑
简介
CraftBooks为Minecraft添加了:
- 交互式的机器,像桥梁,电梯和门
- 红石相关特性,如集成电路和可编程逻辑芯片
- Minecart 的增强功能,例如车站和加成器
★请记住,CraftBook是[开源]的。
安装
如何安装
- 下载 [CraftBook] 和 [WorldEdit](WorldEdit为必需前置)
- 在服务端根目录下找到 plugins 文件夹,如果没有则创建之
- 将 WorldEdit.jar 和 CraftBook.jar 文件放入 plugins 文件夹中
- 重启服务器
如何配置
当CraftBook插件第一次运行时,默认的配置文件会被创建到 plugins/CraftBook/ 目录下。
编辑上述文件夹中的 config.yml 文件而改变配置。
设置权限,你可以使用 craftbook.* 来代替本插件的所有权限。
使用
警告:默认没有任何的特性被启用!请到配置文件中去启用!
常用
(Variables) 变量
变量
|
CraftBook 的变量是为动态电路和一些机器而设计的。
变量是 CraftBook 的核心,并且被视为最强大的功能,因为它能够完成不可思议的事情。
使用
变量可以说是一种 “关键字→数据” 类型的存储系统,允许一个值用关键字来表示。
这能够让机器或其它系统调和起来,让某一行文本保持不变,也能够表示一直在变化的动态值。
创建变量
要想创建变量,使用本页下方“指令”中的指令。
在变量被创建和修改之前,它首先需要被定义。
定义命令是用来定义变量的。
语法
基础的储存一个变量的语法是 %命名空间|变量名% 。
如果你在使用公用的命名空间的话,你就可以直接使用 %变量名% 作为代替。
例如,如果你定义一个变量名为 MOB ,它代表的值是 Cow。
然后在 [MC1200] 中,在牌子第三行写上 %MOB% ,就会生成牛。
你能够通过命令方块,指令或指令牌来更改刷出的动物。
也有能够修改变量的IC集成电路。
命名空间
变量可以是公用的(命名空间为GLOBAL),也可以仅仅被私人拥有。
这取决于配置文件的设置,默认的命名空间可以是玩家个人的,也可以是全局的。
在聊天和指令中使用变量
变量能够在玩家聊天中工作。
如果玩家键入了一条包含他们有权限使用的变量的消息,并且配置文件中也启用了本特性,CraftBook插件就会用变量的值代替变量名。
变量在配置后也能够工作于其他插件的指令中。
您可以配置在玩家的指令输入与控制台指令输入的启用与否。
这能够允许控制台解析 CraftBook 插件的变量。
如果本功能影响了其他插件的指令的话,您可以通过在每个 % 前键入一个 \ 符号来取消变量的解析。
视频教程
指令
命令 |
附加值 |
对应权限 |
描述
|
/craftbook var define <变量名> <变量值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间>] |
在指定的命名空间定义指定名与指定值的变量
|
/craftbook var set <变量名> <变量值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
将指定命名空间中的指定变量设置为指定值
|
/craftbook var get <变量名> |
-n <命名空间> |
craftbook.variables.get[.self]/[.<命名空间> |
获取在指定命名空间中指定变量的值
|
/craftbook var delete <变量名> |
-n <命名空间> |
craftbook.variables.erase[.self]/[.<命名空间> |
删除指定命名空间中的指定变量
|
/craftbook var append <变量名> <文本> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
在变量的最后一个字符后增加文本
|
/craftbook var prepend <变量名> <文本> |
craftbook.variables.modify[.self]/[.<命名空间> |
在变量的第一个字符前添加文本
|
/craftbook var toggle <变量名> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
切换布尔值变量,如 1 ←→ 0 ,true ←→ false , yes ←→ no
|
/craftbook var add <变量名> <值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
为数值型变量增加值,这相当于 +
|
/craftbook var subtract <变量名> <值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
从数值型变量中减少值,这相当于 -
|
/craftbook var multiply <变量名> <值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
将数值型变量翻倍,这相当于 *
|
/craftbook var devide <变量名> <值> |
-n <命名空间> |
craftbook.variables.modify[.self]/[.<命名空间> |
将数值型变量缩小为几分之一,这相当于 /
|
权限
Permission Node
|
Effect
|
craftbook.variables.define
|
给玩家在任何的命名空间定义任何变量的权限
|
craftbook.variables.define.self
|
允许玩家在自己的命名空间定义任何变量的权限
|
craftbook.variables.define.命名空间
|
给玩家在指定命名空间定义任何变量的权限
|
craftbook.variables.get
|
给玩家获得变量值的命令权限
|
craftbook.variables.get.self
|
给玩家获得他们自己命名空间内变量值的权限
|
craftbook.variables.get.命名空间
|
给玩家获得指定命名空间内变量值的权限
|
craftbook.variables.erase
|
给玩家删除变量的权限
|
craftbook.variables.erase.self
|
给玩家删除自己命名空间内变量的权限
|
craftbook.variables.erase.命名空间
|
给玩家删除指定命名空间内变量的权限
|
craftbook.variables.modify
|
允许玩家编辑任何的变量
|
craftbook.variables.modify.self
|
允许玩家编辑自己的命名空间内的变量
|
craftbook.variables.modify.命名空间
|
允许玩家编辑指定命名空间内的变量
|
craftbook.variables.modify.变量
|
允许玩家编辑指定的变量
|
craftbook.variables.modify.self.变量
|
允许玩家编辑自己的命名空间内指定变量的权限
|
craftbook.variables.modify.命名空间.变量
|
允许玩家编辑指定命名空间内变量的权限
|
craftbook.variables.use
|
允许玩家使用任何的变量
|
craftbook.variables.use.self
|
允许玩家使用他们自己命名空间内变量的权限
|
craftbook.variables.use.命名空间
|
允许玩家使用指定命名空间内变量的权限
|
craftbook.variables.use.变量
|
允许玩家使用指定变量的权限
|
craftbook.variables.use.self.变量
|
允许玩家使用自己的命名空间内的变量的权限
|
craftbook.variables.use.命名空间.变量
|
允许玩家使用在指定命名空间内的变量的权限
|
craftbook.variables.chat
|
允许玩家在聊天中使用变量的权限
|
craftbook.variables.commands
|
允许玩家在命令中使用命令的权限
|
配置
配置项目和路径
|
默认值
|
效果
|
common.variables.enable
|
true
|
启用变量系统
|
common.variables.default-to-global
|
true
|
如果值为true,当变量没有提供命名空间时会使用公共空间;如果值为false,会使用玩家的名字作为命名空间
|
common.variables.enable-in-commandblocks
|
false
|
允许变量在命令方块与控制台工作
|
common.variables.enable-in-player-commands
|
false
|
允许变量在玩家输入的指令中工作
|
common.variables.enable-in-player-chat
|
false
|
允许变量在玩家的聊天中工作
|
|
(Configuration) 配置
(Permission Nodes) 权限
机器
(AI Mechanics) 怪物AI机器
怪物AI机器
|
怪物AI机器 改变怪物的表现方式。
视力AI机器
视力AI机器改变怪物看见你的方式。
如果你在潜行中经过怪物,而又没有离怪物太近,怪物可能不会看见你。
怪物可能在你在墙后疾跑时看见你。
临界之弓AI机器
临界之弓AI机器会给怪物用它们的弓给你临界一击的机会。
临界一击会使你着火!
攻击中立生物AI机器
攻击中立生物AI机器能够让敌对生物攻击像猪和羊这样的中立生物。
注意:由于Bukkit服务端的一个BUG,对于某些使用特殊AI的生物此特性不会工作。
配置
配置内容及路径
|
默认值
|
效果
|
mechanics.ai.enable
|
false
|
是否启用怪物AI机器
|
mechanics.ai.vision-enable
|
[Zombie, PigZombie]
|
启用视力AI机器的怪物列表
|
mechanics.ai.crit-bow-enable
|
[Skeleton]
|
启用临界之弓AI机器的怪物列表
|
mechanics.ai.attack-passive-enable
|
[Zombie]
|
启用攻击中立生物AI机器的怪物列表
|
|
(Better Physics) 更好的物理效果
重力梯
重力梯
|
重力梯能够让玩家在洞穴的顶部放置梯子,然后梯子会具有重力,掉落到底部,为玩家创建安全的方式下去。
当他或她降落到底部时,他或她能够破坏梯子,然后让梯子继续掉落,一次只会下落一个,当然支持简单的破坏方法。
生成缩略图出错:无法将缩略图保存到目标地点
配置
配置内容 |
默认值 |
效果
|
mechanics.better-physics.enable |
false |
是否启用本特性。(对于子特性来说,本特性必须被启用才有效)
|
mechanics.better-physics.falling-ladders |
true |
是否启用重力梯
|
|
(Better Pistons) 更好的活塞
更好的活塞(内含四种)
|
更好的活塞能够让活塞做更多的事情。
当前有四种活塞机器:
在配置文件中,您可以更改方块黑名单,方块黑名单中的方块不能与本系统交互。
破碎机
生成缩略图出错:无法将缩略图保存到目标地点
破碎机能够破碎掉活塞前方对着的方块。
你需要在活塞旁贴一个牌子,牌子的第二行写上 [Crush] 。
只要活塞被红石信号充能,活塞前方的方块就会被破坏掉了。
弹跳机
生成缩略图出错:无法将缩略图保存到目标地点
弹跳机能推动上方的方块或实体。
你需要在活塞旁贴一个牌子,牌子的第二行写上 [Bounce] 。
牌子的第三行写上弹起的速度,最大的速度限制是 10 (这是 Minecraft 的限制)。
在活塞上方的方块或实体会被弹起。
超强粘性活塞
生成缩略图出错:无法将缩略图保存到目标地点
超强粘性活塞作为粘性活塞能够粘起1格远以外的方块。
你需要在活塞旁贴一个牌子,牌子的第二行写上 [SuperSticky] 。
牌子的第三行写上你想作用的方块的数量,最大的值是10.
第三行的数值也能代表方块每次移动的距离。
要想实现本功能,请以这样的格式键入:
最大距离-每次距离
例如 10-2 是让方块以每次2方块的速度移动,最大移动距离为10方块。
超级活塞
生成缩略图出错:无法将缩略图保存到目标地点
超级活塞能够使空气也被活塞推动。
你需要在活塞旁贴一个牌子,牌子的第二行写上 [SuperPush] 。
牌子的第三行写上被推动方块的数量。最大值是10。
第三行的数值也能代表方块每次移动的距离。
要想实现本功能,请以这样的格式键入:
最大距离-每次距离
例如 10-2 是让方块以每次2方块的速度移动,最大移动距离为10方块。
权限
权限节点 |
效果
|
craftbook.mech.pistons.bounce |
允许玩家创建 “弹跳机”类活塞
|
craftbook.mech.pistons.crush |
允许玩家创建 “破碎机”类活塞
|
craftbook.mech.pistons.supersticky |
允许玩家创建 “超级粘性活塞”类活塞
|
craftbook.mech.pistons.superpush |
允许玩家创建 “超级活塞”类活塞
|
配置
配置条目 |
默认值 |
效果
|
mechanics.better-pistons.enable |
false |
是否启用 更好的活塞 机器(对于子对象来说,必须启用本配置)
|
mechanics.better-pistons.crushers |
true |
是否启用破碎机
|
mechanics.better-pistons.crushers-kill-mobs |
false |
破碎机是否击杀面前的怪物,像粉碎方块一样——也会击杀玩家
|
mechanics.better-pistons.crusher-blacklist |
[OBSIDIAN, BEDROCK] |
破碎机不能破坏的方块列表
|
mechanics.better-pistons.super-sticky |
true |
是否启用超级粘性活塞机器
|
mechanics.better-pistons.super-push |
true |
是否启用超级活塞机器
|
mechanics.better-pistons.movement-blacklist |
[OBSIDIAN, BEDROCK] |
更好的活塞不能移动的方块列表
|
mechanics.better-pistons.bounce |
true |
是否启用弹跳机
|
mechanics.better-pistons.bounce-blacklist |
[OBSIDIAN, BEDROCK] |
弹跳机不能施加弹力的方块列表
|
mechanics.better-pistons.max-distance |
12 |
更好的活塞与方块交互的最大距离
|
|
(Bridges) 桥梁
桥梁
|
桥梁是可配置的,可以选择开启或关闭的区域平台。桥梁的宽度可以设置。
作为桥梁它不是很高大上,但它有许多其他用途。
如果你想要吊桥的话请使用“门”。
如果你想要切换真正的桥梁的话,使用“区域切换”。
结构
生成缩略图出错:无法将缩略图保存到目标地点
桥梁包括三部分:
- 由一种材料制成的桥体部分。默认地,你可以使用圆石,木板,玻璃,石台阶等,但此可以被修改。
- 在桥的一端放置一个告示牌
生成缩略图出错:无法将缩略图保存到目标地点 ,在桥上桥下都可,或者,你也可以在方块的一侧放置告示牌。告示牌第二行的内容必须是[Bridge]。
- 在桥的另一端放置一个告示牌
生成缩略图出错:无法将缩略图保存到目标地点 ,在桥上桥下都可,或者,你也可以在方块的一侧放置告示牌。告示牌第二行的内容必须是[Bridge]或[Bridge End]。你只能右键第一种类型的告示牌。
如果玩家拥有权限的话,他们能够在牌子的第一行写下infinite来使桥梁不会用尽方块。(如果配置中设置为桥梁需要方块的话)。
牌子的第三行和第四行用于配置桥梁的宽度。牌子的第三行是桥梁在告示牌左面的宽度,第四行是桥梁在告示牌右面的宽度。
例如第三行填写 0 ,第四行填写 1 ,桥梁的宽度将会是2格,并且告示牌右面多出一格。如果不填写,默认值为 1。(确保默认宽度有3格)
告示牌桥上桥下都能放(侧边也可以),但必须在正中间。
警告:如果配置设置为需要方块,你在创建桥梁时必须将整个桥梁全部建筑出来,不然就不会工作。
你可以通过手持对应方块右键告示牌的方式来为桥梁补充方块。
查看教学视频来学习怎样制造桥梁。
[视频地址]
红石支持
桥梁支持红石:将红石信号放在牌子旁边即可。如果你使用红石的话,你可以将告示牌放在桥下而使桥梁看上去好看些。
- 激活的红石信号会激活桥梁
- 未激活的红石信号会移除桥梁
使用
除了明显的作为可伸缩的桥梁之外,它还能这样用:
- 用它来阻挡水和岩浆
- 用来坑毫无戒心的熊孩子(见下视频)
- 隐藏房屋的一部分
- 更改地下室的光线
- 有心就能有其他用途
[视频地址]
权限
权限节点 |
作用
|
craftbook.mech.bridge |
允许玩家创造桥梁
|
craftbook.mech.bridge.use |
允许玩家使用桥梁
|
craftbook.mech.bridge.restock |
允许玩家为桥梁补充方块
|
craftbook.mech.bridge.infinite |
允许玩家创建无限方块的桥梁
|
配置
配置内容 |
默认值 |
效果
|
mechanics.bridge.enable |
false |
启用桥梁
|
mechanics.bridge.allow-redstone |
true |
控制红石信号能否使用桥梁
|
mechanics.bridge.max-length |
30 |
桥梁的最大长度
|
mechanics.bridge.max-width |
5 |
桥梁每边的最大宽度 5为11格宽 中间1格 旁边各5格
|
mechanics.bridge.blocks |
[COBBLESTONE, WOOD, GLASS, DOUBLE_STEP, WOOD_DOUBLE_STEP] |
桥梁可以使用的方块
|
|
电路
载具
参考资料