> For the complete documentation index, see [llms.txt](https://docs.sandbox.game/game-maker-academy-jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sandbox.game/game-maker-academy-jp/tutorials-1/beginner-tutorials/quest-set-up-from-start-to-finish.md).

# クエストの作成（全行程）

基本のクエストの設定方法とそれに関わるオプション設定の全行程をご紹介します。

クエストの作成にあたって必要になるオプションの詳細をご紹介します。\
\
ここでは5つのコインを集めてゲームのVictory の画面をトリガーする例を使って解説します。

![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MP7QVdHqUgFUCLA918J%2F-MP7_JqKYQSwd267Jmqt%2FQuestEnd1.gif?alt=media\&token=c9ab9d05-9e7d-438d-b910-a9538ddeced2)

* 画面左上の**Rules（ルール）**&#x306E;ボタンをクリックします。クリックすると下記の画面が表示されます。

![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgFG8JEfOwaCHm99KY%2F-MPgJh5KtJpUi58urYay%2Fquest_page-1.png?alt=media\&token=b8985954-ac13-41aa-852d-bc4d3b531e40)

表示された画面の**左から２番目**にあるQuest のタブにあるOn/Off のボタンが緑になっていることを確認します。その下に名前の変更が可能なクエストのリストが表示されます。それぞれのクエストには以下の5つの設定を行うことができます。

1. Unlock quest（クエストの解除）
2. Launch quest（クエストの起動）
3. Quest type（クエストの種類）
4. Quest completion（クエストの完了）
5. Action after completion（クエスト終了後のアクション）

![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgFG8JEfOwaCHm99KY%2F-MPgLmbFd7HibjE92_LY%2Fquest_page-2.png?alt=media\&token=16ec4590-d5a5-42de-97e2-6fd3ade603da)

### 1．Unlock quest（クエストの解除）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgFG8JEfOwaCHm99KY%2F-MPgNBbcyW_XBjnJKrKN%2Fquest_page-menu1.png?alt=media\&token=c76963aa-c5b3-4b9d-ab48-84f8428d084c)​ | <p>​</p><ul><li><strong>Auto Unlock（自動解除）</strong> – ゲームがスタートするとクエストが解除されます。</li><li><p><strong>Requires Message（要メッセージ）</strong> – クエストは隠れた状態になっています。クエストを開始するメッセージが送られない限りプレイヤーはクエストが解除されたのかどうかを知ることはできません。</p><p></p></li></ul> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

ここではゲームがスタートすると同時にクエストをスタートさせたいので **Auto Unlock** を選択します。

### ​2．Launch quest（クエストの起動）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgNYrb3RQNlozR-Xs9%2F-MPgOl433fbkaZqwMNKF%2Fquest_page-menu2.png?alt=media\&token=313d4f6f-dc34-49f6-a1d3-384a884f798b)​ | <p>​</p><ul><li><strong>Auto Unlock（自動解除）</strong> – クエストが解除されるとすぐにクエストが起動します。</li><li><strong>Requires Message（要メッセージ）</strong> – プレイヤーがスタートに必要なメッセージを送るまでクエストはスタートしません。</li></ul> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

ここではゲームがスタートすると同時にクエストをスタートさせたいので **Auto Unlock** を選択します。

### 3．Quest type（クエストタイプ）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgNYrb3RQNlozR-Xs9%2F-MPgR3iH4DTc7yQV6xAh%2Fquest_page-menu3.png?alt=media\&token=31181905-c501-4c3e-b649-a92e836dff41)​ | <p>​</p><ul><li><strong>Counter（カウンター）</strong>– 収集したり、倒したりしたオブジェクトの数を数えるクエストです。</li><li><strong>Asset Death （アセットを倒す）</strong>– 特定のアセット を倒すとクリアになるクエストです。</li><li><strong>Timer（タイマー）</strong>– タイマーのあるクエスト です。</li><li><strong>Wait For Message（メッセージを待つ）</strong> – メッセージが送られるとクリアになるクエストです。</li></ul> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

\
それぞれのクエストタイプの特徴をご紹介します。

i．Counter（カウンター）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgNYrb3RQNlozR-Xs9%2F-MPgRaAfyhadrqYyEgPM%2Fquest_page-menuqt1.png?alt=media\&token=e01cc796-2920-40ef-988a-ffd7c225cc86)​ | <p>​</p><ul><li><strong>CollectedObjects（オブジェクト収集）</strong> – プレイヤーがアセットを集めてクエストクリアとなります。</li><li><p><strong>Deaths（アセットを倒す）</strong> – プレイヤーがアセットを倒してクエストクリアとなります。<br></p><p>それぞれのアセットにはここで設定したタグと一致するタグの設定が必要になります。ここで<strong>Tag（タグ）</strong>の項目に「<strong>coins</strong>」を使用します。<br><br>Amount（数）の欄にはプレイヤーが集めたり倒さないといけないアセットの数を入力します。 </p></li></ul> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

ii．Asset Death（アセットを倒す）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgT_wMuS2Ey9R3lRgI%2F-MPgTxmUM9arSQmqPVa8%2Fquest_page-menuqt2.png?alt=media\&token=95c73030-3fff-4488-9530-166ac8ca3319)​ | <p>​</p><ul><li><strong>Asset Death</strong> - <strong>Asset to watch（ターゲットアセット）</strong>にはGame Maker 内にあるアセットを入力します。そのアセットが倒された場合にミッションクリアとなります。<br><br>ボスと戦うクエストに使われます。</li></ul><p></p> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

iii．​Timer（タイマー）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgT_wMuS2Ey9R3lRgI%2F-MPgUlacweTJ_92sdZBT%2Fquest_page-menuqt3.png?alt=media\&token=2a13904b-4d68-4f1a-a23a-9f076e4bf428)​ | <p>​</p><ul><li><strong>Timer（タイマー）</strong> – クエスト にタイマーを設定できます。</li><li><p><strong>Seconds to wait（クリアタイム）</strong> – タイマーの長さを設定できます。<br></p><p><strong>Goal（クリア条件）</strong></p></li><li><strong>Survive（サバイブ）</strong> – タイマーの時間が切れるまで生き残ってクリアすることを条件に設定できます。</li><li><strong>Defend（ディフェンド）</strong> – アセットを選択し、タイマーの時間が切れる前に倒されないようにクリアすることを条件に設定できます。</li><li><strong>Message needed（要メッセージ）</strong> – プレイヤーはタイマーの時間が切れる前にメッセージを送ってクリアすることを条件に設定できます。（例：ボタンを押す、ゴールにたどり着くなど）</li></ul> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

iv．Wait For Message（メッセージを待つ）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgWj0d9hf1DlsBIf3B%2F-MPgWwmyyytgEMnGdWNg%2Fquest_page-menuqt4.png?alt=media\&token=1e5ad074-2acc-4e7e-9e93-ea54a5cf1511)​ | <p>​</p><ul><li>Wait For Message（メッセージを待つ） – プレイヤーはクエスト をクリアするためにメッセージを送る必要があります。（例：ボタンを押す、ゴールにたどり着く、アセットに話かけるなど）</li></ul> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |

​ 以上が**Quest Type** のオプションです。ここではプレイヤーにコインを拾わせてクエストをクリアするという設定をしたかったので **Collected Object（オブジェクト収集）**&#x3092;使用しました。またコインに「**coins**」のタグを設定し、数は**5**に設定しました。

### **4．Quest completion（クエストの完了）**

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgWj0d9hf1DlsBIf3B%2F-MPgYQ9920G6aTFXJNm2%2Fquest_page-menu4.png?alt=media\&token=a005be02-6131-4dd3-a211-f00b446d69c8)​ | <p>​</p><ul><li><strong>AutoCompletion（自動完了）</strong> – 目的を達成するとクエストがクリアになります。ここではこのオプションを使用します。</li><li><strong>Requires Message（要メッセージ）</strong> – プレイヤーが必要なメッセージを送るまでクエストは終了しません。</li><li><strong>WaitForInput（入力待ち）</strong> – クエスト の目的を達成した後にキーボードの「<strong>Enter</strong>」を押す必要があります。</li></ul> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

### 5．Action after completion（クエスト終了後のアクション）

| ​![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MPgWj0d9hf1DlsBIf3B%2F-MPgZT0rO6vQysWuYkEZ%2Fquest_page-menu5.png?alt=media\&token=65bfa125-9747-444f-83ab-303c07fa3f96)​ | <p>​</p><ul><li><strong>Nothing（なし）</strong> – クエストをクリアしたあとには何も起きません。</li><li><strong>Send Message（メッセージ送信）</strong> – クエストをクリアするとメッセージが送られます。</li><li><strong>End Game（ゲーム終了）</strong> – ゲームが終了するとプレイヤーに<strong>Victory の画面</strong>が表示されます。ここではこのオプションを使用します。</li></ul> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

「**coins**」のタグを設定してある5つのコインをプレイヤーが集めるとゲーム終了となり、**Victory** と表示されるというクエストの設定が完了しました。

\
次にアセットを収集可能にし、集めた時にカウントされるように設定します。<br>

* 「**L**」キーを押し、ライブラリからプレイヤーが集めるアセットを選択し、Game Maker 内に設置します。
* アセットを選択し**すべてのビヘイビアを削除**します。
* Collectible のコンポーネントを追加して**Collect Type（収集タイプ）**&#x304C;Collision（コリジョン）になっていることを確認します。
* Tags までスクロールダウンしてRules（ルール）で設定したタグを入力します。\
  \
  ここでは**Rules** で設定した「**coins**」を使用します。<br>

![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MP7QVdHqUgFUCLA918J%2F-MP7WK_q1aKcFmM6QmEJ%2FGameMakingBasics%20-%20Quest%20coins.png?alt=media\&token=e9a6bf6c-92dd-44f6-9f07-81d28f13de43)

これでプレイヤーが拾うとカウントされるコインの設定が完了です。\
\
このクエスト では5つ集める設定になっているため、一つ一つ別々に設定する代わりに、今作ったアセットを選択し、**CTRL +**「**D**」 キー でアセットを複製します。この作業を繰り返してクエストに必要な数だけ複製しマップの中に配置します。

![](https://10474629-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MO_j99BJEXK4zHqxgqS%2F-MP7QVdHqUgFUCLA918J%2F-MP7YsEzHzqEKLwCAwEr%2FGameMakingBasics%20-%20Quest%20coins2.png?alt=media\&token=9a3f3ae8-79c0-41e9-b835-15f1518ac68b)

これでコインを5つ集めるとVictory の画面が表示されるというクエストの設定が完了です。

<br>
