我的世界记分板:可不可以用命令方块检测某个变量的数值,达到特定数值就输出信号

游戏攻略03

我的世界记分板:可不可以用命令方块检测某个变量的数值,达到特定数值就输出信号,第1张

我的世界记分板:可不可以用命令方块检测某个变量的数值,达到特定数值就输出信号
导读:你好,minecraft中可以用testfor命令来实现你想要的效果在命令方块中输入并连上高频: testfor @a[score_计分板名称_min=特定分值]再在这个命令方块的旁边一个放一个红石比较器,如果满足计分板分值大于等于特定分值

你好,minecraft中可以用testfor命令来实现你想要的效果

在命令方块中输入并连上高频: 

testfor @a[score_计分板名称_min=特定分值]

再在这个命令方块的旁边一个放一个红石比较器,如果满足计分板分值大于等于特定分值,那么比较器就会输出红石信号。

例:

有个计分板名字叫 a ,那么输入 testfor @a[score_a_min=1] 并按照上面的方法,当计分板a的分值大于等于1时,就会输出红石信号。

摆放: (高频也可以换成2漏斗+比较器)

这时我将分数设置为1,便有红石信号输出了

一、利用MathRandom()方法来生成随机数

在Java语言中生成随 机数相对来说比较简单,因为有一个现成的方法可以使用。在Math类中,Java语言提供了一个叫做random的方法。通过这个方法可以让系统产生随机 数。不过默认情况下,其产生的随机数范围比较小,为大于等于0到小于1的double型随机数。虽然其随机数产生的范围比较小,不能够满足日常的需求。如 日常工作中可能需要产生整数的随机数。其实,只要对这个方法进行一些灵活的处理,就可以获取任意范围的随机数。

如我们可以先通过 random方法生成一个随机数,然后将结果乘以10。此时产生的随机数字即为大于等于0小于10的数字。然后再利用Int方法进行转换(它会去掉小数掉 后面的数字,即只获取整数部分,不是四舍五入)。最后即可获取一个0到9的整数型随机数字。其实现方法很简单,就是对原有的random方法按照如下的格 式进行变型:(int)(MathRandom()10)即可。其实我们还可以对这个方法进行扩展,让其产生任意范围内的随机数。至需要将这个10换 成n即可,如改为(int)(MathRandom()n)。此时应用程序就会产生一个大于等于0小与n之间的随机数。如将n设置为5,那么其就会产 生一个0到5之间的整数型的随机数。如果将这个写成一个带参数的方法,那么只要用户输入需要生成随机数的最大值,就可以让这个方法来生成制定范围的随机 数。在Java中定义自己的工具库

有时候程序员可能需要生成一个指定范围内的随机偶数或者奇数。此时是否可以通过这个方法来实现呢 答案是肯定的。如现在程序要需要生成一个1-100范围内的偶数。此时该如何实现首先,需要生成一个0到99之内的随机数(至于这里为什么是99,大家 耐心看下去就知道原因了)。要实现这个需求,很简单吧,只要通过如下语句就可以实现: i=1+(int)(MathRandom()100)。其中(int)(MathRandom()99)产生0到99的整数型随机数。然后再加 上1就是产生1到100之间的随机整数。然后将产生的随机数赋值给变量i。但是此时其产生的随机数即有偶数,又有奇数。而现在程序员需要的是一个随机的偶 数。那么我们可以在后面加上一个if判断语句。将这个随机数除以2,如果没有余数的话(或者余数为0)则表明这个随机数是偶数,直接返回即可。如果其返回 的余数不为零,那么就表明其是奇数,我们只要加上1就变为了偶数,返回即可。注意,在上面的随机数生成中,笔者采用的范围是0到99,然后再加上1让其变 为1到100的随机数。最后的结果就是生成1到100之间的随机偶数。其实,如果要范围随机奇数的话,至需要对上面的语句进行稍微的修改即可。Java: 改变你我的世界

假设现在用户想生成一个任意范围内的奇数或者偶数,能够实现吗假设现在用户想实现一个m到n之间的任意偶数(其中m

可见虽然random方法其自身产生的随机数有比较严格的范围限制。但是只要对其进行合理的转换,程序员仍然可以采用这个方法产生用户所需要的随机数据。

二、通过Random类来生成随机数。

在Java语言中,除了可以通过random 方法来产生随机数之外,还可以通过一个random类来产生随机数。程序开发人员可以通过实例化一个Random对象来创建一个随机数的生成器。如 Random i=new Random()。通过这条语句就利用了Random类创建了一个随机数的生成器。不过以这种方法创建随机数时,与采用Random方法产生随机数的机制 不同。利用现在这种方式实例化对象时,Java编译器会以系统当前的时间作为随机数生成器的种子。由于时间时时刻刻在变化的。若以这个时间作为生成器的种 子,就可以保证生成的随机数真的是随机的,其生成的随机数重复率会大大的降低。

利用这种方法其比较方便。如可以利用提供的关键字,让 程序返回一个随机的整数(采用int nextInt(10))等等。不过其返回控制要比Random方法困难一点。如现在需要系统提供一个10到50之间的随机奇数, 利用这个Random类就无法完成。也就是说,利用这个Random类来生成随机数,其只能够控制上限,而不能够控制下限。换一句话说,其可以指定最大的 随机数范围,而不能够指定最小的随机数范围。所以,在灵活性上,其比Random方法要稍微差一点。

另外利用这个方法来实现的话,必 须先创建一个对象。也就是说利用Randow类来创建对象。这跟Randow方法不同。像上面举的例子中,Randow方法本身就是一个math类中方 法,可以直接调用,省去对象创建的方法。为此笔者建议各位读者与程序开发人员,最好还是使用Random方法来创建随机数。只有在生成一些比较特殊的随机 数时采用Random类。如现在需要生成一个概率密度为高斯分布的双精度值随机数时,则通过采用Random类的方法来创建随机数相对来说比较简单一点。

三附、产生随机的字符。

上面介绍的两种方法,产生的都是随机的数值型数据。但是有时候用户可能还需要产生随机的字符。其实也可以利用random方法来产生随机字符。如可以利 用代码生成一个随机的小写字符:(char)(‘a’+Mathrandom()(‘z’-‘a’+1))。其实这跟生成任意两个数之间的随机数类 似。通过以上的代码就可以生成一个范围之内的任意随机字符。通过对这个代码进行适当的修整,还可以生成任意两个字符之间的随机字符与任意大写字符的随机字 符。其转换的方式跟上面提到的任意范围之内的随机数类似。各位读者若感兴趣的话,可以自己进行测试一下。师傅领进门,修行在自身。如果笔者在这里一股脑儿 将所有的答案告诉大家,大家的印象不会很深。大家若回去自己动手试试看,反而更容易记住。

笔者在这里给大家一个提示,只需要根据m+(int)(MathRandom()(n-m))这条语句来调整(char)(‘a’+Mathrandom()(‘z’-‘a’+1))这个代码即可。

最后笔者需要强调的一点就是在用户传入参数的时候,最好要对用户传入的参数进行合法性检查。以免用户传入的参数不符合既定的要求,如参数需要的是数值型的数据而传入的却是字符型的数据,而导致程序运行出错。

我的世界OP指令大全

原版指令:

/op [ID]给予某个玩家管理权限

/deop [ID]消除某个玩家的OP

/gm [0/1/2] 修改自己生存/创造/冒险模式

/whitelist add [ID] 给予某个玩家白名单

/whitelist remove [ID] 解除某个玩家的白名单

/ban [ID] 封禁某个玩家

/banip [ID] 封禁某个玩家所在的ip地址的所有号

/tempban [ID/IP] [time] 封禁某个ID或者IP一段时间附加:s是秒,m是分钟,h是小时,d是天,w是星期,mo是月,y是年

/mute [ID] [time] 禁言某个玩家一段时间

/unban [ID] 解封玩家ID

/unbanip [IP] 解封 IP

/setworth [物品名字/物品id] [数值] 设定一个东西的系统价格,这个物品名字或者ID都行

/worth [ID] 查看系统价格,不写物品id默认为查看手上的物品价格

/itemdb 查询你手上拿着的物品的名称和ID

/mail [read/clear/send] [ID] [语句] 读取,清除,发送,某个离线玩家的邮件

/msg [语句] 私聊

/near 查看附近的玩家

/reply [语句] 回复最后一个私聊你的玩家

/whois [nickname/ID] 查看某个玩家的用户信息,ID,akf信息,nick名

/seen [ID] 查看玩家最后一次下线前所在的坐标

/sudo [ID] [指令] 让某个玩家执行一段命令,OP不能强制OP执行命令

/tp [ID] 强制传送到某个玩家的身边

/tphere [ID] 请求让某个玩家到你这里

/tpall [ID] 大传送

/tppos [x] [y] [z] 传送到指定坐标

/spawner [怪物的英文名] 改变刷怪笼的刷新物

/money give [钱数] 给与全部人xxx钱代表全部人

/give [ID] [物品ID] 给予某人一定数量的物品

/say [语句] 让服务器发一段所有人可见的话,并且是紫色字体的

/gc 查看服务器信息

/rules [数量] 查看服务器第几页的规矩

/essentials [reload/debug] 显示插件版本或者重读

/backup 备份服务器。需要配置备份脚本

/setspawn 在你站着的这个地方设置重生点

/setwarp [名字] 标注一块地区,以后你可以用/warp [名字] 来飞到这个你标注过的地方,相当于tp到领地

/baltop 查看财富排行榜

/compass 显示你当前的方位

/depth [ID] 显示你当前的高度,z轴高度

/getpos [ID] 显示当前的坐标x,y

/help [数量] 查看第几页的帮助

/helpop [语句] 向Op留言求助

/world 切换世界为nether、normal。地狱,END等等,具体的我也不知道- -我不敢这么玩,我只试过一次,然后人飞到了地狱

/remove drops 99999 清空掉落物品

/killall mobs 杀光怪物

/vanish或者直接/v 隐身

/fireball 释放地狱轰炸机的火球,从OP的口里吐出来

/shock [玩家ID] 雷击某个玩家,如果直接指令就在准心对着的位置雷击

/nuke [ID] 在某个玩家上方放核弹,其实就是一堆被激活的TNT从天上飞下来

/antioch 在准心所指的地方放一颗炸弹

/butcher 杀死附近的全部怪物

/killall 杀死附近的全部生物,包括村民不包括玩家

/kill [ID] 杀死某个玩家

/suicide 自杀

/burn [ID] 让某个玩家起火

/ext [ID] 给某个玩家灭火

/jump 直接跳跃到准心所指地方,长途旅行很实用

/fly [ID] 给予某个玩家临时飞行,重新登陆后失效

/up [数量] 把自己升到某高度,最大256,脚下会生成一块玻璃垫着你

/weather [storm/sun] 改变天气

/rain off /on 停雨/降雨

/time set [xx:xx] 设置时间

/heal [ID] 回复某个玩家的生命

/unlimited [list/item/clear] [ID] 查看,给予,清楚,某个玩家的无限物品

/nick [称号] 给自己换昵称

/powertooltoggle 清除所有的powertoll

/forestgen 在自己身旁形成森林

/pumpkins 在自己身旁形成南瓜林

/snow 在自己的身旁成为雪后的样子

/thaw 融雪、冰

/tree [树的形状]

big 大树

ewquoia红木

Tall sequoia 高大的红木

Birch 衫树

Random 随机

/setjail [名字] 设置一个监狱

/togglejail [名字] 把玩家送进xxx监狱,永久封存

/tjail [ID] [监狱名字] [时间] 把玩家扔到指定的监狱多少时间

/unjail [ID] [监狱名字] [时间] 多久后把玩家解放出来

/deljail [ID] 使某玩家从监狱中释放出来

/invsee 查看某个玩家的背包

/clear [ID]清空某个玩家的背包

/socialspy 开启后可看见任何玩家的私聊

/resadmin 管理员圈地

/delhome 删除家

用Essentials

运用号令

/mangadd 组 来创立一个用户组

/mangaddp 组 essentials权限 来给组添加某某权限

/manglistp 组 列出某个组的权限

/mangdelp 组 essentials权限 删除某组的某权限

/manuaddv [ID] prefix 你要的称号 给某人增加称号

/mangaddv 组 prefix 值 给组添加称号

/mangaddi 组1 组2 让组1担当租2的权限,能够为权限设置剩下不少费事

/manuadd 用户 组 将用户添加到组

/manuaddp 用户 权限 给用户权限

/manudelp 用户 权限 删除用户权限

/manudel 用户 把人移出权限组

/mangdel 组 删除权限组

默认权限组名字:default

/skull [ID] 获得玩家的头

/god [ID] 上帝模式

/enchant [附魔ID] [等级] 给手上的装备或者工具附魔

等级:1~32767

附魔ID:

0~7(装备)

16~21(武器)

32~35(工具)

48~51(弓)

136(炽热)

/lightning [ID] 数值 降雷伤害

/nbtedit 开启NBT单人编辑

/effect liu_nian_jun 1 9999 30

效果ID:

1:速度

2:缓慢

3:急迫

4:挖掘疲劳

5:力量

6:瞬间治疗

7:瞬间伤害

8:跳跃提升

9:反胃

10:生命恢复

11:抗性提升

12:防火

13:水下呼吸

14:隐身

15:失明

16:夜视

17:饥饿

18:虚弱

19:中毒

20:凋零

等级:1~99 力量最高建议:60

时间:99999为无限

/gamerule [规则名称] [true/flase] 设置游戏规则开关

规则名称:

1doFireTick 火的蔓延

2doMobLoot 生物掉落物品

3doMobSpawning 生物生成

4doTileDrops 方块被破坏时掉落物品

5keepInventory 死亡不掉落

6mobGriefing 苦力怕或者小黑对方块的破坏

7naturaRegeneration 自然生命恢复

8doDaylightCycle 日夜循环

/xp [give/set] [ID] [数值] 给予/设置某个玩家的经验

/difficulty [0/1/2/3] 设置游戏难度依次是:和平简单普通困难

/spawnmob [生物名称]

/kick [ID] 将玩家请出服务器

§彩色字符号

/motdc 你要的标语

/kittycannon 向准心位置发射一只可爆炸小猫

/shout 文本 在服务器发一条公告

/break 破坏掉你正在看的方块

/bigtree 在你的视野内生产一颗大树

/ignore [ID] 忽略某玩家

/feed [ID] 恢复饱食度

/jails 列出监狱列表

/realname 查看某玩家的真实ID

/speed 改变移动速度

/thunder true/flase 开启自然雷击

/unlimited 允许某玩家无限放置某方块

/whois 在昵称后面显示真名并列入玩家信息

/workbench 随时随地打开工作台

/kit 工具包名字 获得指定工具包

/potion 编辑一个药水效果

/powertool 给手中的武器添加一个指令

/unlimited ID 允许某玩家无限放置某方

掉头插件/skull ID 插件获得某玩家的头

/a 文本 op专用喊话

领地插件:

一、设置领地:

先用一块木头斧子左键敲击一方块设置点A,右键敲击一方块设置点B

(可以输入“/res select size”查看所选区域的大小);

之后输入“/res create 123”(例)这样设置后,

就形成了[以AB连线为体对角线的长方体的][名为123的]领地(包括A、B所在边),设置领地需要金钱

二、移除领地:

输入“/res remove liu_nian_jun743”(例)移除名为123的领地,注意,移除领地无法从服务器获得金钱!

三、领地内权限设置:

输入“/res set JYT tp true/false”(例)来设置权限,其中:

①123是领地名,不填则默认为当前所处领地;

②flags是权限,有:

move(移动);build(改变地形);place(放置物品);destroy(破坏);use(使用);

container(打开箱子);pvp(玩家伤害);tp(传送到该领地);ignite(点火);

firespread(火的传播);bucket(桶的使用);flow(后面两个总括);lavaflow(岩浆流动);

waterflow(水的流动);creeper(JJ怪爆炸);tnt(tnt爆炸);monsters(怪物出生);

animals(动物出生);subzone(子空间);healing(治疗)。 piston(活塞)(活塞不适用于单人命令)

③true/false是权限状态,若输入true则为开启,false则为关闭。

单人权限设置 拿 destroy 来举例 输入 /res pset HXD climb use t

四子空间设置: !&4收泥土嘞,1JC收购泥土,你特么来砸死我啊,谁怕谁,地址JYT,新手的福利啊啊,快来砸我啊,无限收!

如同设置领地一样选择区域,不同的是之后输入“/res subzone JYT NC”(例)设置母领地为123的名为abc的子空间,

该区域的权限设置和移除则需要将领地名变为123abc,无则默认为当前所处领地(在子空间则为子空间)。

五、领地信息设置:

可以设置进出领地时的提示信息,输入“/res message 123 enter(leave) ABC”(例)设置领地123的进入(离开)时的提示信息为ABC,

123处不填,则默认为当前所处领地;

特别地,在提示信息中可以添加:

%player - 在提示信息中显示进出领地的玩家名

%owner - 在提示信息中显示领主

%residence - 在提示信息中显示该领地

/res pset JYT mamadai trusted frue 所有个人权限

入侵领地/resadmin pset JYTliu_nian_jun trusted true

/res pset xiao_ai518 liu_nian_jun admin t 管理权限前提是要有resadmin 权限

创世神:

铺满 //set xxx(放置xxx,xxx是方块ID

清空 //set 0 (0=空气,无方块

围墙 //walls xxx (xxx是方块IDweeeeshiSB

空心球体 //hsphere xxx yyy(xxx是方块ID,yyy是半径可以用指南针右键方块定位

实心球体 //sphere xxx yyy(xxx是方块ID,yyy是半径可以用指南针右键方块定位

圆圈 //hcyl xxx yyy(xxx是物品ID,yyy是半径

圆形 //cyl xxx yyy(xxx是方块ID,yyy是半径

空心圆柱 //hcyl xxx yyy zzz(xxx是方块ID,yyy是半径,zzz是高度

实心圆柱 //cyl xxx yyy zzz(xxx是方块ID,yyy是半径,zzz是高度

还原 //und

撤销/撤销还原//redo

复制 //copy (站在哪复制,等一下黏贴也会是在相同的位置出现

黏贴 //paste (注意站好位置

改变复制物的方向//rotate xxx (xxx是度数,只能打90的倍数。顺时针旋转复制物

替换 //replace xxx yyy (xxx是原来方块,yyy是替换方块

制作Mod可以用制作器,但能实现独特功能的Mod需要作者能够编写代码(Java语言 等)

目前Mod制作者可面向 Java 端 和 基岩版 制作Mod

如果你想快速做个Mod:[MCreator] 是适用于我的世界 Java 端 (俗称电脑版) 的Mod制作工具,可以基本满足新建世界、合成方式、方块、食物、武器等修改的需要

如果你决定好好地(慢慢地)做个高质量的Mod:先参考下面的资料(Mod的介绍),并且决定你的Mod要发布在哪个平台上(Java[电脑版] 或 基岩版[电脑(Win10)、手机、游戏机])然后,翻一翻以下的相关资料准备动手吧!

推荐的相关资料:

Mod的介绍:网页链接 : minecraft-zhgamepediacom/Mods

综合教程:网页链接 : githubcom/Mouse0w0/MinecraftDeveloperGuide

[Java版]

{从零(不附送Java的学习)开始的学习}

网页链接 : wwwmcbbsnet/thread-702594-1-1html (旧资料)

网页链接 : minecraft-zhgamepediacom/Mods/制作

{对于113及更高版本} 网页链接 : minecraft-zhgamepediacom/数据包

[基岩版]

{附加包} 网页链接 : minecraft-zhgamepediacom/附加包

(抛出)PS:1只有3分钟的热度是无法做出真正的Mod的! 2把英语学好了! 3本答案仅整合了相关资料,如有问题,可自行探索或到论坛询问

我的世界记分板完整教程应用讲解,可以由命令和命令方块进行控制,对象由名称、显示名称、判据以及每位玩家所对应的整数数据组成,这块涉及到的东西比较的多,对于新人来说可能不太能够运用。

这是Minecraft内部的一个系统。它可以储存变量或者创立多支队伍来区别实体和玩家。玩家仅能同时加入一支队伍,并以此使用队伍设定中的功能。你可以创建一个指定判据的记分板,来帮助你完成一些有趣的功能。记分板的分数范围可正可负,并且很大,但没有小数。自18快照以来,记分板的判据大大增加,可以统计你的各种游戏数据,包括击杀指定生物,使用指定道具,合成物品,破坏方块等等。你可以使用它来实现更多的功能,同时简化你的命令方块电路,甚至创建更有趣的多人游戏。

用处:

1简化电路

2减小延迟,或者为目标增加更加精准的延迟

3脱离红石比较器等方块,直接对指定实体执行命令

4检测更丰富的内容,例如射出箭和破坏方块,甚至是指定nbt标签的实体

5创建多个玩家队伍,设定诸如友军伤害和名字颜色等队伍设置

6用侧边栏等方法丰富玩家获取资讯的方式

7进行数学运算

指令组:

0基础指令

scoreboard

//最基础的指令,将记分板分为变量,修改数值和队伍三类。

1变量指令

scoreboardobjectiveslist

//列出所有已经存在的变量记分板,并显示它们的判据是什么。往往在研究他人地图时使用。

scoreboardobjectivesadd记分板名判据[显示名字]

//创建一个指定判据的新变量记分板。记分板名是执行其他指令时使用的名字,而显示名仅用于在侧边栏的部分设定显示名字。所以记分板名应当尽量简短但能明白,并且由于score_name=等用处,记分板名尽量不要包含下划线等符号和空格,最好是全数字和字母。判据会决定这个记分板玩家分数的自动增加方法,会单独讲。

scoreboardobjectivesremove记分板名

//移除一个已经创立的记分板

scoreboardobjectivessetdisplay位置[记分板名]

//将某个记分板的数据显示在某个位置上,或者清除指定位置的记分板显示(不填记分板名)。可选位置有list[列表],sidebar[侧边栏],sidebarteam队伍颜色[特定颜色队伍的侧边栏],belowName[名字下方]四种。

2修改数值指令

scoreboardplayerslist[玩家或实体名]

//显示所有玩家/实体的所有记分板分数。即使记分板上的实体已经被删除,可是数据仍然会保存在里面,使用该实体的UUID代码。因此,如果在运行过大量实体记分板的地图中使用该指令,游戏很可能会由于显示量过大而崩溃!

scoreboardplayersset玩家/实体名记分板名分数[nbt标签]

//将指定的玩家或实体的记分板分数设定成一个数值。可以指定nbt标签。因此,结合execute指令可以替代testfor指令而直接对目标实体执行命令。可以为不存在的玩家名使用该指令。

scoreboardplayersadd玩家/实体名记分板名数值[nbt标签]

//为指定玩家或实体的记分板分数增加一个数值。可以指定nbt标签。结合set子指令可以将玩家分数控制在一定范围内,同时创建更精准的延迟。可以为不存在的玩家名使用该指令。

scoreboardplayersremove玩家/实体名记分板名数值[nbt标签]

//为指定玩家或实体的记分板分数移除一个数值。可以指定nbt标签。结合set子指令可以将玩家分数控制在一定范围内,同时创建更精准的延迟。可以为不存在的玩家名使用该指令。

scoreboardplayersreset玩家/实体名[记分板名]

//重置某个存在于世界内的玩家或实体的某个记分板数据,或者所有记分板数据(不填记分板名)。常用于消除显示在记分板侧边栏等位置的名字。

scoreboardplayersenable玩家名触发器记分板名

//激活一个玩家的指定触发器判据的记分板。激活后即使是没有作弊权限玩家也可以使用指令trigger来自己修改自己的该记分板分数。使用trigger指令一次后激活会关闭,需要再次激活才能使用trigger指令。

scoreboardplayerstest玩家/实体名记分板名最小值[最大值]

//测试一个玩家或实体的分数范围,用比较器输出成功信号。因为testfor指令便能做到,而且记分板电路可以直接对指定分数范围的实体执行指令,所以可以说是无用的。

scoreboardplayersoperation被执行/实体玩家被运算记分板名运算符号执行玩家/实体运算记分板名

//将执行方的某个记分板分数用运算符号[+=,-=,=,%=,/=]运算到被执行方的指定记分板分数上。可以用于同步记分板数据,比较记分板数据大小等。

3队伍指令

scoreboardteamslist[队伍名]

//显示指定队伍信息或所有队伍列表

scoreboardteamsadd队伍名[显示名]

//创立一支新的队伍

scoreboardteamsremove队伍名

//移除一支以及创立的队伍

scoreboardteamsempty队伍名

//移除一个队伍内的所有实体/玩家

scoreboardteamsjoin队伍名[玩家/实体名]

//使一个玩家或实体加入一支队伍。可以是不存在的玩家。

scoreboardteamsleave[玩家/实体名]

//使一个玩家或实体离开自己的队伍。若不填,即为自己离开。

scoreboardteamsoption队伍名设定名对应标签

//为一个队伍设定队伍颜色[color],友军伤害[friendlyfire],隐身可见[seeFriendlyInvisibles],名字可见[nametagVisibility],死亡讯息可见[deathMessageVisibility]等设定。下面有子指令内容。

scoreboardteamsoption队伍名color颜色名

//将一个队伍设定成指定颜色后队员的名字颜色会随之改变,并且可以看到对应颜色的侧边栏记分板内容。可用颜色"black","dark_blue","dark_green","dark_aqua","dark_red","dark_purple","gold","gray","dark_gray","blue","green","aqua","red","light_purple","yellow",和"white",或者使用"reset"来重置(移除)队伍颜色。

scoreboardteamsoption队伍名friendlyfire开启/关闭

//设定同队伍间的友军伤害是否开始,可用true/false标签来开关。

scoreboardteamsoption队伍名seeFriendlyInvisibles开启/关闭

//设定能否看到隐身的队友,若开启隐身的队友将是半透明状态。

scoreboardteamsoption队伍名nametagVisibility状态

//设定能否看到队员头上的名字。可用标签:从不[never],仅其他队员可见[hideForOtherTeams],仅自己队员可见[hideForOwnTeam],永远可见[always]

scoreboardteamsoption队伍名deathMessageVisibility状态

//设定能否看到队员的死亡讯息。可用标签:从不[never],仅其他队员可见[hideForOtherTeams],仅自己队员可见[hideForOwnTeam],永远可见[always]

4普通玩家可用指令:

trigger触发器判据记分板名设置/增加数值

激活后可由普通玩家使用一次,来改变自己的触发记分板数据。

4判据

用于对玩家的行为自动改变记录数值。[仅对玩家有效!]

1普通判据

dummy

//普通变量,不会随外界内容改变,只能由管理指令修改。

trigger

//类似于dummy的普通变量,但激活后可以由没有作弊权限的玩家自己修改。

deathCount

//记录死亡次数变量,每当玩家死亡时会增加1。

playerKillCount

//记录击杀玩家数量,每当击杀一个玩家数值会增加1。

totalKillCount

//记录总击杀数,每当击杀一个生物时数值会增加1。

health

//记录玩家生命值,以半颗心为一个单位显示玩家生命值,不能由指令修改。

2统计判据

achievement成就名

//记录获得成就的次数。可用成就名:"acquireIron","bakeCake","blazeRod","bookcase","breedCow","buildBetterPickaxe","buildFurnace","buildHoe","buildPickaxe","buildSword","buildWorkBench","cookFish","diamonds","diamondsToYou","enchantments","exploreAllBiomes","flyPig","fullBeacon","ghast","killCow","killEnemy","killWither","makeBread","mineWood","onARail","openInventory","overkill","overpowered","portal","potion","snipeSkeleton","spawnWither","theEnd",和"theEnd2"

stat统计名

//统计玩家某种动作的次数或距离数,例如疾跑距离等。可用统计名:"animalsBred","boatOneCm","climbOneCm","crouchOneCm","damageDealt","damageTaken","deaths","diveOneCm","drop","fallOneCm","fishCaught","flyOneCm","horseOneCm","jump","junkFished","leaveGame","minecartOneCm","mobKills","pigOneCm","playerKills","playOneMinute","sprintOneCm","swimOneCm","timeSinceDeath","treasureFished",and"walkOneCm"。

statcraftItem物品ID

//统计玩家合成某一物品次数

statuseItem物品ID

//统计玩家使用某一物品次数。例如喝牛奶来使用牛奶桶,耐久类物品在正常情况降低耐久,放置方块和投掷可投物品等都会在对应情况下增加数值1。材料往往是不会有使用次数的,但地图的使用次数没有正常工作(bug)

statbreakItem物品ID

//统计有耐久的物品损坏次数,例如弓和铲。

statmineBlock方块ID

//统计玩家采集方块数量。仅统计生存中破坏可以掉落的方块,或创造模式中游戏规则设定为方块不掉落时统计。

statkillEntity生物名

//统计玩家杀死指定的生物(实体)数量。可用生物名:"Bat","Blaze","CaveSpider","Chicken","Cow","Creeper","Enderman","EntityHorse","Ghast","LavaSlime","MushroomCow","Ozelot","Pig","PigZombie","Sheep","Silverfish","Skeleton","Slime","Spider","Squid","Villager","Witch","Wolf",和"Zombie"。

statentityKilledBy生物名

//统计玩家被某种生物杀死的次数。可用生物名同上。但由于某些生物是不会攻击玩家的,那么这个数值将不发生自然改变。

teamkill队伍颜色

//统计玩家杀死指定颜色的队伍队员数量。可用队伍颜色:"black","dark_blue","dark_green","dark_aqua","dark_red","dark_purple","gold","gray","dark_gray","blue","green","aqua","red","light_purple","yellow",和"white"。

killedByTeam队伍颜色

//统计玩家被指定颜色队伍的队员杀死次数。可用队伍颜色同上。

5重点内容:

1scoreboardplayersset/add/remove玩家/实体名记分板名分数[nbt标签]

//可以指定nbt标签

2scoreboardteamsoption队伍名设定名对应标签

//为一个队伍设定队伍颜色[color],友军伤害[friendlyfire],隐身可见[seeFriendlyInvisibles],名字可见[nametagVisibility],死亡讯息可见[deathMessageVisibility]等设定。

3统计判据

建议制作api、java修改包、mod

原版指令只会将标记的实体数据记录并进行修改/执行命令,无法并行执行(强制的话会导致java崩溃),jre虚拟机不会对游戏内的命令进行存储,无法形成固定的并行命令处理。如果你自己开了包(制作api与修改包),代入游戏的数据包后,通过读取包,还是可以并行命令/命令拓展的(可以选择自己做命令),通过做mod/服务器端的方式,将mod/服务器中插入与命令同时使用的动作(blockbench)、插件(Java、Bucket)、脚本(Datapack)来达到修改游戏根指令的目的。(外网上有很多api集成,拓展性还是可以的,建议借鉴一下)

如果你想做三国杀,建议使用mod,做mod的软件建议MCreator,内涵插入动作与指令模块,动作/技能其实就是动画,将玩家播放一个动画,然后使用指令,对周边敌人/生物造成伤害就行(指令这一块原版游戏就可以,完全够用,只有动画须要单独制作)。

Minecraft中关于在命令方块执行@s还是@p的发面Mojang做的还是太迷糊,你可以使用数据包来进行修改@s为输入指令的主玩家(Admin、Host)。还有很多模糊点,请提供更多信息。