15w45a模拟自然生成球类建筑制作详解
15w45a模拟自然生成球类建筑制作详解。那下面就给大家分享一下在我的世界中怎么在15w45a版本中制作一个球类建筑吧!那感兴趣的玩家不妨进来看看下面的制作教程哦!希望对大家有所帮助。
游戏园我的世界官方群: 325049520 欢迎各路喜爱我的世界的小伙伴们加入讨论!
模拟自然生成球类建筑 是一个概念性的原型机,又因为是快照版本,还有电路用到了区块价值的一些东西,导致BUG更多,这次主要是分享一下我的脑洞XD
话不多说,首先说是要生成建筑对吧,那先来看看(我都看不下去,建筑技能点-250)
长得和毒瘤差不多。。。
内部(有一只自定义掉落随机物品的僵尸,那个箱子内物品也是通过Loot table随机生成的,具体参见我的LootTable教程贴和其他触例如SYL的LootTable的教程):
大家可以看到,图中后面是一堆类似的建筑,就是用电路生成出来的,我为了让效果更加明显,故意调低了间隔距离,这个一会再谈。
中间那个白色的就是源建筑
15w45a模拟自然生成球类建筑制作详解。那下面就给大家分享一下在我的世界中怎么在15w45a版本中制作一个球类建筑吧!那感兴趣的玩家不妨进来看看下面的制作教程哦!希望对大家有所帮助。
游戏园我的世界官方群: 325049520 欢迎各路喜爱我的世界的小伙伴们加入讨论!
模拟自然生成球类建筑 是一个概念性的原型机,又因为是快照版本,还有电路用到了区块价值的一些东西,导致BUG更多,这次主要是分享一下我的脑洞XD
话不多说,首先说是要生成建筑对吧,那先来看看(我都看不下去,建筑技能点-250)
长得和毒瘤差不多。。。
内部(有一只自定义掉落随机物品的僵尸,那个箱子内物品也是通过Loot table随机生成的,具体参见我的LootTable教程贴和其他触例如SYL的LootTable的教程):
大家可以看到,图中后面是一堆类似的建筑,就是用电路生成出来的,我为了让效果更加明显,故意调低了间隔距离,这个一会再谈。
中间那个白色的就是源建筑
那我们来看看电路和使用:
电路总览:
虽然电路不大,甚至很小,但从图中可以看出,没有一个红石元件,全部是CB链组成的,这个的原理可以参考pca的纯CB逻辑(我的世界1.9if/else/if else/嵌套概念解析),能够大大简化逻辑门和计分板,所以本地图也没有一个计分板,包括Tag,说了那么多,先来看看命令(右边是主逻辑串,左边是被调用的CB链):
右:
/blockdata ~ ~ ~ {auto:0b}
/blockdata -9996 4 -9997 {auto:1b}
/blockdata -9996 4 -9998 {auto:0b}
/testfor @e[type=ArmorStand,name=SP]
/blockdata -9996 4 -9997 {auto:0b}
/blockdata -9996 4 -9998 {auto:1b}
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /testfor @e[type=ArmorStand,name=Build,r=200]
/blockdata -9996 4 -9998 {auto:0b}
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /spreadplayers ~ ~ 1 300 false @e[type=ArmorStand,name=SP]
/summon ArmorStand ~2 ~ ~2 {CustomName:SP}
/blockdata -10000 4 -9988 {auto:1b}
/blockdata -9996 4 -9988 {auto:1b}
左(被调用):
/blockdata ~ ~ ~ {auto:0b}
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /clone -10014 3 -10013 -10020 13 -10020 ~ ~ ~ replace force
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /summon Zombie ~3 ~2 ~4 {DeathLootTable:test:test1}
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /summon ArmorStand ~ ~ ~ {CustomName:Build}
主逻辑我就不重点提了,无非是逻辑嵌套,这里说一些有意思的东西:
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /testfor @e[type=ArmorStand,name=Build,r=200]
/execute @e[type=ArmorStand,name=SP] ~ ~ ~ /spreadplayers ~ ~ 1 300 false @e[type=ArmorStand,name=SP]
首先看这两条命令,第一条控制的是两个建筑物之间的最小距离(r=200),而第二条控制的是刷出建筑物的落点随机范围(1-300)这两个命令决定了最终建筑的距离,这个大家可以自己体会一下。
然后是两个Loottable的代码:
箱子:
{"pools":[{"rolls":{"min":3,"max":5},"entries":[{"type":"item","name":"minecraft:diamond","weight":2,"functions":[{"function":"set_count","count":{"min":1,"max":3}}]},{"type":"item","name":"minecraft:cookie","weight":5},{"type":"item","name":"minecraft:enchanted_book","weight":2,"functions":[{"function":"set_nbt","tag":"{StoredEnchantments:[{lvl:3s,id:35s}]}"}]},{"type":"item","name":"minecraft:iron_pickaxe","weight":3,"functions":[{"function":"enchant_with_levels","treasure":false,"levels":{"min":10,"max":30}},{"function":"set_damage","damage":{"min":0,"max":1}}]},{"type":"item","name":"minecraft:iron_ingot","weight":6}]}]}
僵尸:
{"pools":[{"rolls":{"min":3,"max":3},"entries":[{"type":"item","name":"minecraft:iron_ingot","weight":5,"functions":[{"function":"looting_enchant","count":{"min":1,"max":3}},{"function":"set_count","count":{"min":0,"max":2}}]},{"type":"item","name":"minecraft:diamond_sword","weight":1,"functions":[{"function":"enchant_with_levels","treasure":false,"levels":{"min":20,"max":30},"conditions":[{"condition":"random_chance_with_looting","chance":0.05,"looting_multiplier":0.03}]},{"function":"set_count","count":{"min":1,"max":1}},{"function":"set_damage","damage":{"min":0,"max":0.25}}],"conditions":[{"condition":"killed_by_player","inverse":false}]}]}]}
总而言之就是做到了每个建筑都不相同,符合MC自然生成的规律
还有最后一个CB是用来控制循环的,要想停止刷出,就将这个cb的need redstone开启即可.
好了,作品主要已经交代完了,接下来说几句题外话,其实这个原型机拓展空间很大,例如可以加入探测生物群系生成等,这样可以做到很接近那些原版自然建筑(如雪屋只在雪原生成,这个可通过STATS指令比对方块做到,但可能有简便的做法),这个SYL,PCA他们告诉我国外有个叫GameMode4的原版地图,似乎是有这些功能,应该非常强大,大家可以去了解一下(我没去看,要翻墙)
好了就这些吧,谢谢大家的浏览!
下载链接::
密码:i8uv
PS:在此非常感谢我的世界玩家乾.坤的分享。
以上就是15w45a模拟自然生成球类建筑制作详解。更多精彩尽在游戏园我的世界专区。
热门攻略推荐:
相关文章
更多+热门搜索
手游排行榜
- 最新排行
- 最热排行
- 评分最高
-
赛车竞速 大小:618.1M
-
飞行射击 大小:357.83M
-
冒险解谜 大小:347.61MB
-
休闲益智 大小:
-
角色扮演 大小:200MB