Repolode
palemoky

palemoky/fight-the-landlord

オンライン対戦、切断後の再接続、賢いボットに対応し、カード操作アルゴリズムを使わず毎回完全にランダムに配るGo製のFight the Landlordゲーム。

スター
654
フォーク
76
未解決の Issue
8
最終コミット
20 日前

これは何?

Goで書かれたFight the Landlord(斗地主)のカードゲームです。サーバーとクライアントの構成でオンライン対戦ができ、切断後の再接続やAIボットにも対応しています。カードゲームアプリが配札やマッチングを操作し、新規プレイヤーを最初は勝たせ、その後は負けさせることへの問題意識から作者が開発しました。

毎ラウンド、カードをランダムにシャッフルします。プレイヤーのマッチングもランダム、またはルーム単位で行い、勝率、ランク、プレイ時間は考慮しません。コードはすべてGPL-3.0で公開されています。ボットには、Kuaishouが開発した深層強化学習モデルDouZeroを、別のPythonサービスとして任意で利用できます。

クライアントはターミナルで動作し、シェルまたはPowerShell用のスクリプトでインストールして、ddzコマンドで起動します。サーバーはDocker Composeでデプロイでき、ローカル開発にはRedisが必要です。

主な機能

  • 01配札を操作するロジックを使わず、毎回ランダムにシャッフル
  • 02切断後の再接続に対応したオンライン対戦
  • 03DouZeroの深層強化学習モデルを任意で利用できるAIボット
  • 04macOS、Linux、Windows向けのワンライナーインストールスクリプトを備えたターミナルクライアント
  • 05ゲームサーバーのDocker Composeによるデプロイ

ユースケース

  • ターミナルからネットワーク経由で友人と斗地主を遊ぶ
  • Dockerを使って少人数向けのプライベートゲームサーバーをホストする
  • Goでカードゲームのサーバーやボットを構築する方法を学ぶ
  • DouZeroベースのAI対戦相手とボットを対戦させてテストする

クイックスタート

  1. 1

    macOS または Linux にクライアントをインストールする

    README の公式手順に従ってインストール
  2. 2

    クライアントを実行する

    ddz

使う前に知っておきたいこと

  • README には、Docker Compose を使ったサーバーのセットアップと、Redis および Python 製の DouZero ボットサービスが必要なローカル開発環境について記載されています。
  • Windows 10 のユーザーは、既定のコンソールでは絵文字アイコンが正しく表示されないため、Windows Terminal を使用してください。

トピック

よくある質問

fight-the-landlord とは?
オンライン対戦、切断後の再接続、賢いボットに対応し、カード操作アルゴリズムを使わず毎回完全にランダムに配るGo製のFight the Landlordゲーム。 Goで書かれたFight the Landlord(斗地主)のカードゲームです。サーバーとクライアントの構成でオンライン対戦ができ、切断後の再接続やAIボットにも対応しています。カードゲームアプリが配札やマッチングを操作し、新規プレイヤーを最初は勝たせ、その後は負けさせることへの問題意識から作者が開発しました。
fight-the-landlord は無料で使えますか?ライセンスは?
fight-the-landlord は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
fight-the-landlord は今もメンテナンスされていますか?
活発にメンテナンス中。fight-the-landlord の最終コミットは 2026年10月1日 です。
fight-the-landlord は何に使えますか?
ターミナルからネットワーク経由で友人と斗地主を遊ぶ Dockerを使って少人数向けのプライベートゲームサーバーをホストする Goでカードゲームのサーバーやボットを構築する方法を学ぶ DouZeroベースのAI対戦相手とボットを対戦させてテストする
fight-the-landlord のインストール方法は?
macOS または Linux にクライアントをインストールする クライアントを実行する: ddz
fight-the-landlord はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/palemoky/fight-the-landlord

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト