Minecraft(我的世界)中文论坛

标题: [TCP|Jokey]关于summon时隐藏的实体和隐形矿车那些事 [打印本页]

作者: Jokey_钥匙    时间: 2019-11-16 00:56
标题: [TCP|Jokey]关于summon时隐藏的实体和隐形矿车那些事
本帖最后由 Jokey_钥匙 于 2019-11-16 15:29 编辑

如果你尝试做过1.13+的火箭筒或手榴弹 而且还不想破坏地形 你肯定遇到过动态图上的麻烦

是的,生成苦力怕的那一刻苦力怕没有立即爆炸 而是闪现了
肯定有人尝试在生成时使用ActiveEffects,结果……

效果更差劲了……
在询问无数前辈(指spg和雪呜呜以及暗夜)告诉我吃掉材质后 我终于找到了方法

很明显压根没有看到苦力怕的影子这是因为我把gif减掉了 吃了材质 魔法 一段相当简单的指令
先说指令 真的相当简单
  1. execute positioned ~ ~512 ~ run summon minecraft:creeper ~ ~ ~ {NoAI:1b,Silent:1b,Fuse:0s}
  2. execute positioned ~ ~512 ~ run tp @e[type=creeper,distance=..0.1] ~ ~-512 ~
复制代码
相信各位一眼就看懂了 就是把苦力怕召唤向上偏移512格再tp下来 可为什么会这样?
是因为mj的奇异的客户端计算
具体特性类似4和5的原因
这里直接说结果:由于客户端和服务端不同步 导致实体显示会慢半拍 所以召唤的苦力怕慢半拍才爆炸
但也利用这个特性 我们可以让苦力怕在召唤在我们看不见的地方 再tp下来 使客户端没反应要显示 苦力怕先炸了

这样 我们就可以制作更好的导弹了(传 统 技 艺)

先上图

很多人制作和运输矿车有关的东西是总希望矿车能隐形
我们知道矿车本身是不能隐形的 如果隐形只能删材质
这时思维只能逆转过来 如果删掉材质,在需要的时候仍然能让矿车显示原来的材质
因此必须要有能做为显示的实体补充到原来的矿车上
如果你用原版模组制作过方块 你第一个想到了绝对是AS
然而AS反而不行 原因很简单
请看图(AS已高频tp矿车)

出现了什么问题?
AStp的是矿车的实际面向角度 但是矿车还有一个有客户端独立计算的面向角度,该角度会在某一刻突然更新为实际面向角度
但是AS就无法在外观上拥有同步的外观
再加上服务端和客户端存在显示延迟 tp会有诡异的偏移
但是这还没完 AS还需要检测矿车是否在铁轨上进行特殊判定 以及上下坡时更改模型(选择中心在头部 只能依赖更改模型来伪造上下坡矿车的抬升)
然后AS本身就是个十分耗能的实体 再加上一系列指令 能耗可想而知
所以AS我们直接就放弃了

而和矿车能显示同步且能耗低的只有一种方法——矿车本身的CustomDisplay
但是如果使用CustomDisplay必须牺牲至少一种方块的一个方块状态
所以我们必须挑选一个基本所有类型玩家都用不着(或不需要看见)的方块
也就是说这个方块必须非常非常不常见
所以最后 我选择的是 —— 拼图方块的[facing=down]
只有拼图方块是任何一类玩家基本用不着 顶多生成时使用 但那也看不见
所以我们将拼图方块的[facing=down]改为矿车的模型
然后我们输入指令
  1. /summon minecraft:minecart ~ ~ ~ {CustomDisplayTile:1b,DisplayState:{Name:"minecraft:jigsaw",Properties:{facing:down}},DisplayOffset:6}
复制代码
这样我们就有了在普通矿车和隐形矿车转变的方法
什么?你说除了普通矿车以外的其他矿车?你不会用passengers吗?
[11/16 9:42更新]然而tcp个个都是肝帝 所以我把拼图方块的其他状态全也成了其他矿车
down=普通矿车
north=漏斗矿车
west=tnt矿车
east=动力矿车

你可能会好奇为什么要DisplayOffset:6 tnt矿车中tnt高度和设置自定义方块为tnt矿车中的tnt高度是不同的 其他矿车也是如此
其中由于箱子是特殊渲染 漏斗矿车中的漏斗的高度和其他矿车的方块高度又不同
所以这两个方块是进行了额外建模
但是这么做的后果是tnt矿车爆炸时贴图不再闪烁(幸运的是音效和粒子效果还在) 以及动力矿车有动力时矿车熔炉不再燃烧(但是这都9102年了谁还用动力矿车)
刷怪笼矿车和命令方块矿车因为平时不会出现,并且本身显示意义就不大 所以没有制作它们的模型
我已经写好的数据包:https://www.mcbbs.net/thread-926482-1-1.html



[groupid=1009]The Command's Power[/groupid]

file_1573888067000.jpg (132.97 KB, 下载次数: 0)

file_1573888067000.jpg

Invisible Minecart Resource Pack.zip

5.9 KB, 下载次数: 6


作者: 2386775413    时间: 2019-11-16 10:25
厉害
更简单方式:关掉粒子效果生成时使用ActiveEffects


作者: Jokey_钥匙    时间: 2019-11-16 10:28
2386775413 发表于 2019-11-16 10:25
厉害
更简单方式:关掉粒子效果生成时使用ActiveEffects

然而木大
因为客户端“反应”生物的隐形本身需要一刻
所以就算有隐形buff召唤的那一刻仍然是显形的
作者: BlackCB.    时间: 2019-11-17 10:21
然而tcp个个都是肝帝

我不是tcp的吗
J:好,这就把你踢了
作者: kongbaiyo    时间: 2019-11-19 20:12
这个隐形矿车真的秀!学会了!
作者: guofmn    时间: 2020-1-10 16:06
我来水贴了
作者: shiyanhan1655    时间: 2020-1-11 10:42
awsl。。。。。。。。。。。。。。。。。。。。
作者: 时之虫    时间: 2020-2-19 01:15
话说爆炸的隐形实体可以考虑tnt的思路么?激活的tnt如果Fuse超过80,在播放完动画之后会不可见
作者: Jokey_钥匙    时间: 2020-2-19 09:09
时之虫 发表于 2020-2-19 01:15
话说爆炸的隐形实体可以考虑tnt的思路么?激活的tnt如果Fuse超过80,在播放完动画之后会不可见 ...

问题是je不能关闭tnt爆炸破坏 大部分人用tnt会在爆炸的一瞬间换成苦力怕
作者: 2781212775    时间: 2020-2-22 13:06
非常有用!正愁怎么解决苦力怕替换tnt的问题,请问苦力怕爆炸范围值为多少时威力与TNT相当。
作者: Jokey_钥匙    时间: 2020-2-22 13:50
2781212775 发表于 2020-2-22 13:06
非常有用!正愁怎么解决苦力怕替换tnt的问题,请问苦力怕爆炸范围值为多少时威力与TNT相当。 ...
苦力怕的爆炸威力为3
tnt的爆炸力为4 ——minecraftwiki

那就填4吧(
作者: 12tianxun    时间: 2021-2-5 13:40
    execute positioned ~ ~512 ~ run summon minecraft:creeper ~ ~ ~ {NoAI:1b,Silent:1b,Fuse:0s}
    execute positioned ~ ~512 ~ run tp @e[type=creeper,distance=..0.1] ~ ~-512 ~

能用256格吗?
作者: cxl5201314    时间: 2021-2-6 17:56
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Minecraft(我的世界)中文论坛 (https://www.mcbbs.net/) Powered by Discuz! X3.5