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

2
UNOは、デッキ/ゲームで+ 4、+ 2およびその他の特別なカードが発生する頻度をどのように決定しますか?
UNOのようなカードゲームの場合、特別なカードを受け取るための合理的なprocレートを設定したいときに考慮すべき要素は何ですか(たとえば、UNOの場合:+ 4、+ 2、カラーホイール、リバース、スキップ)。同様のゲームを設計する際に考慮すべき要素は何ですか? 確率などがこれに関係していることを理解しています。誰かがその背後にある数学/概念を実証できれば幸いです。

3
アクションに副作用があるターンベースのゲームの設計
私はゲームDominionのコンピューター版を書いています。アクションカード、​​トレジャーカード、および勝利ポイントカードがプレイヤーの個人デッキに蓄積される、ターンベースのカードゲームです。クラス構造はかなりよく発達していて、ゲームロジックの設計を始めています。私はpythonを使用していますが、pygameで簡単なGUIを後で追加するかもしれません。 プレイヤーのターンシーケンスは、非常に単純なステートマシンによって管理されます。時計回りに回すと、プレイヤーはゲームが終了するまでゲームを終了できません。シングルターンのプレイもステートマシンです。一般的に、プレイヤーは「アクションフェーズ」、「購入フェーズ」、「クリーンアップフェーズ」をこの順番で通過します。ターンベースのゲームエンジンを実装する方法の質問への回答に基づいて?、状態マシンはこの状況の標準的な手法です。 私の問題は、プレイヤーのアクションフェーズ中に、自分自身または他のプレイヤーの1人以上に副作用のあるアクションカードを使用できることです。たとえば、1枚のアクションカードを使用すると、プレーヤーは現在のターンの終了後すぐに2ターン目を取ることができます。別のアクションカードを使用すると、他のすべてのプレーヤーは手札から2枚のカードを捨てます。さらに別のアクションカードは、現在のターンでは何も行いませんが、プレーヤーは次のターンに追加のカードを引くことができます。物事をさらに複雑にするために、新しいカードを追加するゲームへの新しい拡張が頻繁にあります。すべてのアクションカードの結果をゲームのステートマシンにハードコーディングすると、見苦しくなり、適応できなくなります。ターンベースの戦略ループへの答え この問題を解決するための設計に取り組む詳細レベルには入りません。 ターン内で行われるアクションによってターンを取るための一般的なパターンを変更できるという事実を包含するために、どのようなプログラミングモデルを使用すべきですか?ゲームオブジェクトは、すべてのアクションカードの効果を追跡する必要がありますか?または、カードに独自の効果を実装する必要がある場合(たとえば、インターフェイスを実装することによって)、十分なパワーを与えるにはどのようなセットアップが必要ですか?この問題に対するいくつかの解決策を考えましたが、それを解決する標準的な方法があるかどうか疑問に思っています。具体的には、アクションカードがプレイされた結果としてすべてのプレイヤーがしなければならないアクションを追跡する責任を負うオブジェクト/クラス/その他、および通常のシーケンスの一時的な変更との関係を知りたいターンステートマシン。

8
ポーカーハンドの決定
私はアセスメントの一環としてテキサスホールデムゲームを作成しており、利用可能な7枚のカードを調べて手が存在するかどうかを判断する方法を検討していました。 私が考えることができる唯一の可能な方法は、カードを数字順にソートし、5枚のカードの可能な各グループを調べ、それらがすべての可能なハンドのリストと一致するかどうかを確認することです。訴訟は無関係であるため、それは長い時間がかかり、ペアを決定するためにのみ実行可能です。 カードはそれぞれ文字列であり、数字/ a / j / q / k、およびスーツ(char)3(小さなスペードシンボルを作る)で構成されています。 手分析システムの作成に役立つ提案、数式、リンクはありますか? まだお互いに手をランク付けすることを心配しないでください、それは魚の異なるやかんです。
19 c++  card-game  poker 

3
トレーディングカードゲームの「特殊効果カード」を実装する方法
ここで一種のトレーディングカードゲームを作成しようとしていますが、何らかの方法で、マジックザギャザリング、または遊戯王に似ています!トランプゲーム。 基本的に、ゲームに慣れていない人のために、ゲームのルールを曲げることができる特別な効果を持つ特別な種類のカード(スペルカード/トラップカード/など)があります。私がまったく知らないのは、これらのカードのロジックを実装する方法です。私はカードのデータをフラグを付けて保存するという考えを持っていますが、それはどんな種類の能力があるのか​​を示すことができますが、それができることは非常に限られています(おそらくいくつかの単純な統計変更のみ)。 これらのカードにどんな種類の効果があるのか​​を知るために、ここに遊戯王に存在する呪文カードの効果のいくつかの例があります!トランプゲーム: 破壊されたクリーチャーを復活させる 相手のクリーチャーをコントロールする いくつかの条件に基づいてクリーチャーのステータスを変更します(例:破壊された特定の名前のクリーチャーの数) いくつかの条件が満たされた場合、特定のクリーチャーを特別に召喚します。 複数のクリーチャーを融合して、より強いクリーチャーにします。 一部の特殊カードの効果に対する耐性。 コナミは、このゲームのいくつかのビデオゲームを作成し、AIと数千種類のカードを完備しています。データベース全体をハードコーディングすることは実際には不可能だと思いますか? 今、もちろん私がやろうとしているのは、それらのゲームほど複雑ではありませんが、私は好奇心が強いです、どうやってそれらを実装するのですか?


3
オープンソースのCCGプロジェクトはありますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新することがありますので、上のトピックゲーム開発スタック交換のます。 5年前に閉鎖されました。 よく開発されたオープンソースのコレクターカードゲームプロジェクトを見つけるのに苦労しています。 モバイルプラットフォームから学び、移植するプロジェクトを見つけたいです。

2
Phaserを使用してスプライトシートから特定のスプライトを表示する
HTML5 JSフレームワークであるPhaserを使ってカードゲームを作ろうとしています。私はひどいアーティストで自分ではデザインできないので、オンラインで見つけたトランプの画像の無料のスプライトシートを使用しています。問題は、Phaserを使用して個々のカードを表示する方法を理解できないようです。 以前使用していたフレームワークでは、使用した大きなスプライトシートから小さなスプライトを個別に作成できました。しかし、それが可能であれば、私はPhaserでそれを行う方法を理解できません。 したがって、画像をスプライトシートとしてロードすることを検討しましたが、スプライトシートはアニメーションのみに使用されているようで、スプライトシートの特定の「フレーム」を実際に表示することはできません(私が間違っている場合は修正してください)。 私がする必要があるのはタイルマップとして画像をロードすることだと思いますが、私が使用している特定の画像には、レイアウトを指定するjsonファイルが付属していませんでした。javascriptの初心者なので、Phaserのソースコードを読んでjsonファイルのフォーマットを確認するのに問題があります。 要約すると、マップデータを指定するjsonファイルがない場合、Phaserでトランプのスプライトシートの個々のカードを表示する最良の方法は何ですか?

4
マルチプレイヤーゲーム1vs1でのクライアントサイドの不正行為
私は単純なカードゲームを開発しています。そこでは、他の人間のプレイヤーに対してあなたを置くマッチメイキングシステムがあります。これは、使用可能な唯一のゲームモードであり、他の人間に対する1vs1であり、AIはありません。 不正行為をできるだけ防ぎたいです。私はここで同様の質問をたくさん読んだことがあり、クライアントを信頼できないこと、そしてすべての検証をサーバー側で行わなければならないことをすでに知っています。私はサーバー(とにかくマッチメイキングに必要)を用意し、サーバー側で検証を行うつもりですが、サーバー側のすべてを確認したい場合、これにより、サーバーは現在のすべてのゲームの状態を追跡でき、すべてのアクションを確認してください。そのサーバーをサポートするための資金やインフラがありません。 私の考えは、クライアントに対戦相手が行ったアクションの一部をチェックおよび検証させ、違法なアクションを見つけた場合は、サーバーに不正行為を通知し、サーバーにそれを検証させることです。これでもサーバーは現在のすべてのゲームを追跡する必要がありますが、クライアント側ではチェックできないいくつかの項目(デッキのカードの順序など)のみをチェックし、実際には間違っている場合にのみ他の項目をチェックするだけで、リソースを節約できます。 *(不正行為を許可せずにチェックできる人のみ!たとえば、プレイしたカードが手元にあるかどうかを確認できないため、手元にあるすべてのカードを知る必要があります) 要約すると、私の質問は:これは実行可能なアプローチですか?これを行うリソースを実際に節約するのでしょうか、それともこのメッセージを交換するためのサーバーとクライアントの余分な複雑さは価値がないのでしょうか?同様のアプローチを成功または失敗させたゲームを知っていますか? 読んで答えてくれてありがとう

3
カードゲームフレームワークはありますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ゲームフレームワークの作成/使用に関する議論は避けましょう。 カードゲーム用の小さなフレームワークを作成するか、それが存在する場合はそれを使用したいと思います。誰か知っていますか? できればJavaまたはC#で記述します。 前もって感謝します、
8 c#  java  card-game 

2
ターンベースのクライアントサーバーカードゲーム-ユニキャスト(TCP)またはマルチキャスト(UDP)
私は現在、クライアントがソケットを介して送信されるメッセージを使用してターンベースの同期的な方法でサーバーと通信するカードゲームプロジェクトを作成することを計画しています。私が抱えている問題は、次のシナリオの処理方法です。 (クライアントは順番を取り、そのアクションをサーバーに送信します) クライアントはサーバーにそのターンの動きを伝えるメッセージを送信します(たとえば、テーブルに置く必要があるその手からカード5を再生します) サーバーはメッセージを受信し、ゲームの状態を更新します(サーバーはすべてのゲームの状態を保持します)。 サーバーは接続されたクライアントのリストを反復処理し、状態の変化を通知するメッセージを送信します クライアントはすべてリフレッシュして状態を表示します これはすべてTCPの使用に基づいており、今見てみると、それはObserverパターンのように見えます。これが私にとって問題であるように思われる理由は、このメッセージが他のクライアントのようにポイントツーポイントではないようであり、すべてのクライアントに送信したいためであり、同じメッセージをそのように。 メッセージをすべてのクライアントに送信できるように、UDPでマルチキャストを使用することを考えていましたが、これは、クライアントが理論的に相互にメッセージを送信できることを意味しませんか?もちろん、同期の側面もありますが、これは私が推測しているUDPの上に置くこともできます。 基本的に、このプロジェクトは本当にすべて学習に関するものなので、何が良い習慣になるのかを知りたいと思います。これからパフォーマンスの問題が発生するほど大きくない場合でも、とにかく検討したいと思います。 ただし、メッセージ指向ミドルウェアをソリューションとして使用することに関心がないことに注意してください(MOMの使用経験があり、TCPソケットが不適切な場合はMOMを除く他のオプションを検討することに興味があります!)。

1
カードゲームフレームワークの開発
やや汎用的なカードゲームフレームワークを構築するために、どのようなデザインパターンとアイデアを使用できますか? これは、人気のスティーブジャクソンゲーム「マンチキン」のクローンを作ろうとしたためです。そのゲームの性質上、カードの機能を多くコード化する必要がなくなったため、開発は無秩序で行き詰まりました。私は何か一般的なものを構築したかったのですが、多くのオーバーライドされた関数と動作を決定するためのswitchステートメントを含む多くのクラスになってしまいました。 私は、デザインの経験が豊富な人が、汎用のカードゲームフレームワークを構築するこのようなタスク、または少なくとも拡張可能な何かを処理するのに何が必要かを知りました。または、マンチキンのようなカードゲームのシミュレーションを作成したい場合は、特定のフレームワークを作成することにこだわっています。 C#を使用したいと思います。 編集 最終的に達成したいことのいくつかを明確にしたいと思います。基本的にカスタム機能を備えたフェーズを実装できるフレームワークが必要です(フェーズ1:カードを引く、フェーズ2:アップキープルールを適用する、フェーズ3:カードを再生する、フェーズ4:解決するなど)。 その場合、カードとフェーズの両方に結び付けられるルールセットを定義するのが賢明だと思います。 次に、カードが定義され、ルールに関連付けられていると想定します。たとえば、ルールは「維持フェーズの間、トークンを1つ失う」とします。ただし、プレイヤーが持っているカードは「維持フェーズ中にトークンを失わないでください」を提供するかもしれません。したがって、これを結び付けることができればフレームワークの根幹の範囲内にあるとよいでしょう。 これも私のリーグからはずれていると思います。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.