代码拉取完成,页面将自动刷新
GTPEngine
是一个基于golang exec.Cmd()实现的Go Text Protocol的GTP连接器,我们可以轻松的使用此连接器快速与围棋AI进行对弈。
go get -u github.com/tengenteam/gtp-connection
package main
import (
"fmt"
"os"
"github.com/tengenteam/gtp-connection"
"log"
)
func checkError(err error) {
if err != nil {
log.Println(err.Error())
os.Exit(1)
}
}
func main() {
conn, err := gtp.NewGTPConnection("./gnugo_mac", "--mode", "gtp")
checkError(err)
client:=gtp.NewGtpClient(conn)
move,err:=client.GenMove("B")
fmt.Println(move,err)
move,err=client.GenMove("W")
fmt.Println(move,err)
board,err:=client.ShowBoard()
fmt.Println(board,err)
}
如何创建一个连接器,和执行命令
NewGTPConnection(cmd string, args ...string) (*GTPConnection, error)
NewGTPConnectionByPath(cmd string) (*GTPConnection, error)
Exec(cmd string) (string, error)
Client是一个基于连接器封装的与AI对弈的常用指令
NewGtpClient(conn *GTPConnection) *GTPClient
KnowCommand(cmd string) (string, error)
GenMove(color string) (string, error)
Move(color, coor string) (string, error)
LoadSgf(file string) (string, error)
FinalStatusList(cmd string) (string, error)
SetLevel(seed int) (string, error)
SetRandomSeed(seed int) (string, error)
ShowBoard() (string, error)
ClearBoard() (string, error)
PrintSgf() (string, error)
TimeSetting(baseTime, byoTime, byoStones int) (string, error)
FinalScore() (string, error)
Quit() (string, error)
SendCMD(cmd string) (string, error)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。