進捗の作りかた#0準備編

ちょっと配布ワールドを作りたくなったので
データパックもとい進捗をいじろうと思ってみたのですが、
情報が少なかったので、いろいろ試してブログに投稿しようと思います。
今回は、準備的なことを簡単にまとめました。
分からなかったら各自調べてください。

とりまデータパック作る

  1. .minecraft/saves/ワールド名/datapacks/の中にフォルダを作り、データパックの名前をフォルダ名にする。ここではtestpackとする。
  2. testpackフォルダの中に、pack.mcmetaを作成する。中身は↓をコピペする
    {"pack":{"pack_format":1,"description":"説明文"}}
    pack.mcmetaに不具合があるとデータパックが動作しないので注意
  3. ここで正常に読み込まれているかテストする。
    ワールドに入り、/datapack listコマンドを使ったとき
    2個のデータパックが有効になっています:[vanila],[file/testpack]
    と出れば正常
  4. testpackフォルダの中にさらにdataフォルダを作成
  5. dataフォルダの中にフォルダ(名前空間)を作成する。
    IDなどに使われるので、フォルダ名には英小文字とアンダーバーを用いる。
    ここでは、sintyokuとする。

データパックが読み込まれない場合

  • ファイル名拡張子を表示してがpack.mcmeta.txtになっていないか確認する
    これで丸一日悩んだ...
  • ファイル名拡張子を表示してがroot.json.txtになっていないか確認する
    これで丸一日悩んだ...

進捗をとりあえず作ってみる

  1. 名前空間フォルダの中にadvancementsフォルダを作成
  2. advancementsフォルダの中にroot.jsonを作成。中身を↓のようにする
    {
    "display": {
      "title": "チート",
      "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
    }
    }
  3. これでコマンドブロックを入手すると達成できる進捗を追加できたはずです。
    ワールド内で/reloadコマンドを実行してからコマンドブロックを入手してみましょう。
    (ちなみに入手するコマンドは/give @p command_block)

進捗作成によく使うコマンド

  • /advancement @p grant only 名前空間:進捗のパス
    進捗を達成するコマンド
  • /advancement @p revoke only 名前空間:進捗のパス
    進捗を剥奪するコマンド
    この2つはonlyをeverythingにするとすべての進捗を操作可能。
  • /datapack list
    現在読み込まれているデータパック一覧を表示する。
  • /reload
    データパック・リソースパックなどを再読み込みする。F3+Tでも可能。

次回予告

基本的な進捗の作り方とかを解説するよ

参考

コメント

  1. 久しぶりのブログ更新ですね
    CKenjaさんがツイッターやってたという事実に戦慄しました

    返信削除

コメントを投稿

ここはコメント欄です。多分。モラルを守って。