Какие вы проблемы собираетесь решать используя такой планиривщик?
Почему вы выбрали такой подход для решения проблем удаления персонажей? Можно например использовать отдельную таблицу в БД гдe обозначается дата в epoch time где и когда удалять персонажи, или же отдельное значение в уже использованной таблице. Ведь на самом деле не нужно использовать таймеры или там все что связнно с временем (setTimeout/setInterval), а можно удалять персонажи когда запрашивается список активных персонажей. То есть простая проверка на время, типа сравнить epoch time и просто не показывать, а удалять можно отдельно что-бы не было синхронной связки с соединением клиента (то есть обработка пакетов не страдала от каких-то операций в БД).