pokerbotserver's People
pokerbotserver's Issues
handle faulty prolog
Specific bug:
[java] do(raise(X3), 2) :- allekaarten(X1), members([card(X2,_), card(X2,_)
],X1), true.
[java]
[java] fold.
[java] Player JensenBernard has joined table Bear.
[java] Exception in thread "AsyncRunGame" java.lang.NumberFormatException:
For input string: "_674954434"
[java] at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal
.java:1250)
[java] at java.lang.Double.parseDouble(Double.java:540)
[java] at bots.prologbot.PrologBot.query(PrologBot.java:306)
[java] at bots.prologbot.PrologBot.getAction(PrologBot.java:75)
[java] at game.Dealer.playStage(Dealer.java:102)
here, X3 is not an actual value, and the thread crashes on it.
At least, the 'parseDouble' should be guarded against an exception.
Ideally, the whole 'query' has a failback mechanism, so that the entire table does not have to crash.
server log on slow games
if a game has games-per-sec lower then X (e.g. 10), write all bots to err log for later debugging
Visualize actions
Display a pie chart showing how often every player performed certain actions (call, fold, raise)
Visualize average profit
Display a dynamic line chart showing average profit.
Make basic forms for creating tables and joining tables
Support for tables of 24 and more
Currently, the simulator does not work with 24 or more players on a single table. The problem is that a single randomized deck is being dealt. After dealing the community cards (flop, turn, river), insufficient cards are available to deal 2 cards to each player.
Refresh data from simulation server
Repeatedly fetch data from the simulation server and parse it for usage by the visualization library
Find and choose chart visualization library
Visualize rules used
Display a pie chart showing how often every player used certain rules.
Set up interface for socket communication with JSON to the simulation server
Duplicate name
When you send code to a bot that has the same name as you, the old code is not overwritten but a callbot is replaced with the given code. Normally the old bot should have the new given code.
Example:
create table "PokerTafel" with 3 players
send code: "do(call, 1) :- isflop" with name "Jonas" to "PokerTafel"
send code: "do(call, 1) :- isflop" with name "Jonas" to "PokerTafel"
now you have 1 default bot and 2 players named "Jonas" at the table "PokerTafel".
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.