{
# название турнира, возможные значения
# - online: сабмиты из он-лайн этапа
# - default: непрерывный турнир во время хакатона
# - final: игры первого этапа финала
"label": "online",
# время начала игры (unix timestamp)
"timestamp": 1506150447.5848944,
# время игры в секундах
"duration": 111.707551,
# параметры правил игры
"rule": {
"max_round": 50,
"ante": 0,
"blind_structure": {},
"initial_stack": 1500,
"small_blind_amount": 15
},
# информация о серии игр
"series": {
"id": "8eacd808a02d11e79d500242ac12000a" # уникальный идентификатор серии игр
"start_time": 1506150318.5754483, # время начала серии игр
"game": 0, # номер игры в серии
}
# список участников игры в порядке их расположения за столом
"seats": [
{
# уникальный идентификатор команды, чей бот играет
"name": "The Team",
"uuid": "jcaitizqrnclxcjlykmtee", # идентификатор бота внутри конкретной игры
# число фишек
"stack": 1185, # к концу игры
"start_stack": 1500, # в начале игры
"bot": {
"failed": false, # true, если бот был упавшим во время игры
"failed_at_start": false, # true, если бот был упавшим в начале игры
# (такое может произойти, если бот упал во время одной из игр )
# кусок вывода stdout (может быть использован для определения ошибки)
"log": "2017-09-23 07:05:46.655460: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.\n2017-09-23 07:05:46.655498: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations."
},
# максимальный нормер раунда, в котором участник все еще был за столом
"max_participating_round": 50,
},
{
"name": "Another Team",
"uuid": "snygzfpttfhvanlrqouuqw",
"stack": 960,
"start_stack": 1500,
"bot": {
"failed": true,
"failed_at_start": false,
"fail_reason": "invalid_action (invalid amount for action raise, allowed 30..1005, requested 16)"
"log": "",
},
"max_participating_round": 50,
},
...
],
# описание раундов
"rounds": [
"round_count": 0, # порядковый номер раунда
# описание действий в раунде
"round_state": {
"small_blind_pos": 1, # индекс игрока, у которого малый блайнд
"big_blind_pos": 2, # индекс игрока, у которого большой блайнд
"small_blind_amount": 15, # размер малого блайнда
"seats": [], # состояние участников на начало раунда
# общие карты в раунде
"community_card": ["ST", "D8", "DA", "SJ", "D3"],
# последовательность действий на каждой улице
"action_histories": {
"preflop": [ ... ],
"flop": [ ... ],
"turn": [
# описание хода
{
"uuid": "wgoxzmaarejoofxefygmth", # uuid игрока (по нему можно узнать имя команды в seats)
"action": "CALL", # действие: CALL, RAISE или FOLD
"paid": 0, # сколько фишел уже было поставлено до хода
"amount": 0 # сколько фишек поставлено на текущем ходе
"bot": {
"failed": false, # true, если действие сделал не бот, а симулятор (авто сброс)
"valid_actions": {...}, # список доступных действий (как он подается в stdin)
"time_bank": 300, # секунд осталось в тайм-банке
"line": "call\t0", # строка, которую бот отправил в симулятор
"time_elapsed": 0.0006890296936035156 # секунд потрачено на ход
},
},
],
},
},
# список победителей раунда
"winners": [
{
"name": "uq8h3B2GrcoY2Ra~87aW63",
"uuid": "xtatrrkuwyigoondrtaeia",
"stack": 2550,
"state": "participating"
}
],
],
}