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

開発はゲーム開発者によって行われ、ゲーム開発者は一人から大企業まで多岐にわたります。メインストリームゲームは通常、発行元から資金提供を受けており、開発には数年かかります。インディーゲームは時間がかからず、個人や小規模な開発者が安価に作成できます。インディーゲーム業界は、新しいオンライン配信システムとモバイルゲーム市場の成長に伴い、近年増加しています。


13
なぜJavaはゲーム開発により広く使用されないのですか?[閉まっている]
私はゲーム開発者でも何でもありませんが、Javaはゲーム開発にあまり使用されていないことを知っています。Javaはほとんどのゲームで十分に高速である必要があります。いくつかの理由が考えられます。 Javaの専門知識を持つゲーム開発者の不足 優れたゲーム開発フレームワークの欠如 プログラマは、Javaをゲームプログラミング言語として受け入れたくありません。ほとんどの場合、C ++のみを受け入れますか? ゲーム機のサポートなし(PC市場はまだ存在しますが) もちろん、それは他の何かかもしれません。私よりもビジネスをよく知っている人が、ゲーム開発に関してJavaが勢いを得ていない理由を説明できますか?

4
唯一の目的を持ち出す機能を開発していますか?[閉まっている]
個々の貢献者(プログラマー/デザイナー)が唯一の目的のためにアーティファクトを開発したパターンの名前は何ですか?管理者が最終製品のその機能を削除できるように流用として機能することですか? これは、ある大手ゲーム開発会社で働いていた元同僚から聞いた民間伝承です。その会社では、中間管理職が製品に「インプットを与え」、「変更を加える」ようプレッシャーをかけられていることはよく知られています。こうした状況は、これらの余分な「管理入力」のために多くのプロジェクトを遅らせました。 上記の会社の1つのプロジェクトでは、アーティストと開発者が、あらゆるカットシーンに登場し、親指のように突き出る過剰なアニメーションキャラクターを作成しました。彼らは、ゲームが出荷される前に簡単に削除できるように設計しました(これは、ゲームがまだダウンロード可能な製品ではなく物理メディアで販売されていたときです)。明らかに、経営陣はアニメーションを削除することを投票しました。肯定的な側面として、経営陣は、製品に建設的なインプットを提供したことを示したため、プロジェクトを遅らせるような不必要な変更を導入しませんでした。 このプロセスパターンには、企業で働くゲームプログラマーの間で名前がありますが、実際の名前が何であるか忘れていました。私はそれがカモだと信じています。誰もが名前を指摘し、おそらくパターンがどのように展開するかについてのかなり信頼できる参照を指摘するのを助けることができますか?

10
「適切な」プログラミングはもはや重要ではありませんか?
暇なときにAndroidゲームを作成しています。libgdxライブラリを使用しているので、かなり面倒な作業が行われます。 開発中に、いくつかの手順で不注意にデータ型を選択しました。連想配列に近いものが欲しかったため、ハッシュテーブルを使用しました。人間が読めるキー値。同様のことを達成する他の場所では、ベクトルを使用します。libgdxにはvector2およびvector3クラスがありますが、それらを使用したことはありません。 奇妙な問題に遭遇し、Stack Overflowでヘルプを検索すると、特定のデータ型が技術的に「適切」である場合に、特定のデータ型を使用する質問を多くの人がリーミングしています。ArrayListを使用するのと同様、定義済みの境界を必要としないため、新しい既知の境界でint []を再定義します。または、次のような些細なことでも: for(int i = 0; i < items.length; i ++) { // do something } 私はそれがすべての反復でitem.lengthを評価することを知っています。ただし、アイテムが15〜20個を超えることはありません。したがって、繰り返しごとにitems.lengthを評価する場合は注意が必要ですか? いくつかのテストを実行して、先ほど説明した方法と適切な方法を使用してアプリがどのように動作するかを確認し、チュートリアルに従って、コミュニティから提案された正確なデータ型を使用しました。結果:同じこと。平均45 fps。電話とgalaxyタブですべてのアプリを開きました。変わりはない。 だから私はあなたへの私の質問はこれだと思う:それは適切であることがもはや重要ではないときにしきい値はありますか?「仕事をやり遂げる限り、私は気にしませんか?」と言っても大丈夫ですか?

8
動的な無制限のサイズの「迷路」のデータ構造を構築するにはどうすればよいですか?
実際、「迷路」が正しい用語であるかどうかはわかりません。基本的に、ユーザーRoomは4つのドア(N、S、E、およびW)を持つシングルで開始します。彼らは任意の方向に行くことができ、後続の各部屋には、他の部屋に行く1〜4個の出入口がある別の部屋が含まれます。 「迷路」はサイズに制限がなく、部屋を移動するにつれて大きくなると考えられています。Rooms使用可能な数には制限がありますが、使用可能な数は動的であり、変更できます。 私の問題は、このタイプのパターンに最適なデータ構造がわからないことです 最初にRoomオブジェクトの[X] [X]配列を使用することを考えましたが、物事はどの方向にも成長するはずであり、「訪問された」部屋のみを構築する必要があるため、それを避けたいと思います。 もう1つの考えは、各RoomクラスRoomにN、S、E、Wの4つのリンクされたプロパティを含め、前のものRoomにリンクすることですが、それに関する問題は、ユーザーがその部屋に入るかどうかを特定する方法がわかりません隣接する部屋は既に「構築済み」です 例えば、 --- --- ---------- | | | | 開始5 4 | | | | --- --- --- --- --- --- ---------- --- --- | | | | | | | 1 2 3 | | | | | | --- --- --- --- ---------- …

1
Inglishパーサー(Hobbit 1982用)
「Inglish」と呼ばれる信じられないほど堅牢なパーサーを備えたテキストアドベンチャーゲームThe Hobbitについて読むことに魅了されました。 ... Inglishは、「ガンダルフに好奇心の強い地図について尋ねてから、剣を持ってトロールを殺す」などの高度な文を入力することを許可しました。パーサーは複雑で直観的で、代名詞、副詞(「悪意を持ってゴブリンを攻撃する」)、句読点、前置詞を導入し、これまで不可能だった方法でプレイヤーがゲームの世界とやり取りできるようにしました。 Inglishパーサーエンジンとそれを開発したプログラマーの歴史および/または遺産について誰か知っているかどうか疑問に思っています。

3
カードゲームのAIのベストテクニック
私はカードゲーム用のAIを開発しようとしていますが、使用すべきテクニック/アルゴリズムに少しこだわっています。ゲームに関するいくつかの前提条件を次に示します。 カードがプレーヤーに配布された後、ランダム性はありません。ここでは、すべてのプレイヤーがプレイするカードを選択できますが、ゲーム開始時にカードを配布するときのようなランダムなプロセスは発生しません。 カードが既にプレイされたときにプレイできるカードには制限があります。 トリックに勝ったプレイヤーが最初にプレイします。たとえば、プレーヤー1がカードをプレーし、プレーヤー2がカードをプレーして勝ちます。次に、プレイヤー2がカードをプレイし、プレイヤー1がプレイします。 ゲームに勝つのに役立つ多くのヒント/ルールを知っています(たとえば、プレーヤーにカードA、B、Cがある場合、Dをプレイする必要があります)。したがって、私は最初にベイジアンネットワークを使用してそれらのルールを記述したいと考えました。問題は、割り当てる確率がわからないことですが、(人間に対して)プレイしたゲームの履歴を使用してヒューリスティックを計算できます。2番目の問題は、すべてのルールがわからないことと、AIが最適なプレイを見つけるために必要な暗黙のルールがあることです。 これがそのようなカードゲーム用のAIを開発するのに良い方法であるかどうかわかりませんか? また、問題に最適な他の手法があるかどうかも疑問に思っています。たとえば、ミニマックス(プルーニングアルゴリズムを使用する場合があります)を確認しましたが、この問題の良い選択肢でしょうか?最も重要なプレーは、未知のパラメーターが最も高いゲームの開始時であるため(ほとんどのカードはまだプレーされていません)、私は非常によくわかりません。

10
OOPで循環参照が必要と思われるこの実世界のアクティビティをモデル化する適切な方法は何ですか?
私は循環参照に関するJavaプロジェクトの問題に取り組んできました。私は、問題のオブジェクトが相互に依存しており、お互いについて知る必要があると思われる現実の状況をモデル化しようとしています。 このプロジェクトは、ボードゲームをプレイする一般的なモデルです。基本クラスは非特定ですが、チェス、バックギャモン、その他のゲームの特定に対処するために拡張されています。11年前、これを6種類のゲームを備えたアプレットとしてコーディングしましたが、問題は循環参照でいっぱいだということです。当時、私は単一のソースファイルにすべての絡み合ったクラスを詰め込むことでそれを実装しましたが、私はそれがJavaでは悪い形であるという考えを得る。ここで、Androidアプリと同様のものを実装し、適切に処理したいと考えています。 クラスは次のとおりです。 RuleBook:ボードの初期レイアウト、最初に移動した人などのその他の初期ゲームの状態情報、利用可能な移動、提案された移動後のゲームの状態に何が起こるか、などの評価などについて質問できるオブジェクト現在または提案されている取締役会の位置。 ボード:ゲームボードの単純な表現で、移動を反映するように指示できます。 MoveList:Moveのリスト。これは、特定のポイントで利用可能な動きの選択、またはゲーム内で行われた動きのリストの2つの目的です。それは2つのほぼ同一のクラスに分割できますが、それは私が尋ねている質問とは関係がなく、さらに複雑になるかもしれません。 移動:1回の移動。移動に関するすべてが原子のリストとして含まれています。ここからピースを拾い、そこに置き、そこからキャプチャしたピースを削除します。 状態:進行中のゲームの完全な状態情報。ボードの位置だけでなく、MoveList、および現在誰が移動するかなどの他の状態情報。チェスでは、各プレイヤーのキングとルークが移動したかどうかを記録します。 循環参照はたくさんあります。たとえば、RuleBookは特定の時間にどの動きが利用可能かを判断するためにゲームの状態を知る必要がありますが、ゲームの状態は最初の開始レイアウトと1回の動きに伴う副作用についてRuleBookに問い合わせる必要がありますそれが行われます(たとえば、次に移動する人)。 新しいクラスのセットを階層的に整理してみました。RuleBookはすべてを知る必要があるため、最上位にあります。しかし、これにより、多くのメソッドをRuleBookクラスに移動する(移動するなど)必要があり、モノリシックになり、RuleBookがどうあるべきかを特に表しません。 これを整理する適切な方法は何ですか?RuleBookをBigClassThatDoesAlmostEverythingInTheGameに変換して、循環参照を回避し、実際のゲームを正確にモデル化する試みを放棄する必要がありますか?または、相互に依存するクラスに固執し、コンパイラーに何らかの方法でそれらをコンパイルさせ、実世界のモデルを保持する必要がありますか?または、私が欠落している明らかな有効な構造がありますか? あなたが与えることができる助けをありがとう!

3
コンポーネントエンティティシステムアーキテクチャを使用してアプリケーション(ゲームではない)を構築するのは妥当ですか?
Apple AppStoreやGoogle Playアプリストアなどのアプリケーション(ネイティブまたはWeb)を構築するとき、Model-View-Controllerアーキテクチャを使用することは非常に一般的であることを知っています。 ただし、ゲームエンジンで一般的なComponent-Entity-Systemアーキテクチャを使用してアプリケーションを作成することは合理的ですか?

5
最大でターゲットへの弾丸のパスを計算するためのアルゴリズム。2リコット
悪いタイトルで申し訳ありませんが、私はそれを表現するより良い方法を持っていませんでした... Wiiには任天堂による素晴らしいゲームがあります(そうです!)。9つのミニゲームがあり、私のお気に入りはタンクと呼ばれます!。自分自身を破壊することなく、COM敵の戦車を破壊することです。レベルのスクリーンショットは次のとおりです。 戦車を破壊する1つの方法は、弾丸を発射することです。このライムグリーンの敵の戦車は、2回跳ね返る(壁やブロックに対して)高速弾丸を発射します。プレイヤーの戦車が現在の場所に留まっていると、プレイヤーの戦車が即座に破壊される様子を見ることができます。中央の石灰戦車は、画像に描いた緑の道に沿って弾丸を発射できます。 私はアマチュアプログラマーとして、ライムタンクがプレイヤータンクを撃つためにどの方向に発火すべきかをどのように決定できるのかと思っていました。 私は自分でそれについて考えましたが、可能なアルゴリズムを思いつきませんでした。誰かに刺激を与えた場合の結論を説明します。説明を簡単にするために、壁は弾丸が跳ね返ることのできる表面であると想定しています。したがって、ブロックの孤立した長方形が4つの壁を形成します。 私は、弾丸のリコットが常に平行四辺形の片側にあるか、平行四辺形の反対の頂点になる2つの点を結論付けました。射撃する敵の戦車と、それが狙うプレイヤーの戦車は、必ずしも他の2つの頂点ではありませんが、平行四辺形の4つの側面のいずれかと同一線上にあることは間違いありません。以下は、平行四辺形を形成できる4つの可能な方法の説明です。 HOR-VERは、弾丸が最初に水平の壁に当たり、次に垂直の壁に当たります。 そして、私は立ち往生しています。敵の戦車とプレイヤーの戦車をマップ上で接続するラインを移動して、壁との2回のヒットで平行四辺形を形成するかどうかを考えましたが、敵の戦車とプレイヤーの戦車は平行四辺形の頂点と必然的に一致します。 また、アルゴリズムの一般的な流れがわかりません。アルゴリズムは次の2つの構造のいずれかを使用しますか、それとも両方とも間違っていますか? 考えられるパスを常に把握し、常に1つを最良としてマークし(最短、最も不明瞭、最も避けられない、または複数の基準に基づいた組み合わせおよび重み付けの評価)、残りは忘れます。すべての計算後に残ったものが最適です。 最初に弾丸で到達可能なすべての壁を決定し(これらの各壁に到達するために弾丸が他の壁に跳ね返る必要はありません)、次にこれらの各壁のすべての到達可能な範囲を決定します(遠くの点に到達できない場合があります)別の壁があなたの近くに立っている場合は跳ね返りのない壁)、再び跳ね返りで到達可能なすべての壁、およびこれらの壁に到達可能なすべての範囲を決定します。これらの4つのプロセスは、レイトレーシングと同様の方法で実行できます。各プロセス中に、プレイヤーの戦車が光線に当たった場合、その光線に従って弾丸の経路を見つけます。 私の意見では、このアルゴリズムは次の理由で把握するのが困難です。 弾丸はどの方向にも発射できます。そして 数学のように、線上に無限に多くの点がある壁には、無限に多くの点があります。 しかし、任天堂の人々はとにかくそれを作ったので、...アイデアを持っている人はいますか?

4
RPGボードゲームルールの汎用ルールパーサー-実行方法
ペンとペーパースタイルのRPGシステム用の汎用ルールパーサーを構築したいと思います。ルールには通常、1〜Nエンティティの1〜Nのサイコロの役割と、エンティティの複数の属性に基づいた値の計算が含まれます。 例えば: プレイヤーはSTR 18を持っています。彼の現在装備している武器は、STR +1のボーナスを与えますが、DEX -1のマルスを与えます。彼はモンスターエンティティを攻撃し、一連のルールまたはアクションを実行するためにゲームロジックが必要になりました。 プレイヤーがサイコロを振る場合、たとえば8以上を取得した場合(渡す必要がある基本攻撃値は基本属性の1つです!)、攻撃は成功します。その後、モンスターはサイコロを振り、攻撃がその鎧を通過するかどうかを計算します。「はい」の場合、攻撃がブロックされていない場合、損害が発生します。 単純な数学ルールに加えて、特定のクラスのユーザー(たとえば、戦士vsウィザード)または他の属性にのみ適用するなどの制約もあります。したがって、これは数学的な操作だけに限定されません。 DungeonやDragonsのようなRPGシステムに精通しているなら、私が何をしているのかわかるでしょう。 私の問題は、これを最善の方法で正確に構築する方法がわからないということです。あらゆる種類のルールを設定し、後でプレイヤーとモンスターを選択するなどのアクションを実行し、アクション(攻撃などのルールセット)を実行できるようにしたいのです。 私は物事のデータベース側での助けを求めていませんが、ルールを柔軟に保つために構造とパーサーをどのように思い付くかについてもっと求めています。ちなみにこれに適した言語はphpです。 編集I: 目標を洗練させましょう:複雑なゲームルールを構築するために、ユーザーフレンドリーなインターフェイス(誰かがプログラミング言語を習得する必要がない)を作成したいと思います。単純な理由:個人的な使用は常にすべてのルールを覚える必要がないため、単純にそれほど頻繁にプレイしないので、毎回ルールを調べるのは止めになります。また、何かをして学ぶための楽しいタスクのように見えます。:) 私がこれまでに試したこと:間違ったアーキテクチャを構築する時間を無駄にするのではなく、コンセプトについて考えるだけです。これまでのところ、ユーザーが必要な数の属性を作成し、任意の種類のエンティティに必要な数の属性を割り当てることができるようにするという考えがあります。エンティティは、プレイヤー、モンスター、アイテム、あらゆるものです。ルールパーサーが何かを計算するとき、Player.base_attack + dice(1x6)> Monster.armor_check then Monster.health-1; ここでの質問は、そのパーサーの作成方法に関するものです。 編集II: 非常に基本的な値の例を次に示しますが、適切に計算するには、考慮すべきさまざまなものや変数がたくさんあります。 基本攻撃ボーナス(期間)基本攻撃ボーナス(通常、d20コミュニティではBABと呼ばれます)は、キャラクタークラスとレベルから派生した攻撃ロールボーナスです。基本攻撃ボーナスは、キャラクタークラスごとに異なるレートで増加します。キャラクターは、基本攻撃ボーナスが+6に達するとラウンドごとに2番目の攻撃を獲得し、3番目は基本攻撃ボーナスが+11以上、4番目は基本攻撃ボーナスが+16以上になります。マルチクラスキャラクターのスタックなど、さまざまなクラスから得られる基本攻撃ボーナス。キャラクターの基本攻撃ボーナスは、+ 16に達した後は攻撃を許可せず、+ 0より小さくすることはできず、キャラクターレベルが20に達した後のクラスレベルにより増加しません。特定の特技には、最低限の基本攻撃ボーナスが必要です。 ここでそれを読むことができます。http: //www.dandwiki.com/wiki/Base_Attack_Bonus_(Term)は、基本攻撃に必要な値を計算するための独自のルールを持つクラスと特技へのリンクを含みます。 できるだけ汎用的にすると、良いルールパーサーを完成させるのがかなり難しくなると思い始めました。

19
無料のゲーム開発言語ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は、事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は、議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 だから、私はずっと若いいとこにプログラミングについて少し教えようとしています。私の最初の考えは、スクラッチやアリスのようなものでしたが、それにはいくつかの欠点がありました。 誰もが実際にゲームのプログラミングとビデオゲームの開発に熱中しているようです(誰もがビデオゲームをプレイするのが大好きで、ビデオゲームをプレイする限り、自分のゲームをプレイすることが最もやりがいがある場合があります)-しかし、アリスもスクラッチもゲームに対応していないようです開発 アリスとスクラッチは幼稚すぎるように見えますが、私のいとこはそれに手を出して楽しむと確信していますが、彼はすぐにそれを退屈させたと思います 私は彼の友人を感動させる本当にクールなものを開発するために使用できる言語が欲しいです。私はその日にBASICを書き戻し、友達全員を招待して自分の作品を披露したことを覚えています。アリスとスクラッチは同じようには訴えないように感じます いとこがコードを書くことを要求する言語が欲しい。これは、コードを入力することが他のプログラミング言語の良い準備だと思うからだけではありませんが、実際にタイピングを練習する機会を与え、キーボードの少し難解な文字に慣れる可能性があるためです それで、アリスとスクラッチを選択したくないのです。 また、CやJava、さらにはPythonやRubyなどの言語を選択したくありません。私のいとこはすでにビデオゲームを楽しんでいて、自分で作りたいと思っていること、そしてコンピューターを使って楽しんでいることを私に伝えました。私の意見では、PythonやRubyのような単純な言語でも、クールなものを作成するには時間がかかりすぎます。理想的には、彼は座って1日か2日(あるいは1週間まで、でもそれ以下であることが望ましい)過ごし、2次元のゲームを機能させます。PythonやRubyではできないと言っているわけではありませんが、初めてのプログラマにとっては難しいと言っているだけです。それに、コンピューターサイエンスのすべてを彼に行き詰まらせたくはありません。私は彼が火花を生成するのを手伝って、それから彼に火の残りを続けさせたいです。 Luaのような言語を見てきましたが、ゲームプログラミングではよくあるように見えますが、それが最良の選択かどうかはわかりませんが、そうでないと思われる場合はお知らせください。 また、Blitzのような言語も見てきましたが、非常に有望に見えます(さらに、数年前に試してみましたが、非常に素晴らしかったです)。欠点は、私が支払う必要があるということです。 SmallBasicを見てきましたが、これは有望なようであり、今後も調べていきます。しかし、私はあまりやっていません(実際、これを入力しながらインストーラーを実行しているので、すぐに考えを報告します)。 更新:SmallBasicを簡単に試してみましたが、興味をそそられるように思えますが、他の言語と比較してもかなり異なっているようです。私が見たもののうち、Blitzは今でも私のお気に入りですが、費用のためにそこへ行くことを拒否します。 しかし、基本的に、皆さんはこれまで私が言ってきたこと、そして私が見た言語についてどう思いますか、他の良い代替案を知っていますか? 更新:ここで私がすることを選んだ... 私は私のいとこを助けたいと思っていますが、私はいつも彼と一緒にいることはできず、彼が助けを必要とするたびに彼を助けることはできないことに気付きました。だから、私は良いドキュメンテーション、良いコミュニティ、そして彼が従うことができる良い本を持っているものを選びたかった。 とにかく、PythonとPygameを選択しました。Pythonは私がかなり馴染みのある言語です。さらに、Pythonの周りにはかなり良い(そしてかなり大きな)コミュニティがあることを知っています。さらに、Pythonのドキュメントはかなり完全で、ナビゲートしやすいことを知っています。Pygameには、優れたドキュメントと一連のチュートリアルもあります。私は彼にInvent Your Own Computer Games with Pythonを使用/フォローさせていますが、これは非常に良い本のように思えます。テキストとエディターを常に入れ替えるのは不便です。 うまくいくと思います! 編集:私の選択が最終的なものであることや、正しいことを暗示したくありません。この状況に最適だと思います。若い人に教えることを考えている各人は、年齢、スキルレベル、興味などを考慮して、選択を閲覧し、個々の人に最適な解決策を見つけるべきだと思います。

2
マルチプレイヤーゲームのTCPまたはUDPですか?
これは私がよく見る質問です。ほとんどの人は、UDPはTCPよりもリアルタイムゲームの方が常に優れていると言います。私の理解では、UDPは気にしませんが、TCPは反対側がパケットを取得するまで何度もパケットを再送信しようとします。 私が読んだことの大部分は、UDPはどんなリアルタイムゲームにとっても必須であり、TCPはひどいということです。しかし、とにかく、ほとんどの人はUDPの上に何らかの形式のTCPを実装しているようです。そして、私たちはもう80年代ではなく、インターネットは今や非常に高速で信頼性が高いことを考えると、2つの違いは無視できると聞いています。 ここでの私の一般的な理解は間違っていますか?誰かが私のためにこれをクリアできますか?

4
OpenGL、GLX、DRI、およびMesa3Dの関係は何ですか?
Linuxで低レベルの3Dプログラミングを始めています。私は、高レベルのグラフィックスAPI OpenInventorを使用した経験が豊富です。 これらのすべてがどのように組み合わされるかを知ることは厳密に必要ではないことを知っていますが、私はただ興味があります。OpenGLはグラフィックアプリケーションの単なる標準であることは知っています。Mesa3Dは、この標準のオープンソース実装のようです。 では、GLXとDRIはどこに適合するのでしょうか?ウィキペディアとこれらすべてのウェブサイトを掘り下げて、私はまだそれがどのように連携するかについての正確な説明をまだ見つけていません。ハードウェアアクセラレーションはどこで発生しますか?プロプライエタリなドライバーはこれと何の関係がありますか?

4
概念的には、ゲームのルール/制約(グラフィックス/物理学ではない)エンジンをどのように作成するか
自分で選んだアドベンチャーの本に似たシンプルなゲームを作りたい。プレイヤーには物語のテキストが表示され、可能性のリストからアクションを選択できます。これは、新しい物語のテキスト、広告無限につながります。唯一の問題は、以前の決定に応じて、可能性のリストが異なる可能性があることです。 一見すると、これは大量のif-elseステートメントのように聞こえるので、ルールエンジンが適切に機能することを意味します。しかし、それは私にとって有限状態マシンのようにも聞こえます。 これをJavaまたはGroovyで記述しようとしています。私は現在、概念的な問題、つまりこれを広範なレベルでどのように行うべきか(とにかく人々はチェスやカードゲームをどのように実装するのでしょうか)に興味がありますが、特定のライブラリに関するアドバイスも歓迎します。 明らかに、タイトルの「ゲームエンジン」は、衝突検出やその他の物理/グラフィックメカニクスを指すのではなく、プレイヤーが状況と彼の現在の状態に与えたオプションを決定するロジックです。

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