制作レシピ / アスレ:チェックポイントとタイマー
アスレ:チェックポイントとタイマー
Java版のコマンドブロックで、スタート・計測・中間復活地点・ゴールを作る基本設計。
対象:Minecraft Java Edition 1.21.1(このページの例)|掲載例は構文資料と照合した学習用サンプルです。Minecraft実機での動作保証・全バージョン検証を意味しません。
更新日:
タイムアタックの全体構成
スタート地点のボタンを押すと記録を0から数え始め、ゴールのボタンを押すと記録を止めます。途中でチェックポイントを触ると、死亡後のリスポーン位置を変更できます。サーバーのtick単位の記録なので、時間を秒で見たい場合は記録値を20で割ります(理論上20 tick/秒。サーバー負荷により現実時間とずれる場合があります)。
スコアと表示を準備
/scoreboard objectives add park_ticks dummy
/scoreboard objectives setdisplay sidebar park_ticks既存ワールドで同名Objectiveがある場合は上書きせず、別名を使ってください。
スタートボタンに設定
/scoreboard players set @p park_ticks 0
/tag @p add park_runningインパルス1台+チェーン1台などで順番に実行します。@pはコマンドブロックから最も近いプレイヤーです。スタート地点に配置してください。
時間計測を動かす
/scoreboard players add @a[tag=park_running] park_ticks 1「リピート・無条件・常時実行」で実行します。参加していないプレイヤーはカウントされません。リピートを2個設置すると2倍の速度で数えるため、ワールド内ではこの計測装置を1つにしてください。
チェックポイントとゴール
/spawnpoint @p 100 65 200
/tag @p remove park_running1行目は中間地点のボタンに接続し、座標を安全に立てる床の上へ変更します。2行目はゴール地点のボタンに接続してください。チェックポイントは復活位置を変えるだけで、経過時間はリセットしません。
失敗しやすい点・確認方法
- 計測ブロックの常時実行を忘れると、数値が増えません。
- コマンドブロックが読み込まれていないと計測が停止するため、チャンクの読み込み範囲を確認します。
- 他プレイヤーの近くにボタンを置くと
@pが別人を指す可能性があります。 - ゴール後にリスタートして、もう一度0から数え始められることを確かめます。
本格的なランキングや複数チェックポイント管理は、この基本形の上へ追加する機能です。
この先の作り込み
スタート・チェックポイント・ゴールの判定位置を先に決めます。計測中かどうかをプレイヤーごとに管理し、ゴール後の値が再び増えないようにしてください。