第八十八章 place-如何生成一個(gè)村莊
在第八十一章,我們了解了基巖版中一條用來儲(chǔ)存、加載和刪除結(jié)構(gòu)的指令:/structure。那么在Java版,有沒有類似的指令呢?
并沒有,但是有一條指令卻擁有生成結(jié)構(gòu)的功能。這個(gè)指令就是:
/place
作用:放置地物、拼圖、結(jié)構(gòu)或結(jié)構(gòu)模板
存在版本:Java1.19-今
需要權(quán)限等級(jí):Java-2
需要作弊:是
格式:
/place feature <地物ID>[放置位置]
\\在執(zhí)行地點(diǎn)或指定位置放置一個(gè)地物\\
/place jigsaw <目標(biāo)池><目標(biāo)名稱><層數(shù)>[生成位置]
\\在執(zhí)行地點(diǎn)或指定位置以拼圖方塊的模式生成結(jié)構(gòu)\\
/place structure <結(jié)構(gòu)ID>[生成位置]
\\在執(zhí)行地點(diǎn)或指定位置生成一個(gè)結(jié)構(gòu)\\
/place template <結(jié)構(gòu)模板ID>[生成位置][旋轉(zhuǎn)角度][鏡像方式][完整度][種子]
\\在執(zhí)行地點(diǎn)或指定位置以指定的方式生成一個(gè)結(jié)構(gòu)模板\\
這個(gè)/place指令可以放置地物、拼圖、結(jié)構(gòu)和結(jié)構(gòu)模板這四種東西,后三者其實(shí)本質(zhì)上都是結(jié)構(gòu),唯獨(dú)這個(gè)『地物』是什么?
地物(Decorators)并沒有一個(gè)明確的定義。大體來說,地物指的就是地上的一些東西,比如樹、湖泊、植物叢、各種圓盤、遠(yuǎn)程折躍門等等,你能想到的、不能想到的基本上都可以算作是地物。
我們來嘗試簡(jiǎn)單放置幾個(gè)地物(注:請(qǐng)確保放置地點(diǎn)周圍沒有重要的東西,因?yàn)榈匚飼?huì)覆蓋大多數(shù)方塊,甚至包括基巖):
/place feature minecraft:birch ~~~
這將會(huì)放置一顆普普通通的白樺樹。
/place feature minecraft:bonus_chest ~~~
這將會(huì)在你周圍放置一個(gè)獎(jiǎng)勵(lì)箱。
/place feature minecraft:iceberg_blue ~~~
這將會(huì)在你的位置(你最好飛起來)放置一個(gè)由藍(lán)冰組成的冰山。
需要注意的是,地物基本上都有生成要求,如果沒有達(dá)到要求則會(huì)放置失敗,或看起來成功了但實(shí)際上沒有放置。比如:
/place feature minecraft:ice_spike ~~~
這將會(huì)在你的位置上放置一個(gè)冰刺,但如果放置地點(diǎn)下方第一個(gè)非空氣方塊不是雪塊的話將放置失敗。
由于地物有很多,所以這里就不細(xì)講了,你可以前往Minecraft Wiki的『命令/place(Java版)』頁面查看所有可使用的地物以及其生成條件。
jigsaw子命令看起來十分熟悉。沒錯(cuò),這不就是拼圖方塊嘛!只不過在這邊是用命令替代了拼圖方塊的作用。拼圖方塊我們上一章才講過,你應(yīng)該還記憶猶新,讓我們來試一下:
/place jigsaw minecraft:village/savanna/houses minecraft:building_entrance 1 ~~~
這將會(huì)在指令執(zhí)行地點(diǎn)以拼圖方塊的模式,從目標(biāo)池(模板池/結(jié)構(gòu)池)『minecraft:village/savanna/houses』中隨機(jī)抽取一個(gè)模板(結(jié)構(gòu)),然后對(duì)接該結(jié)構(gòu)中叫做『minecraft:building_entrance』的拼圖方塊,并僅生成1層,最終就會(huì)生成一個(gè)熱帶草原村莊的房子或農(nóng)田,并替換掉結(jié)構(gòu)內(nèi)所有拼圖方塊。
因?yàn)檫@個(gè)子命令和拼圖方塊的功能完全一樣,所以這里也不細(xì)講。
structure子命令應(yīng)該是這個(gè)/place指令最令人激動(dòng)人心的功能。通過它,你可以直接生成一個(gè)結(jié)構(gòu)!舉個(gè)簡(jiǎn)單的例子:
/place structure minecraft:village_plains ~~~
這將會(huì)在命令執(zhí)行位置(你的位置)生成一個(gè)平原上的村莊,也就是最普通的村莊。
最后的template子命令有點(diǎn)類似于jigsaw子命令,但和jigsaw不一樣的是template可以直接生成結(jié)構(gòu)模板(相當(dāng)于直接用結(jié)構(gòu)方塊生成),不需要采用拼圖方塊那么復(fù)雜的模式來生成。舉個(gè)例子:
/place template minecraft:village/savanna/houses/savanna_small_house_1 ~~~
這將會(huì)在你的位置生成一個(gè)熱帶草原村莊的小房子。
但其實(shí)template子命令并沒有那么簡(jiǎn)單。請(qǐng)你往回翻一翻,仔細(xì)看一看這家伙后面的可選參數(shù),想一想,你就會(huì)想到兩個(gè)東西:
『結(jié)構(gòu)方塊的加載模式』和 『/structure load子命令』!
沒錯(cuò),這家伙基本上等價(jià)于基巖版的/structure load子命令,你可以通過它來生成你自己創(chuàng)建的結(jié)構(gòu)!舉個(gè)例子:
假設(shè)你自己創(chuàng)建了一個(gè)結(jié)構(gòu),叫做『minecraft:my_matchbox』,這個(gè)結(jié)構(gòu)長(zhǎng)這樣:
--第一層
土土土土土↑
土土土土土Z
土土土土土|
土土土土土|
土土土土土|
←X———
--第二層
土空土土土
土床空臺(tái)土
土床空箱土
土空空空土
土土門土土
--第三層
土土土土土
土空火爐土
空空空箱土
土火空火土
土土門土土
--第四層
草草土土草
土土土土土
土土土草土
土土土土土
土土土土土
圖例:
土······泥土
草······草方塊
火······火把
空······空氣
爐······熔爐
箱······箱子
臺(tái)······工作臺(tái)
床······白色床
門······橡木門
現(xiàn)在,我們嘗試通過/place指令生成這個(gè)結(jié)構(gòu):
/place template minecraft:my_matchbox ~~~ none none 1.0 114514
這將會(huì)以100%完整度、114514為種子在指令執(zhí)行位置(也就是你的位置)生成一個(gè)沒有鏡像、沒有旋轉(zhuǎn)的『minecraft:my_matchbox』結(jié)構(gòu)。
『旋轉(zhuǎn)角度』參數(shù)可填寫的內(nèi)容和基巖版的大不一樣,你可以填寫:
none——不旋轉(zhuǎn)
clockwise_90——順時(shí)針旋轉(zhuǎn)90°
180——旋轉(zhuǎn)180°
counterclockwise_90——逆時(shí)針旋轉(zhuǎn)90°
舉個(gè)例子:
/place template minecraft:my_matchbox ~~~ counterclockwise_90 none 1.0 114514
這將會(huì)以100%完整度、114514為種子生成一個(gè)繞著指令執(zhí)行位置逆時(shí)針旋轉(zhuǎn)90°(順時(shí)針270°)的沒有鏡像的『minecraft:my_matchbox』結(jié)構(gòu),也就是變成下面這樣:
--第一、三、四層
略
--第二層
這里是沒有↑
逆時(shí)針旋轉(zhuǎn)Z
九十度且沒|
有鏡像的原|
本生成位置|
←X———|
土土土土土|
土臺(tái)箱空土|
土空空空門|
空床床空土|
土土土土土|
『鏡像方式』參數(shù)可填寫的內(nèi)容也不一樣。你可以填寫:
none——無鏡像
left_right——關(guān)于生成位置基點(diǎn)的X軸鏡像(相當(dāng)于結(jié)構(gòu)方塊中的←→)
front_back——關(guān)于生成位置基點(diǎn)的Z軸鏡像(相當(dāng)于結(jié)構(gòu)方塊中的↑↓)
舉個(gè)例子:
/place template minecraft:my_matchbox ~~~ none front_back 1.0 1919810
這將會(huì)以100%完整度、1919810為種子生成一個(gè)相對(duì)于放置位置Z軸鏡像且無旋轉(zhuǎn)的『minecraft:my_matchbox』結(jié)構(gòu),也就是變成下面這樣:
--第一、三、四層
略
--第二層
這里是沒有↑土土土空土
關(guān)于Z軸鏡Z土臺(tái)空床土
像且沒有旋|土箱空床土
轉(zhuǎn)原本應(yīng)該|土空空空土
的生成位置|土土門土土
←X———|——————
『完整度』和『種子』參數(shù)就不講了,很簡(jiǎn)單。
這就是本章的全部?jī)?nèi)容。
附表:/place歷史
Java
1.19——加入了/place,替代了/placefeature
......
......
......
......
/placefeature
作用:放置地物
存在版本:Java1.18.2-1.19 |基巖1.18.30
需要權(quán)限等級(jí):Java-2 基巖-1
需要作弊:是
格式:
/placefeature <地物ID>[放置位置]
作用你應(yīng)該知道,不講了。
附表②:/placefeature歷史
Java
1.18.2——加入了/placefeature
1.19——移除了/placefeature,改用/place feature
基巖版
1.18.30——加入又移除了/placefeature