Skip to content

UniversalHiveProtocol

Jon Thysell edited this page Mar 9, 2018 · 27 revisions

Draft Proposal

Introduction

Definitions

Engine Structure

Components

Board Strings

Commands

info

info

The info command returns the engine's identifier string.

Example:

info
id Mzinga.Engine 1.0.0.0
ok

newgame

newgame [GameType]

The newgame command starts a new game should return a board string.

Example without GameType:

newgame
Base;NotStarted;White[1]
ok

Example with GameType:

newgame Base+MLP
Base+MLP;NotStarted;White[1]
ok

play

play Move

The play command tries to play the specified move string and should return the updated board string if successful.

Example:

newgame
Base;NotStarted;White[1]
ok
play WS1[0,0,0]
Base;InProgress;Black[1];WS1[0,0,0]
ok

pass

validmoves

validmoves

The validmoves command returns a semi-colon separated list of move strings for every valid move.

Example:

newgame
Base;NotStarted;White[1]
ok
validmoves
WS1[0,0,0];WB1[0,0,0];WG1[0,0,0];WA1[0,0,0]
ok

bestmove

undo

history

Clone this wiki locally