跳转到内容

Rust 地图水道:切出海峡和内湾

快速回答: 按 L 打开水道工具,然后调高切口得到横跨整张地图的水道,或调高内湾得到在内陆止步的峡湾。想自己放置,就点绘制切口,在地图上拖出一条水道,再按应用。你随机出的陆地保持原位,水是从中间切开的。

水道是干净利落地横切整张地图的开阔水域。它不是海湾:它从一边通到另一边,切断路径上的每一块陆地,所以一个切口就能把一块大陆变成两座岛,中间是真正的海峡。每个切口都是穿过你的陆地瞄准的,所以即使在一座小岛上,每个切口也会做出一个海峡。内湾是另一种切口:它从开阔的海里伸进来,在内陆止步,用来做峡湾或港口。

这让水道成为给你已经喜欢的地图加水的最快方法。你随机出的陆地、山和海岸线都保持在原地,水是从它们中间切过去的。

Drizzza 的视频是在画好一座岛之后,在这座画出来的岛上切水道:

水道是它自己的工具,是工具栏里画笔按钮右边的方形按钮。点击它,或按 L。

地图上方会打开一个小面板,和画笔面板的方式一样。打开水道会关掉当时打开的画笔,按 Escape 可以再次关闭它。

Crucible Heightmap 里的水道工具,它的工具栏按钮和面板,面板里有切口和内湾步进器、水道滑块以及绘制切口按钮

这里每一项都从零开始,所以只有你要求时,地图才会有水道。

  • 切口(0 到 16):有多少条水道横穿地图。因为切口是全局的,这个数量在单岛地图和三十座岛的地图上含义相同。想把地图分成几大块,从 1 或 2 开始,想要破碎、水道密布的世界就往上调。
  • 内湾(0 到 12):往海岸里切多少个内湾。每个在海边大约 200 到 280 米宽,向内陆的尽头逐渐收窄,在入口处能容下一座港口或一个渔村。
  • 变体(0 到 1):在不动你种子的情况下,把切口和内湾滑到另一种布局,和形状变体重新随机轮廓是同样的方式。你喜欢地图但不喜欢水流向哪里时用它。
  • 宽度:随机切口有多宽,以开阔水面的米数显示。玩家最宽的船是 18 米,所以 36 米或更宽能让任何船都有转向的空间;在小地图上,滑块的底部会比这更窄,这时读数会变成琥珀色。
  • 宽度随机(0 到 1,默认 0):把宽度拉开。在 0 时每个切口一样大,在 1 时有些切口是小溪,有些则开成宽阔的海峡。
  • 边缘变化(0 到 1,默认 1):河岸有多参差。在 0 时切口有两条笔直的边。默认值让它沿着长度方向有海湾、岬角和半岛,所以看起来像天然的水道,而不是运河。
  • 深度(2 到 30 米,默认海洋):切口里的水有多深。在最高处,它和开阔的海一样深。水上基地只能放在 2 到 4 米深的水里,12 米或更浅的话,Crucible Creator 里的桥墩还够得着。

Crucible Heightmap 里一张 Rust 自定义地图,被开阔水域的水道干净地切过,把陆地分成中间有海峡的独立岛屿

绘制切口会打开一个绘图板,用导出地图的颜色显示你的地图,你在上面手绘水。同样的面板行就在绘图板旁边,所以你可以一边随机切口一边绘制,不用关闭任何东西。

Crucible Heightmap 里的水道绘图板,整张地图和穿过它的切口水道,光标上的画笔圆环,以及画布旁边的水道控件

用绘制工具(1):

  • 左键拖动切出一条水道。它沿着你画的线走,岸边和边缘变化与随机切口一样。按住 Shift 画直线。
  • 右键拖动把陆地放回去。它是你所画水道的橡皮擦,所以只会去掉你加的水,不会凭空造出本来不存在的陆地。
  • 光标上的圆环就是下一笔的宽度。

绘制宽度以米设定这个宽度,从 20 到 600,所以不管你的地图多大,含义都一样。绘制时 [ 和 ] 可以微调它。平滑度会让你接下来画的线变圆润,所以手抖也能得到平滑的水道。

绘图板打开时预览是开着的:显示真实的地图,里面有你的切口,包括河岸和浅滩。关掉它就能在朴素的地图上绘制,这时画出来的切口会显示成水道蓝色,带浅色轮廓。滚轮最多放大到 6 倍,Space 拖动或中键拖动平移,0 回到整张地图。

Pick 工具(2)用来处理你已经画好的切口。点击一个切口来选取它。Ctrl + 点击选取更多切口或取消其中一个,Shift + 点击选取列表里从第一个选取到那个之间的每个切口。然后:

  • 拖动它来移动,或者用方向键微调(按住 Shift 步长更大)。选了多个时,它们一起移动。
  • 修改它的切口宽度和平滑度;选了多个时,每个都会采用新值。平滑度总是从你画的原始线条开始,所以 0 会把原来的还给你。
  • 渐缩让它朝你画完的那一端收窄,用来做通向尽头的峡湾,或者低于 0 时朝那一端变宽,用来做通向大海的海湾。它的平均宽度保持不变。这一行始终在那里,什么都没选时会变灰。
  • 删除会删除它,或者删除每个选中的切口。
  • 面板底部切口列表下面的合并切口,会把选中的切口原样合成一个切口:每个保留自己的形状、位置、宽度、平滑度和渐缩。从那以后它们显示为一行,并且一起选取、移动、删除并接受滑块的改动。切口和你放回去的陆地永远不会合并在一起。

绘图板还会列出你画的每一个切口,填满控件下面的空间,再开始滚动。悬停在一行上能在地图上看到那个切口,点击它来选取;Ctrl 和 Shift 在这里也有效。

一直没有通到开阔大海的切口会在那个列表里被标出来。Rust 只把汇入地图边缘的低处水域算作海洋,所以一个和大海隔绝的切口会作为封闭的水池输出,而不是水道。它宽度旁边的延伸按钮会把它较近的一端笔直地延伸出去,直到碰上开阔的海。

选取一个随机生成的切口,绘图板就会提供保留此切口(K)。它会把那个切口变成你画的切口之一,路径和宽度不变:从此它归你来移动、缩放、渐缩和删除,变体和生成不再移动它,切口数量会减一。

撤销和重做涵盖每一笔、移动、缩放、删除、合并、清除和保留:用绘图板下面的按钮,或者 Ctrl+Z 撤销,Ctrl+Shift+Z 或 Ctrl+Y 重做。应用(或 Enter)会把你画的东西切进真实的地图并关闭绘图板,以后你可以重新打开它,继续编辑同样的切口。取消会关闭绘图板,并把一切还原成原来的样子,包括滑块。Escape 先放掉选取;什么都没选时它会关闭绘图板,如果你改过东西,会先询问。

绘图板的按键列在键盘快捷键里,你可以在设置、按键设置里重新绑定它们。

你画的任何东西都是加到滑块随机的切口之上,不会取代它们。你可以随机两个海峡,再手绘你真正想要的北边那条小溪。宽度随机和变体也会给你画的切口各自的随机宽度,但不会改变路径。随机的宽度不影响它们。

你画的笔画和水道设置是地图的一部分,所以它们在重新生成或重新随机盐值后仍会保留:陆地在下面重新随机,你的水道留在你放的位置。绘制切口旁边的垃圾桶会丢弃手绘的,不动随机的那些。

画出的切口通常属于地图,而不是它穿过的陆地,所以之后移动岛屿会把岛从它自己的水道下面滑走。烘焙到岛屿中解决这个问题:每一笔都会交给它切过的那座岛,从那以后这个切口会随那座岛移动、旋转和缩放。烘焙时地形本身不会有任何变化。

内湾从一开始就属于它们的岛,所以也会随岛移动。选中一座岛后,面板会列出它烘焙的切口和内湾,每个都有一个按钮,可以移除它并把陆地还回来。

随机的切口按设计留在地图上,因为它们是地图的属性,而不是任何一座岛的属性。陆地改变时它们会穿过你的陆地重新瞄准,所以移动或缩放一座岛会带着它们一起动;保留一个切口就能把它钉在原位。

水道改变的是地形本身,而不只是画面。这意味着它们会不费力地延续到下游的一切:

  • 导出的 .map 文件和 RAW 高度图。
  • 游戏内视图,你可以飞过海峡,感受它的规模。
  • Worldgen:通到海里的切口中的水是真正的海洋,带有对应的 Ocean 和 Oceanside 拓扑图层,所以 Rust 把它当成海,而不是地面上的一个洞。
  • 20 米是仍能开出水的最窄的手绘切口。在同一条线上再画一遍会把它拓宽。
  • 画出你想要的线,把参差交给边缘变化。试着手绘出那种起伏,会和已有的河岸噪声互相打架。
  • 要做港口,调高内湾而不是自己画:内湾按构造从开阔的海开始,所以永远不会变成封闭的水池。
  • 如果你想要的是分隔的陆地块之间有水,而不是穿过一块陆地,完整多岛屿地图从一开始就随机出那种形状,水道仍然可以叠加在上面使用。