Lucas Chess
Lucas Chess objectives is to play chess against the computer with increasing levels of difficulty and with a limited number of hints that are given by a chess tutor.
It includes thousands of training positions such as different types of endgames, tactical combinations and chess problems (mate in 2,3,4 and more).