Gamics Laboratory

Texas Hold'em Game Server for AI-Developers

Introduction

The software is a general open source game server with a built-in Texas Hold'em plug-in. It is suitable for all kinds of turn-based multiplayer games. It is done completely with Java programming language so it is platform independent. The built-in Texas Hold'em plug-in includes a nice-looking, rich-in-features graphical user interface and an AI-interface for building your own poker bots.

When using the server in a scientific context, please, refer to the article

Texas Hold’em Game Server for AI-Developers, Teemu Saukonoja and Tomi A. Pasanen, in the proceedings of the 13th International Computer Games Conference (CGAMES 08), Wolverhampton, UK, 2008, pp. 27-29

Requirements

Running of the software requires Java Runtime Environment (JRE) 6 or newer. For the server-side of the software, an external database (e.g. MySQL, PostgreSQL) is also needed.

In addition to Java SE Development Kit (JDK) 6 or newer, building of the software with included build-files requires Apache Ant 1.7 and Java Enterprise Edition 5 or newer.

Instructions

Installation

Unzip the downloaded package to any directory.

Configurating

As the game server needs an external database you need to create required tables. You can find the needed SQL statements in the gs/sql/ directory of the software (or in the short manual). In addition to that, you have to make changes to server.conf file (more information can be found in the file or in the manual) to make it point to your database.

Running

First you have to start the server. It should be done in command line interface (CLI). First, go to the gs/Project/ directory. In Microsoft Windows use server.bat and in Linux use server.sh script to start the server. In other environments, you can also start the server by command: "java -jar bin/server.jar".

When you have the server running you can start the client. In CLI (in the gs/Project/ directory) use client.bat if you are using Microsoft Windows and client.sh if you are using Linux. Client can be also started by command: "java -jar bin/client.jar".

First, you get a connection window where you can give the IP address of the remote server or just press connect if the server is running locally. After that, you get a game browser window where you can log-in, create new Texas Hold'em tables and join into a game.

Building

For building with included build-files you should set the webservices-tools.jar (from Java EE) in your Java Classpath. After that the building can be done by using ant command in the root (gs) directory of the game server.

Development

There's a plug-in tutorial for developing purposes. In addition to that, there is a whole program API and restricted PokerBot API available.

Downloading

Download the latest version of the software (in zip-file) here.

Documents

New in this version (0.60)

New features

Fixed issues

Known issues

Needed features

Licensing

The software is open source and written and distributed under the GNU General Public Lisense (GPL).

Credits

The software was originally developed by the following group:

The project was instructed by Sampo Yrjänäinen and commissioned by Tomi A. Pasanen and Teemu Saukonoja.

Fixes and additions of the newest version were made by Teemu Saukonoja and the software is currently maintained by Tomi A. Pasanen and Teemu Saukonoja.