スポンサーリンク

【マインクラフト人狼】Mod・ゲームマスターなし!マイクラ人狼が遊べるコマンドを公開&配布!【作ってみた】

ゲーム作成

※この記事は Java版 Minecraft 1.16〜対象です

 「〇〇の主役は我々だ!」様からブレイクし,今や多くの実況者がプレイしているマイクラ人狼.自分で遊びたくても,ゲームマスター(GM)なんてしないで参加したかったり,そもそも人が少なくてGMなんて用意できない!という人がいると思います.

 そんな方々のために,MODやGMを導入しなくてもマイクラ人狼が遊べるコマンドを公開・配布します!

 この記事ではルール実際の導入方法と,使い方について解説していきます.ルールについては動画でも説明しています!.実際のプレイしている様子はこの動画をご覧ください!

ルール

 プレイヤーは人狼陣営村人陣営に別れて戦います.

プレイヤーは以下の5つの役職のどれかに割り振られます.ただし,誰にどの役職かは本人しかわかりません

  • 村人陣営
    • 村人:特殊な能力なし
    • 占い師死亡していない他のプレイヤー誰か一人を選択し,その陣営を知ることができる.死亡している場合はわからない.
    • 霊媒師死亡している他のプレイヤー誰か一人を選択し,その陣営を知ることができる.死亡していない場合はわからない.
  • 人狼陣営
    • 人狼:人狼が複数いる場合,誰が人狼かわかる
    • 狂人:占い師や霊媒師に占われた時,村人陣営と表示される.

村人陣営人狼を全滅させることが勝利条件です.狂人は含まれません

対して人狼陣営村人陣営の全滅が勝利条件です.

 また,全てのプレイヤーに以下のアイテムが配布されます.

  • 必殺の剣:一撃でプレイヤーを殺害する剣
  • 必殺の弓:一撃でプレイヤーを殺害する弓
  • 矢(64本)
  • パン(12コ)

 なお,死亡したプレイヤーはその時点から声を出すことが禁止されます.

コマンドの導入方法

ワールドの準備

 まずワールドの準備をしましょう.ワールドはコマンドを使えるようにチートの許可をする必要があります.設定がわからない人は,新しくワールドを作る場合はここ既にあるワールドを使いたい場合はここを確認してください.

 また,ワールド内にゲームの設定や準備をする待機場所と,実際に戦いを繰り広げるステージが必要です.

どうしてこのような設定になっているかというと,複数ステージあっても管理が楽だからです.

待機場所とステージの入り口の座標は後で使うので,x y z共にどこかにメモしておきましょう!

コマンドの導入

ダウンロード

それでは導入編です.まずはこのサイトにアクセスしましょう.

アクセスしたら「Clone or Download」を押して,「Download ZIP」を押します.

ダウンロードができたら解凍しましょう!解凍方法はMacダブルクリックwindows右クリックで「全て展開」を選びましょう.

コマンドの書き換え

次に今ダウンロード下フォルダの中を,「data」→「jinropack」→「functions」→「stage1」と順に開きます.

その中にある「tp.mcfunction」をメモ帳か何かで開き,x y zをどちらもステージの入り口のx座標,y座標,z座標に書き換えましょう!

※座標は整数値(小数点を含まない数)で書き換えてください!

次に同じ場所に入っている

set_aftp_block.mcfunction」を開き,x y z以下の条件に合うx座標,y座標,z座標に書き換えましょう.(上記と同様整数値で)

  • ステージの近く
  • プレイヤーの目に入らない
  • 上に2ブロックぶん開きがある

恐らくステージの上空なんかがいいのではないでしょうか.

最後に「data」→「jinropack」→「functions」→「game」の中にある「end.mcfunction」を開き,2つあるx y zをどちらも待機所のx座標,y座標,z座標に書き換えましょう.

指定の場所にコマンドを移動する

 準備の最後です!

 Minecraftのトップメニューから,「設定…」→「リソースパック…」→「リソースパックフォルダーを開く」を押します.

setting
resourcepack
openfolder

開かれたフォルダ「resourcepacks」と同じフォルダに入っている「saves」から,functionを作りたいワールドのフォルダを選択します.

worlddata

最後に,開いたワールドのフォルダ内にある「datapacks」の中に「mcfunction-master」をそのまま全て入れましょう!

使い方

ゲーム開始から終了までのコマンド

 ゲームの進行のイメージ図です.下で詳しく解説していきます.

設定変更

 以下のコマンドを実行して,人狼ができるようにゲーム設定を変更します

/function jinropack:status_setting/start

マイクラ人狼へのプレイヤーの参加

 ゲームに参加するプレイヤー全員に以下のコマンドを実行させましょう.

/function jinropack:status_setting/join_jinro

また,ゲーム開始時に手持ちのアイテムは全て消えてしまうため,防具等も含めチェストに預けるようにしましょう

役職の設定

 あらかじめ人数にあった役職を設定するコマンドを用意しています. 人数ごとの内訳は以下の通りです.

人数人狼狂人占い霊媒
41010
51110
62011
72111

コマンドは以下の通りです.

  • 4人:/function jinropack:jobs/4
  • 5人:/function jinropack:jobs/5
  • 6人:/function jinropack:jobs/6
  • 7人:/function jinropack:jobs/7

また,数を一人ずつ設定することができます.ただし設定できる人数は,各役職5人までです.

  • 人狼:/function jinropack:jobs/jinro
  • 狂人:/function jinropack:jobs/kyojin
  • 占い:/function jinropack:jobs/seer
  • 霊媒:/function jinropack:jobs/phyc

役職の設定を間違えた場合は以下のコマンドでリセットし,初めから設定しなおします.

/function jinropack:jobs/reset

アイテムの設定

 デフォルトのアイテム加え,特別なアイテムをランダムに一人づつ配布することができます.アイテムは6種類で,それぞれ対応するコマンドによって配布設定ができます.

  • エンダーアイ:/function jinropack:items/ender
  • エリトラ:/function jinropack:items/elytra
  • 盾:/function jinropack:items/shield
  • 不死のトーテム:/function jinropack:items/totem
  • 透明化のポーション(10秒):/function jinropack:items/invisible_p
  • 必殺のスプラッシュポーション:/function jinropack:items/kill_p

全てのアイテムを配布したい場合以下のコマンドを使用します.

/function jinropack:items/setall

複数のアイテムが設定された場合,それぞれ重複しないようにランダムなプレイヤー1人ずつに配布されます(1人が2つ以上のアイテムを受け取ることはありません).

アイテムの設定を間違えた場合は以下のコマンドでリセットし,初めから設定しなおします.

/function jinropack:items/reset

ゲーム開始

 以上の設定が全て終了したら,以下のコマンドでゲームを始めます.

/function jinropack:stage1/start

連続してマイクラ人狼を行う場合,役職やアイテムに変更がなければこのコマンドをもう一度実行することでできます.

役職やアイテムを変更する場合は上記の手順に沿って一度リセットし,設定し直します.

ゲーム終了・途中離脱

 途中離脱するプレイヤーには以下のコマンドを実行させます.

/function jinropack:status_setting/exit_jinro

またマイクラ人狼が完全に終了した時は,以下のコマンドを実行してゲーム設定を通常に戻します.

/function jinropack:status_setting/end

その他の設定

複数ステージの設定

数ステージを扱いたい場合は以下の処理をしてください.

  1. 「stage1」のフォルダを,同じ場所に「stage2」という名前で複製する.
  2. 「stage2」の中にある「start.mcfunction」に書いてあるstage1を全てstage2に変更する.
  3. 「stage2」の中身について,上記のマンドの書き換えに従い座標を書き換える.

これで,以下のコマンドで二つ目のステージにてゲームを始められます.

/function jinropack:stage2/start

同様の手順でステージを無制限に増やすことができます.

禁止事項

スペクターモードになっているプレイヤーがわかってしまうため,tabキー(プレイヤーリスト)は禁止しています.今の所良い対策法がないため良心に頼る形になっています.

終わりに

上記の動画の他に,今後youtubeチャンネルでコマンドの解説・ゲーム実況・その他コマンドを組み合わせた新たなゲームを配信していく予定です!ぜひチェックしてください!

コメント

  1. chibi より:

    サイト通りに手順を行いましたがゲームは開始されませんでした。

    /function jinropack:stage1/start

    のコマンドを実行した時、アイテムは配付され役職が配られますが全員死んでも終わらず、マップにTPされない状態です。

    最初にxyzを書き込むのをしましたが待機所にも、マップスタート地点にもTPされません。

    「全てのアイテムを配布したい場合以下のコマンドを使用します.

    /function jinropack:items/setall」

    このコマンドを使うと、アイテムは削除されました。と出ます。

    なんどもやり直しましたが変わらないのですがどうしたらよいですか?

    • モダンクラフト研究会 より:

      前半に関しては,今一度製作者が実行して問題がないか確認を行おうと思いますが,もしシステムに問題がなかった場合は以下の理由が考えられます.こちら側のシステムの確認が待つ前に確認したい場合は以下の項目をお確かめください.システムの確認は1週間前後で行い,終わり次第またこちらにポストするのでそちらを待ってから確認していただいても構いません.

      以下のコマンドが読み込まれているかご確認ください.
        ・jinropack:stage1/tp
        ・jinropack:stage1/set_aftp_block
        ・jinropack:game/end

      これが読み込まれていない場合,以下の問題がある可能性があります.
      1. コマンドが読み込まれていない(reloadコマンドで解決)
      2. tp,setblock,spawnpointのコマンドの書き方が間違っている(詳しくはminecraft wikiの項などを確認してみてください:https://minecraft-ja.gamepedia.com/コマンド)

      また後半に関しては,当コマンドでは,item/setallに限らずコマンド全体で「アイテムは削除されました。」というようなテキストは用意しておりません.また,マインクラフト内にあるアイテム削除のコマンドもそのようなフィードバックを返すことはありません.よって原因はわかりませんが,ゲーム内に導入したコマンドの,「data」→「jinropack」→「functions」→「items」の中にある「setall.mcfunction」の中身について私達がgithub(コマンドをダウンロードするサイト)上で公開しているコマンドと齟齬がないか確認していただければ幸いです.
      齟齬がある場合,何らかの理由で正しいコマンドがダウンロードされてないことになるため,一度ゲーム内に導入したコマンドを削除し,再度導入する作業から始めていただければ幸いです.

      20201005追記:1週間ほどで確認する予定でしたが、製作者都合により検証環境が無くなり長引いております。

      • モダンクラフト研究会 より:

        こちらのバグの方修正いたしました.
        お手数おかけしますが,chibi様含めそのような症状が見られる方は再度ダウンロードしていただくか,「data/jinropack/functions/items/give.mcfunction」の中にある以下のコマンドを消していただければ幸いです.
        setblock ~ ~ ~ minecraft:air destroy

        今後ともよろしくおねがいいたします.

  2. ラン より:

    私が作ったワールドで、友達と一緒に楽しく使わせて頂いております。

    さて、質問なのですが、ファイルをそのまま入れて使っていますが、共通で配布されるアイテムの「つよい剣」が普通のダイヤの剣になってしまい、一撃で相手を倒すことができません。

    まだ、試しておりませんが、前にコメントがありました『/gamerule sendCommandFeedback false』を使えば宜しいでしょうか?
    それとも、プログラムを書き換えれば解決するでしょうか?

    後者の場合、どのファイルのどの部分を変えれば宜しいでしょうか?

    • モダンクラフト研究会 より:

      コマンドをお使いいただきありがとうございます!

      ただいま確認したところ1.16〜に対応してないようでした.ご迷惑おかけしました.
      公開しているコマンドの方を修正したのでまたダウンロードして再度座標等を設定していただくか,以下の内容を書き換えて頂ければと思います!

      ファイル:mcfunction/data/jinropack/functions/game/bftp.mcfunction
      修正箇所:give @a[scores={jinro_join = 1}] minecraft:diamond_sword{AttributeModifiers:[{AttributeName:”generic.attackDamage”,Name:”generic.attackDamage”,Amount:20,Operation:0,UUIDLeast:348437,UUIDMost:39435,Slot:”mainhand”}],display:{Name:”\”つよい剣\””,Lore:[“つよい”]}}
      修正後:give @a[scores={jinro_join = 1}] minecraft:diamond_sword{Enchantments:[{id:sharpness,lvl:50}],display:{Name:”\”つよい剣\””,Lore:[“つよい”]}}

  3. わたあめ より:

    スマホでサイトを開いたらclone or downloadがありません。どうしたらいいでしょうか?

    • モダンクラフト研究会 より:

      すみませんがこのコマンドはPCのjava版のみの対応のため,スマートフォン版で遊ぶことはできません.
      もしPCのjava版でのMinecraftをお遊びでしたら,そのPCで再度サイトの指示に従って使ってみてください.

  4. こはく より:

    よくつかわっせてもらっているんですが誰かが占いした時に[name:[target]をトリガーしました
    と見えてしまいます どうしたら見えなくなりますか?

    • モダンクラフト研究会 より:

      こんにちは.コマンドお使い頂きありがとうございます.
      また回答が遅くなってしまい申し訳ありません.

      まずは確認になりますが,マイクラ人狼を始める前に実行する
      /function jinropack:status_setting/start
      というコマンドを実行していますでしょうか?

      またもし上記のコマンドを実行していた場合は,以下のコマンドを実行することで解決すると思われます.
      /gamerule sendCommandFeedback false

      試して頂いた上で再度コメントしていただければ幸いです.

      • ななし より:

        いつも使わせてもらっております。
        質問なのですがこの説明にあるアイテム以外のアイテムを追加することはできるのでしょうか?できるのでしたら方法を教えていただきたいです。

        • モダンクラフト研究会 より:

          お使いいただきありがとうございます.
          返信が遅くなってしまいましたが,以下の手順で可能です.[]のものは,丸々希望のものに書き換えてください
          例)例えばオークの木材を配布したい場合
          [好きな名前]=[追加したscoreboardのobject名]→oak
          [アイテム名]→オークの木材
          [追加したいアイテムのID]→oak_planks

          1. まず下記のようにアイテムを表すscoreboardのobjectを作成します
          scoreboard objectives add [好きな名前] dummy
          2. “mcfunction/data/jinropack/functions/items/”のなかに,使いたいアイテム用のmcfunctionを作成する.
          3. 以下の内容をそのmcfunctionに書き込む
          scoreboard players set SYS [追加したscoreboardのobject名] 1
          say [アイテム名]をオンにしました
          4. “mcfunction/data/jinropack/functions/items/give.mcfunction”に以下の内容を追加する
          execute if score SYS [追加したscoreboardのobject名] = SYS 1 run give @r[scores={jinro_join=1,have_item=0}] [追加したいアイテムのID]
          scoreboard players set @a[nbt={Inventory:[{id:”[追加したいアイテムのID]”}]}] have_item 1

タイトルとURLをコピーしました