しろうとのメモ

しろうとがなんかメモするところ

マイクラの燃料話(木炭と原木板材編・竹もあるよ)

ざっくり説明

  • 竹は竹ブロックから竹の板材を作って燃料にしたほうが、竹で作った棒からはしごを作って燃料にするより、ちょっとお得。
  • マングローブの木は根が板材と同じ効率の燃料になるので、原木をすべて木炭にすることが出来る。
  • マングローブの芽とサクラの苗木は2x2に植えて骨粉で育てると、空間あたりの原木などの個数が多くなるのでおすすめ。
  • トウヒやシラカバも便利。
  • 通常の木材も原木をそのまま燃料にせず板材を作って燃料にしたほうが、だいぶお得。

詳細説明

竹の話

竹をそのまま燃料として燃やすより、1.20から作成可能な竹の板材を作って燃料にするほうがお得 である。 1スタック(64個のアイテム)を精錬するのに必要なアイテム数で換算すると、竹 は256個なのに対し 竹ブロック と 竹の板材 は約42.67個 なので、 竹の板材は竹4.5個相当(竹ブロックが竹9個、竹ブロックから竹の板材は2個出来る)であることから、 42.67*4.5≒竹192個相当で、そのまま燃やすよりも少なく済むことが分かる。

竹から棒を作り、はしごにすると効率がいい、というのは昔の話で、実際同様の計算をすると、 はしご を42.67個作るのに必要な 竹 は199.11個となるため、前述の竹の板材に近い効率となっていることが分かる。

なお、竹ブロックを精錬して木炭にすることは出来ない。

マングローブや他の木の話

マングローブの木は根が板材と同じ効率の燃料になるので、原木から板材を作らずとも、根を燃料にして、そのまま木炭にしやすいマングローブの葉は結構な量が繁茂し、これを伐採しないと原木にたどりつかないが、コンポスターに入れれば骨粉になるので、シルクタッチ付きのツール(葉はクワ、原木と根はオノ)で採取するとよいだろう。マングローブの芽はマングローブの葉に対し、下から骨粉を4回使い、四段階に成長させて採取するのが早い。

マングローブの芽を 2x2 で固めて植えて育てると、1本単独で植えたときよりも原木や根、葉が密に生成される(1本に比べて3倍弱)ので植林の際にはおすすめである。 稀に根で芽がつぶされてしまうことがあるが、その場合は根を1つ削り、芽を植え直せばよい。骨粉を使うと効率的だ。 木の高さは最大28m、縦横は最大18m(ツタ含む)と巨大になるため、伐採は相当大変になるだろう。ハシゴをつけた塔を作り、上の方から伐採することをおすすめする。

いろいろな木を比較すると以下のようになる。生成されたブロックの個数は、11回の試行で得られた個数の平均±標準偏差を示している。(範囲fill-replaceで数えている)

  • マングローブの巨木を伐採すると、原木は64個±17個くらい、根は86個±21個くらい取れるが、経験的にはダイヤ斧とクワで4~5分くらいかかる。
  • サクラの木マングローブと同様に2x2に苗木を植え、密(1本に比べて3倍強)に育てることが出来る。原木は63個±10個くらい取れ、原木を採るのにかかる時間は2分くらいである。ダークオークのように一段下に植えることで、原木が手の届く範囲に生成されるが、葉が密に茂るので、適宜クワなどで落としながら伐採するとよい。
  • 同様に2x2で植えると巨木になるトウヒの巨木場合、原木は87個±15個くらい取れ、原木を採るのにかかる時間は2~3分くらいである。下から階段状に採っていくやり方で、苗木は4本確保出来ればよいので葉を刈るのは最低限で済むだろう。
  • シラカバの木 を12本育てて伐採すると、だいたい原木が72±3個くらい取れ、かかる時間は1分半くらいである。

やはり序盤はシラカバ安定なのかもしれない。アカシアは伐採に苦労するし、オークは稀に育ちすぎるので除外した。環境によっては高さ制限ブロックをうまくつけて育てたいところである。

木炭の話

通常の木材(ネザーの木材は燃料に使えない)も同様に、原木をそのまま燃料として燃やすより、板材を作って燃料にするほうがお得である。 1スタックを精錬するのに必要なアイテム数で換算すると、原木も板材も 42.67 個であるが 原木から板材は4個出来る ことから、 1スタックを精錬するのに必要な板材は原木換算で 10.67 個相当、という計算になる。原木を75個貯めて、原木11個から板材を44個作れば、原木64個を木炭64個に精錬するには丁度良い燃料になる ということである。

見方を変えると、1スタックを精錬するのに必要な8個の木炭は原木換算で (64+10.67)/8≒9.33個で出来る、という計算なので、原木由来の板材を6個燃やして原木8個から木炭8個作り、それを燃やして原木64個から木炭64個を作ったほうが、原木由来の板材43個(原木11個相当)を燃やして64個の木炭を作るより1個だけ原木を節約出来る、とも見える。実際、最小限の木炭を作って燃料を入れ替える方法(A)と、板材だけを燃やす方法(B)を比較すると、以下のようになる。

  • (A) 実は板材6個を燃やして出来る木炭の数は8個ではなく9個なので、2個の原木から8枚の板材を作ると、9個の原木を木炭に出来、板材が2個余る。燃料を入れ替え原木を補充し、64個の原木を8個の木炭で精錬すれば64個の木炭が出来るから、最終的に、原木75個から木炭65個、板材2個が出来る。
  • (B) 原木11個から板材44枚を作り、原木64個板材44個をかまどに入れて放置すると、最終的に、原木75個から木炭64個、板材1個(燃え残り)が出来る。

(A)のほうが木炭を余計に作っている分、手間と時間がかかる。どちらを取るかはお好みで、といったところだろうか。

なお、板材からさらにハーフブロックにすると燃焼効率がよい、というのは統合版の話であり、Java版には適用されない。

他の燃料の話

石炭については鉱石採掘の記事で触れているので、そちらを参照してほしい。 shirohtoda.hatenablog.jp

冒険が進み鍾乳石やマグマ溜まりを見つけることが出来れば、溶岩バケツを燃料とすることも視野に入るかもしれないが、 燃焼力がありすぎてもったいないからホッパーとチェストを繋いで…などという方向に話が進みそうなので、 これは先の話としておくのがいいだろう。 大釜やバケツのために鉄も結構必要になる。

まとめ

木炭や石炭には燃料以外の需要もあるので、なんぼあっても良いものですからね、貯め込んでおきましょう、といった具合である。

マイクラの地下鉱石を採掘するのにおすすめの高さ(Java版 Ver.1.20.2 対応)

この記事は以下の記事から採掘関係の内容を切り出し、Ver.1.20.2 に合わせたものである。

ざっくり説明(Ver. 1.18以降)

  • どこか浅いところ(y=96 以下)を掘り進めて石炭を貯めよう。
  • y=16 で鉄を採掘しよう。精錬用の燃料に注意しよう。
  • 鉄のツルハシを量産出来るようになったら y=-54(ダイヤモンド) を狙おう。
  • 必要に応じて y=48 (銅) や y=-16 (金),他の高度の採掘を進めよう。

石炭は、石がむき出しになっている土地や山肌、峡谷や洞窟でも、よく見かけるようになったので、 こまめに回収するだけでも結構貯まるが、実は空洞に触れている部分は埋蔵量が低い。 量を回収したければ y=96 以下の浅めの地下を採掘をしたほうが、石炭は出やすい。 ちょっとした丘や山などがあれば、仮拠点として少し掘るもよし、 ブランチマイニングの練習を兼ねた炭鉱扱いにするもよし、 整地と称して削ってしまうもよし、であろう。 ちなみにオーバーワールドの敵は基本的に明るさが1以上あれば沸かない(1.18以降)ので、 採掘や整地跡には松明をゆるく置いておくとよい。

地上にある海の高さはy=63なので、その高さに近しい平地で石炭を採掘しようとすると、数ブロック下を掘る必要がある。 銅が最も取れる深さはy=48であることを覚えておくと、石炭の出て来る量は若干減るが、銅と石炭を一緒に掘れておすすめである。

当座の燃料や松明の材料は木炭や竹などで代用する、避雷針(銅)などは不要、というのであれば、 いきなり y=16 を目指し、石炭や銅はついで、くらいでもいいかもしれない。

なお、山岳系バイオームの場合、他の高度で石炭などを採掘できる可能性がある。 特殊な分布を含むバイオームや高度については後述する。

詳細説明

1.18 以降の地下資源採掘におすすめの高さは、鉱石の出現割合をもとにピックアップすると、だいたい4つになる。 出現割合が最も高い(先頭に示した)もの以外は、矢印方向に行くほど出現割合が高くなるが、 相対的に他のものの割合が変化するので、せいぜい±1層(高さ±4相当?)増減する程度でよいだろう。

(マグマ溜まりとは異なる)地下マグマ水位はy=-55, 岩盤は y=-60 以下に出現する。

y=0 より高いところの採掘は、石のツルハシでもなんとかなる。 石のツルハシではアイテムが回収できない鉱石(ダイヤモンド鉱石・エメラルド鉱石・金鉱石・レッドストーン鉱石)は、基本的に y=0 以下に存在する。 さらに、y=0 以下になると現れ始める深層岩は、石のおよそ倍の硬さがあり、y=-8以下で完全に石の代わりに置き換わる。 というわけで、ダイヤモンドを狙うのは鉄のツルハシを十分用意出来るようになってからのほうがよいだろう。 もちろんダイヤモンドのツルハシは積極的に作って使うべきだし、エンチャント(効率強化,幸運3,シルクタッチ)も大事な要素になる。

ダイヤモンドの分布は 1.18 において y=16 から y=-64 まで下に行くほど出現割合が増える三角型の分布をするようになったが、 1.20.2 からこれに加えて y=-4 から y=-64 までの一様分布で8個単位で生成、ただし空気に触れる箇所の場合は1/2の確率で無かったことになる、というものが増えた。 そのため、ダイヤモンドの採掘に最も効率的なのは、1.20.2 以降に生成されたチャンクでの地下ブランチマイニング、ということになる。 地下空洞の探索でも見つかる頻度は上がったわけだが『空気に触れる箇所の場合は1/2の確率で無かったことになる』という影響が体感でどれくらいになるかは判然としない。

ラピスラズリの最頻出現高度は y=0 なのだが、他の鉱石の出現割合が下がるなど、あまり割に合わなさそうなので、 y=16, y=-16 の採掘ついでくらい、で丁度いいだろうとは思う。 どうしてもラピスラズリを集中的に狙いたいときは y=0 を攻めるのもよいかもしれない。(ただ、個人的にはこの高度でわざわざ採掘したことがない。)

レッドストーン鉱石もまた深く下がるほど出現割合が高いので、ダイヤモンド鉱石の採掘と合わせて回収しておくとよいだろう。 マルチサーバでのプレイだと、ダイヤモンド鉱石狙いのブラマイ跡に放置されていたりする印象があるので、そのあたりを漁るのもよいかもしれない。

三層型ブランチマイニングのすすめ

ダイヤモンド目的で縦2列を掘るブランチマイニングを行うのであれば、y=-54に加えて、y=-50, y=-58と3層で採掘すると効率が良い。 マグマが流れ込んでくるリスクは下に行くほど高くなるが、発見した際はすぐ数歩退いて自分の足下の一歩先を掘れば、マグマはそこで止まるはずだ。

  • y=-50 は頭上の y=-48 から足下の y=-51 を探索出来る。一歩先の足下が穴になった場合、落下するとマグマである可能性が高い。
  • y=-54 は頭上の y=-52 から足下の y=-55 を探索出来る。一歩先の足下がマグマになる可能性が高い。
  • y=-58 は頭上の y=-56 から足下の y=-59 を探索出来る。前面、上面、側面からマグマが流れ込んでくる可能性が高く、より危険である。
  • y=-60 からは岩盤が出現しはじめるのでダイヤモンドが減ることから、あまり考えなくてもよさそうである。

ブランチマイニングの支線は層ごとに1ブロックずらしておくと、見落としが減るだろう。 いずれにせよ、ブランチマイニング中にダイヤモンド鉱石を見つけたら、その周辺、特に上下の方向を掘り、他の鉱石が隠れていないかよく観察することが大事である。

特殊な分布を含むバイオームや高度について

特殊な分布を含むバイオームや高度は、以下の通りである。

  • 山岳バイオーム(後述)
  • 鍾乳洞(銅の出現量が多い)
  • 高度y=1以上(銅の鉱脈)
  • 高度y=0以下(鉄の鉱脈)

山岳バイオームは、十分な高さを持つ山頂系のバイオーム(尖った山頂、凍った山頂、石だらけの山頂、の3つ)と、 そこまで高くはない斜面系のバイオーム(草地、林、雪の斜面、サクラの林、の4つ)に分類される。 山岳バイオームでは、y=136 以上に丘や山などがあれば石炭鉱石が追加で一様分布するので、 このあたりの高さを採掘してみると石炭が手に入りやすい。

山頂系のバイオームに当たった場合、鉄 y=232 近辺,エメラルド y=224 近辺が狙い目となるが、 この高度は概ね山頂部にあたるため、露出して見える鉱石に比して採取出来る量は意外と少ないかもしれない。 そもそも、ここまで高い山頂部が生成されること自体があまり多くない。 シングルユーザーモードでワールドを作成する際にシングルバイオームで「尖った山頂」だけで作ってみたり、 ノーマルで作ったあとに locates で jagged_peaks, frozen_peaks, stony_peaks を探して回ってみると気づくだろう。

鍾乳洞に限り、銅の出現割合が通常のバイオームより高くなっている。 分布は三角分布であることに変わりないため、 鍾乳洞の近辺で高さ y=46 を採掘すると銅がよく採れる、ということになる。

銅の鉱脈は y=0 以上(54以下?)、鉄の鉱脈は y=0以下(-54以上?)で見つかるものとされている。 鉱脈は空洞生成の影響を受けにくいようで、鍾乳洞や地下洞窟などで見つかりやすい。 地下に大きな空洞を見つけたときは、露出面をよく観察するとよいだろう。 銅の鉱脈であれば花崗岩や銅の原石ブロック、 鉄の鉱脈であれば凝灰岩や鉄の原石ブロック、 を発見出来たらチャンスである。

いずれにせよ、山岳バイオームの中でも十分な高さのある山頂系に当たること自体がレアであること、 鉱脈類は採掘では狙って当てられる気がしないので、運が良ければ見つかるだろうくらいの心構えでよいのかもしれない。

参考:

余談

Ver. 1.17時代までに生成されたチャンクの場合、y=0 以上の高度は昔の分布に従っている。 y=0 より低いところは、サーバがバージョンアップしたときに後から生成されるので、1.18以降の分布に従っている。 つまり 1.17以前からあるワールドについては、ダイヤモンドが存在する層が y=11 にも残っている可能性がある。 周辺の鉱石も石なので採掘が速いという利点はあるが、1.18 以降の y=-54 近辺と比べると分布の割合は低いようだ。 y=11 を掘っていて途中から新しいバージョンのチャンクに入り、一切ダイヤモンドが見えなくなった、なんてこともありえる。 十分にエンチャントされたツルハシがあるのなら、素直に y=-54 のほうを狙うほうが確実かもしれない。

1.16.5 と 1.20.1 でワールドを作成し、255x255x4の領域を鉱石置換法で計測した結果、 1.16.5 の y=11 (y=10~13) では3ワールド試して 307, 299, 327個、1.20.1 の y=-54 (y=-55~-52) では同様に 491, 418, 338個であった。 空洞に当たるとダイヤモンド鉱石を発見出来る割合は下がるらしい。 (1.19以降 /gamerule commandModificationBlockLimit で一度に置換出来るブロック数の上限を引き上げることが出来るので、 鉱石置換法で計測しやすくなった。)

おまけ:精錬のための燃料の話

shirohtoda.hatenablog.jp

マイクラの農場のサイズと明るさについて考える

農作物の収穫とエンチャントの関係

Minecraft の農作物4種は、種が出てくる 小麦&ビートルード と、種が出てこない ニンジン&ジャガイモ に大別される。
完全に育った作物をエンチャントつきの道具で収穫するときの期待値は、ざっと以下のような値となっている。
(小麦&ビートルードの数値はMinecraft Wikiにある数値で、ニンジン&ジャガイモはシングルモードで800ブロックの農場を作り収穫した結果を基にした筆者調べの数値。Java Edition 1.19 ベースである。)

品種         | 付与なし | 幸運 I  | 幸運 II | 幸運 III 
小麦・ビートルード  |      1  |      1  |       1 |      1 
上記作物の種子    |   1.71  |   2.28  |    2.85 |   3.42 
ニンジン・ジャガイモ |    3.7  |    4.3  |     4.9 |    5.4 

たとえば 100 ブロックの農場に小麦の種を植えて、充分育ったあとに幸運III のツールで収穫すると、小麦が100個、小麦の種が342個くらい収穫出来るだろうし、同じようにニンジンを植えて収穫すると、おそらく540個くらいを収穫することが出来るだろう。もちろん種、ニンジン、ジャガイモの収穫量は運次第で変わるし、うっかり育ちきってないものを収穫してしまうかもしれないので、実際の収穫量は若干変化するだろう。(手元の収穫では100ブロックあたりの収穫に対する標準偏差は10~15程度あった。)

要点をざっと並べると以下の通りだ。

  1. 幸運のエンチャントは小麦とビートルードそのものの収穫量に影響しないが、種の収穫量は増える。
  2. 幸運のエンチャントはニンジンとジャガイモの収穫量を増やす。
  3. ニンジンとジャガイモの1ブロックあたりの収穫量期待値は、エンチャントの有無に関係なく、小麦・ビートルードの種の収穫量期待値に+2した数になるようだ。

そしておそらくだが、水流収穫などで収穫を自動化した場合は「付与なし」の数値が適用されると思われる。なので水流収穫には小麦やビートルードが適している。

適切なサイズの農場とは?

さて、上記の前提をもとに、「幸運IIIエンチャントつき道具を持ってインベントリいっぱいに農作物を収穫するのに適切なサイズの農場はどれくらいか?」を考えてみたい。
プレイヤーが持てるアイテムを最大 34スタック(道具 と 食料 の2スタックを引いている)と考えれば、その土地で収穫した結果獲れるものの数が34スタックを越えない程度に最大になるには、ざっくりどれくらいの土地の広さが必要か?
という話である。ただし、植え直しはすぐ行うものとする。つまり収穫した農作物の一部を植え直しに使うので、全量を持ち帰れるわけではないものとする。

とはいえあまりギリギリを攻めた農地作りをする気もないので、ここはひとつ簡単に作れる範囲で考えてみることにしよう。
水源を中心に置いた農地は 9×9ブロックの81ブロック、そのうち水源で1ブロックをとるので、80ブロックになる。この農地を1ユニットと呼ぶことにする。
1ユニットの農地を作るには、最低でも、耐久力が80以上あるクワ、水源用の水バケツが1つ、水源ブロックの上に置く光源ブロック(明るさ15)が必要となるだろう。
筆者はよくジャックオーランタンを使っている。光源ブロックの上にハーフブロックを置いておくと、うっかり上に乗った挙げ句に落下して土地を荒らすミスも防げる。

このとき、収穫用の幸運IIIエンチャントつき道具を使って農地6ユニット=480ブロックで獲れる農作物の量をスタック(1スタック=64個)で計算すると、

小麦類
480 / 64 = 7.5 ≒ 8
小麦類の種
(3.4 - 1) × 480 / 64 = 18 小麦類は合わせて 26 スタック
ニンジン類
(5.4 -1) × 480 / 64 = 33

となる。ニンジン類はちょうどいい量になるが、小麦類はまだ持てそうだ。

一方、農地8ユニット=600ブロックの農地で考えると、

小麦類
640 / 64 = 10
小麦類の種
(3.4 - 1) × 640 / 64 = 24 小麦類は合わせて 34 スタック
ニンジン類
(5.4 -1) × 640 / 64 = 44

となる。小麦類はちょうどいい量になるが、明らかにニンジン類が持ちきれない。

以上から、ジャガイモ・ニンジン用の農地は1種類あたり6ユニット、小麦やビートルード用の農地は1種類あたり8ユニット、合計28ユニットあればよいことが分かる。
長方形に収めるには、7ユニット×4ユニット、つまり 63×36 ブロックの広大な農地となる。
あるいは、6ユニットを4種類分、54×9ブロックの農地を4つくっつけて、54×36ブロック程度の農地にしてしまってもいいだろう。
それでも割と広い。整地から始めようとすると平原以外はちょっと苦労するかもしれない。

ちなみに、幸運IIIエンチャントつき道具で収穫して植え直した場合の、農地ユニット数に対する収穫量を表にすると、以下のようになる。
小麦収穫から右側の列の単位は「スタック」である。1スタックに満たない端数は切り上げてある。

農地ユニット数	作付ブロック	小麦収穫	種収穫	小麦類合計	人参類収穫
      1	    80	   2	   3	    5	    6
      2	   160	   3	   6	    9	   11
      3	   240	   4	   9	   13	   17
      4	   320	   5	  12	   17	   22
      5	   400	   7	  15	   22	   28
      6	   480	   8	  18	   26	   33
      7	   560	   9	  21	   30	   39
      8	   640	   10	  24	   34	   44

一方、エンチャントなし道具(もしくは素手)で収穫して植え直した場合の、農地ユニット数に対する収穫量を表にすると、以下のようになる。
小麦収穫から右側の列の単位は「スタック」であり、1スタックに満たない端数は切り上げてある。

農地ユニット数	作付ブロック	小麦収穫	種収穫	小麦類合計	人参類収穫
      1	    80	    2	  1	    3	    4
      2	   160	    3	  2	    5	    7
      3	   240	    4	  3	    7	   11
      4	   320	    5	  4	    9	   14
      5	   400	    7	  5	   12	   17
      6	   480	    8	  6	   14	   21
      7	   560	    9	  7	   16	   24
      8	   640	   10	  7	   17	   27

ニンジン・ジャガイモの収穫には、やはりエンチャントがあったほうがよいことがよく分かる。
エンチャントが無い場合は、小麦やビートルードを広く植えるのがよい。
特に小麦畑は広さこそパワーみたいなところがあるのかもしれない。

農地と明るさについて

広い農地を作るときは、水源の上に置いた照明だけでは最も遠いところの明るさが7とかになるので、植えることは出来るが育たないエリアが出来てしまう。
特に2ユニット×2ユニットとか縦横に2ユニット以上の農地を作るときは注意が必要である。
暗いところが隅に2x2ブロック出来るので、そのあたりの頭上3ブロックくらいのところに光源ブロックを置くなどして、明るさ対策をしたほうがよいだろう。
あるいは、縦か横どちらかは必ず1ユニットとすることにして、暗くなる部分の横には光源ブロックを埋めるようにすると、農地の明るさを10以上に保つことができ、作物がきちんと育つようになる。
(この図において農地部分は耕す前の明るさを示している。)

光源の置き方と農地の明るさ
光源の置き方と農地の明るさ

農場の例を示す。たとえば縦に6x1ユニットの農場を作り、光源を置くブロックを1列分あぜ道のように作ることで、6x4ユニットの農場を作成している。広さは 縦(9x6+2)=56, 横((9+1)x4+1)=41 なので、56×41平方ブロックである。

農場の写真
農場の例

マルチサーバーで住宅地を作って管理するには

イクラのマルチサーバーにはいろいろなプレイヤーが参加してくるが、まあだいたいはとりあえずの拠点を持ちたがるものである。 ところがサバイバルモードだし仲良く自由にやれよで放置しても、実際は土地の取り合いだとかなんとかで、なかなかうまくいかない。

居住ワールドを設けるようなマルチサーバーであれば、大抵は他人のアイテムを勝手にとってはいけないものだし、敷地を勝手に使うのも良くないことである。 とはいえ、目印もなにも無いところで土地の確認は難しく、初心者にとっては地味に敷居が高い。 マイクラ初心者であれば尚更、たとえばそこらのチェストひとつとっても、何を入れていいのか、何を入れてはいけないのか、区別して自分の振る舞いを変えることは難しいだろう。

そのため、大規模なアパートを作成したり、初期スポーンポイントから少し離れたところに住宅地を作ったりして、一人で訪れた初心者を誘導することが考えられる。

ここでは、某サーバーで住宅地を作成して若干の管理を行った経験を元に、どのような作り方をしたのか、どのようなルールを設定したのか、をまとめて書いておく。 大きく分けて「整地」と「ルール」の2つがある。

整地編

  1. 1チャンク(16ブロック四方)を1区画として、区画内を整地する。傾斜地に作る場合は内側14×14ブロック四方を高さをそろえて整地する。
  2. 区画の四隅に目印となるブロックを置き、目印の間(つまり外周1ブロック)が通路となるよう、予め何かを敷く。都合2ブロックの通路が出来ることになる。
  3. 松明4本程度をほどよく置いて沸き潰しとしておく。
  4. 空き区画には作業台とチェストと看板を1つづつ設置する。看板には空きであること、チェストの中身は入居者以外は持っていってはいけないことを明記する。
  5. チェストの中には、ベッド1個、看板2個、松明16本、食料16個などを入れておく。サービス精神が続く限り好きなものを追加してもよい。

隣接する区画の見分けをつけたい場合、四隅のブロックや通路のブロックを色分けする(隣接する区画は色を変えておいたほうがよい)などの工夫がいる。 宅地全体の雰囲気を整えたいのであれば、建築していいのは14x14までで、通路は破壊不可、などという制約を設けたり、手間を掛けた整地を行うことになる。 この例では住宅地全体が平地であることを想定しているが、山岳の中腹など傾斜のきついところに住宅地を作る場合、各区画の範囲を変えるといった工夫も必要になるだろう。 区画をどう並べるかなども含めて、設計者のセンスが発揮されることになる。 ただ、区画の間に少し広めな通路などをこまめに作ると、区画の並べ方によってはチャンクの境界をまたぐことになる。 それを嫌うのであれば、また少し考える必要はあるかもしれない。

ルール編

基本的には、サーバーが定めているルールやマナーに沿ってローカルルールを設定することになる。 隣接する区画の住人と諍いが起きないようにすること、サーバーに負荷をかけないこと、保護プラグインが使いやすいようにすること、がルール設定の目的になるだろう。 だいたい以下のようなルールになる。どんどん増えた。経験談

  1. ひとり1区画(16ブロック×16ブロック)まで。区画の真下と真上を使うこと。横に掘り進めたり伸ばさないで下さい。(ほっとくと地下帝国とか天空広場とか作り始める人はふつーにいる。地下に大規模な空洞がある場合は別途考える必要があるかもしれない。)
  2. 看板で名前を書いて、誰の区画か分かるようにしてください。(入退去者の記録は何らかの方法でとっておくべきである。治安が悪いとアイテムを勝手に持っていく人が後を絶たないので、サーバーの運営に協力いただき、ログを参照したりすることになる。)
  3. 必ず沸き潰しをしてください。(敵が湧く条件は若干緩和されたが、他人の家で湧いたスケルトンに撃たれるとか、クリーパーに壊されるなどといったトラブルになりがち。)
  4. 村人は閉じ込めて。村人は保護を無視して他人の家のベッドを勝手に使います。勝手に入ってきた村人を滅されても文句は言いにくいです。(自分の家に交易所を作りたがる人もふつーにいる。村人は1人まで、もしくは禁止にしてもよいかもしれない。)
  5. 呪われたまま帰ってこないで下さい。『襲撃』イベントを起こさないで下さい。(交易所を作ってしまった家に呪われた状態で近づくと大惨事になる。なった。やはり居住区に村人を置くのは禁止にしたほうがよい。)
  6. 共用設備は自分の敷地内に収めて下さい。敷地外に作らないで。(マグマ大釜とか水大釜とかほいほいと通路に作りたがる人もふつーにいる。空き区画を自動かまどや植林場にしたりする人もふつーにいる。)
  7. 住宅街なので、家を建てて下さい。工場専用とか交易専用ってのはやめてください。(小さな自動化設備も基本負荷になるし、だいたいうるさい。)
  8. 回路を駆使したトラップ系は、基本やめてください。サーバーの負荷になります。(もうすこし具体的に自動化設備に抑止をかけたルール。だいたいの自動化機械はoffにするのを忘れてログアウトされるものである。)
  9. 家の中で大量にどうぶつを飼わないで下さい。ラグの元になります。(家を畜産施設や動物園にしたり多頭飼いしたりする人もふつーにいる。ウーパールーパーなどAIの処理が重い動物を観葉植物感覚で放置するのはおすすめしない。)
  10. 新しいところに引っ越すときは、整地してから管理人に連絡して下さい。(ルールが鬱陶しくなってくると郊外に拠点を構えがちになる。それはそれでいいのだが、別荘を通り越して放置ってのは勘弁してほしい。)
  11. 数ヶ月以上ログインなく放置されている家は、撤去するかもしれません。(これは作りかけで来なくなった人に対応するもの。ちょっとサーバーを覗いて手を出してみたけど、リアル事情優先で来なくなる人もふつーにいる。)
  12. 他人の家を勝手に保護して使うのは荒らしと同じです!(留守宅を勝手に自分名義で保護して自分の家として使った、という事案が発生することもある。犯人は当然ながらサーバーからBANされる。)
  13. 自分の土地に他人を住まわせるときは、居住者の名前を把握しておいて下さい。(16x16の区画に高層マンションを作りたがる人もふつーにいる。出入りする人が良く分からなくなるので、きちんと大家として管理してほしい。)

文章が読めない人はふつーにいる。ということはゲーム内で管理人が相談を受け、その場で逐次対応しないといけない可能性があるということだ。 そしてその相手が、その場での対応に納得がいかない、とか、理解が出来ない場合、面倒なことになるだろう。 なので、初心者を含む普通のプレイヤーのため住宅地を作る際は、プレイヤーの振る舞いに対して何らかの判断や処置を行える人、サーバーの運営に近い人、すなわちそこそこ大人な人が頑張らないといけない、のかもしれない。

なお実際の作業としては、数日おきくらいに巡回して新しい建物が出来ていたら所有者をGoogle スプレッドシートとかにメモしておく、とか、空き地のアイテムがなくなってないかどうか確認する、とか、沸き潰しが足りないところをちゃんと沸き潰す、とか、長期間来ていない作りかけの土地を再整地する、とか、荒らしの痕跡があった場合は運営に通報する、などが挙げられる。 住人とのコミュニケーションを取るために、看板などをうまく活用するとよいだろう。

追記:この記述は『住宅地』についての解説である。宅地内の建物のセンスについては関与しない方針だが、それだとぶっちゃけネオアームストロングサイクロンジェットアームストロング式住居だのなんだのみたいなのが建つ可能性は残るし、文句もつけづらいので、そこまで管理したいのであれば頑張って家も建築して建て売り住宅街にするか、頑張って小うるさい土地主ロールプレイを徹底することになるだろう。まあ、めんどう。

minecraft 1.16.x から始めた世界で銅鉱石を手に入れるには?

移行した世界はちょっとつらい

minecraft 1.16.x でそこそこあちこち大冒険した状態で minecraft 1.17.x に移行した場合、正の高度にある空間はすでに生成済なので、その高度で銅鉱石を入手する手段がない。
一方 1.18.x までバージョンを上げてしまえば、負の高度に新たな深層空間が生成され、浅い深層空間に銅鉱石が存在する。
ということは、1.16.x の時点で既に踏破済みのエリアから 1.18.x の環境で銅鉱石を獲得するには、この浅いところを掘るしかないのだが、実は埋蔵量が少ない。

1.18.x での銅鉱石の分布は以下のようになっている。
Minecraft 1.18 Ore Distribution: How to Find Every Ore (2022) | Beebom
y=-16からy=48まで増えたあと y=112 まで減るという三角分布になっている。

そのため、既に 1.16.x で生成された世界においては y=-16 から y=-1 までの間にしか存在せず、しかも純粋に 1.18.x で生成された世界で y=48 を掘って得られる個数に比べ、
y=-1 近辺を掘ったところで、せいぜい四分の一以下にしかならないのではないかと考えられる。
(三角分布なら \frac{48-(-16)}{p}=\frac{(-1)-(-16)}{x} とすれば x=(15/64)p だろうから、ピーク p の値と比べて23%程度ではなかろうか、という推測だ。)

実際本当にどれくらいの数が入手出来るのか確かめたい場合、1.16.x でワールドを生成し、確かめたい範囲を中心に少なくとも周囲16チャンク程度を生成してからワールドを保存する。
その後、このワールドを 1.18.x で読みこませて、中心点を基点に 256x256 の範囲を fill replace すれば数えることができるだろう。(流石に手で掘りたくはない。)

対策は?

(0) 新しいワールドでやりなおす

そりゃそうだ。

(1) 頑張ってy=-1以下の浅い領域を掘る

既に相当の範囲を踏破しており、今更超長距離移動は困難である場合、こうならざるを得ないかも知れない。
y=-3あたりの高さをブラマイするとよいようだ。おそらく地下空洞に当たってしまうと減るのだろう。
ただし落雷は待ってはくれない。

(2) 1.16.x 時代に探索していない領域をなんとかして探し出す

個人的にはこちらのほうが無難ではないかと思う。うまくいけば鍾乳洞バイオームに当たり、銅鉱石鉱脈を発見できる可能性もある。

ヒントとして、移行したワールドのデータフォルダを見れば既に生成された領域は分かるので、ファイルが出来ていない部分を頼りに探索を拡げるとよいだろう。

world\region\ フォルダの中を見ると、mcaファイルの一覧がある。
このファイル名は、r.{rx}.{rz}.mca という形式をしており、32チャンク=32*16=512ブロック平方の広さで、すべての高度の情報を含んでいる。
座標で言えば、 512*rx ~ 512*(rx+1)-1 , 512*rz ~ 512*(rz+1)-1までだ。
例えば r.0.1.mca というファイルがあるということは、x:(0~511) z:(512~1023) のエリアが既に生成済みであることを示している。

ファイル名と座標の関係は、以下のWebページでも確認することができる。Filename: を書き換えれば、そのファイル名が有している領域が表示される。
https://dinnerbone.com/minecraft/tools/coordinates/
This region contains blocks 0,0,512 to 511,255,1023 などと表示される部分が見所である。
おそらくツールが古いのでy座標の扱いが1.17.xまでと同じだが、気にしなくてもよいだろう。

ということは、ファイルを名前でソートして数の絶対値が最も小さいところを探し出し、その方向に突っ走ってしまえばいいことになる。
例えばファイル名でソートして、負の数は r.-2.なんとか.mca で、正の数は r.3.かんとか.mca で終わっていた場合、これはx座標軸に沿って
512*(-2)=-1024 より小さい領域(西方向)が未開拓、
512*(3+1)-1 = 2043 より大きい領域(東方向)が未開拓
なので、負の方向(西方向)に走ればよい。
同じように r.どうとか.-4.mca と r.こうとか.1.mca という範囲でファイルがある場合、これはz座標軸に沿って
512*(-4)=-2048 より小さい領域(北方向)が未開拓、
512*(1+1)-1 = 1023 より大きい領域(南方向)が未開拓
なので、正の方向(南方向)に走ればよい。

あるいは、このフォルダをソートして眺めたとき、

r.1.0.mca
r.1.1.mca
r.1.2.mca
r.1.-2.mca
r.1.3.mca
r.1.-3.mca

などとなっていた場合、

r.1.-1.mca

が不足していることに気づけば、(x,z)=(512,-512)~(1023,-1) の範囲が未開拓である可能性が高い、と判断出来るだろう。

(3) 資源ワールドを接続する(自前サーバ運用型マルチ限定。Realmsのままでは不可。)

プレイしているサーバーの管理者にご相談下さい。っていうかこういうのがあるから資源ワールドって大事。
手前味噌で恐縮だが、以下に Multiverse-Core サーバプラグインを用いたワールドの追加方法に関する記事を示す。
MultiVerse-core を入れたときの注意事項(リスポーン地点編) - しろうとのメモ
資源ワールドを作るには - しろうとのメモ

おまけ:マイクラの地下鉱石を採掘するのにおすすめの高さ(1.18 以降)

※以下の内容を独立させて記事を書き直しています。(1.20.2以降対応)
shirohtoda.hatenablog.jp

真っ先に採掘すべき高さは y=16 で、ここで鉄を狙う。
鉄が集まってきて鉄のツルハシを量産出来るようになったら y=-54 を狙いつつ、必要に応じて y=48(銅,石炭)や y=-16(金) に手を出すようにしていけばよいだろう。
燃料を木炭で代用するのであれば、y=48はブラマイ採掘するまでもなく、何かのついでに目に付いた鉱石を、こつこつ採取しておくくらいで賄えるかもしれない。

もう少し細かく説明すると、1.18.x 以降の地下資源採掘におすすめの高さは、鉱石の出現割合をもとにまとめると、だいたい4つになる。
出現割合が最も高い(先頭に示した)もの以外は、矢印方向に行くほど出現割合が高くなるが、相対的に他のものの割合が変化するので、せいぜい±1層(高さ±4相当?)増減する程度でよいだろう。
y= 48 銅・石炭↑・鉄↓
y= 16 鉄・銅↑・石炭↑・ラピスラズリ
( y=0 ラピスラズリ・鉄↑ )
y= -16 金・鉄↑・ラピスラズリ
y= -54 ダイヤモンド↓・レッドストーン↓・金↑
(マグマ溜まりとは異なる)地下マグマ水位はy=-55, 岩盤は y=-60 以下に出現する。

特殊な分布を含むバイオーム:山岳バイオーム・鍾乳洞バイオーム(銅の鉱脈)・高度y=0以下(鉄の鉱脈) どれもレア。
山岳バイオームに当たった場合、石炭 y=136,鉄 y=232,エメラルド y=224 あたりが狙い目。

ダイヤ目的の縦2列ブラマイを行うのであれば、y=-54に加えて、y=-50,y=-58と3層構造を狙うことが出来るだろう。
y=-50は頭上のy=-48から足下のy=-51を探索出来る。一歩先の足下が穴の場合、落下するとマグマなどに落ちるだろう。
y=-54は頭上のy=-52から足下のy=-55を探索出来る。一歩先の足下がマグマになる可能性がある。
y=-58は頭上のy=-56から足下のy=-59を探索出来る。前面や側面からマグマに襲われる可能性がある。(数歩退いて自分の一歩先を掘ればマグマはそこで止まる)

ラピスラズリの最頻出現高度は y=0 なのだが、他の鉱石の出現割合が下がるなど、あまり割に合わなさそうなので、 y=16, y=-16 の採掘ついでくらい、で丁度いいだろうとは思う。
どうしてもラピスラズリを狙いたいときは y=0 を狙うのもよいかもしれない。(個人的にはこの高度でわざわざ採掘したことがない。)

WorldGuardの範囲指定で使う「木の斧」を他のものに変えるには?

WorldGuard をデフォルトのまま導入しているマルチサーバーでは、 木の斧 ( wooden_axe ) が範囲指定のためのツールとして用いられており、 この場合、木の斧での採掘(木の伐採)ができない。 これはマルチサーバー初心者にとっては困惑する効果であり、 実際採掘に使われる可能性が高めなツールを範囲指定のためのものに利用するのは、 あまり良い方針とは言えないだろう。(FAQなどで周知しておいたほうがよい。)

実はこの範囲指定ツールは WorldGuard と一緒に入れた WorldEdit 側で設定するものである。 プラグインディレクトplugins\WorldEdit\ の下にある config.yml

wand-item: minecraft:wooden_axe

として設定されている。そのためこれを、例えば木のクワ( wooden_hoe )にしたい場合は、

wand-item: minecraft:wooden_hoe

などとしておけばよい。木の斧よりも木のクワのほうが利用される可能性は低いだろう。すぐ壊れるし。

設定ファイルを書き直したらサーバコンソールで we reload とすれば、 サーバを再起動しなくても設定を読み直すので、 オンラインで変更を反映させたい場合はおすすめである。

ちなみに明らかに使われそうにないアイテムとして、 例えば枯れ木(dead_bush)を設定しようとしても、これはうまくいかない。 上記設定後にサーバを起動して、//wand でアイテムを受け取ろうとしても、

Can't bind tool to 枯れ木:Blocks can't be used.

と表示されたり、サーバログに、

[19:47:51 WARN]: Invalid selection wand tool set in config. Tool will not be assigned: minecraft:dead_bush

などと表示される。設定出来ない種類のアイテムもあるらしい。 棒( stick )なら出来るのだが、 今度は//wandコマンドで棒が取り放題になってしまうので、 これはゲームのバランスが壊れるだろう。 木のクワよりもっと脆い金のクワ( golden_hoe )という手もあるが、 金のクワは燃やすと金塊が出来てしまうのでこれもよくない。 おそらく木のクワにしておいたほうが無難であろうと思われる。 (木のクワが取り放題になったところで、せいぜい効率の悪い燃料にしかならないだろう。)

なお、plugins\WorldEdit\sessions\ ディレクトリに ユーザーUUID.json として、 ワンドアイテムの設定情報が残っている場合、 plugins\WorldEdit\config.yml の設定がおかしいときは、そちらの設定が優先されるようだ。

dynmap をなるべく小さい負荷で使うには

dynmap はプラグインをインストールしただけだと、 平面地図(flat)に加えて斜め上から見た地図(surface)や内部洞窟(cave)も作成する。 ところがこのsurface地図が他のものと比べてやたら処理が重く、作成される画像ファイルサイズも大きい。

これは( surface 地図は角度をつけてレンダリングする関係で、1ブロックあたり上面、側面と描画枚数が多い、という本質的な事情もあるが )configuration.txt で deftemplatesuffix: hires が設定されていて、 これを元に templates/ の下にあるテキストファイルが読みこまれ、その中の normal-hires, nether-hires, the_end-hires が適用されているためである。 surface 地図だけが高解像度設定されているので、画像データを多く作成し、重い負荷がかかる。

そのため、最小の負荷を目指し、最小限の機能として flat だけあれば良いことにする、というのがよくある方針である。

ところがそのために dmap コマンドや dynmap コマンドを使うことになるわけだが、これはデフォルトで作成された地図を消す、という作業であり、少々面倒である。 また、本来であれば各ワールドの設定を worlds.txt に書くのが正しいわけだが、 templates/ の下にある雛型を読んで書き方を理解し、書き写すことになるので、時間がかかるかもしれない。

そこで、

  1. templates/ に テキストファイルを作り、flat マップしか作らない設定を書いておく。
  2. configuration.txt に上記の内容を有効にする設定を書く。

とすれば、dynmap が flat の地図しか作成しなくなり、負荷も低く抑えられる。つまりdynmapを軽くできる、というわけだ。

 web/tiles/ 下にある画像ファイルの容量も少なくなるので、 レンタルサーバ等で運用している場合も参考になるのではないかと思う。

なお、画像ファイルのフォーマットそのものを調整してファイルサイズを最小化したい場合、plugins/dynmap/configuration.txt の中にある画像フォーマットを

image-format: jpg-q85

あたりに設定しておくと、jpg-q90(標準)と比べて、画質をやや犠牲にしてでもバランス良く画像を小さく出来るようだ。webpを利用するとjpg比でさらに7%程度減らせるようだが、サーバを動かしているOSにコマンドラインで画像変換するためのソフトウェアを導入(sudo apt install webp とかなんとか)する必要がある。

具体的な手順

ここではdynmapを初めて導入するところから説明を書く。また、MultiVerse-core プラグインを用いていると仮定する。使っていない場合は各ディメンションの情報取得やスポーン地点への移動などについて、適切に読み替えていただきたい。

1. サーバのプラグインディレクトリに Dynmap-3.2.1-spigot.jar を入れて paperMC サーバを起動する。

2. paperMC サーバを終了する。

3. プラグインディレクトリの下に dynmap/ が出来ていることを確認する。

4. dynmap/ の中にある templates/ に、flatonly.txt という名前で、 以下の内容を書いたテキストファイルを作成する。(コピペ、ダウンロード推奨)

5. dynmap/ の中にある configuration.txt ファイルをテキストエディタで開き、

deftemplatesuffix: hires 

となっている行を、

deftemplatesuffix: flatonly 

に書き換える。

この設定をしておけば、次回 paperMC サーバを起動すると、flat の地図しか生成しなくなる。 本当にそうなっているか確認するには、たとえば以下の作業を行う。

6. paperMC サーバを起動する。

7. 起動後、dmap maplist world などとして、生成されるマップが1つだけになっていることを確認する。この作業は、worldの部分をworld_nether, world_the_end など、作成しているディメンションの数だけ行うことになるだろう。

> dmap maplist world 
[16:26:04 INFO]: map flat: prefix=flat, title=Flat, perspective=iso_S_90_lowres, shader=stdtexture, lighting=shadows, mapzoomin=1, mapzoomout=3, img-format=default, icon=, append-to-world=, boostzoom=0, protected=false

8. dynmap pause を実行して、レンダリングが実行される状態であることを確認する。

> dynmap pause 
[16:27:38 INFO]: Full/Radius renders are ACTIVE [16:27:38 INFO]: Update renders are ACTIVE [16:27:38 INFO]: Zoom out processing is ACTIVE

リスポーン地点から周囲64ブロックを予めレンダリングしておく場合は、 管理者権限を有するユーザーがゲームにログインして/mvtp world の後、/dynmap radiusrender 64 などとすればよい。

サーバコンソールから実行する場合は、mvinfo コマンドでスポーン地点を確認する。

> mvinfo resource 
[16:35:25 INFO]: --- General Info --- 
[16:35:25 INFO]: World Name: resource 
[16:35:25 INFO]: Spawn Location: X: -253.37 Y: 67 Z: -66.75 P: -11.25 Y: -54.6

その後、この座標を用いて(端数はどう丸めてもよい)

dynmap radiusrender resource -253 -66 64

などとすればよい。 fullrender は好みに応じて行えばよいが、ワールド生成直後、誰もログインしていない状態ではおそらく意味がないだろう。(チャンクが生成されていないため)

既存マップの削除方法

もし既にdynmapを導入しており、この際一から作り直そう、というのであれば、 設定を書き換える前に、一度すべてのディメンションの地図データを purgeworld で削除しておくとよい。 具体的には、

dynmap pause all 
dynmap purgeworld world 
dynmap purgeworld world_nether
dynmap purgeworld world_the_end
(他にディメンションがあればあるだけ指示して消す)
save-all
stop (サーバ停止)
(必要に応じてdynmapの設定ファイル書き直し、再起動)

となるだろう。

応用:ディメンション再生成と purgeworld

dynmap purgeworld はMultiVerseプラグインのディメンションの再生成と組み合わせるとよい。 具体的には、以下のようになるだろう。

dynmap pause all 
dynmap purgeworld resource
mv regen resource --keep-gamerules
dynmap pause none
ゲームにログインして
/mvtp resource (再生成したディメンションのスポーン地点に移動)
いろいろ設定したあとに /dynmap radiusrender 64 (数分で終わるので死なないように待っておく)

注意事項

dynmap を入れているときは、 reload コマンドは使わないほうがよい。 map 書き換え中にプラグインの停止、再起動が起こって、 地図データが破損するかもしれないためである。