Documentation ¶
Index ¶
- Constants
- Variables
- func PseudoPips(player int8, space int8, variant int8) int
- type Analysis
- type BEIServer
- type Board
- func (b Board) Analyze(available [][4][2]int8, result *[]*Analysis, skipOpponent bool) (analyzedPositions int)
- func (b Board) Available(player int8) ([][4][2]int8, []Board)
- func (b Board) Blots(player int8) int
- func (b Board) ChooseDoubles(result *[]*Analysis) int
- func (b Board) Evaluation(player int8, hitScore int, moves [4][2]int8) *Analysis
- func (b Board) FirstLast(player int8) (playerFirst int8, opponentLast int8)
- func (b Board) HaveRoll(from int8, to int8, player int8) bool
- func (b Board) MayBearOff(player int8) bool
- func (b Board) Move(from int8, to int8, player int8) Board
- func (b Board) Past() bool
- func (b Board) Pips(player int8) int
- func (b Board) Print()
- func (b Board) SecondHalf(player int8) bool
- func (b Board) SetValue(space int, value int8) Board
- func (b Board) StartingPosition(player int8) bool
- func (b Board) String() string
- func (b Board) UseRoll(from int8, to int8, player int8) Board
Constants ¶
View Source
const ( SpaceHomePlayer int8 = 0 SpaceHomeOpponent int8 = 25 SpaceBarPlayer int8 = 26 SpaceBarOpponent int8 = 27 SpaceRoll1 int8 = 28 SpaceRoll2 int8 = 29 SpaceRoll3 int8 = 30 SpaceRoll4 int8 = 31 SpaceEnteredPlayer int8 = 32 // Whether the player has fully entered the board. Only used in acey-deucey games. SpaceEnteredOpponent int8 = 33 // Whether the opponent has fully entered the board. Only used in acey-deucey games. SpaceVariant int8 = 34 // 0 - Backgammon, 1 - Acey-deucey, 2 - Tabula. )
View Source
const ( VariantBackgammon int8 = 0 VariantAceyDeucey int8 = 1 VariantTabula int8 = 2 )
Variables ¶
View Source
var ( WeightBlot = 0.9 WeightHit = -1.0 WeightOppScore = -0.9 )
View Source
var ( AnalysisBufferSize = 128 SubAnalysisBufferSize = 3072 )
View Source
var QueueBufferSize = 4096000
View Source
var Verbose bool
Functions ¶
Types ¶
type Analysis ¶
type BEIServer ¶
type BEIServer struct {
Verbose bool
}
func NewBEIServer ¶
func NewBEIServer() *BEIServer
func (*BEIServer) ListenLocal ¶
type Board ¶
type Board [boardSpaces]int8
Board represents the state of a game. It contains spaces for the checkers, as well as four "spaces" which contain the available die rolls.
func (Board) ChooseDoubles ¶
func (Board) Evaluation ¶
func (Board) HaveRoll ¶
HaveRoll returns whether the player has a sufficient die roll for the specified move.
func (Board) MayBearOff ¶
func (Board) SecondHalf ¶
func (Board) StartingPosition ¶
Click to show internal directories.
Click to hide internal directories.