進捗の作り方#1

注意

  • 進捗を作るのにはJSONを使用します。JSONを理解している前提で進めます。
  • 1.14.4の文法を用います。1.13.2以前の情報はある程度ネットに流れてると思います。
  • #0も読んできてください
  • 筆者は初心者です。ついでに言うとゲーム下手でゴミエイムです。
  • 今更だけど半分自分用だよ
  • 多分どこか間違ってそうだね

基本的な進捗JSONの書き方

前回のコマンドブロックを入手すると達成できる進捗JSONがこちら

{
"display": {
  "title": "チート2",
  "description": "コマンドブロックを入手する2",
  "icon": {
    "item": "minecraft:command_block"
  },
  "frame": "task",
  "background": "minecraft:textures/block/iron_block.png"
},
"criteria": {
  "example": {
    "trigger": "minecraft:inventory_changed",
    "conditions": {
      "items": [
        {
          "item": "minecraft:command_block"
        }
      ]
    }
  }
},
"rewards": {
  "experience": 100
}
}
各keyの意味を解説していきます。

display

見た目を設定するオブジェクトです
  • title...進捗の名前。/tellraw形式が使える
  • description...進捗の説明。/tellraw形式が使える
  • icon...進捗のアイコン。
    • item...アイコンはアイテムしか使えない
    • nbt...アイテムのNBTを指定する。1.13.2以前はdata
  • frame...進捗のフレームを指定する。1.14.4現在"task","challenge","goal"が使える
  • background...進捗の画面の背景の画像を指定する。自分で用意したものも使用可能。最初の進捗でのみ指定可能
  • show_toast...OOを達成!を表示するかどうか。初期設定はtrue
  • announce_to_chat...チャット欄にOOを達成を表示するかどうか。初期設定はtrue
  • hidden...進捗を達成するまで進捗画面に表示されるかどうか。初期設定はfalse

criteria・requirements

達成条件を指定するオブジェクト。#2にて解説予定

rewards

達成報酬を設定する。経験値・コマンド・アイテム・レシピ開放など。#3で解説

parent

前提の進捗を指定する。最初の進捗では指定してはいけません

進捗ジェネレーター

ふう...こんな感じですかね。
進捗は、一つでも必要な情報がファイルから抜けていたりすると何のエラーも出ずに読み込まれないので、かなり作るのが大変だと思います
そこで紹介するのがこちらのサイト
http://commandcreator.com/advancements/
必要な情報を入力するだけで、進捗が作れちゃいます。使い方は使って覚えろ。
直接ファイルをいじると、素人は絶対どこかミスするので、ツールをつかうことをおすすめします。
え?こんな便利なサイトあるなら今までの解説意味ないじゃんだって?
これを使いこなすにはこの程度の基礎知識は必要です。
しかも、これから達成条件や報酬を設定するときは、場合によっては直接ファイルをいじらないといけません。(例:配布マップとか)
というわけで、次回は達成条件と報酬の解説です。お楽しみに。

コメント