Calcitem
|
b0e01f64b4
|
position: 删除 Position& Position::set(const string& code, Color c, StateInfo* si) 函数
TB 才用到,故删除。
|
2020-09-19 23:12:27 +08:00 |
Calcitem
|
e1f066bbfc
|
position: 基本完成 set 函数
put_piece() 因接口还未适配完成故暂不调用。
|
2020-09-19 23:05:41 +08:00 |
Calcitem
|
1e29418e2c
|
check_gameover_condition: 改为参数个数为0
去掉 updateCmdlist 参数。
|
2020-09-13 00:38:09 +08:00 |
Calcitem
|
2640999584
|
check_gameover_condition(): Clear code
|
2020-09-13 00:23:17 +08:00 |
Calcitem
|
3945ab0383
|
refactor: 重构 put_piece()
|
2020-09-12 23:15:06 +08:00 |
Calcitem
|
c2ee2e9c53
|
移除 cmdline 中的时间戳而只保留着法
|
2020-09-12 21:48:21 +08:00 |
Calcitem
|
0255584385
|
cmdlist 插入状态相关行时在命令行打印
|
2020-09-12 20:15:14 +08:00 |
Calcitem
|
81b202babe
|
大部分 sprintf 转移到 gameController
解决 cmdlist 移走到 gameController 后控制相关和状态相在 cmdlist
不见的问题。
目前自对弈耗时由5800ms左右缩减到5300ms左右。
|
2020-09-12 11:31:17 +08:00 |
Calcitem
|
26eb01e259
|
WAR: 临时性解决点击棋谱后无反应的问题
因为 cmdlist 移动框 gameController 后,每次重新开局被清空后
就没有首行的 s2... 了,临时解决方式是先备份这一行,清空后再
插回去。
|
2020-09-11 00:32:32 +08:00 |
Calcitem
|
51e5f22f06
|
cmdlist 从 Position 移动到 GameController 里
已知问题:
棋谱中目前只加入走棋棋谱,其他的控制相关和状态相关的不见了。
|
2020-09-11 00:31:40 +08:00 |
Calcitem
|
dbc1e56dc3
|
position: refactor remove_piece()
|
2020-09-08 02:01:04 +08:00 |
Calcitem
|
9743664c1f
|
position: 简化当摆棋完成时更换行棋方的逻辑
|
2020-09-08 01:43:57 +08:00 |
Calcitem
|
d26c78580f
|
nextMove() 返回值改为 string
并且 command 类型由 QString 改为 string。
|
2020-09-07 01:03:34 +08:00 |
Calcitem
|
e1ecfcc2df
|
完成 UCI::move(Move m) 函数并全面应用
|
2020-09-07 00:05:14 +08:00 |
Calcitem
|
dd10fcb8d3
|
全面使用 file_of() 和 rank_of() 代替旧函数
|
2020-09-06 23:38:14 +08:00 |
Calcitem
|
ddbd0c2ea6
|
position: 使用 rule50 和 gamePly 代替老变量
|
2020-09-06 22:50:54 +08:00 |
Calcitem
|
2e57330126
|
put_piece(): refactor
|
2020-09-06 22:26:13 +08:00 |
Calcitem
|
81f5a5e5ce
|
改为使用确认OK的 make_square() 函数
|
2020-09-06 21:58:44 +08:00 |
Calcitem
|
5182518257
|
position: 实现 Position::set() 部分代码
|
2020-09-06 21:50:37 +08:00 |
Calcitem
|
79019ddb74
|
do_move() 改为传2个参数
|
2020-09-06 20:49:22 +08:00 |
Calcitem
|
79899d8f94
|
uci: 加回来代码
|
2020-09-06 20:32:08 +08:00 |
Calcitem
|
a021eb9da7
|
GameController: Position * 改为 Position &
|
2020-09-06 12:37:35 +08:00 |
Calcitem
|
31d9bd8294
|
movegen/movepick: Position * 改为 Position &
|
2020-09-06 12:32:35 +08:00 |
Calcitem
|
490983195d
|
eveluate: Position * 改为 const Position &
暂时去掉 UCI 代码。
|
2020-09-06 12:21:30 +08:00 |
Calcitem
|
69451b47f3
|
setTips: 处理黑白翻转的情况
|
2020-09-06 00:57:40 +08:00 |
Calcitem
|
6fcfad918c
|
setTips: Position 指针改引用
|
2020-09-06 00:54:55 +08:00 |
Calcitem
|
80188e0547
|
analyze: 修复步数为16进制的问题
|
2020-09-06 00:51:29 +08:00 |
Calcitem
|
926fe1ad86
|
tips: 将 setTips 转移到 GameController
已知问题:
人类走棋后未刷新 Tips,AI走后才刷新。
|
2020-09-05 22:23:06 +08:00 |
Calcitem
|
03c9f72ab0
|
position: do_move() 等几个函数返回类型改为 void
|
2020-09-05 17:24:24 +08:00 |
Calcitem
|
b379588655
|
fen: rule50 赋值但暂时未正常工作
按 Stockfish 的写法:
ss << (" - ")
<< st->rule50 << " " << 1 + (gamePly - (sideToMove == BLACK)) / 2;
最后一节并非如 http://www.xqbase.com/protocol/pgnfen2.htm 所说的,
回合数(Fullmove number) 棕色那段
当前要进行到的回合数。不管白还是黑,第一步时总是以1表示,
以后黑方每走一步数字就加1。
原因待查。目前也未正常工作。
|
2020-09-05 17:13:37 +08:00 |
Calcitem
|
93dd3ba971
|
fen: 交换Phrase和sideToMove位置
|
2020-09-05 16:56:15 +08:00 |
Calcitem
|
5854bce2d9
|
fen: 增加 Phase
|
2020-09-05 12:40:17 +08:00 |
Calcitem
|
0a92670b60
|
hash: Key() 改为只返回 st->key
并优化 analyze 打印。
将 Fen/Key 打印转移到 Position 的 <<
|
2020-09-05 12:07:44 +08:00 |
Calcitem
|
079d1bd7bb
|
PieceToChar: 黑棋改为@且空位改为*
|
2020-09-05 10:48:20 +08:00 |
Calcitem
|
e654d82fde
|
analyze: 打印棋局结果
|
2020-09-05 10:38:30 +08:00 |
Calcitem
|
782f3a14ac
|
analyze: 打印 Key
|
2020-09-05 10:21:42 +08:00 |
Calcitem
|
7b1c3c5b14
|
analyze: 显示轮到谁行棋
|
2020-09-05 10:10:19 +08:00 |
Calcitem
|
5c34a678de
|
analyze: 标明是面向哪方的局面的分析
|
2020-09-05 01:40:40 +08:00 |
Calcitem
|
f75ce94dc3
|
console: 解决AI落子很快时棋盘打印不全的问题
|
2020-09-05 01:01:39 +08:00 |
Calcitem
|
23cae8364b
|
console: 每一回合打印 #OX 格式的棋盘
|
2020-09-04 23:51:14 +08:00 |
Calcitem
|
7ca4d8eef2
|
testmode: 解决编译不通过问题
补充声明 getAppFileName();
|
2020-09-04 23:50:32 +08:00 |
Calcitem
|
eefb62420b
|
msvc: 调整 thread_win32_osx.h 分类为头文件
|
2020-09-04 23:49:24 +08:00 |
Calcitem
|
4f09ecdf91
|
position: Delete ONLY_USED_FOR_CONVERT codes
|
2020-09-04 17:02:22 +08:00 |
Calcitem
|
e41860c402
|
search: refactor: 移动代码块位置
|
2020-09-04 02:48:17 +08:00 |
Calcitem
|
8a40b48f93
|
search: refactor: 增加了一些暂时用不到的代码
|
2020-09-04 01:28:53 +08:00 |
Calcitem
|
e6e336aa3b
|
position: 临时增加 StateInfo tmpSt 并修改 st 为指针
|
2020-09-03 22:19:07 +08:00 |
Calcitem
|
f51e3862e8
|
Remove AIAlgorithm::do_move()
|
2020-09-03 00:24:55 +08:00 |
Calcitem
|
697c5aba59
|
position: refactor: Move do_move() and undo_move()
|
2020-09-02 22:51:59 +08:00 |
Calcitem
|
655d4cabce
|
tt: Zobrist 数组在程序启动时初始化而非用静态值
|
2020-09-02 00:29:54 +08:00 |
Calcitem
|
70b8c8fa6a
|
position: Add init()
|
2020-09-02 00:09:32 +08:00 |