3

ポイント アンド クリック アドベンチャー ゲームを作ろうと考えています。私が直面している問題は、ゲームのロジックと状態を一般的な (そして醜くはない) 方法で表現することです。

ゲームの状態:
部屋からアイテムを取り出しましたが、それはもはやそこにあるはずではありません (簡単に実行できます) 別の部屋/画面に影響を与える何かをしようとしたキャラクターに話しました。部屋をどの状態で保存するか、キャラクターは

ゲーム ロジック:
キャラクターに話しかけると、キャラクターはアニメーションを実行し、ワールド ステートを変更します。ゲームにハードコーディングせずに、これをどのように設定しますか?

状態を表現する方法を理解することは、「アクション」を定義する方法を理解するのに大いに役立つため、質問は関連していると思います。

4

2 に答える 2

4

より適切なオプションの 1 つは、Luaなどのスクリプト言語を使用することです。特定の部屋、アイテム、またはキャラクターが持つ可能性のあるプロパティのみをゲームにハードコードし、それら互いにどのように関連するか (アイテムが部屋にあるなど) を指定すると、実際の処理はすべてスクリプトによって実行されます。これには、正しく行うとデバッグが容易になるという利点があります (ゲームを再コンパイルする必要はありません。実際、正しく行うと、再起動する必要さえありません)。ただし、複雑さが増すという欠点があります。

また、 AGSWintermuteなど、ポイント アンド クリック アドベンチャー用に既に利用可能なゲーム エンジンの使用を検討することもできます。ゲームを作りたいなら、プログラミングは極力避けてゲームデザインに直行したいものです。プログラマーにとってそれを受け入れるのは難しいかもしれません:)

于 2010-12-27T11:39:21.623 に答える
3

ゲーム エンジンに何らかのスクリプト言語が含まれていない限り、何かをハードコーディングする必要があります。ハードコーディングを排除すると、アクションを定義する責任がランタイムに押し付けられる傾向があり、ランタイム環境にはこれらのアクションを定義する何らかの方法が必要になります。まだ持っていない場合は、Lua や Python、あるいは Javascript などの組み込み可能な言語を調べてください。

于 2010-12-27T11:39:32.793 に答える