Я рекомендую вам не хранить для этого никакой информации - она должна работать с априорной информацией, такой как системное время, предложенное Джеффри Кемпом. Это сделает его намного более стабильным и будет работать с большим количеством пользовательских агентов.
Получение, например, метки времени Unix, позволит вам менять фон в секунду.
Помните, что некоторые пользователи имеют более медленные соединения и могут не сразу загрузить фоновое изображение.
Простым способом было бы использование setInterval, который перебирает массив изображений каждые 30 минут и сбрасывает после выбора последнего изображения.