uoftcprg/pokerkit

An open-source Python library for poker game simulations, hand evaluations, and statistical analysis

解決的問題

PokerKit 提供了一種標準化、可靠的方式,用於模擬各種撲克變體、評估手牌並進行統計分析。它消除了開發者為不同撲克版本手動實作複雜遊戲邏輯、下注規則和手牌排名的需要。

工作原理

此庫以純 Python 寫成,使用統一的高階 API 來管理遊戲狀態並自動化常見操作。使用者可為特定變體(如無限注德州撲克、限注奧馬哈或巴杜吉)建立遊戲狀態,並以程式化方式處理發牌、玩家行動(棄牌、跟注、加注)以及牌面發牌。其架構足夠彈性,允許使用者定義自己的自訂遊戲規則與參數。

適用對象

  • AI 研究人員: 開發撲克 AI 和多智能體系統的開發者。
  • 工具創作者: 建構撲克分析工具或計算器的人。
  • 賭場實作者: 開發線上撲克平台的開發者。

主要特色

  • 廣泛支援變體: 包含主要與次要撲克變體的邏輯,包括短牌與低牌。
  • 高效率: 具備高速手牌評估能力。
  • 可靠性: 透過廣泛的單元測試、文件測試與嚴格的靜態類型檢查,達成 99% 的程式碼覆蓋率。
  • 可客製化: 支援彈性遊戲狀態與使用者自訂的客製遊戲。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案