Each CPU now thinks with one of four engines, each backed by a different published library (pinned versions): - montecarlo (@pokertools/evaluator): the existing balanced Monte Carlo equity player, moved to server/bots/montecarlo.js. - calculator (poker-calculations): the library's decideAction over the table state; push/fold below 12BB via its jam breakeven equity. Skipped automatically if the native addon cannot load. - range (poker-utils): tight player; preflop by hand-strength percentile, postflop equity vs an estimated opponent range, bluffs only when alpha/bluffEV say they pay. - madehand (pokersolver): loose, sticky player that only looks at the made hand and draws. server/ai.js assigns a mix of engines per table (makeStyles), falls back to the Monte Carlo engine on errors, and legalizes every decision. The engine and its parameters stay server-side; players cannot tell which library a CPU uses. Tests cover every engine and the no-leak rule. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
584 B
JSON
25 lines
584 B
JSON
{
|
|
"name": "friends-holdem",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"description": "友達用テキサスホールデム リングゲーム",
|
|
"main": "server/index.js",
|
|
"scripts": {
|
|
"start": "node server/index.js",
|
|
"dev": "node --watch server/index.js",
|
|
"test": "node --test"
|
|
},
|
|
"engines": {
|
|
"node": ">=24"
|
|
},
|
|
"dependencies": {
|
|
"@pokertools/engine": "2.1.0",
|
|
"@pokertools/evaluator": "2.1.0",
|
|
"express": "^4.22.3",
|
|
"poker-calculations": "4.0.3",
|
|
"poker-utils": "14.0.1",
|
|
"pokersolver": "2.1.4",
|
|
"socket.io": "^4.8.4"
|
|
}
|
|
}
|