Tentative Randomless-Entropy variant.
[tagua/yd.git] / TODO_shogi
blob8fade136a6c1991e3ae33c8c9ac29c128581a7ce
1 move generator:
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
10 general:
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 ?)
15 component-api port:
16 - finalize shogi functionnality:
17  - promoting moves
18         legalitycheck.h pseudolegal() -> validator.cpp
19         shogiactions.* -> ?
20         ? -> state.cpp move()
21  - drops
22         - pieces do not appear in pool
23         ? -> moveserializer.* serialize()
24  - dropped pawn cannot checkmate (not in master ?!)
25  - piece orientation
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)
38 tagua core:
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
47 engines/core:
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
52 shogi variant:
53 - decorated move could show captured piece
55 gnushogi engine:
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 !?)
60 - support for time
62 fetching games from the net for learning:
63 - http://play.chessvariants.org/
64 - http://brainking.com/