【ゲーム用語】フラグとは何か?【フラグが立った、死亡フラグ等】

ゲーム用語の解説のお時間です!

今回紹介するのは、「フラグ」です。

ロールプレイングゲーム(RPG)でよく聞く言葉ですね。

最近では、「フラグが立った」とか「死亡フラグ」など、日常生活でも聞くことがあると思います。

ゲームになぞらえての説明になりますので、普段遊んでいるゲームをイメージしながら読んでもらえると、分かりやすいかと思います。

参考にして頂ければ幸いです。

スポンサーリンク

■ フラグとは?

フラグとは「旗」という意味です。
英語にすると、「Flag」と書きます。

これはゲーム用語というよりも、大本はプログラミング用語です。
プログラムを記述する上で、「フラグ」という文面というかルールが出てきます。

テレビゲームはプログラムでできていますので、その言葉が出てきて一般化してきたというわけですね。

■ プログラミングにおけるフラグ

フラグは「旗」のようなもので、イメージとしては、「旗を上げる」「旗を上げない(倒れたまま)」です。

これによって、「オン・オフ」を管理します。

なにかの行動やイベントを起こしたときに、
「フラグがピコン!と立つ」

その後のイベントの際に
「フラグが立っているかどうかを確認し」
 ↓
「立っていたらAのストーリーへ」
「立っていなかったらBのストーリーへ」

と分岐するように使います。

ちなみにフラグの「オン・オフ」は、

「0(オフ)と1(オン)」
「true(オン)とfalse(オフ)」
「真(オン)と偽(オフ)」

なんて表されることもあります。

■ フラグ=伏線ではない

最近は「フラグ」という言葉が一般的になりすぎて、「伏線」という意味で使われるようになり始めています。

「ボッコボコにしてやんよ」→「ボコボコにされるフラグ」
「テスト楽勝だし!」→「赤点フラグ」
みたいな感じですね。

微妙な違いでわかりにくいかもしれませんが、 テレビゲームの世界では、
「ボコボコにしてやんよ」と発言してしまうことで、「ボコボコフラグ」が立ちます。

その後、強敵に出くわす段階で、 「ボコボコフラグ」がオンかオフかをチェックし、
オンなら「ボコボコにされる」
オフなら「ボコボコにされない」
と分岐します。

・フラグ回収とは?

「フラグ回収」という言葉があります。
これが、フラグを伏線としてしまっている元凶です。

フラグ回収とは、フラグを回収してまわる行為。
つまり「旗の回収」という意味で使われ、物語終盤において、今まで描かれてきた伏線を回収する。
といった意味で使われます。

フラグ回収という言葉は、プログラミングの世界にはありません。フラグは立てるか・立てないか(下ろすか)、しかないためです。

一旦立てたフラグを下ろす(オフにする)ことはしますが、フラグ回収とは言いません。

■ ゲーム内で「フラグ」がどう使われるか

さて、実際にゲーム内で、「フラグ」はどう使われるかをご紹介しますね。

先に説明したとおり、テレビゲームはコンピューターの世界に近いため、「フラグ」は伏線ではなく、「オン・オフ」として使われることが多いです。

フラグはロールプレイングゲーム(RPG)で出てくることが多いです。

実際には、全てのゲームソフトはプログラミングでできているため、アクションゲームであろうが、ホラーであろうが、ノベルであろうが、何でも「フラグ」という仕組みが使われています。

ただRPGのようなストーリーが主体のゲームが、「フラグ」という言葉が使われることが多いですね。

■ ドラクエのフラグ

最も馴染み深いゲームとして、ドラクエを上げます。

ドラクエの世界では、
魔王と倒す前と倒した後で、町の人の会話内容が変わりますよね。

魔王を倒す前は、
「勇者よ!魔王を倒してまいれ!」と話していた王様が、
魔王を倒した後では、
「よくやった勇者よ!これで世界に平和が訪れる」と言いますよね。

ここで「フラグ」という仕組みが使われています。

フラグが立つのは、「魔王を倒した瞬間」です。
魔王を倒したときに、
「魔王討伐フラグ=オン」とフラグが立ちます。

王様と話をする時に
「魔王討伐フラグがオンかオフか?」
を最初にチェックしているわけです。
オフなら「勇者よ!魔王を倒してまいれ!」と返しますし、
オンなら「よくやった勇者よ!これで世界に平和が訪れる」と喋ります。

つまり、旅の行程は関係ないわけです。
冒険の途中で起こったイベントも、苦労して倒した中ボスも、レベル上げも、何もかも関係がなく、「魔王討伐フラグ」がオンかオフかだけで判断しています。

ですから極端な話、初めて王様に話しかける時点で、「魔王討伐フラグ」がオンになっていたら、いきなり「よくやった勇者よ!これで世界に平和が訪れる」と言われてしまいます。

■ フラグとバグの関係

フラグがオンかオフかで、イベントの分岐が行われます。フラグをチェックすることで、ストーリーが進んでいきます。

そうすると、フラグがうまく立っていないと、イベントの分岐が起きなかったり、ストーリーが進まなくなってしまう。
いわゆる「進行不能バグ」、なんてのが発生したりします。

例えば上の例でいうと、
魔王を倒した瞬間に「魔王討伐フラグがオン」になりますよね。

じゃあこれが、
「魔王の話に乗って、世界の半分をもらってしまった時」はどうなるでしょう?

魔王を倒していないわけですから、「魔王討伐フラグはオフ」のままです。

そうすると、王様の元へ戻っても
「勇者よ!魔王を倒してまいれ!」と延々と話すだけになります。

(※こうなってしまうため、実際には、ドラクエ1では、世界の半分をもらったとき用のエンディングがある)

■ 複数のフラグ管理とバグ

実際にはゲームの世界は、1つのフラグで管理をしているわけではありません。

フラグA
フラグB
フラグC
フラグD

と無数のフラグを同時にチェックして、物語を先へ進めています。

フラグは多ければ多いほど、バグが発生しやすくなります。フラグの管理ができなくなるわけですね。

予期せぬプレイヤーの行動によってフラグが立ってしまい、それによって、よきせぬイベントが起きてしまうわけです。

「ドラクエ11」を例にしてみましょう。

ドラクエ11では、船を手に入れた後、
ソルティコの町で水門を開けてもらい、内海から外海へと出ますよね。

ところが、初めてソルティコのジエーゴの屋敷へ行っても、「ジエーゴは今いません」と言われるのみで取り合ってもらえません。

これはおそらく
「ロウが仲間になっているか」のフラグが立っているかをチェックしています。

「ロウが仲間になった状態」で、
(かつ、「船を持っている」のフラグもあるかも)
ソルティコの町へ行くと、水門を開けてもらえます。

さて、ここで問題です。
「ロウが仲間になった状態」を水門を開けるフラグにしてしまうと、
何が起きるでしょう?

そうです。
ロウだけを仲間にしただけで、外海へと出られてしまうわけです。

例えば何らかのバグが発生し、
・最初からルーラでどこにでも行けてしまう
となってしまうと、

主人公は最初の段階で、ロウを仲間にすることができてしまいます。
主人公・カミュ・ロウだけで外海へ出てしまうと、
それ以降に起きるイベントの数々はバグると思いませんか?

ですから実際には、「ロウが仲間になっているか」がフラグではなく、「仲間が全員そろっているか」がフラグになっているものと思われます。

・主人公=オン
・カミュ=オン
・仲間C=オン
・仲間D=オン
・ロウ=オン

のようなイメージです。

■ 実際のゲーム画面でのフラグ管理

ドラクエ3のチーフプログラマーの方が、Youtubeで活動されていまして、そこで実際のゲーム画面を元に、フラグやバグの動作確認をしています。

フラグがどう管理されているか、
プログラムの中でどう機能しているのか、
フラグを1つ立てただけで、どんでもないことが起きたりだとか。

かなり面白いので、興味のある方はこちらも参考にしてみてください。

■ 一般人の感覚とプログラミング的思考

プログラマーの笑い話にこんなものがあります。

妻がプログラマの夫に
「買い物にいって牛乳を1つ買ってきてちょうだい。卵があったら6つお願い」
と言いました。

夫はしばらくして、牛乳を6パック買ってきました。

妻は「なんで牛乳を6パックも買ってきたのよ!」

夫は「だって、卵があったから…」

これは「フラグ」のいい例ですね。

「卵があったから」→「卵フラグ=オン」→「牛乳を6パック買う」

もし卵が売り切れだったら(卵フラグ=オフ)、夫は「牛乳を1パック」買ってきていたことでしょう。

プログラミングというものは、コンピューターに寄り添います。
そのため、思考回路がコンピュータ的になります。

人間的なニュアンスが通じない世界なのですね。
しかしながら人は人ですので、プログラミングの際にニュアンス的思考もしてしまいます。
そのために、バグが生じるわけです。

■ 終わりに

以上、「【ゲーム用語】フラグとは何か?【フラグが立った、死亡フラグ等】」でした。

楽しいゲームに出会うための参考としていただければ幸いです。

スポンサーリンク

スポンサーリンク
スポンサーリンク
検索
スポンサーリンク
検索

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク
検索