ハイパーバーグ-ゲーム「カルカソンヌ」の立体版

最近、多次元空間に特化したフォーラムの1つで、「どのゲームが非自明な空間に実装されているのか、特に、ロバチェフスキー平面でのカルカソンヌゲームの実装はありますか?」という質問がありました。聞いたことがない。



しかし、無駄に! ゲームは、さまざまなスペースに適応するのに十分なほどシンプルであることが判明しました。 このゲームはボードです。 プレイヤーは交代でエリアの地図の断片でカードをレイアウトし、接続された地図を折り畳もうとします。 ゲーム中、プレイヤーはフィールドのいくつかの要素をキャプチャし、完了した要素のポイントを受け取ることができます。



自明ではないジオメトリに向けた一般化の範囲が膨大であることは明らかです。 正方形のカードの代わりに、三角形または六角形を設計できます。 立方体の表面に正方形のカードを積み重ねることができます(4つのカードではなく3つのカードが収束する8つの特別なポイントがありますが、これはあまり重要ではありません)。 ロバチェフスキー平面上に正方形のグリッドを描くことができ、その各頂点で5(または6、または無限に多数)の正方形が収束します。 また、正方形のセルを立方体のセルに置き換えて、空間にマップを構築できます。



最後のオプションを選択しました。 4次元の惑星の地形マップがどのように見えるかを見るのは非常に面白かったです。







そもそも、どのバージョンのゲームを適応させるかを決める必要がありました。いくつかの異なる基本的なセルとルールのセットがあり、追加の要素とオブジェクトの拡張機能もあります。 選択は、オプション「ディスカバリー」(別名「ニューワールド」、別名「ニューランド」)に基づいています。 そこでは、土地は3つのエリア(海、山、平野)に分割され、完成した(そして不完全な)オブジェクトに対してもポイントを獲得できます。



最初の推定では、3つのタイプの領域はほとんどないことが示されました。平均して、キューブには各色の2つの面があり、接続された領域の無限の成長が期待できます。 したがって、すぐに4番目のタイプ(砂漠)を追加し、動作するように設定しました。



悲しいかな...数十個のタイルをレイアウトした後、結果のマップを把握できないことが明らかになりました。 表面は非常に不揃いであることが判明し、異なる色の領域間の半透明の境界線が混在しており、この領域またはその領域がどこまで広がっているかを理解することはできませんでした:







後で、このオプションを多かれ少なかれ明確にする機会を与えるいくつかの方法を見つけたので、多分私はそれに戻るでしょう。 しかし、今のところは、ゲームに適した明確なインターフェイスを作成するものを探す必要がありました。 そして、シンプルさに従うルールは、ゲームの基本バージョンで見つかりました。



基本バージョンでは、地形の4つの要素があります。都市、道路、修道院、および残りの領域を占めるフィールドです。 ゲーム中のプレイヤーは、道路(端または交差点に囲まれたエリア)、都市(壁に囲まれたエリア)、修道院(個々のセル)、フィールドを占有できます。 完了したオブジェクト(フィールドを除く)に対してポイントが付与され(オブジェクトは解放されます)、フィールドはゲームの終了時にのみ評価されます。



3次元の場合、地形の要素としてのフィールドの概念が機能しないことは明らかです。道路は土地を部分に分割せず、ほとんどの場合、マップ全体が都市が点在する1つの大きなフィールドになります。 興味を維持するために、都市と道路に海と川という同様のペアを追加しました。 わずかに異なるスコアリングで:都市を面積で推定する場合、海-港の数(川や都市に隣接するセクションが流入するセル)、および川では、道路とは異なり、交差点はセクションの境界ではありません。 しかし、これらはすべて表面的な変更です。 最初の質問は、競技場がどのように見えるか、どのような種類のトランプになるかです。



ゲームでは、新しいセル上のオブジェクトのフラグメントが、フィールド上にすでにある未完成のオブジェクトを継続することが必要です。 これは、セルの面がドッキングに便利な機会を提供する必要があることを意味します。 これを実現する最も簡単な方法は、面のレリーフを対称にすることです。これにより、同じタイプの面を持つ2つのセルは、4つの可能な方法のいずれかでこれらの面を結合できます。 選択されたゲーム要素(プレーン、川、海、道路、都市)はそのような機会を与えます:都市と海は全体としてのみ顔を占有でき、道路と川は顔の中心を通過します。 キャニオン(空間を部分に分割する2次元の表面)などのレリーフの詳細が追加された場合、この方法は機能しません。中心を通る軸に対するセルの相対的な方向を考慮する必要があります。 しかし、現在のバージョンのゲームには峡谷はありません。



セルを7つのゾーンに分割しました。6つは面に対応し、四角錐台の形をしており、7つ目は中央の立方体の形をしています。 外部ゾーンは、5つの状態(修道院を除くすべて)の1つ、内部-6つの状態のいずれかになります。 セルのジオメトリと地形のプロパティは、そのゾーンの状態によって完全に決定されます。隣接する面に属する海または都市の2つのセクションは隣接しています。顔を中央ゾーンに接続します)。 そして、いくつかの制限があります。 たとえば、3つ以上の道路がセルに入る場合、中央ゾーンは「都市」である必要があります(そして交差点の役割を果たす)。



私はすべての可能なセルを列挙することを恐れて、ランダム生成を選択しました:最初に、セルのすべての顔の状態が決定されます(特定の確率:プレーン-確率1/2、川と道路-1/6、海と都市-1/12) 、次に中央セルの可能な状態が決定されます。 中央に修道院が存在する場合は、1/8の確率で配置されます。これが発生しない場合は、可能なすべての状態から同等に状態が選択されます。 その後、ゲーム用にケージが提供されます。 (後で、異なるセルの数が約750であると計算したため、プログラムに完全なリストを生成して含めることができ、同時にそれぞれの種類の発生確率を提供できます)



開始セルは次のようになります。







都市、川、道路の断片があります。 セルがフィールドに配置され、別のウィンドウに次のセルが表示されます。 移動するには、セルとフィールドを回転させて、セルをアタッチするフィールドの面が正面になり、アタッチしたいセルの面がそこに向くようにする必要があります。







セルとフィールドを回転するには、マウスの左ボタンを使用して、カメラを回転します-右のボタン。 ズームイン/ズームアウトするには-Ctrl +左ボタン。



正しい向きを選択した後、セルを配置するフィールドの端の中心をクリックするだけで、移動が可能な場合は完了です。 その後、プレーヤーは自分のチップの1つ(無料のチップがある場合-それらのチップは8つしかない)をセルの一部に置くように提案されます。 可能な領域は青いボールで表されます。







プレーヤーはボールの1つをクリックするか、「スキップ」ボタンを押します(チップを配置したくない場合)。 選択したボールは、このプレーヤーに対応する色のアスタリスクに変わり、ターンは次のボールに移されます。







数回移動すると、フィールドの状況をナビゲートすることが難しくなります。







プレイヤーの生活を楽にするために、いくつかの追加の視覚化モードがあります。 フィールド内のセルの外側の端を分析する(そしてどこに行くかを理解する)ために、フィールドの外側の端の透明度を下げます:







個々のオブジェクトの形状をよりよく分析するには、オブジェクトの透明度を下げて、プレーンの外側のエッジの透明度を上げます。







そして最後に、フィールド上のチップの色をより確実に決定するために(たとえば、チップが海または都市にある場合)、すべてのチップの位置を確認するために、すべてのオブジェクトが白く、ほぼ透明になるモードがあります:







ゲームの開始前に、プレイヤーの数(2〜5)とゲームの期間(移動数-20〜10,000)を選択できます。 それらを選択したら、[新しいゲーム]ボタンをクリックします。



より詳細なルール(英語)を読むことができます。

このページ 。 実行可能コードはこちらから 、ソースコードはこちらからダウンロードできます 。 プログラムは、Open Toolkitライブラリを使用してC#で記述されています。 Windowsが動作するには.NET 2.0が必要です



All Articles