firstScript.parentNode.insertBefore(element, firstScript); function makeStub() { var TCF_LOCATOR_NAME = '__tcfapiLocator'; var queue = []; var win = window; var cmpFrame; function addFrame() { var doc = win.document; var otherCMP = !!(win.frames[TCF_LOCATOR_NAME]); if (!otherCMP) { if (doc.body) { var iframe = doc.createElement('iframe'); iframe.style.cssText = 'display:none'; iframe.name = TCF_LOCATOR_NAME; doc.body.appendChild(iframe); } else { setTimeout(addFrame, 5); } } return !otherCMP; } function tcfAPIHandler() { var gdprApplies; var args = arguments; if (!args.length) { return queue; } else if (args[0] === 'setGdprApplies') { if ( args.length > 3 && args[2] === 2 && typeof args[3] === 'boolean' ) { gdprApplies = args[3]; if (typeof args[2] === 'function') { args[2]('set', true); } } } else if (args[0] === 'ping') { var retr = { gdprApplies: gdprApplies, cmpLoaded: false, cmpStatus: 'stub' }; if (typeof args[2] === 'function') { args[2](retr); } } else { if(args[0] === 'init' && typeof args[3] === 'object') { args[3] = { ...args[3], tag_version: 'V2' }; } queue.push(args); } } function postMessageEventHandler(event) { var msgIsString = typeof event.data === 'string'; var json = {}; try { if (msgIsString) { json = JSON.parse(event.data); } else { json = event.data; } } catch (ignore) {} var payload = json.__tcfapiCall; if (payload) { window.__tcfapi( payload.command, payload.version, function(retValue, success) { var returnMsg = { __tcfapiReturn: { returnValue: retValue, success: success, callId: payload.callId } }; if (msgIsString) { returnMsg = JSON.stringify(returnMsg); } if (event && event.source && event.source.postMessage) { event.source.postMessage(returnMsg, '*'); } }, payload.parameter ); } } while (win) { try { if (win.frames[TCF_LOCATOR_NAME]) { cmpFrame = win; break; } } catch (ignore) {} if (win === window.top) { break; } win = win.parent; } if (!cmpFrame) { addFrame(); win.__tcfapi = tcfAPIHandler; win.addEventListener('message', postMessageEventHandler, false); } }; makeStub(); var uspStubFunction = function() { var arg = arguments; if (typeof window.__uspapi !== uspStubFunction) { setTimeout(function() { if (typeof window.__uspapi !== 'undefined') { window.__uspapi.apply(window.__uspapi, arg); } }, 500); } }; var checkIfUspIsReady = function() { uspTries++; if (window.__uspapi === uspStubFunction && uspTries < uspTriesLimit) { console.warn('USP is not accessible'); } else { clearInterval(uspInterval); } }; if (typeof window.__uspapi === 'undefined') { window.__uspapi = uspStubFunction; var uspInterval = setInterval(checkIfUspIsReady, 6000); } })();
当サイトはアフィリエイト広告を利用しています

【Java版】ストラクチャーブロックで建築物を別ワールドや別バージョンにコピーする方法を解説

「せっかくイイ感じの家を建てたけど場所を移動したい」

「新しいバージョンで遊びたいけどせっかく建てた家も引っ越し出来ないかなぁ…」

そんなことを考えたことはありませんか?

今回はそんな時にとても役に立つアイテム【ストラクチャーブロック】を使って簡単に構造物をコピー&ペーストする方法を解説していきます!

統合版でのストラクチャーブロックの使い方はこちら👇で解説しています。

ストラクチャーブロックって何?

このブロックを使用することで、指定した範囲内のオブジェクト(家などの建築物)をコピー&ペースト出来るようになるとても便利なアイテムです!

別のワールドや違うバージョンにコピーすること以外にも、90°回転させたり左右反転することも可能。

例えば、この👇画像のように、ストラクチャーブロックを使ってコピーしたい範囲を決めて…

一旦保存したら別の場所にロードするとそっくりそのまま配置することが出来ちゃうんです!

コピー出来る最大の大きさは、幅、高さ、長さのそれぞれが48ブロックまでとなっています。

ストラクチャーブロックの入手方法は?

ストラクチャーブロックは、通常のアイテム欄にはありませんので、入手するにはコマンドを入力する必要があります。

👇このようにチャット欄に入力してみましょう。するとアイテムスロットにブロックが現れます。

/give @s minecraft:structure_block

チャット欄を表示させるには

キーボードの『T』を押すと画面下に半透明の帯が表示され、/(スラッシュ)を押すとコマンドを入力出来るようになります。

チートをオンにしておこう

ストラクチャーブロックを使う前提条件として、『チートをオン』にしておく必要があります。
チートをオンにしておかないとストラクチャーブロックを手に入れてもブロックを設置出来ません。

ワールドを新規作成する場合は、チートの許可をオンにしておくことを忘れずに。

『チートをオンにせずに始めちゃったYo!』という場合でも大丈夫です。途中からでもオンに出来ますので♪

これまで遊んでいたワールドで使いたい場合は、ゲームメニューから【LANに公開】をクリック。

【チートの許可:オン】にして【LANワールドを公開】をクリックすればOKです。

これでストラクチャーブロックが使えるようになります。

ストラクチャーブロックには3種類のモードがある

ストラクチャーブロックには【コーナー】【セーブ】【ロード】の3種類のモードがあり、この3つを使ってコピー&ペーストを行っていきます。

コーナーブロック
セーブブロック
ロードブロック

各ブロックはモードに応じて模様が変わっているので、見た目でも何となく判別できるようになっています。ただ、見た目があまり違わないので分かりづらいかもしれませんが。まぁ、判別できなくても困ることはありませんので大丈夫です♪

各モードを切り替えるには、ブロックにカーソルを当て右クリックします。

すると、👇このような設定画面が出てきます。

ロードモード

多分最初は【ロード】になっていますが、赤枠の部分をクリックするごとに【コーナー】→【セーブ】→【ロード】というように表示内容が変わっていきます。

コーナーモード
セーブモード

【ロード】と【セーブ】モードは項目がいろいろありますが、全部分からなくても大丈夫です。(僕も全部は分かりません(笑))

ストラクチャーブロックの使い方

コーナーモードで範囲指定する

それでは実際に家をコピーしながら解説していきます。

まずは【コーナーモード】でコピーする範囲を決めます。

分かりやすいように、家がスッポリ入る位置にガラスブロックを置いてあります。

ストラクチャーブロックを家の角になる場所に置きます。

地面より1ブロック下げて設置してあるのは、範囲指定線がストラクチャーブロックの上面から出てくるためです。

位置がずれていても後から修正出来ますし、多少範囲を大きくしても問題ありません。大体の場所でOKです♪

ブロックを設置したら、ブロックを右クリックし、【コーナーモード】にしましょう。

【ストラクチャー名】に任意の名前を入れます。出来るだけ簡単な名前で良いです。

セーブモードで指定した範囲を保存する

次に、先程設置したコーナーブロックの対角の位置にもストラクチャーブロックを設置します。

この時は、家の屋根まで入る高さの位置にブロックを置きます。

次に、対角に置いたブロックを右クリックして【セーブモード】にしたら、【ストラクチャー名】に先ほどコーナーモードに入れたストラクチャー名と同じ名前を入力し、【検出】をクリックします。

ストラクチャー名は、一字一句間違いのないように必ず同じ名前にして下さい。ここが間違っていると検出が出来ません。

検出に成功すると、画像のように線が表示されます。この線の内側がコピー出来る範囲になります。

この線には色が付いていて、白、緑(高さ)、赤(幅)、青(奥行)の4色の線で表示されます。

影MODをオンにしていると、範囲線が表示されなかったり、色が白のみになったりするので、オフにしておきましょう。

この時に、建物がストラクチャーブロックの範囲線からはみ出ていると、建物を読み込んだ時(ペーストした時)にはみ出た部分が表示されなくなってしまうので、ブロックの位置を修正する必要があります。

範囲指定をやり直したい場合は、一旦ブロックを破壊して位置を調整しましょう。

問題なく建物全体が範囲内に収まっていれば、セーブブロックを右クリックして【保存】をクリックでOKです。

ロードモードでコピーした家を呼び出す

セーブモードでコピーした家の隣にロードしてみます。

最初に置いたコーナーブロックは、範囲線の外側の左角モードで置いたブロックは、赤と白の交点の外側でしたが、ロードモードでブロックを置く場合は、赤と緑と青の交点の内側になります。

言葉では説明しづらいですが、 コーナーモードで置いたブロックと、ロードモードで置いたブロックとは、範囲線に対しての位置関係が違ってくるので、色々試して練習してみて下さいね!

ブロックを置いた後でも位置の調整は出来ます。

ブロックを置いたらロードモードにして、先程と同じようにストラクチャー名に同じ名前を入力し、【読み込み】をクリックします。

すると、再び範囲線が表示されます。この範囲内に建物が配置されます。

範囲線の位置が決まったらもう一度【読み込み】をクリックすれば建物を呼び出せます。

配置をやり直したい場合は【完了】をクリックします。

ここで【読み込み】をクリックしてしまうと、建物を呼び出してしまうので、範囲線の確認をしたい時は【完了】をクリックしましょう。

完了は何回クリックしても建物が呼び出されることはありません。

また、画像の赤枠の中の数値を変えることで、建物を回転させたり反転させたりといったことも出来ます。

例えば90をクリックすると、建物を最初の位置から90°回転させて呼び出すことが出来ます。

家の入口の位置が90°回転しているのが分かります。

その他の項目はまだあまり弄ってないので分かりませんが、いろいろ試してみて下さい。

別ワールドで建物を呼び出したい時は

創った建物を別のワールドでも呼び出したい時は、ファイルを弄る必要があります。
ファイルを弄ると聞くと、難しく感じるかもしれませんが簡単なので是非チャレンジしてみましょう!

まずは、ストラクチャーブロックを使ってコピー&ペーストしていたワールドを選んで【編集】をクリックします。

ワールドを編集から【ワールドフォルダーを開く】をクリックすると、

先程遊んでいたセーブデータフォルダーにアクセス出来ます。

この中に【generated】というフォルダーが作成されているかと思うので、このフォルダーごとコピーして別ワールドのセーブデータフォルダーに貼り付けてしまえばOKです。

別ワールドのセーブデータにアクセスするには、先程と同じようにワールドを選択して【編集】>【ワールドフォルダーを開く】でOKです。

ちなみに【generated】>【minecraft】>【structures】と開いて行くと、先程名前を付けた【ストラクチャー名】と同じ名前のnbtファイルがあります。

MODを入れて遊ぶために【Forge】を入れていてなお且つForge専用のフォルダーを作っている場合、そちらの【saves】>【ワールド名】からでもgeneratedフォルダーにアクセス出来ます。

Forge専用のフォルダーって何?という方は、こちら👇の記事で解説していますので参考にしてみて下さいね。

【マイクラJava版】Forgeの導入方法~MODの入れ方

別バージョンに建物を呼び出したい時も同じ要領でコピペすれば創った建物も引っ越し可能になります!

統合版でも建物を別ワールドにコピペすることが出来ます。
Java版とはやり方が異なるので、統合版でやってみたい方はこちら👇の記事を参考にしてみて下さい!

【統合版】でも出来る!ストラクチャーブロックでコピーした建築物を別ワールドで開く方法。

まとめ

それでは最後にまとめになります。

  • コピー出来る大きさは高さ、幅、奥行きが最大で48ブロックまで。
  • ストラクチャーブロックはコマンド入力で手に入る。
  • チートは必ずオンにしておこう。
  • ストラクチャーブロックには、コーナー、セーブ、ロードの3つのモードがある。
  • コーナーモードで範囲指定、セーブモードで検出・保存、ロードモードで建物を呼び出せる。
  • 建物は回転させたり反転させたり出来る。
  • 別ワールドや別バージョンでも呼び出したい時はファイルをコピペしよう。

手順はだいたいこんな感じです。

今回は基本的なコピペのやり方を解説しましたが、オプションの数値を変えたりすることで色々応用できそうですね!

自分の思うような配置にコピーするには少しコツがいるので、たくさん練習してみましょう!