マイクラ箱

移転しました。3秒後に以下のページにリダイレクトします。

Minecraft Life Hacks

(ほぼ)マイクラ関連の攻略情報を書くブログ

【マイクラ】無料でプレイできる「クラシック版」とは?プレイ方法と特徴

f:id:utusemi0903:20190831165504p:plain

クラシック版とは?

クラシック版とは、まだマイクラが開発段階だった2009年に公開されたエディションで、シングルプレイ、マルチプレイともに無料で遊ぶことができます。

内容は2009年リリースのものなので、クリエイティブモードだけが実装されており、使えるブロックも今よりずっと少ないです。イクラの体験版というよりかは、昔のマイクラがどんな感じだったのかを知るためにプレイする目的でやる方が良さそうです。

クラシック版のプレイ方法

クラシック版は10周年記念としてブラウザでプレイできるようになったので、下記サイトにアクセスするだけでプレイ可能です。 ページを開いたら「Launch a new game」をクリックして、ユーザー名を入力して「Start」をクリックすることで始まります。招待URLを友達に教えれば同じワールドで遊ぶこともできます。

https://classic.minecraft.net/?join=GWL0mKoxZn46V43F

イクラの体験版

他に無料でプレイできるマイクラとしては、体験版があります。こちらは最新バージョンで遊ぶことができますが、1時間半ぐらいしか遊べません。正常に動かせるかどうか試したり、ゲームの雰囲気がどんな感じか知るためにプレイするのが良さそうです。

体験版はマインクラフト公式サイトでアカウントを作ったあと、下のリンクからランチャーをダウンロードすることでプレイできます。プレイ中は右上に残り時間が表示されます。 https://www.minecraft.net/ja-jp/download/

【マイクラ】サーバーが重い・カクつくときに確認するべき事とは?

Java Edition向け記事です。

マルチプレイ中に「サーバーにラグがある」「カクついてしまう」「勝手に停止してしまう」などの症状があった場合に確認したほうがいい項目をまとめました。ほとんどのラグは必ずこの項目のどれかが原因で発生しているものなので、全ての項目を確認すれば改善できるはず。

ラグが発生する主な原因

ラグが発生する主な原因は以下の3つです。まずは自分のラグがどれに該当しているのか確かめてみてください。

  • サーバー
  • クライアント(プレイヤーが起動中のマイクラ本体)
  • インターネット回線

サーバーが原因の場合、サーバーが1秒当たりに読み込むtick数が少なくなり、「Can't keep up!」というメッセージが出ます。本来1秒で20ティック読み込まれるはずが、10ティックぐらいに下がってしまうと1秒当たり0.5秒の遅延が起きることになります。遅延中にプレイヤーが行動すると、遅延が起きる前の状態に巻き戻されてしまうラグが発生します。これは、サーバーのメモリが不足していたり、サーバー主のPCのCPUの性能が足りない事が原因です。

f:id:utusemi0903:20190831022042p:plain


クライアントが原因の場合、FPS(1秒当たりのフレーム数)が低くなりますFPSはゲーム内でF3キーを押すことで、画面左上に表示されます)。これはクライアント側のPCのスペック不足や、PCへの過負荷が原因です。

f:id:utusemi0903:20190831022453j:plain


インターネット回線が原因の場合、頻繁にサーバーからタイムアウトしたり、TABキーを押したときにプレイヤーの回線状態が赤くなったり、プレイヤーの行動が巻き戻されたりします(サーバーのと同じ症状)。サーバー選択画面で表示されるアンテナが小さい場合は、サーバー主の回線が原因の可能性が高いです。

ラグを減らす方法

クライアントのラグを減らす方法

クライアントのラグを減らすためには、以下の項目をチェックしてみてください。

  • PCのスペックがマイクラの推奨スペックを満たしているか→ハードウェア要件 - Minecraft Wiki
  • 描画設定が適切かどうか
    • 表示するチャンクの距離が遠すぎないか
    • 描画設定が「処理優先」になっているか
  • Optifineなどの軽量化MODを導入しているか
  • 十分なメモリの空き容量があるか
  • 起動構成で十分なメモリを割り当てているか
  • 使っているJavaのバージョンがサーバー側のJavaと同じバージョンか
  • ゲーム内で大量のエンティティやブロックを読み込んでいないか

起動構成はランチャーから開けます。起動構成→「新規作成」or「編集」→「その他のオプション」→「JVMの引数」から、割り当てるメモリを変更することができます。

サーバーのラグを減らす方法

まず、PCのスペックがサーバーの推奨スペックを満たしているか確認してください。マイクラのサーバーに使うPCの推奨スペックは公式Wikiに載っています。↓
Server/Requirements/Dedicated – Official Minecraft Wiki

ハードウェアでラグの原因になりうるのは主に以下の3つです。

  • CPU
  • メモリ(RAM)
  • ストレージの読み書きスピード


次に、サーバーのログを見て「Can't keep up!」が頻発しているようなら、サーバーに割り当てるメモリの量を増やしてみてください。もしメモリに余裕が無い場合は増設するか買い換える必要があるかもしれません。 サーバーに割り当てるメモリの量を変更するには、サーバーの実行ファイル(.bat)の中身をいじる必要があります。

僕が実際に使ってるサーバーの実行ファイルの中身はこんな感じです。↓
java -Xmx2048M -Xms4096M -jar minecraft_server.jar nogui

Xms----Mは、サーバーに割り当てる最小メモリを表しています。この場合、2GBを割り当てていることになります。ほんとはもう少し欲しいんですが、メモリに余裕がないので・・・。
Xmx----Mは、サーバーに割り当てる最大メモリを表しています。XmsはXmxより小さく設定すると無駄なメモリを食わずに済みます。
noguiは、サーバーを起動するときにサーバーの状態を見れるウィンドウを表示しないようにするためのものです。noguiの方がサーバーへの負荷は軽くなります。


サーバーのラグを減らすためには、十分なメモリを割り当てる他に、CPUに過度に負荷をかけないようにするのも重要です。サーバーの割り当てメモリを増やすとそれだけCPUに負荷をかけることになります。もしもサーバー起動中にCPU使用率が90%を超えていたら(タスクマネージャで見れます)、割り当てメモリを減らしてみてください。もしそれ以上割り当てメモリを減らせない場合は、高度制限を下げるか、(プレイヤーを一箇所に集めたりMobの数を減らすなどして)ゲーム内で処理するデータ量を減らすか、CPUを高性能なものに交換してください。


サーバーを稼動させるときは、システムリソースを監視できるバックエンドを実行するのをオススメします。McMyAdmin 2は英語ですがかなり使いやすいのでおすすめです。

回線のラグを減らす方法

もし無線でネットを繋げている場合は、有線に変えて試してみたり、ルーターとPCの距離が離れていないか、間に障害物が無いかどうか確認してください。大量にデータを送受信することでラグが発生することもあります。

【マイクラ】1.14.4でOptifineとForgeを同時に導入する方法

f:id:utusemi0903:20190829143210j:plain

OptifineとForgeを同時に導入する方法を紹介します。現在、1.13以降でOptifineとForgeを同時に導入できるバージョンは1.14.4のみです。また、1.14.4Forgeに対応したOptifineは現在プレリリースなので、動作が不安定な場合があります。

導入方法

手順1.Forgeの1.14.4(28.0.45)を導入

※マイクラの1.14.4を一度も起動したことがない場合は、起動しておいてください。起動したことがないとForgeのインストールに失敗します。

まずForgeの公式サイトに飛び、Show All Versionsをクリックしてください。

f:id:utusemi0903:20190829145853j:plain

その中から「28.0.45」を探し、それの「Installer」をクリックします。

f:id:utusemi0903:20190829145750j:plain

クリックすると「forge-1.14.4-28.0.45-installer.jar」という名前のファイルがダウンロードされるので、起動してください。 起動すると下のような画面が表示されるので、clientを選択した状態でOKを押すとForgeのインストールが完了します。

f:id:utusemi0903:20190829140854j:plain

Forgeをランチャーで起動するときは、「起動構成」からForgeの起動構成を作成しておいてください。以下の画像は一例です。(Forgeは28.0.45を選択してください)

f:id:utusemi0903:20190829141544j:plain

手順2. Optifineの1.14.4を導入

まずOptifineのダウンロードページへ飛び、「Preview Version」をクリックします。

出てきたバージョン一覧の中に「Optifine 1.14.4 HD U F4 pre3」というのがあるので、それの「Download」をクリックします。
f:id:utusemi0903:20190829141943j:plain

クリックすると広告ページが出てくるので5秒待って、右上の「SKIP AD」をクリックするとダウンロードリンクが表示されるので、それをクリックすることでダウンロードできます。

次にC:\Users\Windows\AppData\Roaming\ .minecraft\modsへ飛び、その中にダウンロードしたOptifineをぶちこんで導入完了です。 もしmodsフォルダが無い場合は、一度Forgeの起動構成で起動してみてください。

手順は以上です。もし分からないところがあれば気軽にコメント欄から質問してください。
ノシ

【マイクラ】1.14.4に対応している個人的にオススメなMODメモ

バージョン1.14.4で個人的におすすめなMODをメモっておきます。MODの導入方法は省略しますが、一応各MODの簡単な説明は書いておきました。

1.14.4に対応しているMODはまだまだ少ないですが、もし入れたいMODが対応していなかったらデータパックで代用するというのも手です。

便利系MOD

便利系MODは、コンフィグ拡張(設定項目を増やす)や、システム改善を図るMODのことを指します。新要素は追加されないので、バニラ要素のみで遊びたいという人も安心して使えます。便利系MODを導入したワールドをMOD無しで遊んでもなんの問題もなく遊べるのもメリット。

新要素追加系MODと組み合わせて使うのもオススメです。

Optifine

f:id:utusemi0903:20190827225305j:plain
とりあえず入れとけっていうMODです。マイクラが軽くなる&ビデオ周りの設定が増えます。個人的にはほぼシェーダーパックを入れるために導入してます。

OptiFine Downloads

ちなみに、1.14でのおすすめシェーダーパックはこれです。軽いし夜もまあまあ明るいし綺麗だしで、結構お気に入りです。
BITSLABLAB - BSL SHADERS (1.14.3 Compatible)

Inventory Sorter

とりあえず入れとけMOD第二弾です。ホイールクイックでインベントリの整頓、ホイールスクロールでアイテム出し入れ数の変更ができるようになります。バニラで実装してほしいくらい便利。

Inventory Sorter - Mods - Minecraft - CurseForge

Voxel Mod

ミニマップMODの代表格です。とにかく多機能で、カスタマイズできる部分も多いです。
人によっては多機能すぎると感じることもあるかも。見た目がややバニラの雰囲気とは異なります。

VoxelMap - Mods - Minecraft - CurseForge

もしもっとシンプルなミニマップがいいなら、下で紹介するXaero's Minimapがおすすめです。

Xaero's Minimap

バニラの雰囲気を保ちつつ、最小限の機能のみ備えたミニマップMODです。僕はこのMODを1.7.10からずっと使ってますw

https://www.curseforge.com/minecraft/mc-mods/xaeros-minimap/files

SpawnChecker

主にサバイバルモードで役に立つMODです。たいまつを持っている間、敵MOBがスポーンする光度のブロックにマーカーが表示されるようになり、沸きつぶしがしやすくなります。

主な配布ページだった非公式ユーザーフォーラムが閲覧できない状態なので、ドロップボックスのダウンロードリンクを貼っておきます。 Dropbox - Minecraft_1.14.x - Simplify your life

AppleSkin

f:id:utusemi0903:20190827212238g:plain
主にサバイバルモードで役に立つMODです。満腹度ゲージに隠し満腹度が表示されるようになります。隠し満腹度についての説明は話すと長くなるのでJapanWikiなんかを見てみてください。

AppleSkin - Mods - Minecraft - CurseForge

Better Advancements

f:id:utusemi0903:20190827225205j:plain
主にサバイバル(以下略)。進捗画面が見やすくなるだけの機能を持ったシンプルなMODですが、無難で使い勝手がいいので驚異の1300万ダウンロードもされています。

Better Advancements - Mods - Minecraft - CurseForge

MineMenu

擬似的に1つのキーに10個の機能を割り当てられるようになるMOD。MODを沢山導入するとキーが足りなくなってきたり、どのキーにどの機能があるかが分からなくなったりするので、MODを沢山導入する予定の方にはオススメ。

MineMenu - Mods - Minecraft - CurseForge

Neat

f:id:utusemi0903:20190827212939j:plain
名前ニートじゃないですよ。Mobの上に体力ゲージが表示されるようになります。

Neat - Mods - Minecraft - CurseForge

Inventory Spam

f:id:utusemi0903:20190827212709j:plain
インベントリで追加or削除されたアイテムが右上に表示されるようになります。いちいちインベントリを確認しなくて済むようになるので地味に便利。

https://www.curseforge.com/minecraft/mc-mods/inventory-spam

Controlling

キー設定画面に検索機能が追加されます。これもMODを沢山導入する方にオススメ。

Controlling - Mods - Minecraft - CurseForge

以上で終わります。新要素追加系MODもいくつか書こうと思っていたんですが、数が少なすぎて良さそうなものが見つからなかったので・・・。

もし1.14.4に対応している新要素追加系MODでオススメのものがあったら教えてください。随時追加していきます。それではノシ

【マイクラ】ターゲットセレクタ(@p,@s,@r,@e,@a)と引数の使い方+使用例【コマンド】

f:id:utusemi0903:20190827100053j:plain
今回は、ターゲットセレクタの使い方と使用例+引数による詳細な指定方法について解説していこうと思います。配布ワールドやサーバーの管理などでコマンドを使う場合、大抵ターゲットセレクタを使うことになると思うので覚えておくと便利です!

ターゲットセレクタとは?

ターゲットセレクタとは、コマンドでエンティティを指定するのに使う記号のことです。セレクタは全部で5種類あり、引数によって詳細に指定することもできます。

ターゲットセレクタ 説明
@p 一番近いプレイヤーを指定
@r ランダムなプレイヤーを指定
@a 全てのプレイヤーを指定
@e 全Sてのエンティティを指定
@s コマンドの実行者を指定

@p(最も近いプレイヤー)

@pは、コマンドの実行位置から最も近いプレイヤーを指定します。コマンドの実行者が自分の場合、自分の位置から最も近いプレイヤー、つまり自分を指定することになります。

@p[team=Red]というセレクタの場合、「コマンド実行位置から最も近い赤チームのプレイヤー」を指定し、赤チーム以外のプレイヤーは無視されます。

使用例:/execute as @e[type=!player] run say "Hi"
結果:プレイヤー以外の全てのエンティティに「Hi」と言わせる。

@r(ランダムなプレイヤー)

@rは、ゲーム内にいるランダムなプレイヤーを指定します。
ランダムなエンティティを指定したい場合は代わりに@e[sort=random,limit=1]を使用します。

使用例: /give @r diammond 10 結果: ランダムなプレイヤーにダイヤを10個与える

@a(全てのプレイヤー)

@aは、ゲーム内にいる全てのプレイヤーを指定します。

使用例:/tp @a @p 結果:全てのプレイヤーを自分の元へテレポートさせる

@e(全てのエンティティ)

@eは、ゲーム内にいる全てのエンティティを指定します。エンティティはプレイヤーやMobの他に、トロッコや額縁などのアイテムも含むため、最も指定範囲の広いターゲットセレクタです。

使用例:/kill @e[type=enderman]
結果:全てのエンダーマンをキルする

ターゲットセレクタの引数

ターゲットセレクタの後ろに「@(セレクタ)[引数]」のように引数をつけることで、選択範囲を自由に設定することができます。引数は何個でも付けることができますが、セレクタの種類によって設定できる引数の種類が違います。(もし構文がおかしいとエラーが出ます)

引数 説明
advancements エンティティの獲得している進捗
distance エンティティまでの距離
dx エンティティを指定するx方向の範囲
dy エンティティを指定するy方向の範囲
dz エンティティを指定するz方向の範囲
gamemode プレイヤーのゲームモード
level プレイヤーのレベル(0以上の整数)
limit 指定するエンティティ数の上限(1以上の整数)
name エンティティの名前
nbt エンティティのNBTタグ
scores エンティティのスコア(スコア名と値を指定)
sort エンティティの選択方法
tag エンティティに付与されているスコアボードのタグ
team エンティティの所属しているチーム
type エンティティの種類
x エンティティのx座標
x_rotation エンティティのx方向(垂直)の回転
y エンティティのy座標
y_rotation エンティティのy方向(水平)の回転
z エンティティのz座標

値の範囲指定→ 3..5 , 10.. , ..0 のようにピリオドを2つ打つ 座標の相対指定→ x = ~3, y = ~15, z = ~10 のように座標の前チルダをおく

数を指定する

  • limit = (エンティティ数の上限)
  • sort = (選択方法)
    • sort=nearest→距離が近い順に選択
    • sort=furthest→距離が遠い順に選択
    • sort=random→ランダムに選択
    • sort=random→ソートを行わない(デフォルト)

limitはエンティティを指定する上限を設定し、sortはエンティティの選択方法を設定します。 @p@rはデフォルトの上限が1なので、この引数を使うと上限を増やすことができます。 また、@a@eにこの引数を指定すれば、指定する数を減らすこともできます。

@p[limit = 3]→「実行位置から近い順に3つのエンティティ」を指定
@r[limit=10]→「ランダムな10人のプレイヤー」を指定
@e[sort=random, limit=1]→「ランダムな1つのエンティティ」を指定

進捗で絞り込む

advancement={進捗名1=true/false,進捗名2=true/false,・・・}]
進捗の獲得状況でプレイヤーの絞り込みができます。trueの場合はその進捗を獲得しているエンティティのみ指定し、falseの場合はその進捗を獲得していないエンティティを指定します。進捗は何個でも指定可能です。

種類で絞り込む

type=(エンティティID)
type=!(エンティティID)

指定したエンティティIDのエンティティのみを対象に指定します。びっくりマークを付けるとそのエンティティID以外のエンティティを指定します。エンティティIDの一覧は以下のページに載っています。
【マイクラ】「エンティティ」の解説とコマンドで使えるエンティティID一覧【1.14対応】 - Minecraft Life Hacks

距離で絞り込む

distance = (距離)

コマンドの実行位置から指定した距離だけ離れたエンティティのみを対象に指定します。 距離は範囲指定が可能です。

範囲の絞り込みと併用した場合は、どちらの選択範囲とも被っている空間にいるエンティティのみを対象に指定します。また、座標での絞り込みと併用した場合は基準点が指定した座標になります。

範囲(空間)で絞り込む

dx = (x方向の範囲)
dy = (y方向の範囲)
dz = (z方向の範囲)

コマンドが実行された位置を基準として、指定した空間(直方体)に含まれるエンティティを対象に指定します。座標での絞り込みと併用した場合は、基準点が指定した座標になります。

座標で絞り込む

x = (x座標), y = (y座標), z = (z座標)
x = ~(x座標), y = ~(y座標), z = ~(z座標)

その座標にいるエンティティのみを対象に指定します。座標は小数点で指定することもできます。座標の値の前にチルダ(~)を付けると相対座標での指定ができます。
相対座標とは?

また、距離の指定(disantce)と組み合わせて使うと、指定座標から指定距離離れたエンティティを対象に指定します。範囲の指定(dx, dy, dz)と組み合わせて使うと、指定座標から指定した空間に含まれるエンティティのみを対象に指定します。

スコアで絞り込む

score = {(スコア名1) = (スコアの値1), (スコア名2) = (スコアの値2), ・・・}

指定したスコアを持つエンティティのみを対象に指定します。スコアは何個でも指定可能で、スコアの値は範囲指定が可能です。

チームで絞り込む

  • team=(チーム名) → そのチームに所属しているエンティティを指定
  • team=!(チーム名) → そのチームに所属していないエンティティを指定
  • team= → どのチームにも所属していないエンティティを指定
  • team=! → いずれかのチームに所属しているエンティティを指定

タグで絞り込む

  • tag=(タグ名) →指定したスコアボードのタグが与えられているエンティティを指定
  • tag=!(タグ名) → 指定したスコアボードのタグが与えられていないエンティティを指定
  • tag= → スコアボードのタグが与えられていないエンティティを指定
  • tag=! → スコアボードに何らかのタグが与えられてるエンティティを指定

レベルで絞り込む

level = (レベル)

指定したレベルのプレイヤーを対象に選択します。レベルは範囲指定が可能。

ゲームモードで絞り込む

  • gamemode = (ゲームモード)
    • gamemode = survival
    • gamemode = creative
    • gamemode = adventure
    • gamemode = spectator
  • gamemode = !(ゲームモード)

指定したゲームモードのプレイヤーを対象に選択します。びっくりマークを付けると、そのゲームモードではないプレイヤーを選択します。

名前で絞り込む

name = (プレイヤー名/エンティティ名)
name = !(プレイヤー名/エンティティ名)

指定した名前のエンティティを対象に選択します。びっくりマークを付けると、その名前ではないエンティティを選択します。

向きで絞り込む

x_rotation = (0~90)
y_rotation = (0~90)

指定した角度を向いているエンティティを対象に指定します。xは縦方向、yは横方向の角度で、どちらも範囲指定が可能です。例えば、x_rotation = 45.. だったら45度よりも上を向いているエンティティを指定します。

ちなみにですが、F3+Bキーを押すとエンティティの向きを見ることができます。

データタグで絞り込む

nbt = {(データタグ)}

エンティティをデータタグで絞り込みます。@a[nbt={OnGround:true}]だったら「地面に接している全てのプレイヤー」を指定します。

データタグの一覧はJapan Wikiにまとめられていますが、1つ注意してほしいのが「数値は必ず接尾辞をつける」ということです。

例えばエンティティの体力を指定するためにHealth:10というデータタグを付けた場合、エラーが出ます。なぜかというと、数値に接尾辞が付いていないためです。
Healthのデータ型はShortなので、10の後ろにsをつけてHealth:10sとする必要があるということです。

各データタグごとのデータ型や接尾辞などもWikiに載っているため、数値を設定する場合は必ず確認するようにしましょう。

さいごに

以上で終わります。質問があればコメント欄に書いてくれれば分かる範囲で答えます!
それではノシ

「マインクラフト非公式ユーザーフォーラム」がついに閉鎖。代わりとなるフォーラムは?

f:id:utusemi0903:20190827013528j:plain

2019/08/26に、マインクラフト非公式フォーラムのスレッドが全て閲覧不可能になりました。メッセージによると以前と同様にSQLエラーだそうで、また第三者からの攻撃を受けたっぽいです。7月の発表で、もしも今後障害が起きた場合は復旧せずにアーカイブの公開を停止すると言ってたので、今後復旧の目処はなさそうです・・・。

【緊急】Minecraft非公式日本ユーザーフォーラムにおけるクラッキング被害のご報告

元々フォーラムは閲覧用として残っていたのですが、トップページ以外が閲覧不可能となったため実質的にサイト閉鎖という事になります。 フォーラムにしかリンクの存在しなかったMODやリソースパックなどはダウンロードができなくなってしまったので、開発者か誰かが違う場所にリンクを貼ってくれるのを待ちましょう・・・。

ということで今後はどこのフォーラムを使えばいいのか?という話になりますが、現時点で存在してある程度ユーザー数のいるフォーラムサイトは以下の2つです。(※どちらも非公式) Minecraft Japan Forum - トップページ(ユーザー登録無しで利用可能) Minecraft Forum JP

どちらもマインクラフト非公式ユーザーフォーラムに比べるとまだまだスレッド数が少ないですが、どちらかと言うとMINECRAFT JAPAN FORUMの方がスレッド数は多いですね。

ということで、今後はこのどちらかを使っていきましょう。

【マイクラSnapshot 19w34a】バージョン1.15最初のアップデートで新MOB「ハチ」が追加!

f:id:utusemi0903:20190824060804j:plain

2019/08/21にバージョン1.15初となるスナップショット19w34aがリリースされました。今回のバージョンで追加された主な新要素は「ハチ」です。

新MOB「ハチ」

f:id:utusemi0903:20190824060921j:plain

ハチは中立MOBで、ハチを攻撃したり、ハチの巣を壊したりするとゾンビピッグマンのように攻撃してきます。ハチに刺されると毒状態になり、20秒以内にハチは死んでしまいます。死んでも何もドロップしないため、できれば攻撃しないようにしたいですね。

ハチは花の蜜を集め終わるか、しばらく経っても花が見つけられなかった場合に「ハチの巣」に帰っていきます。また、天気が雨や雷になった場合や、夜になった場合などもハチの巣へ帰ります。もしもハチの巣が壊された場合、ハチは他のハチの巣が見つけられるまで辺りをさまよい続けます。

ハチは巣や巣箱の中で花の場所を教えあいます。もしも既に他の花の場所を知っている場合は、教えられた花の場所へ行かないこともあります。

ハチは花を持って右クリックすることで繁殖させることができます。繁殖状態になったハチが2匹集まると、新たに小さなハチを生みます。(卵はいずこへ)

ハチの巣、養蜂箱

f:id:utusemi0903:20190825033007p:plain

ハチの巣は「花の森」「平原」「ヒマワリ平原」のバイオームに生成されます。ハチの巣はシルクタッチのエンチャントで回収することができ、回収した時点で巣の中にいたハチが中に入ったまま回収されます。シルクタッチでない場合は破壊されてしまいます。ハチが蜜を集め終わってハチの巣へ帰っていくたびに、ハチの巣はレベルアップしていきます(最大5レベル)。

f:id:utusemi0903:20190825032928p:plain

ハチの巣箱は、ハニカムと木材でクラフトすることができますハニカムはディスペンサーにハチの巣or巣箱を入れて射出することで手に入ります)。ハチの巣と同様に、ハチの巣箱も回収するにはシルクタッチが必要です。

キャンプファイアをハチの巣or巣箱の下に置くと、ハチを落ち着いた状態に保つことができます。

ハチミツ瓶

ミツが一杯の状態になったハチの巣or巣箱を空の瓶を持って右クリックすると、ハチミツ瓶が手に入ります。ハチミツ瓶は食べたり砂糖へクラフトしたりできますが、スタックもできないため今のところ使い道は少なそうです。多分今後追加されていくでしょう。

看板や本の文字などを装飾!マイクラで使えるJSONの装飾一覧と記述例

f:id:utusemi0903:20190827101732j:plain

今回はマイクラの看板や本、チャット欄などで使えるJSONフォーマット」と呼ばれるテキストの記述方法を解説します!書き方自体はとてもシンプルなのですぐに覚えられると思います。

/titleや/tellraw、看板や本を生成するコマンドなどにJSONフォーマットが使えるので、ワールド配布などをする方はぜひ覚えておきましょう!

JSONフォーマットを使える場所

  • 記入済みの本
  • 看板
  • /tellraw
  • /title

JSONを使ったコマンドを自動生成してくれる「Minecraft Tools」というサイトがあるので、自分でコマンドを打つのが面倒ならそっちを使うのもオススメです。

また、サーバーの説明文もJSONと同じように装飾することができますが、そっちはまた別の「MOTD」というフォーマットで記入する必要があります。それもMinecraft Toolsで自動生成してくれます。神か。

Minecraft Toolsはこちら

JSONフォーマットでの記述方法

/tellrawという、JSONを使えるメッセージコマンドを例として書いてみます。

赤色で太字のテキストを表示するコマンドはこんな感じになります↓

/tellraw {"text":"てきすと", "color":"red","bold":true}

このコマンドのように、JSON"オブジェクト名": 値という組み合わせを、ひたすら{ }の中に並べて書いていきます。

 

オブジェクト名とは、ざっくり言うとデータの種類を表す名前のことです。上の例だと、"text"はテキストの内容を入れるオブジェクトの名前で、"color"は文字の色名を入れるオブジェクトの名前を表しています。

はデータの内容です。値には3種類あり、数値、文字列、真偽値のどれかを値に入れます。

真偽値とはtrueまたはfalseを取る値のことです。trueは有効、falseは無効という意味で捉えちゃって大丈夫です。例えば、上の例にある"bold"は値に真偽値を入れるオブジェクトで、"bold":trueの場合は「太字を有効にする」ということを意味します。

あと結構重要なことなんですが、数値と真偽値の場合はダブルクオート(")で囲まず、オブジェクト名と文字列の場合だけダブルクオートで囲みます。文字は基本ダブルクオートで囲んじゃっていいですが、trueとfalseは文字ではなく値として捉えられるので、ダブルクオートでは囲みません。

イクラのテキストで使えるJSONのオブジェクト一覧

表示するテキストの内容を指定するオブジェクト

 "text"(テキストを直接指定)
/tellraw {"text":"てきすと"}

テキストの内容を指定します。

 "selector"(エンティティ名)
/tellraw {"selector":"@e[type=Villager]"}

エンティティの名前を表示します。値にはターゲットセレクタを指定します。

 "score"(スコア)
/tellraw {"score": ["name":"Player1", "objective":"LIFE"]}

スコアボードの値を表示します。"name"にはプレイヤー名を入れて、"objective"にはスコアボードのオブジェクトの名前を入れます。

"name"にはプレイヤー名の他にターゲットセレクタも指定することができます。

"translate"(翻訳機能のあるテキスト)

言語設定に応じたテキストを表示します。例えば以下のコマンドの場合、言語が日本語だと「日本語」と表示され、英語だと「English」と表示されます。

/tellraw {"translate":"language.name"}

 

また、"translate"は"with"と一緒に使う場合もあります。例えば、進捗メッセージを表示させる場合、withでプレイヤー名と進捗名を指定します。

withで何も指定しない状態で実行すると以下のように表示されます。

/tellraw {"translate":"chat.type.achivement"} → 「 は の実績を獲得した」

withでプレイヤー名と進捗名を指定すると以下のように表示されます。

/tellraw {"translate":"char.type.achivement", "with":[{"selector":"@p"},"translate":"minecraft:adventure/kill_a_mob"]} → 「~~~ は モンスターハンター の実績を獲得した」

 "color"(色の指定)

/tellraw {"text":"てきすと", "color":"dark_green"}

テキストの色を指定します。使える色は以下の16色。

  • "black"
  • "dark_blue"
  • "dark_green"
  • "dark_aqua"
  • "dark_red"
  • "dark_purple"
  • "gold"
  • "gray"
  • "dark_gray"
  • "blue"
  • "green"
  • "aqua"
  • "red"
  • "light_purple"
  • "yellow"
  • "white"

"bold"(太字)

/tellraw {"text":"てきすと", "bold":true}

太字にするかどうか。true/falseで指定。

"italic"(斜字)

/tellraw {"text":"てきすと", "italic":"true"}

斜字にするかどうか。true/falseで指定。

"underlined"(下線)

/tellraw {"text":"てきすと", "underlined":"true"}

下線を引くかどうか。true/falseで指定。

"strikethrough"(打ち消し線)

/tellraw {"text":"てきすと", "strikethrough":"true"}

打ち消し線を引くかどうか。true/falseで指定。

"obfuscated"(難読化)

/tellraw {"text":"てきすと", "obfuscated":"true"}

難読化(文字をごちゃごちゃさせる)をするかどうか。true/falseで指定

f:id:utusemi0903:20190822002946g:plain

"insertion"

/tellraw {"text":"てきすと", "insertion":"いんさーしょん"}

テキストをSHIFTキー+右クリックをした時に表示されるテキストの内容。

"clickEvent"(クリック時の動作)

/tellraw {"text":"ここをクリック", "clickEvent": ["action":"run_command", "value":"/say Hi!"]}

テキストをクリックした時の動作を指定します。"clickEvent"は、中に"action""value"の2つのオブジェクトがあり、入れ子の構造になっています。入れ子の場合、{ [ .... ] }のように大括弧 [ ] を使います。

"action"はテキストをクリックした時に起きる動作を指定します。動作は以下の4種類です。

"run_command":コマンドを実行する。"value"にはコマンドを指定する。

"suggest_command":チャット欄にコマンドorテキストを入力する(提案する)。"value"にはコマンドかテキストを指定する。/tellrawでのみ有効。

"open_url":確認画面が表示され、Yesを押すと指定したURLのページへ飛ぶ。"value"にはURLを指定する。

"change_page"本のテキストでのみ有効。クリックすると指定したページに変更する。"value"には数値を指定する(""で囲わないよう注意)

"value"に適当な値が指定されていないとコマンドの実行に失敗します。また、"run_command" の "value"  にコマンドではなくテキストを指定した場合、クリックしたプレイヤーを発言者としてそのテキストがチャット欄に表示されます。ただし、看板の場合はテキストを指定しているとコマンドの実行に失敗するので注意してください。

"hoverEvent"(ホバー時の動作)

/tellraw {"text":"ここをクリック", "hoverEvent": ["action":"show_text", "value":"ホバー中!!!"]}

テキストをホバーした時に起きる動作を指定します。"insertion"と同じように、"action"と"value"を指定する必要があります。

"hoverEvent"で使える"action"は以下の4種類です。

"show_text":テキストを表示する。"value"には表示するテキストの内容を指定する。

"show_item":アイテムのデータを表示する。"value"には表示するアイテムのIDやtagなどを指定する。例)"value" : "{ID: ~~~ , tag: ~~~ }"

"show_entity":エンティティのデータを表示する。ホバーするプレイヤーがAdvanced Tooltipが有効になっている(F3+H)場合のみ表示される。"value"には表示するエンティティのname,type,idなどを指定する。(例)"value" : "{name:ああああ, type:いいいい, id:うううう}"

"show_achievement":実績のデータを表示する。"value"には実績のid(achivement:~~~)を指定する。

テキスト内で改行や特殊文字を使う方法

/tellrawはコマンドを実行する度に自動で1行改行されますが、例えば文字の間を1行空けたい場合などは、2行改行する必要がありますよね。

そんな時は改行コード( \n )というのを使います。

/tellraw {"text":"改行\nします\n"}<・code>

 

また、本来テキスト内では使えない文字("や{など)を使う場合、それらの文字の前にエスケープシーケンス(\)をつけると使えるようになります。

/tellraw {"text":"これは\"特殊文字\"です"} →これは"特殊文字"です

異なるテキストを組み合わせて表示する方法

リスト

複数のテキストを一緒に表示するには、JSONのテキストをコンマ(,)で並べて大括弧([ ])でくくる「リスト」という方法があります。

例えば、文中の一部分だけを赤色にしたい場合は、赤色部分、赤色部分の前、赤色部分の後の3つに分けてJSONを書く必要があります。↓

/tellraw [{"text":"一部分だけ"} , {"text": "赤色","color":"red"} , {"text":"です。"}]

一部分だけ赤色です。

 

また、違う種類のテキストを一緒に表示させたい場合もこの方法が有効です。

例えば、"score"と"text"と"selector"を一緒に使えば、以下のようなこともできます。

/tellraw [{"text":"現在体力がハート5個以上のプレイヤーは"} , {"selector": "@a[health = 10.. ]" , "color":"yellow"} , {"text": "です。"} }]

このコマンドでは、healthというプレイヤーの体力スコアが10以上(ハート5個以上)のプレイヤー全員の名前を、"selector"によって表示しています。

エクストラ

一部分だけ装飾を適用させたい場合に便利なのが「エクストラ」です。エクストラの中に指定されたJSONテキストは、何も装飾されていない場合"text"の装飾をそのまま引き継ぎます。

例えば、全体の文字は灰色で、一部分を赤、青、黄色に指定したい場合、以下のようになります。

/tellraw [{"text":"a","color":"gray","extra":"{"text":"赤","color":"red"},{"text":"と"},{"text":"青","color":"blue"},{"text":"と"},{"text":"黄色","color":"yellow"}"}]

ただこの指定方法はカッコが増えてややこしくなる上に、テキストのデフォルトの装飾を変えたい場面はあまり多くないので、活躍する場面は少なそうです。

スポンサードリンク
おすすめ記事

Powered by Hatena Blog | ブログを報告する