【攻略创作】dream同款猎人游戏逃杀指针,你值得拥有!

不管你信不信,这玩意是我看到资源中心有付费的mod后,想要白嫖模组内容搞出来的”---静远123


大家好,我是静远123。
dream的猎人游戏算是相当火的系列了,而原版猎人游戏是使用数据包实现的。
我当然知道手机版也有模组,但是wy的尿性绝对是要收钱的,所以今天这期攻略,不要998,不要888,也不要188,只要一个点赞,攻略带回家


首先我们了解一下指南针工作的原理:
指南针上红色的针会永远指向世界出生点,世界出生点就是第一次加入世界的玩家所在的点(当然会有偏移)


而刚好就有一条指令可以设置世界出生点
/setworldspawn
后面可以加空格然后输入坐标指定世界出生点。也可以不加坐标,把你所在的位置设为世界出生点。

但是我们不能指望被追杀的人不断输这个指令,那么有没有替代方案呢?
有,用/execute

(图源我的世界中文wiki)

/execute可以使某个实体执行指令,那么就套上execute,使被追杀的人不断执行把世界出生点设置在自己的位置的指令就可以了。

连起来就是这样:
/execute @a[name=速通者(即被追杀者)名字] ~~~ setworldspawn

但是我们同样不能指望管理员不断手打这个指令维持游戏进行,这个时候就需要命令方块


命令方块不能直接获取,需要通过指令获取

想了解更多关于命令方块的点这里

指令:/give @p command_block 64 0
拿到命令方块后,调成重复,始终活动,延迟没有要求,越低效果越好但性能消耗越高,建议20(作者用3是因为测试),然后把刚刚的指令打进去


有了这个,猎人游戏的核心部分就完成了。
但是,这个系统还有不少问题
比如玩家跑远了,指针就失效了
这个就是因为全部的玩家都离开了这个区块,区块不再加载,命令方块自然无法运行。
这个时候就需要站在命令方块上,输入指令:
/tickingarea add ~~~~~~

这个指令可以添加一个常加载区块,几乎所有的命令方块系统都需要建在常加载区块中,才能避免玩家跑远了,命令方块就失效了的问题。
再比如有玩家反映:


咳咳,退钱的问题回头再说,这个问题的主要原因是玩家没有提前设置个人出生点
这个时候就需要管理找个风水宝地(即猎人游戏开始的地方),然后输入:
/spawnpoint @a ~~~

这个指令可以把所有玩家的个人出生点设置在输入指令的人所在的地方,这样玩家有了个人出生点,就不会复活在世界出生点了。
呼,退钱的问题终于解决了………………

个鬼!
指南针被速通者抢了或者一把火扬了?那你自己技术不好,关我什么事?
(一阵噪音以后)
哎哎哎,有话好好说别动手啊…………
好吧,正经点


一般常见的解决方案是用非门检查玩家手上有没有指南针,如果没有就发一个。
但是时代变了,我们玩的是基岩1.16.2

运用物品组件中的keep_on_death,可以实现只针对指定物品的死亡不掉落,这个指令没什么可说的,复制粘贴即可(反正json我也不会,会了也没用)
/give @a compass 1 0 {"minecraft:keep_on_death":{}}

注意指令里一个字一个括号引号都不能少,像极了考试。
所以,mojang你想让我们回味学习生活吗?
(注:因为这是json格式所以很严格)


好吧,管理调命令方块确实很辛苦,这钱我退了。
想要解决这个问题,就得让命令方块用数据驱动
什么意思呢?
我如果说把张三和李四关进监狱,如果此时王五出了事,我就得再说把王五关进监狱
但是如果我说张三和李四是犯人,把所有犯人关进监狱,如果此时王五出了事,我只需要再说王五是犯人,就可以都送进监狱。
效果没变,但我的工作量少了

(图源我的世界中文wiki)

命令方块也是这个道理,不过能被命令方块看又不影响游戏运行的只有tag或者scores,这里只有是与非,用scores有点浪费,所以用更方便的tag
改完之后就是这样:
/execute @a[tag=stz,c=1] ~~~ setworldspawn

(图片里@a打错成@e了)
这样命令方块会让所有有stz的tag标签的玩家"把世界出生点设在自己的位置"
相当于把所有有"犯人"的身份的人"关进监狱"

这样的话,管理员只需要在猎人游戏开始时输入:
/tag @a[name=速通者名字] add stz
在游戏结束时输入:
/tag @a remove stz
就可以快速地开启下一把游戏,有兴趣的还可以做一个阵营选择器。


如果你还是觉得麻烦,毕竟众所周知好多人名字特别长,你还可以让速通者站在你的旁边和你的位置重合在同一格,然后输入指令:
/tag @a[r=1,c=-1] add stz
或者让ta自己输入指令:
/tag @s add stz
(如果ta也是管理)

呼,总算解决了一大堆问题。
这就是commander的日常,写指令简单,修bug难。
最后,我们来整理一下,开启猎人游戏的步骤
1.放置重复始终活动命令方块并输入
/execute @a[tag=stz,c=1] ~~~ setworldspawn
2.管理员在猎人游戏开始的地方,输入指令/spawnpoint @a ~~~
/tag @a remove stz
/tag 速通者名字 add stz
/give @a compass 1 0 
/tp @a ~~~
4.调生存,猎人游戏开启

好了,我们下期再见,别忘了点赞。

转载自静远123,侵权请联系删除


文本作者:神也佑我

5216次浏览