タグ付けされた質問 「game-design」

ゲームデザインは、ゲームのルールとメカニズムを決定し、意図したプレイエクスペリエンスを実現するためにバランス問題を解決するプロセスです。ソフトウェアコードの設計に関する質問については、代わりにアーキテクチャタグまたはアルゴリズムタグを使用してください。同様に、ビジュアルデザインに関する質問では、Artタグを使用する必要があります。

4
なぜほとんどのレーシングゲームにクローズドループのトラックがあるのですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 3年前休業。 ほとんどのレーシングゲーム(マリオカート、セガラリー、Fゼロなど)では、通常、レーサーはクローズドサーキットでいくつかの周回を行います。頭に浮かぶ最も注目すべき例外は、すべてのアーケードゲーム、またはおそらくレーシングゲーム(Trackmania、OutRun、Cruis'nシリーズ)でもありません。 なぜ設計者はトラックをクローズドループとして構築する必要があるのでしょうか。

5
自分の冒険を選択-選択肢スタック
私は現在、独自のアドベンチャーゲームを選択して構築しています。これで、すべての選択に対して1つの結果が得られ、線形フローを作成するのは簡単ですが、以前のすべての選択が次の結果に影響を与えるための優れたアルゴリズムはありますか?私は明らかに以前のすべての選択を保存し、決定する大きな 'IF'ステートメントを持つことができましたが、もっと良い方法があるかどうか疑問に思いましたか? 私の一部は、すべての選択肢に「スコア」が必要かどうかを疑問に思っており、これを使用して(おそらくしきい値を使用して)次のアクションを決定し、各アクションをスコアに追加します。 私は主にこれをswift / SpriteKitで行っていますが、この時点でのコードよりもコンセプトのほうが重要だと思います。 以下のジョシュのコメントに応じて: 現時点ではまだ概念段階にあると思いますが、各「ページ」はカスタムオブジェクトまたはjsonファイルのいずれかになります。私はあなたの答え(現在は削除されています)について考えていましたが、各ENUMオプションを少し持っているかもしれません。次に、各ページに「スコア」を付けることができます。次に、選択した前のオプションを使用して、どのビットが設定され、どのページを決定するかを決定します。私が「ストーリー」をどのようにフォーマットするかを決定するのをほとんど手助けし始める前に、この問題に対する既存の解​​決策があったのかと思っただけだと思います 形式の大まかな推測: { "text":"You arrive in the dungeon and there are 2 doors", "options":[ 1: "Go left", 2: "Go Right" ], "score" : 0 // first page } {"text" "You went left and meet a dragon", "options":[ 0: "Game over, you were eaten" …

4
エンティティコンポーネントシステム-ゲームの進行
私はゲーム開発(プログラミングではなく)に非常に慣れていないので、世界間の通信を処理するための最良の方法を理解しようとしています。私が言っているのはこれです: 私はエンティティコンポーネントシステム(ECS)と、人々がさまざまなワールド/スペース(http://gamedevelopment.tutsplus.com/tutorials/spaces-useful-game-object-containers--gamedev-14091)の使用をどのように提案するかについて読んでいますゲームのサブセクション。たとえば、HUD、インベントリ、または戦闘/移動は、それぞれ異なるワールド/スペースを取得します(それらは異なるグラフィックスと基礎となるロジックを持っているためです)。 しかし、たとえば戦闘中など、別のスペース/ワールドによってヘルスが処理される場合、インベントリまたはHUDがプレーヤーのヘルスをどのように知っているのかと思いました。 これは、ゲームの進行状況にも適用されます。たとえば、NPCとのダイアログ(ダイアログはポップアップ画面であるため別のスペースになります)ですが、ダイアログで行われた選択(または状態)を他のスペース/ワールドにどのように伝えますか。 。または基本的に、さまざまなスペース/世界でのゲームの進行に影響を与える他のタイプのイベント(健康、マナ、クエスト、ダイアログ、戦闘、インベントリ、hudなど) この種の設計をどのように処理するでしょうか?このような情報をすべて保持する(実装の)シングルトンオブジェクトが必要ですか?それは奇妙なことです。それは、components2回物事をしているように感じる(プログラミングのメインDRYに反対する)このシングルトンオブジェクトに各変更を伝える必要があるからです... 私はここでデザインの点で途方に暮れています。 ---編集--- だから私はコメントで提案された他のいくつかの投稿を読んで、可能性についての一般的な考えを得ましたが、それらのそれぞれには、それらを正しくないようにする1つの大きな欠点があるようです。これらの欠点を解決する詳細を監督している可能性が非常に高いため、自由に修正してください。概要と、いくつかの質問に対する回答を示します。 スペース間でデータを「共有」する3つの主要なオプションが表示されます。ほとんどの投稿はシステム間でのデータ共有に関するものですが、システム間でのデータ共有にも同じことが当てはまると思います。 1.クエリ 例:HUDワールドがプレーヤーの現在のヘルスを知る必要がある場合、HUDワールドは別のワールドを照会して現在のヘルスを要求できます。 欠点:世界はお互いを知る必要があります。これは依存関係の大きな問題であり、デカップリングに反対しています。 2:ダイレクトメッセージング(同期および非同期) 例:戦闘中にプレーヤーのヘルスが変更された場合、この変更について知る必要がある他の世界にメッセージ(同期と非同期、必要なものは何でも)を送信できます。 欠点:それでもデカップリングの問題:世界はお互いについて知る必要があります。 3:間接メッセージング(同期および非同期) <-最適なオプション 例:戦闘中にプレーヤーのヘルスが変化した場合、プレーヤーはメッセージ(同期と非同期、必要なものは何でも)を一般的なメッセージハブに送信できます。この変更について知る必要がある他の世界/システムは、特定のメッセージチャネルにサブスクライブされ、メッセージを読み取ります。 利点:完全に分離され、管理と拡張が容易です。 欠点/不明確:メッセージチャネルは、メッセージを削除する必要があることをいつ知っていますか?または、サブスクライブしているシステムがメッセージを(それ自体のみ)既読としてマークし、新しいメッセージを待つ->しばらくするとメッセージボックスが巨大になる。ワールド/システムはどのように順序を処理しますか?たとえば、フレーム中:HUDがすでにヘルスメッセージをポーリングし、その後ヘルスが変化した場合、次のフレームでHUDが更新されます。一部のアプリケーションでは、これは正しい方法ではない場合があります。 Q:1つのゲームオブジェクトが複数のスペースに存在できます 私は組み込みスペース(ワールドと呼ばれます)に付属しているArtemis ECSフレームワークを使用しています。各エンティティ(およびそれとともにコンポーネントの形式のデータ)はワールド上に作成されるため、ワールド間で共有することはできません。

7
ゲームデザインレキシコン:宝石などの用語[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 4年前休業。 ヒーローがゲームで彼の富に追加する宝石やコイン、またはその他の「収集品」を拾うとき、それらは一般に何と呼ばれ、それらはゲームデザイン用語で一般的にどのように呼ばれますか?

0
OpenFLを使用したSceneManagerの実装
OpenFLとHaxeを使用して基本的なSceneManagerを実装しようとしています。OpenFLとHaxeの使用経験はあまりないので、いくつか問題があります。 以下は、SceneManagerクラスの設計方法です。 package; import openfl.display.Sprite; import openfl.Lib; class SceneManager extends Sprite { private var currentScene: ...; public function new(rootScene: ...) { super(); currentScene = rootScene; Lib.current.addChild(currentScene); } public function changeScene(newScene: ...): Void { Lib.current.removeChild(currentScene); currentScene = newScene; Lib.current.addChild(SceneTwo); } } 「...」は、どのシーンでも保持できる一般的な「クラス」タイプに置き換える必要があります。 誰かがこれを解決するのを手伝ってくれるなら、私は本当に感謝するでしょう。

2
ゲームメカニックとは何ですか?
私は、ゲームメカニックの定義、およびゲームプレイメカニックと同じかどうかを正確に理解しようとしています。これを定義しようとする多くのさまざまな情報源がオンラインにありますが、それらは非常に一貫していないようです。かなり深く掘り下げた2つを以下に示します。https: //en.wikipedia.org/wiki/Game_mechanics(ゲームコンテキスト) https://badgeville.com/wiki/Game_Mechanics(ゲーミフィケーションコンテキスト) 私はゲームの目的、課題、ルールの概念を理解していますが、ゲームのメカニズムはこれらにどのように結びついていますか?たとえば、ゲームの仕組みは単にユーザーを動機付ける抽象的な方法(ポイント、実績、発見など)ですか?それとも、カバーシステムや、キャラクターの動きやジャンプなど、ゲームのより実用的な側面ですか?


2
温度、痛み、におい、味覚、空腹感、喉の渇きなどの感情を没入的に表現する
完全に没入型のシミュレーションタイプのロールプレイングゲームでは、プレーヤーは自分の統計を追跡するために小節や数字を見てはならないため、これらの統計を表示する別の方法が必要です。たとえば、ゲームは(現在)空腹感を誘発することができないため、プレイヤーはいつ食べるかを知る必要があります。プレーヤーはまた、彼らが傷ついているかどうかを知る必要があるので、彼らは適切な措置をとることができます。 どういうわけか、これらの感情は視覚的または聴覚的に表現されなければなりません。私は、画面を着色したりぼかしたりして、ほとんどの一人称視点のシューティングゲームがあなたが撃たれたことをどのように見せるかのような感覚を示すのが好きではありません。これらの感情を没入的に表現するいくつかの方法は何ですか?

2
レベルの設計をいつ開始すべきですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 私はパズルゲームに取り組んでいます。私はコアメカニックを考え、それを実装し、調整しました。 UIやサウンドなどを扱う前に、いくつかのレベルを構築したいのですが、最初に他のことを整理する必要があるかどうかはわかりません。 物語 ゲームにはストーリーがあります(他の多くのパズルゲームとは対照的です)。事は、私はそれがどうあるべきかについての基本的な考えを持っているだけで、詳細なことも書かれていません。 最初にストーリーを詳細に練る必要がありますか?作成する前に、最初の5つのレベルでどのアークを伝えたいかを理解してください。それとも、ストーリーはパズルゲームでいくらか直交していて、私は先に進んでいくつかのレベルを構築できますか? 要素 コアメカニックを評価するために、ゲームプレイの要素、つまり操作できるオブジェクトのかなり最小限のセットを考えました。 物事を最小限に抑え、それらだけでどれだけの成果が得られるかを確認したいのですが、それは正気ですか?事前に必要な要素について長く考えなければならないのでしょうか。または、構築しているレベルに何かが足りないと感じたときに追加する必要がありますか? 結論:最初の数レベルを設計する前に何をすべきですか?

2
RPGで「アイテムの識別」機能を実装する方法
多くのゲームでは、識別されていないアイテムを使用できないアプローチがあります。そして通常、それを使用するだけではそれを特定することはできません。このアプローチは多くのことを単純化しますが、私には正しくないと感じます。魔法の特徴があるかどうかわからないので、鎧や剣を装備できないのは意味がありません。 ある種の「使用による識別」システムについて考えていましたが、自然な方法がわかりません。「スピーチ」スキルを一定期間強化するポーションを飲むとどうなりますか?私のキャラクターは、そのスキルが向上したことを即座に知る必要がありますか?正確な値を知っている必要がありますか?または、裏でスキルを増やして、表示された値をそのままにして、わずかなヒント(「突然(...)」)を与える必要がありますか? 武器や鎧はどうですか?装備するだけでは何も知りません。1つのアプローチは、ターゲットを攻撃すると、与えられたダメージに基づいて武器の最小および最大ダメージを更新できるが、それはターゲットの防御と抵抗に大きく依存します(それが悪いことかどうかはわかりません)。 もちろん、識別スクロールのような従来の方法があり、私はそれらを持っていますが、私はいくつかの代替案を望んでいました(ただし、置き換えではありません。 誰かがこれについて考え、洞察を共有できますか?

1
OpenGLで頂点を描画する最も効率的な方法
私はOpenGL 3Dゲームを書いています。地形や使用中のオブジェクト用の多数の三角形があります。 私はOpenGL公式ガイドから勉強していて、最初に提示された方法は、描画したい各頂点のglVertex後に関数を呼び出すglBeginことです。 ただし、何千もの三角形を描く必要がある場合、この方法はかなり古くて非効率的です。各フレームで変化しない情報をグラフィックカードのメモリに保存する方法があるので、各フレームをレンダリングすると、その情報はすでにそこにあります。より「不安定な」情報については、おそらくフレームごとに新しい頂点データを送信する必要があるため、別の手法の方が効率的かもしれません。 私の質問に来ます:頂点情報をハードウェアに送信し、レンダリングするための指示を与えるために使用される最も近代的で効率的なOpenGL関数と技術の明確な説明をお願いします。 フレーム中にめったに変化しない頂点データをレンダリングするための順序を送信するための最良の方法とOpenGLツールは何ですか(私は地形とオブジェクトについて考えます)、フレーム中に大きく変化する頂点データを送信するための最良の方法は何ですか?

1
ルール/検証設計パターン
チェスのようなゲームのルール/検証システムを作成するために使用できるデザインパターン(これは単なる例であり、実際のゲームにはより難しいルールのセットが必要です) 私はこのサイトでいくつかの質問を読みましたが、決定的な答えも、正しい方向に向かっている答えも見つかりませんでした。 このシステムには次のものが必要です。 ルールが適用されているすべてのオブジェクトは、検証の開始点であるメソッドを持つ特定のインターフェースを実装する必要があります ルールは2つのステップで適用する必要があります。まず、検証する必要があります(ポーンAが正方形D4に移動できます)。trueの場合はメソッドAを実行し、falseの場合はメソッドBを実行します。 すべてのオブジェクトには、特定の順序で適用する必要がある複数のルールを含めることができます。ルール1が終了すると、ルール2が検証を開始します。 すべての個別のルール(たとえば、1つの正方形のみを移動でき、斜めにしか移動できないなど)は、独自のクラスに属し、再利用可能で、ルールを必要とするオブジェクトに適用できる必要があります。 これはバックエンドのマルチプレイヤーゲームで使用されることに注意してください すべてのルールは、その有効性をテストするために複数のオブジェクトを必要とすることに注意してください。たとえば、通常、ポーンは1マス移動できますが、今度はゲームボードの次のスクエアが対戦相手のポーンで埋められます。結果:ポーンは移動できません。ポーンには、他のポーンの位置、または検証にゲームボードを含める必要があります。 これらのルールの別の言葉は、行動の制限です。

2
データ指向設計の例
一般的なゾンビゲームのデータ指向のデザインの良い説明が見つからないようです(これは単なる例であり、かなり一般的な例です)。 ジェネリックゾンビクラスの作成に関するデータ指向デザインの例を挙げていただけませんか?以下は良いですか? ゾンビリストクラス: class ZombieList { GLuint vbo; // generic zombie vertex model std::vector<color>; // object default color std::vector<texture>; // objects textures std::vector<vector3D>; // objects positions public: unsigned int create(); // return object id void move(unsigned int objId, vector3D offset); void rotate(unsigned int objId, float angle); void setColor(unsigned int objId, …

4
攻撃ダメージアルゴリズムのアイデア(言語は関係ありません)
私はゲームに取り組んでおり、プレイヤーが攻撃したときに敵に与えられるダメージについてのアイデアが必要です。敵が持っているヘルスの合計量はと呼ばれenemyHealth、値は1000です。最初に、40ポイントのダメージを与える(変更される場合があります)武器から始めますplayerAttack。この値は1から始まり、何度もレベルを上げてゲームの奥まで行った後の最大値は100です。武器が与えるダメージ量はカットされて乾き、敵がヒットするたびに合計1000ポイントのヘルスから40ポイントが差し引かれます。しかし、何をするかはplayerAttack、パーセンテージでその値に追加することです。これが私が今持っているアルゴリズムです。(私はすべてのGUI、クラスなどを取り出し、変数に非常に前向きな名前を付けました) double totalDamage = weaponDamage + (weaponDamage*(playerAttack*.05)) enemyHealth -= (int)totalDamage; これはほとんどの部分でうまく機能するように見えました。だから私はいくつかの値をテストすることを定めました... //enemyHealth ALWAYS starts at 1000 weaponDamage = 50; playerAttack = 30; これらの値を設定すると、敵に与えられるダメージ量は125になります。良い数値のように見えたので、プレイヤーの攻撃が最大になり、開始武器が最も弱い場合にどうなるかを確認したいと思いました。 weaponDamage = 50; playerAttack = 100; totalDamageは300になり、数回のヒットで敵を殺します。あなたの攻撃がそんなに高いとしても、私は最も弱い武器が敵をそれほど速く殺せるようにしたくないでしょう。防御を追加することを考えましたが、長期的にはゲームの一貫性が失われ、アンバランスになると思います。おそらく、武器減少モディファイアの適切に設計されたアルゴリズムは、低レベルの武器やそのようなもので機能します。これに対処するための最良の方法を見つけようとすることから少し離れてください。ゲームの経験があり、レベリングを一貫して維持している誰かが私にいくつかのアイデア/ポインタを与える可能性があります。

3
視覚障害者のためのデザイン
グローバルすべての年齢層の人々の数視覚障害者は 39百万がある人の、2.85億と推定されているブラインド。 — 2010年世界保健機関。 (これは世界の人口の4.2%と0.6%です。) ほとんどのビデオゲームは、コンテンツ配信においてビジュアルを非常に重視しています。視覚障害のあるゲーマーはほとんど除外されています。 視覚障害のあるゲーマーがアクセスできるようにゲームを設計するにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.