Minecraft教程-如何合理利用命令方块

转载:http://www.mcbbs.net/forum.php?mod=viewthread&tid=79052&extra=page%3D1%26filter%3Dtypeid%26typeid%3D126%26typeid%3D126

Command_Block

1.在看之前你必须知道的

1.<>,这种括弧里的内容不能缺省,<>不用输入
2.[],这种括弧里的内容可以缺省,[]不用输入
3.玩家名可以是一个玩家的名字,也可以是@a,@p,@r等等可以指代某玩家的符号
4.物品可以是物品英文名、也可以是物品ID
5.文字间的”/”是“或者”的意思
6.在输入坐标<x> <y> <z>时,也可以代替当前坐标的数据输入:~作为代替例: 输入 /tp @p ~+1 ~+2 64 后你将会在x轴上前进1,y轴上前进2,z坐标变为64
7. 在指定玩家名时,可以添加额外的附加参数来限定锁定的玩家:

附加参数
在定义目标(@a)之后,你也可以决定是否使用附加参数。  使用方法为:  @<selector>[<argument>=<value>,<argument>=<value>]
参数 功能
x 搜索中心的X坐标。
y 搜索中心的Y坐标。
z 搜索中心的Z坐标。
r 最大搜索半径
rm 最小搜索半径
m 玩家的游戏模式。0=生存,1=创造,2=冒险
c 玩家数量。如果数值为负,将优先选定列表的末尾。
l 目标玩家可拥有的最大等级
lm 目标玩家可拥有的最小等级
score_name 在记分板目标”name”中,玩家可拥有的最大分数
score_name_min 在记分板目标”name”中,玩家可拥有的最小分数
team 测试此玩家是否存在于所指定的队伍内,在队伍名前添加”!”将只测试不在此队里的玩家。提供空的队伍名将测试所有没有队伍的玩家。注:此team为scoreboard提供
name 指定只有这个名字的玩家。在name前添加”!”将只测试没有此名字的玩家。

例:@p[1,30,26,10,rm=2,m=1,c=3,l=25,lm=3,score_Kills_min=1,score_Deaths=2,team=Red]可以被用来精确定义符合下列条件的3个玩家(c=3)(c>0优先从列表上面选,c<0优先从列表下面选)1.在X=1,Y=30,Z=26周围2~10格(1,30,26,10,rm=2)
2.创造模式
3.3~25级
4.最小score_Kills 数为1,最大score_Deaths为2
5.红队(team=red)

2.单机指令

这里的单机指令都是在纯净版无任何插件mod的情况下的指令,可能会在安装了某插件mod后指令的效果被替换,使用时请注意

主指令 辅指令 参数1 参数2 参数3 参数4 备注
<clear> <玩家名> [物品] [附加数据值] 清除玩家背包和手里以及装备栏有物品(缺省后面的为全清除)
<difficulty> <数字(0-3)> 0-3依次是和平、简单、普通、困难
<effect> <玩家名> <状态ID> [放大] 给予玩家某状态,ID在下面给出了,后面的放大具体效果不明
<enchant> <玩家名> <附魔代号(注1)> [等级] 可以使玩家手中的装备被附魔
<gamemode> <数字(0-2)> <玩家名> 从0-2依次是生存、创造、冒险
<gamerule> <commandBlockOutput> <True OR False> 启用/禁用命令执行时在控制台中的文本提示
<doFireTick> <True OR False> 启用/禁用火的蔓延
<doMobLoot> <True OR False> 启用/禁用生物掉落物
<doMobSpawning> <True OR False> 启用/禁用生物生成(刷怪蛋和刷怪箱不受影响)
<doTileDrops> <True OR False> 启用/禁用方块被破坏时掉落物品(包括TNT破坏的)
<keepInventory> <True OR False> 启用/禁用死亡后对物品栏的保存
<mobGriefing> <True OR False> 启用/禁用爬行者与末影人对方块的破坏
<naturalRegeneration> <True OR False> 启用/禁用自然生命恢复
<doDaylightCycle> <True OR False> 启用/禁用日夜循环
<give> <玩家名> <物品> <数量> [数据值](对物品修饰的值) 不用解释了吧。。。
<me> <文本信息> 命令台会跟你卖萌
<playsound> <文件名> <玩家名> <坐标(x,y,z)> <音量> 文件名是从sound文件夹里的某个文件出发,一直到最后的ogg文件,所有的文件名之间用”.”连接。后面还有2个参数:[pitch][minimunVolume]
<say> <文本信息> 命令台会广播某信息
<scoreboard > <对象|玩家> 功能强大,因此信息量也略大,如有需要请查看下面wiki的链接
<spawnpoint> <玩家名> <x> <y> <z> 设置某玩家的出生点,因为是单机,所以一般是你自己
<spreadplayers> <x><z> <分布距离><最大半径> <是否采用队伍> <玩家名> 把玩家分布到一个起始点.能够定义分散范围与最小间距
<tell> <玩家名> <文本信息> 命令台会跟你说一段信息
<time> <set/add> <数字> 设置某特定时间或增加一段时间
<toggledownfall> 下雨
<testfor> <玩家名> 使用时请注意在命令方块旁边放个比较器,如果玩家存在就会输出信号,一般配合附加参数使用
<tp> <玩家名> <x> <y> <z> 传送某玩家到某地点
<玩家名> <玩家名>
<weather> <clear/rain/thunder> [持续时间(秒)] 设置天气为晴、雨或雷雨天
<xp> <数量> <玩家名> 给某玩家若干经验
请严格按照此表排列的顺序自左向右读表,中间表“-”的请无视读下列

注1:附魔ID参考链接:这里
注2:状态ID数据:

ID号 效果
1 速度
2 缓慢
3 急迫
4 挖掘疲劳
5 力量
6 瞬间治疗
7 瞬间伤害
8 跳跃提升
9 反胃
10 生命回复
11 抗性提升
12 放火
13 水下呼吸
14 隐身
15 失明
16 夜视
17 饥饿
18 虚弱
19 中毒
20 凋零
21 生命提升
22 吸收

注3:记分版的wiki贴出,供大家方便查询:这里

3.多人游戏

下各表对应指令是基于:
水桶服 craftbukkit-1.4.5-R0.2及以上
iconomy 6
essential : Essentials-2.9.6
水桶服几乎没有任何命令方块能用的指令(只有save-on off之类),用途不大,所以未测试,忽略它吧

(1)iconomy下的命令方块指令:

短小而精悍,虽然少但是应有尽有,凑活用还是完全没问题的

主指令 辅指令 参数1 参数2 备注
<money> <set> <玩家名> <数量> 设置某玩家的经济到某值
<give> <玩家名> <数量> 某玩家得到某值的钱
<take> <玩家名> <数量> 某玩家损失某值的钱
<purge> 将不活跃的账户归还到初始值 

(2)Essentials下的命令方块:

这里才是本文的精髓啊!看啊,东方熊熊升起的红日~哀嚎吧~众玩家~啊啦啦啦~

主指令

参数1

参数2

参数3

参数4

备注

<exp>

<show|set

|give>

<玩家名>

[数量/L<level>]

设置或增加某玩家的经验、等级

<gamemode>

<c|s|a|t|creative|survival|

adventure|toggle>

<玩家名>

c|s|a|t分别代表:creative|survival|

adventure|toggle,

注意此指令会覆盖单机gamemode指令,原来的0,1,2会失效

<give>

<玩家名>

<item|item:损伤值>  [数量[附魔:等级…]]

注意它会把原游戏中的give指令  ,不过这个指令更加详细全面

<god>

<玩家名>

[on|off]

设置某玩家为无敌

<heal>

<玩家名>

治愈某玩家

<kit>

<kit名>

<玩家名>

给予某玩家一组事先设定好的物品(Essentials/config.yml  设定)

<time>

[day|night|dawn|17:30|4pm|4000ticks]

[世界名|all]

设置时间,可以控制多世界的时间,注意它覆盖了原游戏的指令

<msg>

<玩家名>

[信息(任意文本)]

让命令方块给某玩家发信息

<broadcast>

[信息(任意文本)]

广播某信息

<burn>

<玩家名>

<时间>

燃烧某玩家若干时间

<clearinventory>

<玩家名>

来了来了,essentials版clear,清除某玩家任何物品、装备

<lightning>

<玩家名>

[损伤]

雷劈某玩家,造成若干伤害

<nuke>

<玩家名>

核弹,没逃掉直接秒杀,不会损伤建筑物,放心使用~

<sudo>

<玩家名>

<某指令>

强制某玩家使用某指令:比如让某玩家杀掉最近的玩家;或者让他自杀

<thunder>

<true or false>

[时间]

设置雷雨天,时间若干秒

<weather>

<storm|sun>

<时间>

设置雨天或晴天,时间若干秒

<tp/tpa>

<玩家名1>

<玩家名2>

传送到某玩家身边(需设置2个玩家名参数),注意他覆盖了原游戏的指令

tpa无法用命令方块调用

<tpall/tpaall>

<玩家名>

所有在线玩家传送到某玩家身边

<tphere>

tphere无法用命令方块调用

<tppos>

<玩家名>

<x>

<y>

<z>

某玩家传送到某坐标

<warp>

<warp名>

<玩家名>

需要事先设置一个warp(通过setwarp),之后可以简单地传送

4.如何看表

虽然写得已经很清楚了,但估计还是有人看不懂,老朽读一例给众基看看:

主指令 辅指令 参数1 参数2 备注
<money> <set> <玩家名> <数量> 设置某玩家的经济到某值
<give> <玩家名> <数量> 某玩家得到某值的钱
<take> <玩家名> <数量> 某玩家损失某值的钱
<purge> 将不活跃的账户归还到初始值

比如你想使用这个表中的可以设置某玩家的经济到某值的命令,看到<money><set><玩家名><数量>,看本帖第一条,括号<>不用打出,<>内内容必须写上,因此你可以写上money set @p 100 来设置离此命令方块最近的玩家的经济为100。
如果在从左往右读的时候出现了”-“,那么你得无视这个”-“,直接空一格写下一个不是”-“的内容,而不是加2个或以上的空格
如果你依然无法调用指令,你最好检查下这个指令是否被其他指令覆盖了

发表评论

邮箱地址不会被公开。 必填项已用*标注