2 - add to IType and implement for chess
3 - use a "set" class instead of a vector for quick is-in test ?
4 - call from core once, to avoid the numerous calls to canMove()
5 - have the GUI highlight all possible moves
6 - remove individual highlighting of square under cursor
7 - maybe export moves definitions to lua to avoid duplicating the
8 same data in theme shogi-lib
11 - plugins linked with too many libs
12 - at ui startup, some moves do get badly animated
13 - chess knight gets its animation, but too fast
14 - first move of a shogi pawn/king or of a knight does not get animated (or too fast ?)
16 - finalize shogi functionnality:
18 legalitycheck.h pseudolegal() -> validator.cpp
22 - pieces do not appear in pool
23 ? -> moveserializer.* serialize()
24 - dropped pawn cannot checkmate (not in master ?!)
26 - japanese digits on shogiban (shogiban.h borderCoords() -> move to theme ?)
27 - put correct credits in variants/shogi/*
28 - knight moves -> caracterize jump moves instead of hardcoding Knight in animations
29 - caracterize royal status (maybe policy-driven to account for Prince in Sho)
30 instead of hardcoding King
31 - king and knight do not have a figurine displayed
33 other general non-shogi-related things to do quickly:
34 - find out how to use uninstalled plugins, document running from source tree
35 - shlib versionning scheme
36 - engines do not work any more (No such slot EngineInfo::playAsWhite)
39 - gnushogi engine gets confused when moving through history => generic pb ?
40 - tooltips for figurines, for people who can't read kanji
41 - allow for more complex moves (eg. Lion in Chu Shogi)
42 -> maybe by splitting target square, so the piece gets all different
43 moves in one click, depending on which part of the square is hit ?
44 - allow to setup and play problems (tsume shogi)
45 - install engine declarations system-wide
48 - engine options (eg. select difficulty level)
49 - do not allow selection of more than 1 engine for the same side
50 - allow to declare engines system-wide
53 - decorated move could show captured piece
56 - gnushogi engine should catch "Illegal move: " notices from gnushogi
57 - engine should detect endgame conditions from gnushogi:
58 "Drawn game!" "Black mates!"
59 (gnushogi only reports a draw on one side !?)
62 fetching games from the net for learning:
63 - http://play.chessvariants.org/
64 - http://brainking.com/