>Зачем IllegalPlayerAction запускается через ClientScheduler?
Не знаю. Как вариант - чтобы не тормозить текущую ветку игрока, если в файловой системе какой затык или что-то в этом духе.
По сабжу - что шило, что мыло...
… чтобы понять рекурсию, нужно сперва понять рекурсию …