クエストゲームを作成するための非線形スキームの使用の機能

以前の投稿( リンク )で、いくつかの深刻なコメントを行い、線形パッセージスキームの一部として「隠しオブジェクト」ゲームの主な欠点を示しました。 また、現代のクエストゲームに必要なプロパティが与えられました。



この投稿では、クエストゲームを書くために非線形スキームを使用する機能を明らかにします。 この資料は、主にこれらのゲームの開発者、およびこの分野で一定の経験を積んだプレイヤーを対象としています。



クエストゲームの線形スキーム(以下、LSCと呼びます)の主な問題は、よく知られている後続のプロットセマンティックイベント(ステップ)のよく定義されたチェーンであり、その遷移は条件を使用して実行されます。 以下は、次のプロットの説明です。



プレイヤーはK氏と話し、家に入って古いコインを取ります。



このプロットは完全に架空のものであり、さまざまなスキームを使用してどのように実装されるかを示すためだけに役立ちます。 そのようなゲームの意味が非常にシンプルで短いと推測することは難しくありません。 したがって、 LSCのフレームワークの詳細を説明します。



ゲームの開始時に、ビデオスクリーンセーバー(フルスクリーンビデオ)が表示されます。このスクリーンセーバーでは、男と一緒にいるプレーヤーが家に近づきます。 次に、コントロールがプレーヤーに転送されます。 彼はK氏に目を向け、ダイアログ(ビデオスクリーンセーバー)を有効にします。 その後、この不思議な紳士は姿を消し、コントロールは再びプレイヤーに移ります。 今、彼は家に入る必要がありますが、キーなしではこれを行うことはできません。これは、これがストーリーをさらに進めるための唯一の提供された方法だからです。 したがって、プレーヤーは正面ドアの近くに植木鉢を見つけなければなりません。植木鉢にはこのキーがあり、ドアを開けてドアを開けて中に入ります。 多くの部屋がある廊下に落ちますが、そのうちの1つにのみ古いコインがあります。 これは右側の2番目のドアです。 入ると、プレーヤーは机の端にあるこのコインを見て、それを取り、ビデオスクリーンセーバーをたどります。そして、プレーヤーがどのようにして家から未知の方向に出るのかを確認します。




LSCのフレームワークにおけるこの一節のいくつかの重要な特徴に注意する必要があります。





これらの不快な瞬間は、非線形スキームを適用することで回避できます。 時間の追跡に従って、それらを2つのタイプに分割します。

  1. 時間を考慮しないクエストゲームの非線形スキーム(NSC-V);
  2. 時間(NSC + B)を考慮したクエストゲームの非線形スキーム。




これらは、LSKの欠点に対処する2つの代替手段ですが、非常に大きな違いがあります。 それらをより詳細に検討しましょう。



NSC-Vは高度なLSCであり、特定のプロットモーメントを渡すためのローカルオプションがいくつか追加されています。 LSCと同様に、各イベントの時間と期間は考慮されません。 同じ文章を説明しますが、すでにNSC-Vスキームを使用しています(新しいポジションは太字でマークされています )。



ゲームの開始時に、ビデオスクリーンセーバー(フルスクリーンビデオ)が表示されます。このスクリーンセーバーでは、男と一緒にいるプレーヤーが家に近づきます。 次に、コントロールがプレーヤーに転送されます。 彼はK氏に目を向けて、対話(ビデオスクリーンセーバー)をアクティブにすることができます。 しかし、彼はこれをしないかもしれませんが、すぐに家に近づきます。 その後、この神秘的な紳士は消え、プレイヤーは彼を見ることができなくなります。 家に入る必要があります。 これは、キー(プレーヤーは正面ドアの近くで植木鉢を見つけ、このキーが横たわって、それを取り出し、ドアを開けて中に入る必要があります )、 クローバー(プレーヤーは地下の入り口近くのツールボックスを調べて、クローバーとフロントドアを開ける)または東側の開いている窓から(プレーヤーは窓の下に高いツールボックスを移動し、その上に登って中に入る必要があります)。 彼は多くの部屋で廊下に落ちます( 最初の2つの方法で家に行った場合 )が、そのうちの1つだけが古いコインです。 これは右側の2番目のドアです。 入る( 窓から家に入った場合、彼は古いコインのあるこの部屋にいる )プレイヤーはこのコインを机の端で見、それを取り、それからビデオスクリーンセーバーが続き、プレイヤーが家を出る方法を見る未知の方向。




NSC-Vのフレームワーク内のこのパッセージのいくつかの重要な機能に注意する必要があります。





NSC-BはNSC-Bよりもはるかに複雑であり、次の概念を導入する必要があります。

-時間係数(Sq);

-各文字の動作アルゴリズム(Bi、i = 1 ... N、Nは文字の総数)。



時間係数は、ゲームの世界でどれくらいの時間が進むかを決定します。 1の場合、1時間の「実」は1時間の「仮想」に等しくなります。 一般式は次のように記述されます。



Twirt =リアル/ SQ



どこで

Twirt-仮想プレイ時間;

Traal-リアルタイム。



係数が大きいほど(主に0に等しくないこと)、ゲームの時間が速くなるため、意思決定が速くなります。 0〜1の範囲(たとえば0.5)の場合、再生時間は2倍遅くなります。



キャラクターの行動アルゴリズムは、ゲーム(キャラクター)がゲームの場所を動き回り、ゲームの現在のパラメーター(条件)に基づいてさまざまなアクションを実行する個人的な計画を決定します。 これはすべて、キオスクと売り手の簡単な例で簡単に表示できます。



売り手は8:00から20:00までキオスクにいます。 残りの時間は存在せず、キオスクは閉じられます(つまり、通常の方法でキオスクに入ることはできません)。 したがって、売り手の行動計画は次のアルゴリズムで記述されます(ゲームが6:00に開始する場合)。



-最初に、2時間の仮想タイマーを開始します(キオスクに来るまでに待たなければならない時間です)。

-販売者がキオスクにいない場合、タイマーを12時間仮想的に開始し(キオスクにいる時間とまったく同じ時間)、販売者をキオスクに移動します。

-そうでない場合(売り手がキオスクにいる場合)-タイマーを12時間仮想的に開始し(キオスクにいる時間とまったく同じ時間)、売り手をキオスクから取り外します。



これは文字の動作の最も単純な例であり、周期的であるため、外部(他の文字、イベントからの)条件は影響しません。 たとえば、売り手が何らかの理由(病気になった、立ち去った、殺されたなど)でキオスクに来ないことが必要な場合、キオスクに行く必要があるかどうかを決定する追加条件またはいくつかの条件を追加する必要がありますまったく別の場所で。



したがって、各キャラクターがゲーム内でいつでも「決定」できるように、各キャラクターの行動を事前に「処理」する必要があります。 したがって、このスキームには次のプロパティがあります。





パッセージ(LSC)の初期バージョンについて説明しますが、すでにNSC + Bスキームを使用しています(新しい規定は太字の下線付きフォントでマークされています )。



ゲームの開始時に、ビデオスクリーンセーバー(フルスクリーンビデオ)が表示されます。このスクリーンセーバーでは、男と一緒にいるプレーヤーが家に近づきます。 次に、コントロールがプレーヤーに転送されます。 はゲームの開始から5分以内にのみ Mr.Kに向けてダイアログ(ビデオスクリーンセーバー)を有効にできます 。そうしないと、この謎の紳士が去る様子を見ることができるビデオスクリーンセーバーが表示されます。 しかし、彼はこれをしないかもしれませんが、すぐに家に近づきます。 家に入る必要があります。 これは、キー(プレーヤーは正面ドアの近くで植木鉢を見つけ、このキーが横たわって、それを取り出し、ドアを開けて中に入る必要があります )、 クローバー(プレーヤーは地下の入り口近くのツールボックスを調べて、クローバーと正面ドアを割る)またはゲームの開始から10分以内に東側の開いている窓から、そうでなければ男性はそれを内側から閉じます (プレイヤーは窓の下に高いツールボックスを移動し、それに登って中に入る必要があります)。 彼は多くの部屋で廊下に落ちます( 最初の2つの方法で家に行った場合 )が、そのうちの1つだけが古いコインです。 これは右側の2番目のドアです。 入る( 窓から家に入った場合、彼は古いコインのあるこの部屋にいる )プレイヤーはこのコインを机の端で見、それを取り、それからビデオスクリーンセーバーが続き、プレイヤーが家を出る方法を見る未知の方向。 プレイヤーが中の男の目を引くと(つまり、プレイヤーと男が同じシーンにいる場合)、ビデオスクリーンセーバーが起動します。このスクリーンセーバーでは、この男がプレイヤーを「カット」する様子を見ることができます。家への浸透。




家の中の男性の行動のためのアルゴリズム:

4つの部屋と廊下がある家の男は、各部屋に入り、5分間その部屋に入ってから、廊下を通って次の部屋に移動します(遷移は30秒続きます)。



上記の非線形スキームをコンパイルするには、線形プロットを持つことが非常に役立ちます(メインプロットとして機能し、スクリプトライターがそれを撃退します)。 しかし、同時に、それらには共通の欠点があります-実装の点で数倍複雑であり(特にNSC + B)、短時間での使用は非常に困難です。 しかし、この欠点は、最も単純な非線形プロットから最も複雑なプロットに徐々に移行すれば解消できます(たとえば、複雑なゲームを書くには、最初に単純なプロットから始めなければなりません)。 したがって、非線形スキームのコンパイルを手に入れてください。



したがって、クエストゲームを作成してプロットスキームを選択する場合、まず、開発者のスキルと特定のクエストゲームの実装に割り当てられたタイムラインから進む必要があると思います。



All Articles