I started with 0 Lua (programming language) knowledge so it took me while to get things rolling.
Lua is definitely good language and not even slow. luataxx is generating moves 400knps on my slow CPU. Pretty good and only getting faster as I improve the code.
Source code: https://github.com/SamuraiDangyo/luataxx
Initial release: https://github.com/SamuraiDangyo/luatax ... /tag/v1.01
Some information of luataxx.
- First Lua Ataxx engine?!
- luataxx generates real moves not boards like Sapeli. Ataxx is 100x easier game for mgen than Chess960.
- luataxx supports uai - protocol
- luataxx supports boards 5x5 -> 20x20
- luataxx can be used without GUI. luataxx has very pretty and clear command line board.
- luataxx can solve simple tactics 100% and beats "Random Mover" almost 100% score.
- to enter uai mode luataxx needs -uai handle at start
Thanks to Ronald Chastain's(Luciolette) Lua uci implementation and python-ataxx for Unicodes. Saved some time for me!
Human vs luataxx on 5x5 board:
Code: Select all
./luataxx.lua -think 3000 -width 5 -height 5 -play 2
a b c d e
╔═╦═╦═╦═╦═╗
5 ║X║ ║ ║ ║X║ 5 ( white: 7 )
╠═╬═╬═╬═╬═╣
4 ║X║X║ ║ ║ ║ 4 ( black: 0 )
╠═╬═╬═╬═╬═╣
3 ║#║ ║ ║ ║ ║ 3 ( turn: O )
╠═╬═╬═╬═╬═╣
2 ║ ║ ║ ║ ║ ║ 2 ( rule50: 0 )
╠═╬═╬═╬═╬═╣
1 ║X║X║X║ ║ ║ 1
╚═╩═╩═╩═╩═╝
a b c d e
luataxx vs luataxx on 9x9 board
Code: Select all
./luataxx.lua -think 10000 -width 9 -height 9 -play 3
a b c d e f g h i
╔═╦═╦═╦═╦═╦═╦═╦═╦═╗
9 ║O║X║X║X║O║O║X║X║X║ 9 ( white: 66 )
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
8 ║O║O║X║X║O║O║X║X║X║ 8 ( black: 14 )
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
7 ║O║O║X║X║X║X║X║X║X║ 7 ( turn: O )
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
6 ║O║O║O║X║X║X║X║X║O║ 6 ( rule50: 3 )
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
5 ║X║X║X║X║X║X║X║X║O║ 5
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
4 ║X║X║X║X║X║X║X║X║X║ 4
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
3 ║X║#║X║X║X║X║X║X║X║ 3
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
2 ║X║X║X║X║X║X║X║X║X║ 2
╠═╬═╬═╬═╬═╬═╬═╬═╬═╣
1 ║X║X║X║X║X║X║X║X║X║ 1
╚═╩═╩═╩═╩═╩═╩═╩═╩═╝
a b c d e f g h i