По поводу выподения рандомных заданий. Можно просто ввести бонусы за определённое задание. Например если выпало удержание точки +10000 очков если, деоктивация то +7000 очков, уничтожить все цели +2000 очков и так далее. Ну это я так примерно набрасал просто надо уточноть скока по минимально времени занимает выполнение каждого задания и уже от этого отталкиваться.