本篇教程由作者设定未经允许禁止转载。
1.18.2以上的瓦尔基里相比1.12.2可谓是完全换了一个风格,很多人不知道何从下手,此教程可以为你接触并游玩1.18.2瓦尔基里模组提供初步的指导。
教程之后的旅程,就只受缚于你的想象力和创造力了!
本教程中的部分图片分辨率较高,因此如果网络状况不佳可能由于加载时间较长判定加载失败,刷新重试即可
认识瓦尔基里模组
瓦尔基里物理引擎
更低版本的阿基米德之舟的原理,是清除方块并在原地生成一个外形与方块“外形”相同的实体,所以交互性很差,因为单一的实体无疑很难实现全部的交互。
瓦尔基里虽然也将方块变为实体,但却采用了更高级的方法。当你创建一个物理化结构时,模组会先清除这个结构,再在非常远处创建一个完全一样的结构作为本体(不是物理化的),再将本体结构作为一个可交互的实体“投影”到你面前相同的位置,由此实现了物理化,这会造成一些有意思的现象,后面会详细叙述。
本体结构的位置可以通过特殊方式查看,例如在物理化结构上连接沉浸工程的接线器即可提示在(本体结构位置坐标)处连接,使用指令传送到本体结构附近默认会传送回物理化结构所在的坐标位置,但你可以在配置文件里关闭这一选项。
这个方法的优点在于,由于实体的本体是远处那个结构,所以大多数交互都可以正常运行(因为在本体处它与地面上未物理化的方块并无差异),大多数框选方块操作,例如机械动力的蓝图和强力胶,也是完全兼容的。只有少数物品如展示框因为判定的特殊性无法在物理化结构上存在。
当然,这种物理化有不少的缺点,也应当了解注意。
大多数自动索敌的防御系统无法在物理化结构上正常运行,因为它们的本体不在你眼前的位置,你眼前的目标实际上离它足有十万八千里。比如沉浸工程的炮塔物理化后不会旋转,周围有目标时会持续向一个错误的方向发射,无法击中。气动工艺的哨戒炮物理化后则会直接无视“周围”的目标。
一些向固定方向交互的机器会出现问题,如mek的激光物理化后只会产生一条水平指向未物理化时方向的“激光拖尾”,无法旋转。
结构与世界整体的的交互可能出现问题,如在暮色森林内物理化可能会判定错误导致物理化结构带起了一大块地面,也就是“土特产”。下雨时物理化结构上可能积雪(因为本体结构可能处于积雪群系),雨也会直接穿过物理化结构(你的高级飞船不挡雨的确挺寒碜)
物理化结构的碰撞判定可能会出现问题,如碰撞箱加载错误导致上面的实体掉落,寻路异常或无法移动。因此,尽量避免在物理化结构上饲养动物。同时,你也可以在配置文件里选择关闭物理化结构上刷怪的选项。
部分和物理化结构的特殊交互会因为判定“距离过远”而无法进行,例如在物理化结构上无法使用配置器调整mek管道的输入抽出模式(可以正常调整颜色),可以选择提前调整好再进行物理化,或是修改配置文件后前往本体位置调整。
还需注意的是,为保证物理引擎运行流畅,瓦尔基里修改了每tick的物理帧数(默认每tick3物理帧,可配置),这会增加内存占用,更容易引发内存泄漏问题,也使得大多数面板服和含有瓦尔基里的整合包兼容性不佳。日志中也会频繁出现“每tick物理帧过多”的警告,但这并非错误。
据目前所知消息,正在开发的机械动力:航空学所采用的全新“landlord”物理引擎可以解决这些问题,让我们一同期待物理化方块的未来前景越来越好。
附属
在1.12版本的后期,瓦尔基里就有把物品交由附属处理,自身只提供运算的趋势,在高版本更是只保留了物理引擎,没有添加任何方块,因此只安装瓦尔基里是不会有任何用处的,必须配合各大附属才能发挥功能。
目前,瓦尔基里主流的已发布的附属有以下几个,可以选择安装(没有链接的附属为仅在瓦尔基里的discord频道发布,可以自行前往查看):
clockwork,最著名的瓦尔基里附属之一,提供了机械动力联动的部件,如螺旋桨轴承和物理轴承,在未来可能更新能够隔水的气室,解决目前物理化结构与水的交互的问题。
eureka,较为独立的附属,其中的船舵能够物理化所有相连的方块并在大多数情况下排除世界本体的方块,在建立有着复杂外形的飞船时有极大用处。
tournament,提供了仅需红石信号就能产生力,且推力可调的旋转器、推进器和船用引擎,是各种机动载具的必备。
trackwork,提供了大小不同的三种含有悬挂,且可调节悬挂硬度和轮子渲染的履带,是陆地载具的必备。
kontraption,为瓦尔基里与mek的附属,提供了消耗mek的氢气和电力的引擎,氢气引擎有着非常壮观的喷火动画,作者也表明未来将制作一些武器用于瓦尔基里的船。
interactive,将机械动力的动态结构变为瓦尔基里的物理化结构,由此提供了许多更有趣的特性,如无需方块化的动态结构编辑,和列车的碰撞与脱轨。
CC:VS,为computercraft与瓦尔基里的附属,添加了两个API,shipAPI可以查看船只信息,如坐标和速度,extendedshipAPI更可以用来直接向船只虚空施加力从而控制船只(仅限命令电脑使用)。
Some Peripherals,本质是CC的附属,但对瓦尔基里的兼容性良好,可以用于制作各种设备。
VMod,提供了工具枪来建立不同物理化结构之间的焊接,你可以在两个结构之间建立包括绳索、弹簧等的丰富连接形式
开始你的旅程
这里会介绍多数的附属物品的基础用途,可以点进附属的链接或加入discord频道来了解更多。
现在你已经装上所有你感兴趣的附属了,打开游戏进入世界,我们开始搭建第一艘船吧。
首先,虽然附属五花八门,但只有clockwork与eureka两个附属提供了你必要的工具——将方块转化为物理化结构的工具,所以确保你已经至少安装了其中之一。
其次,虽然控制方式多种多样,但是目前来看,机械动力提供的遥控器和无线红石终端系统是最简易且方便的方式。因此,即使你不添加clockwork这种直接联动两个模组的附属,也建议至少熟练掌握机械动力的红石遥控器系统。否则,不使用遥控器,你将难以用键盘控制按键,以及便捷地调整转速和方向。
部分附属如履带和螺旋桨直接使用了机械动力的转速系统,也建议熟练掌握机械动力的玩法再进行搭建。
创造物理化结构
我们来看一下如何物理化一个结构
首先,搭建一个漂亮的结构(可以歪七扭八,完全不要紧)
选择你的物理化指导,clockwork系,或者eureka系,我会分别介绍。
二者虽然物理化的方式不尽相同,但由于使用了同一种引擎,最终的效果和物理化结构的属性并无差异。
如果你要用clockwork物理化,应该拿出它提供的这根仙女棒和这个漂亮的方块,把方块放一个在地上(不用放在你要物理化的结构上)。
然后,用仙女棒像蓝图与笔一样选中结构的两个角。你可能需要辅助方块,因为选定后无法再像蓝图一样调整,之后可以拆掉这个辅助方块。
用仙女棒右键漂亮方块,经过一阵炫酷的动画,结构就被物理化了,仙女棒会返还给你,方块可以拆掉,它不影响物理化结构的存在。
如果你要用eureka物理化,应该拿出这个漂亮的船舵(任意材质的都可以),安在你的结构上,无需确定选区,因为船舵会把所有连接在一起的方块物理化,不过这也意味着你必须清空周围,不能让结构和任何无关的东西相连,哪怕是一根草都不行。
空手潜行右键船舵,点击“组装”,物理化就完成了。与之前的方块相同,船舵在物理化之后可以拆掉,不影响物理化的存在。
物理化的结构仍然可以继续搭建,尽管放心。
如果你不想要物理化结构了,用tournament的deleting tool就可以把整个结构一股脑删除,这里我抓拍到了删除的一瞬间,可得小心点用这玩意。
如果你只是想解除物理化,那就右键船舵然后点击拆解,或是切换下面的gravitron的模式,要注意,这很可能会损坏你的结构。
如果你想移动一下物理化结构,可以使用clockwork的gravitron,右键可以把物理化结构抓起来,你去哪它就跟到哪,再右键就能放下。它还有三个功能,都写的很明白,按下alt来切换。
控制物理化结构
现在你有了一个物理化结构,但它不能称为“载具”,因为它完全是没法听你的命令动弹的,我们接下来就让它能受你的操控动起来。
船舵(ship helm)是一个好玩的玩意,右键坐上去可以直接按wasd操控,只能平动,速度不快,不过如果你要操控一艘真正的“船”的话是不错的。
你可能会注意到,安装了船舵的结构即使短暂处于倾斜,也会很快变为水平,甚至颠倒过来也会自己翻身。这就是船舵的另外一个功能了,任何情况下,船舵都会努力让结构保持正向水平,有时候这是一个优点,有时候就没那么有用了。
船舵的最大缺点就是不能让结构竖直运动,如果你试着用gravitron把安装了船舵的结构带到高空再松手,你会惊奇地发现结构下落的时候会往一边飘,而不是垂直下落,即使结构是完全对称的。
因此,如果你只需要保持水平,建议看看我后面会讲的动量轮,船舵不用的话可以拆掉,不要让它妨碍了你载具的运动。
物理轴承(phys bearing)可以建立符合物理规则的旋转结构,比如一个车轮。和动力轴承很像,你只需要用强力胶在前面黏一个你喜欢的结构,然后再空手右击轴承接上去,接下来只需要轴承的背面接入应力,就可以让结构以相同的转速和方向旋转。
但是它必须放在物理化结构上才能向上接物理结构,举个例子,如果你先在方块状态的车的轴承上面空手右击接上去了车轮,然后再把整辆车物理化,你会惊奇的发现车轮全部掉了下来,这是因为之前已经设定好的物理化车轮和后面物理化的车身被判定为了两个不同的物理结构。
所以,你必须先物理化含有方块状态车轮的整辆车,再把车轮上胶,再空手右键轴承,这样才能把可以转动的车轮装在车上,记得留出足够的空间,防止车轮转的时候被方块或是别的车轮卡住。
注意,物理轴承在过大的速度下遭受撞击,或是遇到区块重载时容易扭曲偏移位置,且无法恢复,开车的时候小心一些!
履带(track)也是一个必须在物理化结构上放置的驱动部件,在未物理化的方块结构上放置的履带无法正常渲染。
一条合格的履带包含两端的sprocket track和夹在其中之间的suspension track,只有这样放置才能形成可以驱动且旋转正确的履带。图里的suspention track看似和sprocket track不平齐,实则是因为suspention track在放置后会自动下移撑起悬挂,本体的位置仍然在sprocket track之间。
suspension track和sprocket track各有三种大小,一般来讲大sprocket配同大小或者更小的suspension看起来比较自然,而小suspension配大sprocket则会产生渲染移位的问题。
如果你嫌履带之间间距太小不好看,用机械动力的扳手右击suspension track的本体位置可以把对应位置的轮隐藏,但功能正常。sprocket track无法隐藏。
履带的悬挂硬度和局部轮子的间距可以调节,需要用到物品栏第一格的工具箱
这个工具箱有两种模式,右击空气切换,压力表形状时可以调节履带的悬挂硬度,右键履带调高,shift右键调低,钻头形状时可以调节suspention track的位置,可以让单个轮左移或者右移。
类似链式传动箱的方块则是安装在suspention track上的,通入转速即可动态调节硬度
履带当然需要转速驱动,转速越快旋转越快,旋转方向不同可以让它切换前进或是后退。
有趣的是,履带不消耗任何应力,所以你可以使用部分模组添加的无消耗0应力马达来驱动履带,节省应力产生装置的空间。
好了,现在我们稍微改造一下一开始那个小结构吧
螺旋桨轴承(porpeller bearing)与风车轴承用法很像,需要在前面用风帆搭建结构。不同之处是螺旋桨轴承需要输入应力,而风车是产生应力。
搭建好风帆结构后右击接上去,当通入应力时,螺旋桨轴承可以提供推力。但是它的推力并不大,可能需要很多的风帆。
螺旋桨轴承不能当车轮轴承来用,因为它旋转的结构没有碰撞箱,同理物理轴承接上风帆也不能产生推力,注意别弄混了。
推进器(thruster)是一种方便的推进装置,只需要通入红石信号就能产生推力,红石强度越高推力越大。推力大小和最高速度都是可以在服务端配置文件里更改的。
它还可以增添升级(也就是用涡轮形状的thruster upgrade右键)来获得更大的推力。
小推进器(tiny thruster)是推进器的妹妹,它的推力大小和最高速度也是可以在服务端配置文件里更改的,独立于推进器。注意,它无法升级。
离子推进器(ion thruster)是消耗电力的推进器(只消耗FE,真正的无工质推进),需要供给FE(但无法调节开关,只能通过停止供给FE来关闭),它的推力和消耗的FE也可以在配置文件里更改。
纹理是mek风格,非常漂亮,可惜它运行时没有任何的动画。
液体推进器(liquid thruster)是消耗氢气的多方块推进器(并不符合名字)。它的搭建比较复杂,首先你需要用casing搭建一个一层厚的空心的筒子,再用exhaust把喷气的一面填满,剩下一面用casing填满,其中一格替换为valve,就可以向valve通入氢气来推进了。推进时会产生壮观的火焰,不过没有伤害。
这个引擎也不支持调节开关,除非停止供给氢气。
它的大小最小为3*3*3,最大为17*17*17(必须为正方体),当然大小越大推力越大,基础推力系数和消耗的氢气也可以在配置文件里更改。
船用引擎(propeller)是只能在水里提供推力的引擎,在陆地上无法产生推力(注意不要与之前的propeller bearing弄混)。与thruster一样只需要红石信号就能提供正比于信号强度的推力,且推力和最大速度可调(必须表扬tournament的可配置性和便利性),有大小不同的两个版本。
其它的物理化结构相关物件
气球(balloon),充能气球(powered balloon),浮子(floater),压载(ballast),彩色气球这几个好兄弟是与物质的密度和重量作用,让结构上升或下降的物品。
tournament提供的气球和充能气球是上面两个白色的,浮力和上升最大速度在配置文件里可调。
充能气球可以接入红石信号调节浮力,信号越强浮力越大。
注意,tournament提供的气球是高度越高,浮力越小。
eureka提供的气球是底下彩色的,没法调整浮力和速度,但很花里胡哨,也非常不错。
压载是深灰色的方块,默认重量在配置文件里可调,可以通过接入红石信号调节重量,信号越强重量越小。
浮子是最右边的灰色方块,只能在接触水时提供浮力,不知道为啥浮力不可调整,这使得它提供浮力方面比不过调整配置文件后的气球,只在不调整气球的浮力时才能胜过气球。
机翼(wing)和机翼动面(flap)是给固定翼飞机提供升力的物品,二者纹理一样,但它们只会和同类形成连接纹理。
机翼可以产生升力,速度越快,升力越大,注意一定是wing才能产生升力,flap不能。
机翼动面要配合动面轴承(flap bearing)使用,向已经物理化的轴承上搭建一些方向和横杆平行的flap,用强力胶粘起来,再右击轴承接上去。
接下来,在轴承背面输入应力,你就可以用红石信号控制轴承的偏转,哪面接收到信号就向哪面偏转,转速越快偏转越快(方向只取决于信号,与旋转方向无关)。当然,偏转的最大角度并不大,达到最大角度就不会继续偏转了。
当机翼动面被动面轴承偏转时,就会对结构产生与速度垂直的力,用于俯仰或是滚转。
wing没法产生这种力,只有flap才行,问就是mojang的神奇空气动力学。
二者都可以用染料右键染成你喜欢的颜色。
高度计(Altitude meter)和距离传感器(Distance sensor)是侦测位置相关的仪器。
高度计右键可以设定y坐标,在自身y坐标高于设定y坐标时会发出红石信号,左侧的高度计设定为0,右侧设定为130。
距离传感器可以侦测自身红点方向与最近遮挡方块的距离并只向正后方输出信号,距离越近信号越强,距离1格为15级信号,距离15格以上则不发出信号,如果配合thruster则可以做保持在恒定高度的悬浮载具。
动量轮(gyro)是保持恒定方向相关的元件。右键设定保持的方向,再通入转速,动量轮就会自动施加力来使物理结构朝向那个方向,转速越快施加的力越大。
如图不平衡支撑的载具在设定为保持朝上的动量轮作用下没有翻倒。
动量轮不像船舵,会让结构在竖直移动时偏移方向,所以是飞艇之类的保持平动的好选择,而且更可以通过应力的通断来控制是否平动,可以设计既需要垂直起降又需要滚转机动的飞机。
旋转器(spinner)是用于旋转的元件。固然,你可以在飞船前后安装一对相反方向的引擎让它旋转,但是你也可以采用这个更方便的选择。
放下旋转器时,上面的烟花火箭指示了旋转的方向,当通入红石信号时旋转器就会使飞船向烟花火箭头部的方向旋转,你可以任意更改旋转旋转器的朝向,显然,最多可以提供六种旋转方式。
同理,信号越强,旋转力越大,而且旋转力和最大角速度在配置文件里可调。
电脑程序
只要安装CC: VS,你就可以通过cc程序控制和管理结构。它提供的shipAPI和extendedshipAPI一定会成为你的利器,具体使用方法已经在CC: VS的wiki中写明。
如何控制
你可能会注意到,上面的元件都与红石和转速有关,因此,使用机械动力的遥控器和无线红石终端,我们就能简易地构建一套控制系统。
例如,在一个thruster旁边放置一个无线红石终端,再绑定遥控器的某个键,这样你按下这个键后,thruster就被激活,松开后就会中断。至于激活后让结构朝着什么方向移动或转动,这就取决于你的安放位置了。
总的来说,机械动力的遥控器是最简易便捷的的控制方式,然而,只有正确对应按键,动力装置和其功能,才能让你控制任何结构如臂使指。否则,可能就会发生飞船失控飞走,离你越来越远无法找回的悲剧。
开始发挥你的创意!
现在,你已经了解了所有的元件和功能,来一起创建千奇百怪的瓦尔基里载具吧!能做出什么,真的只取决于你的创造力和想象力!
一些常见问题
Q:如何用按键控制载具/如何开火/如何升空/如何调整载具的转弯和转速 | A:这些问题和瓦尔基里无关,不属于本教程解答的范畴,建议去补习相关模组,如机械动力及其附属的知识,然后再想想如何做 |
Q:物理化结构卡死在半空/抽搐/碰撞箱判定错误/突然消失 | A:固有问题,建议回档,如果没安装备份模组,就是毁档 |
Q:安装瓦尔基里后频繁报错 | A:瓦尔基里兼容性不佳,例如和tac,optifine都有兼容性问题,建议不要同时安装 |
Q:卡顿/退出世界时卡死 | A:固有问题,一般是内存占用过高导致,无法改善。尝试提升你的设备性能,更好的CPU可以降低内存占用(请勿滥加优化及辅助模组,其无法解决设备性能不佳带来的根本问题) |
Q:有手机版吗 | A:瓦尔基里的架构无法以任何方式在手机的java上正常运行,欢迎开发基岩版瓦尔基里 |
Q:我想使用瓦尔基里开服 | A:不要使用现成的,交钱即用的面板服,请自己搭建(咨询多个面板服商家后的结果)。注意,瓦尔基里对服务器要求较高 |
Q:和正在开发的机械动力:航空学有何区别 | A:目前来看,航空学和瓦尔基里运用的方式相同,但引擎不同。航空学的引擎据开发组宣称及演示,拥有更多功能 |
Q:我想获取瓦尔基里及其附属的最新版本/我想向开发者报告问题 | A:使用github,或是直接加入discord反馈,curseforge和modrinth上反馈的问题很可能无法被开发者看见 |
Q:能不能造xx | A:自己试试呗 |
如有任何其它问题,也欢迎在评论中反馈。