Technical

Perft Numbers: (let me know if you find any errors)

Chess:

ply=1, positions=20
ply=2, positions=400
ply=3, positions=8902
ply=4, positions=197281
ply=5, positions=4865609
ply=6, positions=119060324

Capablanca Chess:

ply=1, positions=28
ply=2, positions=784
ply=3, positions=25228
ply=4, positions=805128
ply=5, positions=28741319
ply=6, positions=1015802437

Xiangqi:

ply=1, positions=44
ply=2, positions=1920
ply=3, positions=79666
ply=4, positions=3290240
ply=5, positions=133312995
ply=6, positions=5392831844

Shogi:

ply=1, positions=30
ply=2, positions=900
ply=3, positions=25470
ply=4, positions=719731
ply=5, positions=19861490
ply=6, positions=547581517

Crazyhouse:

ply=1, positions=20
ply=2, positions=400
ply=3, positions=8902
ply=4, positions=197281
ply=5, positions=4888832
ply=6, positions=120812942

Programming language of TJchess: C

Some common algorithms/techniques used in TJchess:
alpha-beta
null-move
quiescent search
hash table
pawn hash table
iterative deepening
internal iterative deepening
killer moves
extensions
piece square tables
static exchange evaluation
late move reductions
aspiration windows
and others…

Some common algorithms/techniques not used in TJchess (so far):
bitboards
“0x88″ move generation
piece lists
pvs/negascout
“unmake move” routine
and others…