一个为了玩 Hive 棋盘游戏而开发的 AI。
HiveMind AI 由 4 个主要组件构成。 该存储库包含主要的 AI 逻辑。
客户端 (Swift)
服务器 (Ruby on Rails)
引擎 (Swift)
HiveMind (Swift)
HiveMind 使用 WebSocket 进行通信。 默认情况下,它监听 ws://:8080
,但您可以通过命令行参数提供替代端口,如下所述。
要与 HiveMind 交互,您可以通过 WebSocket 提供各种命令,它将依次回复。 可用的命令如下:
[new, n] <IsFirst> <ExplorationTime>
IsFirst
是一个 Bool
值,指示 HiveMind 是否先手。ExplorationTime
是一个 Double
值,指定 HiveMind 探索状态的最长时间。[move, m] <Movement>
HiveEngine.Movement
(编码为 JSON)并更新 HiveMind 的内部状态。 这是接收对手移动的方式。[play, p]
ExplorationTime
后回复它找到的最佳移动。[quit]
[exit]
--port <Int>
, -p <Int>
: 指定 HiveMind 应该监听的端口。swift build -Xswiftc "-target" -Xswiftc "x86_64-apple-macosx10.13"
swift build -c release -Xswiftc "-target" -Xswiftc "x86_64-apple-macosx10.13"
.build/debug/HiveMind
或 .build/release/HiveMind
启动实例。brew install swiftlint
swiftlint
。Hive Mind 与 Gen42 Games 没有任何关联。